Home | Blog | Software | Reviews and Features | Forum | Help | Donate | About us
topbanner_forum
  *

avatar image

Welcome, Guest. Please login or register.
Did you miss your activation email?

Login with username, password and session length
  • October 19, 2017, 02:30 AM
  • Proudly celebrating 10 years online.
  • Donate now to become a lifetime supporting member of the site and get a non-expiring license key for all of our programs.
  • donate

Author Topic: Lintalist - searchable interactive text to copy & paste with plugins  (Read 5821 times)

Lintalist

  • Participant
  • Joined in 2015
  • *
  • Posts: 45
    • View Profile
    • Donate to Member
Hello,

I think there are quite a few AutoHotkey users here on Donationcoder so I thought I'd post a note about my program here.

Website: http://lintalist.github.io/ - Source & releases: https://github.com/lintalist/lintalist/

Background: this is a program (script) I've developed and used for a long time. It was inspired by the Textmate Bundle/Snippet concept which a few years back was hardly available in a Windows text editor. Lintalist has the advantage it should work in any program (as long as it allows AutoHotkey to paste text) not just your editor. Some might compare it to the "tag list" or "clip libraries" you might find in some text editors as well.

Lintalist is an open source program written in AutoHotkey which allows you to store and (incrementally) search and edit texts in bundles and paste a selected text in your active program. The text can be interactive, for example you can automatically insert the current time and date, ask for (basic) user input or make a selection from a list etc and finally it can also run a script. You can use keyboard shortcuts or abbreviations to paste the text (or run the script) without opening the search window.
Bundles can be context sensitive and multiple bundles can be used at the same time (if they match the criteria).

If you write your text in HTML or Markdown you can paste formatted text (bold, italics, images, links etc) into your documents or emails. You can also directly read RTF or Images to paste as well.

Features:

  • A novel feature is the ability to use two parts of text depending on how your bundle is set up
  • Assign keyboard shortcuts to your favourite Snippets
  • Use abbreviations (shorthand) for your favourite Snippets (not meant to replace or compete with AHK hotstrings)
  • Run scripts which can be included in a Bundle
  • Standard Plugins:
    • Set caret position after pasting
    • Insert date & time (incl. math operations)
    • Pick date or date range from a Calendar
    • Choose item from a list
    • Use counters
    • Use selected text
    • Use the clipboard
    • Insert text from a file
    • Chain snippets (insert the contents of one snippet into another snippet)
    • Insert a character
    • Calculations
    • Use local variables
    • Split text into parts to reuse
       

Search window:



1. Type query (multiple search modes)
2. Menu + search options.
3. Result list with Part 1, Part 2, Key(board shortcut), Short(hand, abbreviation). Columns are dynamic, if part 2, key or short are not present in the loaded bundle(s) they will not be displayed.
4. Preview of top most or selected snippet text. In statusbar: loaded bundle(s) and hits / number of snippets.

Videos (not the best of quality, YT reduces the quality I'm afraid after uploading)

1. Introduction: http://youtu.be/XfjZPAhHB8c
2. HTML/Markdown: http://youtu.be/Q6SFkttjUQk
3. Formatted text: http://youtu.be/J1StUarGHmI
4. Plugins: http://youtu.be/Rtd_ChyRVkM

Notes:

Some example bundles are available here https://github.com/lintalist/lintalist-bundles/ simply copy these to the Bundles\ folder and restart Lintalist - right click tray menu.

The release (see GH) contains lintalist.exe - it is simply a renamed autohotkey.exe included for convenience.
In order for Lintalist to run scripts it needs a copy of AutoHotkey - Lintalist is not meant to be compiled.

Feedback is always welcome!

Website: http://lintalist.github.io/ - Source & releases: https://github.com/lintalist/lintalist/

Edit2: forgot to add that is a fully portable, it stores everything in the folder the program resides in (settings and bundles). When you run it for the very first time it does ask if you want a shortcut on your desktop or would like to automatically start it with Windows but if you answer don't do that you can run it from a USB drive or dropbox account for example.
« Last Edit: August 25, 2015, 11:55 AM by Lintalist, Reason: Edits: links to website, GH and info about being portable »

Curt

  • Supporting Member
  • Joined in 2006
  • **
  • Posts: 7,269
    • View Profile
    • Donate to Member
Bravo, Congratulations, and Thank You!

My favourite line in your post:

Quote from: Lintalist
a program (script) I've developed and used for a long time.

 :up:

Lintalist

  • Participant
  • Joined in 2015
  • *
  • Posts: 45
    • View Profile
    • Donate to Member
Thanks. Glad you liked the post :-)

Edit: forgot to add that is a fully portable, it stores everything in the folder the program resides in (settings and bundles). When you run it for the very first time it does ask if you want a shortcut on your desktop or would like to automatically start it with Windows but if you answer don't do that you can run it from a USB drive or dropbox account for example.
« Last Edit: August 24, 2015, 01:35 PM by Lintalist, Reason: adding portable info. »

