Ricerca nei file ed elementi in sospeso

Cercare nei file e nei documenti

Guarda il videoCercare nelle note 00:15

Usa Ctrl+Shift+F per la ricerca globale nella scheda Ricerca della barra laterale, basata su ripgrep: supporta regex, sensibilità alle maiuscole, parola intera e sostituzione in blocco. Nel file corrente, Ctrl+F trova e Ctrl+H sostituisce. Su un risultato, il menu contestuale apre il file, ne copia il percorso e lo mostra in Esplora file, e Rimuovi dai risultati toglie il file dall'elenco: Sostituisci tutto non lo modifica più, e la conferma conta solo ciò che resta.

La ricerca raggiunge anche i documenti. Oltre alle note .md, legge il testo di PDF, fogli di calcolo (.xlsx/.ods), documenti Word (.docx), testo LibreOffice (.odt), presentazioni (.pptx) e libri (.epub). Lo stesso vale per la Chat IA e per la ricerca per significato. Un risultato dentro un PDF apre il file alla pagina del brano. Il testo estratto sta in una cache fuori dallo spazio di lavoro, si aggiorna da solo quando il file cambia e viene cancellato quando il file non esiste più. La prima volta costa: aprire uno spazio di lavoro con molti PDF avvia un'estrazione che dura minuti, e finché non finisce i documenti non sono ancora nella ricerca. La scheda Cerca lo dice mentre accade — preparazione dei documenti (12 di 80) — e avvisa quando rifare la ricerca. Dalla seconda volta in poi si rifà solo ciò che è cambiato.

Rientrano anche .rtf, .xps/.oxps, le presentazioni LibreOffice (.odp), i sottotitoli video (.srt/.vtt), le tabelle in testo (.csv/.tsv), le pagine salvate (.html/.mhtml), la posta archiviata (.eml), i notebook Jupyter (.ipynb), le bibliografie (.bib/.ris) e i file di testo semplice (.txt). I linguaggi di marcatura del testo hanno un lettore proprio: reStructuredText (.rst), AsciiDoc (.adoc), Org (.org) e Typst (.typ). La sezione diventa titolo, l'elenco e la tabella diventano i nostri, la formula viene disegnata e il preambolo resta fuori: senza questo, #set page(...) e :stem: latexmath diventerebbero frammenti indicizzati e il nome della sezione non viaggerebbe con il suo testo. Un risultato in un sottotitolo apre l'istante in cui la frase è stata detta.

Un PDF digitalizzato non sparisce in silenzio. Un documento con pagine e senza testo (una foto di ogni pagina, senza OCR) entra nell'indice con una riga che lo dice, e la scheda Cerca avvisa quanti sono: senza quella frase cercheresti qualcosa che è nel libro, non lo troveresti e concluderesti che la ricerca è rotta. E puoi renderlo leggibile: con Tesseract installato (LightNote propone di installarlo con un clic), il menu ⋯ del PDF offre Riconoscere il testo (OCR)…. Gira una volta, per documento e può richiedere diversi minuti: dopo, il testo sta nell'indice come quello di qualsiasi altro PDF. L'avviso della scheda Cerca porta al primo documento in quello stato.

La cache conserva il testo in chiaro. Si trova nella tua cartella utente, fuori dallo spazio di lavoro: chi vi ha accesso legge lì il contenuto dei tuoi documenti, anche se l'originale sta su un disco cifrato. Un file .lne (la nota cifrata) non entra mai nella cache: esiste proprio per non essere leggibile sul disco.

Il LaTeX entra da un lettore suo. Un file .tex non viene letto come testo grezzo: il preambolo resta fuori, \section diventa un titolo, \cite diventa [@key] e la formula passa intera — a disegnarla è lo stesso motore che disegna la matematica delle tue note. Un risultato apre il file alla riga da cui viene. Nel menu contestuale del file — o nella barra della scheda, quando è aperto — c'è Importa come nota (.md): la nota nasce accanto, il .tex resta dov'è e importare due volte non sovrascrive. Il percorso inverso è Esporta come LaTeX (.tex)..., nella barra della nota.

Anteprima del documento e codice sorgente

Aprire un documento mostra un'anteprima del testo. Un .docx, .odt, .epub o .pptx si apre in sola lettura, con il testo estratto e le immagini del documento — senza gli stili di Word, la disposizione delle immagini, le tabelle complesse o il controllo delle revisioni. La scheda resta il documento: il nome, la cartella e la sessione puntano a esso, non alla cache. Un foglio .xlsx continua ad aprirsi nella vista tabella, che mostra molto di più.

