mode bash vi: Apa maksud # - * - mode: ruby ​​- * - # vi: set ft = ruby: artinya?

12

Saya mencari melalui beberapa kode acak , dan di atasnya, tertulis ini:

# -*- mode: ruby -*-
# vi: set ft=ruby :

Apa artinya ini?

Saya tahu ini adalah pertanyaan sederhana, tetapi saya tidak dapat menemukannya secara online karena a) Saya bahkan tidak tahu bahasa apa yang digunakan dalam kode ini, dan b) Saya sangat baru untuk bash dan vi.

michaelsnowden
sumber
1
Pertanyaan ini sepertinya tidak ada hubungannya dengan bash.
Michał Politowski

Jawaban:

12

Baris-baris itu adalah modeline yang memberi tahu editor (misalnya emacs atau vi) untuk memilih mode pengeditan khusus untuk file. Mode pengeditan memengaruhi cara editor, mis., Menyorot dan membuat indentasi isi file.

Anda dapat membaca lebih lanjut tentang modeline untuk emacs (yang disebut variabel file-local) di sini dan modeline untuk vim di sini .

Sami Laine
sumber
1
Itu modeline bukan garis ajaib.
romainl
Sebenarnya ini yang paling sering disebut modeline magis dari mana saya berasal, hanya untuk membedakannya dari modeline emacs yang sama sekali berbeda.
Sami Laine
1
Nah, di Vim, itu disebut "modeline" dan di Emacs itu disebut "variabel file-lokal".
romainl
Saya sarankan edit.
Sami Laine