ewemoa

  • Honorary Member
  • Joined in 2008
  • **
  • Posts: 2,857
    • View Profile
    • Donate to Member
fully portable, it stores everything in the folder the program resides in (settings and bundles). When you run it for the very first time it does ask if you want a shortcut on your desktop or would like to automatically start it with Windows but if you answer don't do that you can run it from a USB drive or dropbox account for example.

Nice!

IainB

  • Supporting Member
  • Joined in 2008
  • **
  • Posts: 6,720
    • View Profile
    • Donate to Member
@Lintalist: Thankyou. Very interesting proggie (speaking as another AHK user). I read through the details at the website: http://lintalist.github.io/
Lintalist looks like it could be a pretty powerful tool. I see what you mean about the TextMate concept for Windows.
A few really useful applications in DOS/Windows started off being cribbed from the Mac environment and being transplanted into Windows.

Lintalist

  • Participant
  • Joined in 2015
  • *
  • Posts: 45
    • View Profile
    • Donate to Member
Always nice to meet fellow AHK users :Thmbsup:

I saw some other threads where Lintalist was mentioned here on DC, for that reason I would like to highlight the note that is also in the documentation and website
Quote
Note: although Lintalist can expand abbreviations it is not intended to replicate or replace the native AutoHotkey Hotstrings features, see http://ahkscript.org/docs/Hotstrings.htm for an introduction and description of all the options.

For those interested, for some background (and a teaser) you can read my reply to a question by thiagotalma on GitHub here https://github.com/l.../lintalist/issues/32

Lintalist

  • Participant
  • Joined in 2015
  • *
  • Posts: 45
    • View Profile
    • Donate to Member
Re: Lintalist - searchable interactive text to copy & paste with plugins
« Reply #6 on: October 10, 2015, 03:29 AM »
Just a heads up, a new beta is available, v1.7:

  • New: SearchLetterVariations setting -  Allow for variations of letters in search query - 'e' also searches for 'eéèë...' etc
  • New: SnippetEditor Setting - Allow user to set editor to use for "Edit in Editor"
  • New: PlaySound Setting - Play sounds after paste, open or close of Search Gui (beeps, default Windows media or user files)
  • New: added help menu with 'Help' and 'About' options to the GUIs and added 'About' to tray menu
  • Minor fixes and code refactoring.

I'd be interested to hear any feedback on the search results if you use this version, especially if they are unexpected or different from previous versions.
Adding SearchLetterVariations meant I had to change some underlying code for the various search methods which now makes more of use Regular Expressions which could mean results are different or displaying the results of a fuzzy search has become slower.
(For the PlaySound option: there are no sound files included, just look at sound.ini in the lintalist folder for instructions where to place them.)

Download the ZIP and unpack it to a folder of your choice:
https://github.com/l...list/archive/dev.zip

Feedback welcome: https://github.com/l.../lintalist/issues/49 or here of course.

Lintalist

  • Participant
  • Joined in 2015
  • *
  • Posts: 45
    • View Profile
    • Donate to Member
Re: Lintalist - searchable interactive text to copy & paste with plugins
« Reply #7 on: January 16, 2016, 03:17 AM »
v1.7 is now available. You can use the tray menu, check for updates, to upgrade, or download it manually via https://github.com/l...t/lintalist/releases

  • New: SearchLetterVariations setting - Allow for variations of letters in search query - 'e' also searches for 'eéèë...' etc
  • New: SnippetEditor Setting - Allow user to set editor to use for "Edit in Editor".
  • New: PlaySound Setting - Play sounds after paste, open or close of Search Gui (beeps, default Windows media or user files).
  • New: Added help menu with 'Help' and 'About' options to the GUIs and added 'About' to tray menu.
  • New: Split plugin now accepts "named Split" [[split_name]].
  • Fix: Tray menu: manage bundles and manage local variables weren't working.
  • Fix: Always resolve Vars in nested situations.
  • Various other minor fixes, code refactoring and documentation.
Upgrading:

  • If you are upgrading to this new release, you can use the tray menu option "Check for updates" and have it done automatically.
  • If you prefer to do it manually, please use the following procedure:
    • close your running copy of Lintalist first
    • unpack the zip file and overwrite all files. Note: any (changed) bundles and settings will not be overwritten




A quick note about the "named splits" - just in case you're wondering how useful the [[split]] plugin is, here is a short example how you can use it to create a Snippet with "logic".
You can use Choice (or another Plugin) to select an item and use that output to update other parts of the snippet.

Quote
[[Split_C1=[[choice=1   Option1|2   Option2|3   Option3|4   Option4]]|\t]]
[[Split_CSub=sub1 sub2 sub3 sub4|\s]]

You made Choice Number [[SP_C1=1]]
And the sub-selection that goes with it is:
[[SP_CSub=[[SP_C1=1]]]]

This will ask you to make a Choice from Option1..4, and if you pick Option3 it will use "3" as a selection criteria for another Split.
So if the above snippet would have the following output (if you select Option3):

