Coder Social home page Coder Social logo

jfind's People

Contributors

ii14 avatar jake-stewart avatar matu3ba avatar technicalpickles avatar vihu avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

jfind's Issues

build errors

/home/cppshizoid/jfind/src/item_exact_matcher.cpp: In member function ‘virtual bool ItemExactMatcher::setQuery(std::string)’:
/home/cppshizoid/jfind/src/item_exact_matcher.cpp:36:24: error: no matches converting function ‘strcasestr’ to type ‘char* ()(const char, const char*)’
36 | m_comparison = strcasestr;
| ^~~~~~~~~~
In file included from /usr/include/c++/13.1.1/cstring:42,
from /home/cppshizoid/jfind/src/item_exact_matcher.cpp:7:
/usr/include/string.h:376:26: note: candidates are: ‘const char* strcasestr(const char*, const char*)’
376 | extern "C++" const char strcasestr (const char __haystack,
| ^~~~~~~~~~
/usr/include/string.h:374:20: note: ‘char
strcasestr(char
, const char*)’
374 | extern "C++" char strcasestr (char __haystack, const char __needle)
| ^~~~~~~~~~
/home/cppshizoid/jfind/src/item_exact_matcher.cpp:39:24: error: no matches converting function ‘strstr’ to type ‘char
(
)(const char
, const char*)’
39 | m_comparison = strstr;
| ^~~~~~
/usr/include/string.h:343:1: note: candidates are: ‘const char* strstr(const char*, const char*)’
343 | strstr (const char __haystack, const char __needle) __THROW
| ^~~~~~
/usr/include/string.h:337:1: note: ‘char
strstr(char
, const char*)’
337 | strstr (char *__haystack, const char *__needle) __THROW
| ^~~~~~
[ 29%] Building CXX object CMakeFiles/jfind.dir/src/key.cpp.o
make[2]: *** [CMakeFiles/jfind.dir/build.make:230: CMakeFiles/jfind.dir/src/item_exact_matcher.cpp.o] Error 1
make[2]: *** Waiting for unfinished jobs....
make[1]: *** [CMakeFiles/Makefile2:84: CMakeFiles/jfind.dir/all] Error 2
make: *** [Makefile:136: all] Error 2

Readline style keyboard shortcuts

I'm using jfind.nvim and have been really enjoying it. One thing I am missing compared to, say, telescope, is having some keyboard shortcuts for navigating.

For example, in most places like shells or vim's command mode, you can use:

  • C-w: delete the previous 'word'
    -C-a: go to the start of the line
    -C-e: go to the end of the line

I think these are generally referred to as readline keyboard shortcuts.

Also: for some reason, C-a seems to copy and paste the entire message written so far?

python scripting

the script should be the final argument to jfind

for e.g:

ps aux | tail +2 | jfind 'interval(1, refresh)'

this would allow for easier customisation. for example there could be a lua function which highlights a line in the preview. this would make live grep work without the nasty --preview-line flag.

jfind '
    command("rg -n")

    map(ctrl_r, refresh)

    onItemChange(function(item)
        file, line = item:match("(.*):(.*):")
        preview("cat", file)
        highlightPreviewLine(line)
    end)'

and then while doing live grep you could enter fuzzy matching mode with the grepped results

jfind '
    local cmd = "rg -n"
    command(cmd)

    map(ctrl_r, refresh)

    onItemChange(function(item)
        file, line = item:match("(.*):(.*):")
        preview("cat", file)
        highlightPreviewLine(line)
    end)

    local fuzzyMode = false
    map(ctrl_f, function()
        if fuzzyMode then
            useMatcher(FUZZY)
        else
            command(cmd)
        end
        fuzzyMode = ~fuzzyMode
    end)'

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.