vim-projectionist de Tim Pope oferă navigare granulară în proiecte, salt la fișiere alternative (:A) și schelete automate de fișiere.
Configurație de Bază (.projectionist.json)
Plasați .projectionist.json în rădăcina proiectului dvs.:
{
"src/*.js": {
"alternate": "test/{}.test.js",
"type": "source"
},
"test/*.test.js": {
"alternate": "src/{}.js",
"type": "test",
"template": [
"import { describe, it, expect } from 'vitest';",
"",
"describe('{}', () => {",
" it('works', () => {",
" expect(true).toBe(true);",
" });",
"});"
]
}
}
Comenzi de Navigare a Fișierelor Alternative
| Comandă | Acțiune |
|---|---|
:A |
Editează fișierul alternativ în fereastra curentă |
:AS |
Editează fișierul alternativ într-o divizare orizontală |
:AV |
Editează fișierul alternativ într-o divizare verticală |
:AT |
Editează fișierul alternativ într-o filă nouă |
:AD |
Citește șablonul în bufferul gol curent |
Comenzi de Proiect și Navigare în Rădăcină
| Comandă | Acțiune |
|---|---|
:Cd |
Schimbă directorul de lucru în rădăcina proiectului |
:Cd {path} |
Schimbă directorul într-o cale relativă sub rădăcină |
:Lcd |
Schimbă directorul local (:lcd) în rădăcină |
:ProjectDo {cmd} |
Execută comanda shell din rădăcina proiectului |
Comenzi de Tip Personalizat
Definirea "type": "model" generează comenzile :Emodel, :Smodel, :Vmodel și :Tmodel:
{
"app/models/*.rb": {
"type": "model",
"alternate": "spec/models/{}_spec.rb"
}
}
Rulați :Emodel user pentru a sări direct la app/models/user.rb.