macvim-dev / macvim-dev/macvim
Epic: Support dictionary/data lookup in MacVim
Dieses Issue hat noch niemand übernommen.
- Vorherrschende Sprache
- Vim Script
- Sterne
- 7.9k
- Forks
- 691
- PR-Merge-Kennzahlen
- Keine gemergten PRs in 30 T.
Beschreibung
It is useful to support the ability to look up a piece of selected / highlighted text in MacVim and show a OS popup that gives you more information. #1191 was the original issue, but this work has ballooned as this becomes more ambitious and need to span multiple commits. Using this epic to track the work and elicit ideas / brainstorm.
- #1312
- Basic implementation to support looking up text in the Core Text view:
- #1313
- Data detection. Should detect URLs, addresses, etc, using NSDataDetector. Note that WebKit/NSTextView use an internal "Reveal" API, which we don't have access to as a third-party software, so we will not be able to do as good as job as them, especially for things like package tracking and airline numbers.
- Looking up selected texts (when in visual mode) should look up the whole text, not just the individual words.
- #1315
- Vimscript API support to look up arbitrary data. Add a new function
showdefinition()so that we can programmatically invoke this. - Right click menu should show a "Look Up" item. This makes it easier to trigger the look up without need a trackpad as Ctrl-Cmd-D is a little unwieldy and harder to discover.
- Vimscript API support to look up arbitrary data. Add a new function
- Others
- Autocmd to intercept lookups and override what to do (see custom popup as an example)
- Custom popup. This would allow us to popup arbitrary dialog boxes with Markdown / HTML support using NSPopUp. E.g. show documentation in richer format.
- Extend balloon to support using this. Right now balloon is too barebone and text only
- Add documentation to a new
docfolder for technical details and general guidelines. Would be a nice time to update thesrc/MacVim/READMEfile which hasn't been updated forever.
Beitragsleitfaden
Erste Schritte
- Lies das ganze Issue und danach den Beitragsleitfaden des Projekts.
- Schreib ins Issue, dass du es übernimmst — das erspart doppelte Arbeit.
- Forke das Repository und arbeite in einem Branch.
- Öffne einen Pull Request, der die Issue-Nummer nennt.
Rechercherichtung
Beginne mit der Durchsicht der abgeschlossenen Lookup-Arbeiten in #1312, #1313 und #1315 und untersuche anschließend das Beispiel für ein benutzerdefiniertes Popup sowie die vorhandene src/MacVim/README. Der verbleibende Umfang umfasst ein autocmd, umfangreichere benutzerdefinierte Popups, Balloon-Unterstützung und Dokumentation; daher müssen das gewünschte Design und die Kriterien für den Abschluss vor der Implementierung geklärt werden.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Bewertung
- Tech-Stack
- macos, vim
- Bereich
- desktop
- Issue-Typ
- Feature
- Schwierigkeit
- 5/5
- Geschätzter Aufwand
- Über eine Woche
- Aktivitätsstatus
- Veraltet
- Klarheit
- Muss geklärt werden
- Anfängerfreundlichkeit
- 20/100