Quote
You made Choice Number 3
And the sub-selection that goes with it is:
sub3

Another example can be found here http://lintalist.git...b.io/#combiningsplit

Lintalist

  • Participant
  • Joined in 2015
  • *
  • Posts: 45
    • View Profile
    • Donate to Member
A new beta is available (v1.8) - apart from some bug fixes and minor changes, the new features are:

  • New Command line parameter -Ini: load specific settings file (ini)
  • Calendar and DateTime plugins now accept Locale Identifiers (LCID) parameter
  • Multi-caret implemented for certain text editors, see docs/MultiCaret.md

If you paste a snippet into an editor which supports Multi-caret/edit you can now use those in Lintalist snippets by placing multiple caret locations in your snippet. Supported editors: Atom, Brackets, EverEdit, Sublime Text, TextAdept, UltraEdit 23+ but if you know of other editors that could be added let me know. Details in docs/MultiCaret.md after unpacking the zip download. The Editor needs to have a keyboard shortcut for "select word" AND "select next occurrence". If you can only use the mouse to do this, you won't be able to use this with feature of Lintalist snippets (Notepad++ and RJ TextEd for example won't work as you need to use the mouse)

Suggestions and feedback welcome...

More complete Changelog and Download:
https://github.com/lintalist/lintalist/issues/63

Sneak preview multi-caret/edit:

Lintalist

  • Participant
  • Joined in 2015
  • *
  • Posts: 45
    • View Profile
    • Donate to Member
v1.8 is now available. You can use the tray menu, check for updates, to upgrade, or download it manually via https://github.com/l...t/lintalist/releases

  • New: Command line parameters -Ini: load specific settings file (ini) 
  • New: Multi-caret implemented for certain text editors (see DOC) 
  • New: Random plugin, return random value or entry from a list (also added to Choice)
  • New: Calendar and DateTime now accept Locale Identifiers (LCID) parameter 
  • Change: Snippet, Bundle, Counter and Local variable editors are now all visible on the taskbar as a child window of a disabled Lintalist Search GUI (if present) this makes it easer to switch from/to the appropriate editor using alt-tab and mouse 
  • Added: Choice plugin GUI now has "Endless scrolling in a listbox" similar to Search GUI listview + Added a Random option
  • Fix: Cancelling a snippet with Choice plugin no longer makes Shorthand stop working 
  • Fix: After using quick search with one result e.g. automatic pasting of the only snippet, pressing space or tab executed the snippet again. Cleared the typing history after each paste fixed it.
  • Fix: Pause shortcut could cause error, added #IfWinNotActive ahk_group

Upgrading:

  • If you are upgrading to this new release, you can use the tray menu option "Check for updates" and have it done automatically.
  • If you prefer to do it manually, please use the following procedure:
    • close your running copy of Lintalist first
    • unpack the zip file and overwrite all files. Note: any (changed) bundles and settings will not be overwritten

Lintalist

  • Participant
  • Joined in 2015
  • *
  • Posts: 45
    • View Profile
    • Donate to Member
Re: Lintalist - searchable interactive text to copy & paste with plugins
« Reply #10 on: October 30, 2016, 04:17 AM »
v1.9 is now available

  • New: Choice plugin - Added option to provide "information/question" hint by starting first item with a question mark
  • New: Introduce "Not Titlematch" for bundles by using an exclamation mark 
  • Fix: Choice plugin - Multiple Choices working again
  • Fix: Random plugin - Count correct number of RandomItems
  • Fix: Lintalist - Added "Select and press enter" Choice gui to  BundleHotkeys group
  • Added: Visual Studio Code (code.exe) Configuration to MultiCaret.ini

Upgrading:

  • If you are upgrading to this new release, you can use the tray menu option "Check for updates" and have it done automatically.
  • If you prefer to do it manually, please use the following procedure:
    • close your running copy of Lintalist first
    • unpack the zip file and overwrite all files. Note: any (changed) bundles and settings will not be overwritten

Source & Releases here https://github.com/lintalist/lintalist/

and as always feedback welcome!

Lintalist

  • Participant
  • Joined in 2015
  • *
  • Posts: 45
    • View Profile
    • Donate to Member
Re: Lintalist - searchable interactive text to copy & paste with plugins
« Reply #11 on: February 18, 2017, 05:24 AM »
Update v1.9.2

  • New: Replaced check/radio boxes with button bar (using Class_Toolbar by pulover) andicons from the Fugue & Diagona Icon sets by Yusuke Kamiyamane. #51
    button-bar(1).pngLintalist - searchable interactive text to copy & paste with plugins
  • New: Right click context menu listview #70
  • Fix: Refactored LoadAll and Selected Bundle code, should work better now (lintalist.ahk)
  • Fix: Refactored duplicate hotkey and shorthand detection code, should work better now (editor.ahk)
  • Fix: SetIcon.ahk now also looks at Part2 of the snippet as it should

Available as usual at https://github.com/l...t/lintalist/releases