Was ist der Unterschied zwischen ;
und ;;
beim Starten eines Kommentars in Clojure? Ich sehe, dass mein Texteditor sie unterschiedlich färbt, daher gehe ich davon aus, dass es fiktiv einen Unterschied gibt.
Ich sehe auch, dass Marginalia sie anders behandelt:
; Stripped entirely
;; Appears in text section of marginalia
(defn foobar []
; Appears in code section of marginalia output
;; Again, appears in code section of marginalia output
6)
clojure
comments
marginalia
pauldoo
quelle
quelle
;
im Dokument? clojuredocs.org/clojure.core/commentSchauen Sie sich die offizielle Beschreibung der Bedeutung von
;
vs;;
in elisp an: Da der Clojure-Eindringkörper im Grunde derselbe ist, werden sie ähnlich behandelt. Verwenden;
Sie diese Option grundsätzlich, wenn Sie einen langen Satz / eine Beschreibung "am Rand" schreiben, der mehrere Zeilen umfasst, aber als eine Einheit betrachtet werden sollte. Ihr Beispiel ist:(setq base-version-list ; there was a base (assoc (substring fn 0 start-vn) ; version to which file-version-assoc-list)) ; this looks like ; a subversion
Der Eindringling wird sicherstellen, dass diese nebeneinander stehen. Wenn Sie stattdessen mehrere nicht verwandte einzeilige Kommentare nebeneinander machen möchten, verwenden Sie
;;
.(let [x 99 ;; as per ticket #425 y "test"] ;; remember to test this (str x y)) ;; TODO actually write this function
quelle
Emacs; Wird für Kommentare am Ende der Zeile verwendet und wird auf überraschende Weise eingerückt, wenn dies nicht Ihre Absicht ist. ;; nicht so benutze ich normalerweise ;;
Clojure ist das egal - jede Zeile wird von der ignoriert; zu EOL.
Ich glaube, es gibt eine Tradition in CL, immer mehr zu verwenden; um wichtigere Kommentare / Abschnitte anzuzeigen.
quelle
keine Bedeutung für die Sprache.
;
ist eincomment
Lesemakro für vielleicht andere Tools, die sie analysieren, aber "innerhalb der Clojure" sind sie gleich.quelle
Aus Clojure-Sicht gibt es keinen Unterschied. Ich finde, das fällt
;;
ein bisschen besser auf als;
, aber das ist nur meine Meinung.Marginalia hingegen behandelt sie anders, da manchmal ein Kommentar im Codeabschnitt verbleiben sollte (z. B. Lizenz) und diese mit gekennzeichnet sind
;
. Dies ist eine willkürliche Entscheidung und kann sich in Zukunft ändern.quelle
In Emacs wird der Lisp-Modus einschließlich des Clojure-Modus
;;
mit der Konvention formatiert, am Anfang einer Zeile zu stehen, und wie jede andere Zeile basierend auf dem Kontext eingerückt.;
Es wird erwartet, dass Emacs am Ende einer Zeile verwendet wird, sodass Emacs nicht das tun, was Sie möchten, wenn Sie am Anfang einer Zeile einen Kommentar mit einem Semikolon einfügen, der erwartet, dass er für den aktuellen Kontext in den Einzug verschoben wird.Beispiel:
(let [foo 1] ;; a comment foo) ; a comment
quelle
Ich bin nicht sicher (Clojure nicht verwendet und noch nie davon gehört), aber dieser Thread könnte helfen.
quelle