Anche il codice sorgente può entrare nella ricerca per significato. In Strumenti → Spazio di lavoro → Configurazione dello spazio di lavoro... c'è Includere il codice sorgente nella ricerca per significato: i file di codice vengono indicizzati insieme alle note, un frammento per funzione o classe — è ciò che fa sì che domande come “dove gestisco il timeout?” trovino la funzione intera e non un pezzo tagliato in mezzo a un if. Rispetta il .gitignore. Arriva spento, e per cartella: le note cambiano lentamente, il codice cambia tutto il giorno, e un repository di lavoro genera decine di migliaia di frammenti, ognuno una chiamata addebitata dal tuo provider di embedding.

Importare documenti e altre applicazioni

Guarda il videoImportare da Notion 00:21

Trasformare il documento in nota. Da File → Importa documento come nota... (più d'uno alla volta), dal menu contestuale dell'albero o dal pulsante Importa come nota (.md) nell'anteprima stessa, un .docx, .odt, .epub, .rtf, .pptx, .html, .eml, PDF o LaTeX diventa una nota modificabile accanto al file. Arrivano il testo con titoli, elenchi, link e tabelle, le note a piè di pagina, le equazioni di Word come formule LaTeX e le immagini, salvate nella cartella Allegati accanto alla nota. Titolo, autore e data del documento diventano proprietà, con source che dice da quale file viene la nota. L'originale resta dov'era — importare non è convertire — e importare di nuovo crea nome 02.md invece di sovrascrivere ciò che hai modificato. Non compare per il notebook Jupyter (che diventa Blocchi), per il .csv (che si apre come tabella), per la bibliografia .bib/.ris (che le citazioni leggono direttamente) né per il codice sorgente. La struttura viene dagli stili del documento: un titolo di Word è riconosciuto anche con il nome dello stile tradotto, gli stili di carattere danno grassetto, corsivo e codice, i paragrafi di citazione e di codice diventano i nostri blocchi e il sommario automatico diventa un [TOC] che la nota tiene aggiornato; dal .rtf arrivano elenchi, tabelle e link, e dall'HTML — compreso quello salvato da Word e Google Docs — e dall'EPUB arrivano titoli, elenchi annidati e tabelle. I documenti vengono letti in background, come un'operazione del pannello Operazioni: la finestra continua a rispondere mentre un PDF grande viene convertito, e Interrompi termina l'importazione prima del file successivo.

Vedere che cosa la cartella usa di un altro editor. In Strumenti → Verifica compatibilità della cartella..., LightNote legge le note della cartella aperta e divide ciò che ha trovato in tre gruppi: ciò che disegna (wikilink, trasclusione, riquadro, etichetta, evidenziazione, formula, nota a piè di pagina, attività, marcatore di blocco), ciò che resta nel file senza essere disegnato (la query di plugin dataview, tasks o query, la lavagna .canvas, la base .base e la trasclusione di blocco) e ciò che si può convertire nella grafia di qui. Convertire è una tua scelta, mai un effetto del salvataggio: seleziona i costrutti, guarda l'anteprima affiancata e conferma — ogni file modificato riceve un punto nella Cronologia del file prima di essere scritto, e ciò che è aperto con modifiche non salvate resta fuori. Oggi le conversioni sono due, e nessuna costa nulla dal lato di Obsidian, che legge entrambe le grafie: il link obsidian:// di questa cartella diventa [[nota]] — quello verso un altro vault non viene convertito, perché cambierebbe la destinazione — e la nota a piè di pagina in linea ^[testo] diventa [^n], con la definizione alla fine.

Portare qui un intero archivio di Notion. In Notion usi Export → HTML (o Markdown & CSV) con Include subpages, metta lo .zip scaricato — o la cartella — dentro lo spazio di lavoro, crei la cartella di destinazione ed esegua lnote vault-import --path <export> --out <destinazione> (o lo strumento vault_import, dall’assistente di IA). Non serve scompattare, neanche l’export dell’intero spazio, che contiene un altro .zip. Ogni pagina diventa una nota: le proprietà della pagina diventano proprietà della nota, il riquadro colorato di Notion diventa la nostra scatola (in HTML è il colore a decidere il tipo; il Markdown non conserva il colore, e la scatola arriva come nota), un’attività arriva con la casella spuntata o no, un’equazione diventa una formula LaTeX, un blocco espandibile diventa una scatola <details> (e un titolo espandibile diventa un titolo), il sommario della pagina diventa [TOC], e i collegamenti fra le pagine vengono riscritti verso le note nuove — due pagine con lo stesso titolo convivono, perché la seconda diventa nome 02.md e i collegamenti puntano ancora a quella giusta. I database sono copiati come .csv in Anexos, e un #argomento scritto in Notion resta testo: lì non era un’etichetta, e qui non lo diventa. Nulla viene sovrascritto, e accanto viene scritta una nota di resoconto che dice quante note e allegati sono entrati ed elenca i collegamenti che non hanno trovato destinazione — quelli restano esattamente come erano scritti.

Il gesto è nel menu. File → Importa da un'altra applicazione... apre l'assistente: scegli la cartella o lo .zip che hai esportato (va bene anche un .enex di Evernote) e l'applicazione di origine viene riconosciuta dalla forma dei nomi dei file — se non lo è, scegliela nell'elenco accanto. La cartella viene letta per intero, sottopagine comprese. La destinazione arriva già compilata con una cartella nuova nello spazio di lavoro, con il nome dell'applicazione, perché l'archivio non si mescoli con le tue note. Lettura e scrittura avvengono fuori dalla finestra, e alla fine lo schermo dice quante note e quanti allegati sono entrati e quanti collegamenti sono stati riscritti.

Cinque applicazioni. Da Notion, la cartella o lo .zip esportato in HTML o in Markdown; da Evernote, il .enex; da Joplin, il .jex (o la cartella MD + Front Matter); da Logseq, la cartella del grafo — quella che contiene logseq/config.edn; e da Roam Research, il .json dell'export. In tutte, il taccuino e il namespace diventano cartelle, il diario finisce nella cartella delle note giornaliere con il nome aaaa-MM-gg, l'attività diventa - [ ], l'evidenziazione diventa ==così== e il riferimento a un blocco diventa il testo di quel blocco tra virgolette con il collegamento alla sua pagina: nessuna sintassi di un altro programma entra nel tuo spazio. Ciò che qui non ha un equivalente, come una query di Logseq o una tabella di Roam, resta come codice nella riga, e il rapporto dice quante volte.

Evidenziazione, segni e In sospeso

Evidenziazione e segni sono cose diverse. La ricerca rapida (Ctrl+F) si limita a evidenziare le occorrenze in ambra: è temporanea e scompare quando chiudi la barra o svuoti il campo. Segna tutto in Modifica → Ricerca avanzata… è invece una tua decisione: colora le occorrenze di rosso e aggiunge il segnalibro (il pallino blu nel margine) sulle righe corrispondenti, che restano finché non usi Cancella segni. I due canali sono indipendenti: chiudere la ricerca rapida non cancella ciò che hai segnato, e cancellare i segni non elimina l’evidenziazione della ricerca. Entrambi compaiono nella striscia della minimappa, ciascuno con il proprio colore. Cancella segni rimuove solo i pallini creati da Segna tutto: un segnalibro messo a mano (Ctrl+F2) su una riga che corrispondeva alla ricerca resta dov'era.

La sezione In sospeso della barra laterale raccoglie in un unico posto i marcatori TODO/FIXME del codice e le attività (- [ ]) delle note Markdown dello spazio di lavoro — clicca per saltare direttamente alla riga. Le carte aperte delle bacheche .lnt di questa cartella hanno un gruppo proprio, Carte delle bacheche, con la data più vicina in alto; un clic apre la bacheca. Non contano la casella dentro un blocco di codice, che è un esempio (spuntarla da qui scriverebbe dentro il frammento di codice), né ciò che sta nella cartella dei modelli e in quella dei prompt, che sono schemi. La data della carta viene prima del titolo, senza l'anno quando è quello in corso, e la riga in alto conta gli elementi del codice, le attività e le carte. L'elenco viene rifatto all'apertura della sezione e con il pulsante Aggiorna; spuntare la casella di un'attività scrive [x] nella nota, e il conteggio di Attività nella barra di stato si aggiorna subito dopo.

In cima alla sezione c'è un calendario del mese con gli stessi punti della finestra Calendario, ma solo con ciò che è di questa cartella: le attività con data, le carte delle bacheche e gli eventi dei blocchi ```calendar (anche la nota del giorno, che è una sola per tutta l'app, compare). Un clic su un giorno mostra solo ciò che gli appartiene, con il gruppo Del giorno in alto — la nota del giorno, o Crea la nota di questo giorno; azzera, o un nuovo clic sullo stesso giorno, riporta l'elenco completo. I TODO del codice non hanno data e restano nascosti mentre il filtro è attivo. Il pulsante Calendario · questa cartella comprime la griglia per chi vuole solo gli elementi del codice. Solo le carte ancora aperte segnano la griglia; quelle del giorno scelto restano nel loro gruppo, e Del giorno mostra anche gli eventi dei blocchi di quel giorno.

Indice

Modifica

Strumenti

Automazione (IA / script)

Riferimento