GithubHelp home page GithubHelp logo

ychclone / blink Goto Github PK

View Code? Open in Web Editor NEW
64.0 5.0 5.0 32.45 MB

GUI of indexed grep in Windows and Linux. A source code indexing tool, near instant code search tool and navigation

License: GNU General Public License v3.0

C++ 94.76% C 0.10% QMake 1.85% Python 1.12% CSS 0.28% CMake 0.73% Inno Setup 1.16%
ripgrep ag grep ack ctags indexing-engine code-search-engine code-search code-navigation fzf

blink's Introduction

Blink logo

Blink code search

GUI of indexed grep in Windows and Linux. A source code indexing tool, near instant code search tool and navigation. Good for small to medium size code base. It supports fuzzy matching, auto complete, and live grep for real time query. Manage different projects and switch for different projects Drag and drop of filenames to your favourite editor.

Build status

Screenshots

Screencast

Features

  • Fast search using prebuilt index
  • Fuzzy suggestion in autocomplete
  • Live grep
  • Drag and drop for filename to your favourite editor
  • Switch between multiple projects
  • Very small index size compared to trigram
  • Replaces in files for searched symbol
  • Cross platform

Download, Install

Windows and Linux binaries are available in

Source code is avaliable in

Change Log

version [1.9.3]

  • Support directory to exclude and file mask to exclude

version [1.9.2]

  • can now use *.* as source file mask to process all text file. Binary files will be skipped.
  • default source file mask set to *.*

Code search

Code search

File listing

File listing

Usage

  1. Drop the folder (e.g. from file explorer, nautilus) into the window below project tab. Drop folder

  2. A new project dialog will appears. Type the file extensions that you want to index.

  1. Right click on the project name
  2. Click "Rebuild Symbol"
  3. Double click the project name to make it the active project. Or right click and select "Load"

Load project

  1. Start file filtering and code search on the file and symbol tab

Advanced Usage

For symbol queries, advanced options can be entered: There is no spacing in between e.g. /a10, /n3, /xinclude

  • /a NumberOfLinesAfter
  • /b NumberOfLinesBefore
  • /n NumberOfLinesBeforeAndAFter
  • /f FileNameToMatch
  • /x PatternToExclude

In addition, regular expression can be entered for the queries: e.g. .*mainWindows, (_clicked|_Pressed) It will match all ("and" condition) if multiple symbols are entered for queries.

Configuration

The text editor when double clicking the filename in file tab could be set in configuration. The filename could be dropped to other editor. Option->Setting->Main->Default Editor

Tips

Display result lines before and after

In the text field for symbol, "/n3" could be used to display 3 lines before and after Multiple lines

Match for multiple symbol

Multiple symbols (and condition) could be input for symbol queries. e.g. Multiple match are input "CMainWindow", "_on" as queries. Multiple symbols

Show multiple project

Regular expression could be used to filter the project name and source filename name. e.g. "Or" condition for project name using the pipe "|" regular expression. Regular expression

Troubleshooting

/usr/bin/ld: cannot find -lGL; collect2: error: ld returned 1 exit status

Sol: sudo apt install libgl1-mesa-dev

Qt version not match

sudo rm /usr/bin/qmake
sudo ln -s /home/ychclone/Qt5.14.2/5.14.2/gcc_64/bin/qmake /usr/bin/qmake

Segmentation fault (core dumped) when start

Please cp ./blink to build directory. Please make sure the following config files existed in build directory:

  • blink.ini
  • qtag.conf
  • qt.conf
  • record.xml

qt.qpa.plugin: Could not find the Qt platform plugin "xcb" in ""

Error message: This application failed to start because no Qt platform plugin could be initialized. Reinstalling the application may fix this problem.

Sol:

export QT_QPA_PLATFORM_PLUGIN_PATH=/home/ychclone/Qt5.14.2/5.14.2/gcc_64/plugins/platforms

blink's People

Contributors

ychclone 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  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar

blink's Issues

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.