Tidak, tidak ada yang seperti /* */komentar gaya-C di makefiles. Seperti yang disarankan orang lain, Anda dapat membuat komentar multibaris dengan menggunakan lanjutan baris. Sebagai contoh:
# This is the first line of a comment \
and this is still part of the comment \
as is this, since I keep ending each line \
with a backslash character
Namun, saya membayangkan bahwa Anda mungkin ingin mengomentari sementara sebagian dari makefile Anda untuk alasan debugging, dan menambahkan garis miring terbalik pada setiap baris sebenarnya tidak praktis. Jika Anda menggunakan GNU make, saya sarankan Anda menggunakan ifeqpetunjuk dengan ekspresi yang sengaja salah. Sebagai contoh:
ifeq ("x","y")
# here's all your 'commented' makefile content...
endif
Perhatikan, jika Anda ingin "mengomentari" baris dalam suatu aturan, jangan membuat baris ifeq, endif indent.
Simon Márton
13
Saya yakin jawabannya tidak. Satu-satunya gaya komentar yang dapat saya temukan adalah # untuk setiap baris, atau gunakan \ untuk membungkus baris pertama.
Catatan tentang ide menggunakan ifequntuk melakukan komentar multibaris di make (1). Mereka tidak bekerja dengan baik karena jika Anda menulis yang berikut ini:
ifeq (0,1)
do not risk ifeq comments
else trouble will find you
ifeq is even worse
endif
Teks antara ifeq dan endif akan tetap diurai oleh make yang berarti Anda tidak dapat menulis apa pun yang Anda inginkan di bagian itu. Dan jika Anda ingin menulis komentar yang panjang dan menulis apa pun yang Anda inginkan di komentar (termasuk tanda $, titik dua, dan lainnya yang semuanya memiliki arti untuk dibuat) maka Anda harus mengomentari setiap baris. Jadi kenapa ifeq... :)
Itu tidak benar. Satu-satunya yang dilakukan gmake "parsing" dari teks di dalam ifeq adalah mencari endif. Anda dapat memverifikasi ini dengan mudah dengan makefile yang memiliki sintaks palsu di dalam ifeq. Selama kondisi di ifeq bernilai false, gmake akan dengan senang hati mengabaikan kesalahan sintaks di dalam ifeq.
Eric Melski
3
Itu tidak benar. Coba contoh berikut: ifeq (0, 1) jangan ambil risiko ifeq komentar lain masalah akan menemukan Anda endif The else di awal baris membuat kesalahan. Jadi jika tidak , ifeq , ifneq dan mungkin banyak simbol lain yang saya tidak tahu akan memberi Anda masalah.
Mark Veltzer
Itu poin yang adil, tetapi sebagian besar kesalahan sintaksis akan diabaikan.
tunduk pada peringatan yang sama seperti yang ifeqsaya kira, tetapi bekerja untuk saya. Terima kasih!
jcomeau_ictx
3
Bukan persis seperti yang Anda cari, tapi serupa dalam semangat. Saya tidak berharap itu menjadi jawaban yang diterima, tetapi mungkin itu dapat membantu seseorang.
Dengan asumsi Anda mengedit makefile Anda di VIM:
Putuskan baris mana yang ingin Anda komentari atau pilih dengan 'v'.
Kemudian Anda dapat menggunakan regex s/^/#/untuk mengomentari baris
dan s/^#//mengembalikannya.
--Catatan--
Untuk membuka baris perintah vim, tekan :(titik dua)
Untuk mempersiapkan perintah untuk baris 'n' berikutnya, gunakan .,+n
Contoh baris yang menggunakan "v" terlihat seperti: '<,'>s/^/#/
Lebih mudah menggunakan mode blok. Pergi ke awal baris pertama untuk berkomentar, ctrl-v, panah ke bawah sampai akhir, kapital I, #, escape. Untuk menghapus komentar: ctrl-v, panah ke bawah sepenuhnya, x
brunch875
1
Di emacs, Anda dapat menandai wilayah yang ingin Anda beri komentar dan tekan M-;(yang berjalan comment-dwim).
Jawaban:
Tidak, tidak ada yang seperti
/* */
komentar gaya-C di makefiles. Seperti yang disarankan orang lain, Anda dapat membuat komentar multibaris dengan menggunakan lanjutan baris. Sebagai contoh:Namun, saya membayangkan bahwa Anda mungkin ingin mengomentari sementara sebagian dari makefile Anda untuk alasan debugging, dan menambahkan garis miring terbalik pada setiap baris sebenarnya tidak praktis. Jika Anda menggunakan GNU make, saya sarankan Anda menggunakan
ifeq
petunjuk dengan ekspresi yang sengaja salah. Sebagai contoh:Semoga membantu.
sumber
Saya yakin jawabannya tidak. Satu-satunya gaya komentar yang dapat saya temukan adalah # untuk setiap baris, atau gunakan \ untuk membungkus baris pertama.
sumber
Catatan tentang ide menggunakan
ifeq
untuk melakukan komentar multibaris di make (1). Mereka tidak bekerja dengan baik karena jika Anda menulis yang berikut ini:Teks antara ifeq dan endif akan tetap diurai oleh make yang berarti Anda tidak dapat menulis apa pun yang Anda inginkan di bagian itu. Dan jika Anda ingin menulis komentar yang panjang dan menulis apa pun yang Anda inginkan di komentar (termasuk tanda $, titik dua, dan lainnya yang semuanya memiliki arti untuk dibuat) maka Anda harus mengomentari setiap baris. Jadi kenapa
ifeq
... :)sumber
sumber
ifeq
saya kira, tetapi bekerja untuk saya. Terima kasih!Bukan persis seperti yang Anda cari, tapi serupa dalam semangat. Saya tidak berharap itu menjadi jawaban yang diterima, tetapi mungkin itu dapat membantu seseorang.
Dengan asumsi Anda mengedit makefile Anda di VIM:
Putuskan baris mana yang ingin Anda komentari atau pilih dengan 'v'.
Kemudian Anda dapat menggunakan regex
s/^/#/
untuk mengomentari barisdan
s/^#//
mengembalikannya.--Catatan--
:
(titik dua).,+n
'<,'>s/^/#/
sumber
Di emacs, Anda dapat menandai wilayah yang ingin Anda beri komentar dan tekan
M-;
(yang berjalancomment-dwim
).sumber