Un qualcosa che potrebbe essere preso in prestito dagli IDE. Quindi l'idea sarebbe quella di evidenziare gli argomenti delle funzioni (e forse i nomi delle variabili con scope) all'interno dei corpi delle funzioni. Questo è il comportamento predefinito per qualche C:Evidenzia argomenti nel corpo della funzione in vim
Beh, se dovessi posizionare il cursore all'interno func
Mi piacerebbe vedere gli argomenti foo
e bar
evidenziati seguire la logica algoritmo migliore. Si noti che il nome simile foo
in func2
non viene illuminato. Questo lussuoso potrebbe essere omesso se ...
Usando localmente ambito variabili, vorrei variabili ANCHE hanno localmente inizializzati marcate in:
Infine al redemonstrate il lusso:
Non così banale da Scrivi questo. Ho usato la C per dare un'idea generale. Davvero ho potuto utilizzare questo per la programmazione Scheme/Clojure meglio:
Questo dovrebbe riconoscere let
, loop
, for
, doseq
binding per esempio.
Il mio vimscript-fu non è così forte; Sospetto che avremmo bisogno di
- Parse (non-rexxly?) Gli argomenti dalla definizione della funzione sotto il cursore. Questo sarebbe ovviamente un linguaggio specifico. La mia priorità sarebbe Clojure.
- definiscono una regione sintassi per coprire la data funzione/portata solo
- invia la sintassi richiesta corrisponde
Come funzione questo potrebbe essere associato a un tasto (se molto alta intensità di risorse) o CursorMoved
se non così lento.
Ok, ora. Qualcuno ha scritto/trovato qualcosa del genere? I guru di vimscript hanno un'idea su come iniziare effettivamente a scrivere una sceneggiatura del genere?
Ci scusiamo per la lieve disassuefazione e la cattiva formattazione. Sentiti libero di modificare/formattare. O votare per chiudere.
argomento supercool. questo highlight migliora davvero la leggibilità dell'algoritmo. alcune notizie su questo? – nkint
È totalmente fattibile per C/C++/Obj-C. So che è possibile usare Python/Clang per ottenere l'ambito del cursore corrente e la firma della funzione corrente. Fonte: http://eli.thegreenplace.net/2011/07/03/parsing-c-in-python-with-clang/. Non dovrebbe essere difficile scrivere un plugin vim con questo. –
Ero così vicino al downvoting per la pubblicazione di immagini di codice anziché di testo ... ma poi ho letto la domanda. ;) –