Git Product home page Git Product logo

user-documentation's Introduction

JabRef User Documentation

This repository serves the content of https://docs.jabref.org/, which is the documentation the literature management software JabRef. :gear: The page itself is rendered using the power of GitBook.

  • πŸ‘‰ To find something to work on, we recommend to look at our user documentation board.
  • πŸ‘‰ To contribute text follow our guide rendered by GitBook. In case you plan larger contributions, please contact us to gain access to the WYSIWG editor on GitBook itself.
  • πŸ‘‰ Feel free to contribute ideas using the issue tracker.

Advanced Contribution Hints

How to regenerate SUMMARY.md from scratch

Use https://github.com/koppor/gitbook-summary-generator.

How to find broken links

  1. Install markdown-link-check: npm install -g markdown-link check
  2. find . -name \*.md -exec markdown-link-check -qq {} \; > bad-links.txt

How to find Markdown errors

You can use the markdown-lint docker image:

docker run --rm \
    -v "$(pwd):/tmp/check" \
    -e INPUT_CONFIG=/tmp/check/.markdownlint.yml \
    avtodev/markdown-lint:v1 \
    /tmp/check/en

Alternatively, you can run the GitHub Lint workflow:

act --rm --platform ubuntu-latest=fwilhe2/act-runner:latest -W .github/workflows/lint.yaml

How to rename files

The gitbook integration changes some of the file names and appends "(1) (2) (1)" or something like this. If one fixes that in the GitHub repository, then the next sync rewrites the names again. The only solution we've found so far is manually replacing the images using the GitBook UI: Left to the image you have a hamburger with a "replace" option.

In case GitBook was fixed, with some command line magic, this could be solved:

  1. Create a script renaming all images: fd -e png -x bash -c "echo '{}' | sed 's/\([^(]*\)\(.*\).png/mv \"\\1\\2.png\" \"\\1.png\"/' | sed 's/ \.png/.png/'" | sort > fix-filenames.sh. Execute in en/.gitbook. Otherwise, fd does not find any file.
  2. Create a script doing the renaming in all .md files: fd -e md -x bash -c "echo sed -i '\"s/assets\/\([^%]*\)\(.*\).png/assets\/\\1.png/\"' {}" > fix-mds.sh.

user-documentation's People

Contributors

amudtogal avatar btut avatar calixtus avatar chary0079 avatar chriba avatar johannes-manner avatar k3kaw8pnf7mkmdsmphz27 avatar kievitjustin avatar koji33 avatar koppor avatar lenhard avatar lex111 avatar linusdietz avatar lyzardking avatar matthiasgeiger avatar mbradbury avatar michizhou avatar mkdjr avatar mlep avatar obraliar avatar oscargus avatar sakshamtaneja21 avatar siedlerchr avatar stefan-kolb avatar supersk322 avatar teertinker avatar thilotee avatar tianyijian avatar tobiasdiez avatar yash-garg 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

Watchers

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

user-documentation's Issues

Creating a FAQ

What about creating a FAQ?
We could develop it progressively, based on the questions asked on the mailing list.

Sync other language index files when new file in en is added

It would be cool to have script or whatever to automatically add the new untranslated page links to the other language index files.
This should be relative simple by just checking if the pagename is already present in the other language files. That would also work for non Latin-Languages like Japanese.

Currently the help pages for each index have to be adapted manually

Add link to discourse forum

I'll add a link to the forum on the main Help-Pages of each language.

Another idea: Shall we add a link "Need more help? Visit the forum" to the general template next to " Back to table of contents" and "Edit this page"?

Automatic content generation

Some content should be imported automatically or generated by the build script. This includes the importFormat example and the translation status. See #11 for a bit more context and some pointers to how this can be achieved.

Migration guidelines

It would be nice to have guidelines describing how to move from Endnote, Mendeley, etc., to JabRef

automate.py: sorting

automate.py should sort the contents of each section alphabetically in the English index.md and then use that sort order for the other language files.

For instance, instead of

Autosave
Backup
The JabRef main window
Best Practices
Command line use and options
The entry editor
Installation
JabRef
Remote operation

There should be

Autosave
Backup
Best Practices
Command line use and options
Installation
JabRef
Remote operation
The entry editor
The JabRef main window

Custom import: outdated?

The help page about custom import filters (http://help.jabref.org/en/CustomImports) has a section dedicated to Creating an import filter. It seems (partly ?) outdated:

Additionally, the first sentence ("For examples and some helpful files on how to build your own importer, please check our download page") is about an unspecified download page...

Create "Since" header

Help pages should be available as early as possible. Since we have help pages for non-released features (e.g., #108), they could be merged if the header showed since which version this help is valid.

"valid-for" could be an alternative, but it seems harder to maintain. Maybe "valid-since" is a good compromise to cover changed functionality , too.
#92 can be implemented in parallel.

Define the status of each help page, and set priorities for update

Some help pages are really out of date.

I suggest to:

  1. label them by indicating at the top of the page if the content is deprecated, up-to-date, etc.
  2. set priorities for updating the pages
  3. inform translators when a new page is considered up-to-date, and so worth translating

I could work on it. But before I start, if you have any suggestions, they are very welcome!

http://help.jabref.org/en/CustomImports/

The code example is not valid (e.g. Util.createNeutralId()). Also, there are references to SourceForge.

Finally, are there any existing custom importers that we would like to add directly to JabRef?

Update key generator description for #1894

If/when JabRef/jabref#1894 is merged, there are two new modifiers for keys: title which converts to title case and camel which converts to camel case.

camel is what was requested in JabRef/jabref#1506 but title may be useful in combination with abbr. For example, An awesome paper on JabRef will become AnAwesomePaperOnJabref with camel, AnAwesomePaperonJabref with title, AAPOJ with camel:abbr, and AAPoJ with title:abbr.

Update help for Search

Refs JabRef/jabref#1876

Added two new pseudo-fields for search: anykeyword to search for a specific keyword and anyfield to search in all fields (useful in combination with search in specific fields)

Add video about PDF management

Add a video explaining following steps:

  1. Add entry using the DOI (Web Search -> DOI to BibTeX)
  2. Drag'n'drop the PDF into the preview panel of the entry
  3. JabRef then asks to rename the PDF according to the bibtex data

grabbed_20160205-152148

Custom formatters

I do not think the support for custom formatters is working anymore (typical indication: add a formatter without adding it to the huge switch in LayoutEntry leads to no formatter found). Maybe we should confirm that and remove the help text and remaining code.

Or even better: get it back working again.

Refs JabRef/jabref#1144 JabRef/jabref#1114 and more importantly a PR I cannot find where the support was removed.

Change in ImportFormat constructor

JabRef/jabref#1731 http://help.jabref.org/en/CustomImports

The ImportFormat constructor now has a mandatory argument ImportFormatPreferences importFormatPreferences which provides some information to the custom import format.

Hence, we need to add a constructor to the example code:

public SimpleCSVImporter(ImportFormatPreferences importFormatPreferences) {
    super(importFormatPreferences);
}

and add some explanation of the preferences that are of (general) interest. Those are

  • Charset getEncoding() returns the encoding set in the preferences.
  • String getKeywordSeparator() returns the keyword separator. For example, this can be used as an argument to bibEntry.addKeywords(...);
  • BibtexKeyPatternPreferences getBibtexKeyPatternPreferences() returns the BibtexKeyPatternPreferences for generating keys with BibtexKeyPatternUtil.makelLabel(...);

Maybe one should update the example to add some examples of the use of these?

Help about translating help

I am planning to create a file about how to translate the help files. Steps described below.

Issue: how to avoid to have a quasi-duplicate of https://github.com/JabRef/help.jabref.org/blob/gh-pages/CONTRIBUTING.md ?
Suggestion: the automate.py script should duplicate the file en/TranslatingHelp.md into CONTRIBUTING.md

  1. Create a file https://github.com/JabRef/help.jabref.org/blob/gh-pages/en/TranslatingHelp.md
  2. get and update information from
    https://github.com/JabRef/jabref/wiki/Translating-JabRef-Interface
    and
    https://github.com/JabRef/help.jabref.org/blob/gh-pages/CONTRIBUTING.md
  3. Mention the specific status of index.md (It is generated by a script)
  4. Status of translations: Mention script: https://github.com/JabRef/help.jabref.org/pull/77
  5. Explain how to translate section headers (files like https://github.com/JabRef/help.jabref.org/blob/gh-pages/en/localization_en.json)

No help page: create an empty file or an issue?

Several (numerous?) features do not have an help page yet (e.g. Cleanup entries, Manage protected terms). How to foster their writing?

  1. create an issue signaling the missing help page and calling for a contribution.
    or
  2. create a help file with a message stating that a contribution is welcome.

I believe option 2 is preferable because:

Any thought?

Relative links do not work

Normally, relative links should work as expected. For instance, clicking "The JabRef main window" in http://help.jabref.org/en/JabRefHelp/ should lead to http://help.jabref.org/en/BaseFrameHelp/ and not to 404.

Possible solutions:

  • Remove the trailing slash in the page names. (Meaning http://help.jabref.org/en/JabRefHelp as new name) This would invalidate all existing URLs, but enable consistent relative links (thereby reducing the efforts of the authors).
  • Add some baseurl html magic in the header

I opt for the first solution, as the URLs are then cleaner. I will try the next days. If I don't succeed, I will go for the section option. Any objections @JabRef/developers?

Document save actions

Save actions are introduced as a new feature. This should be documented.

The feature itself is not that complex, but the variety of formatters that are available are not documented. Hence, we need a short documentation for each formatter.

Title in the frontmatter of fr/Autosave is wrong

The title of the file fr/Autosave is very long (and the same as the first line after the frontmatter).
It should be fairly simple but as my french is a bit rusty I would let do it someone else.

Background: I need the correct title to generate the index files (#77)

Create a "Stub" status (and the relevant header box)

Outdated help files are indicated in their source header with the line outdated: true. This causes a header box to be displayed (see http://help.jabref.org/en/FileLinks), asking for help and giving a direct link for edition.

When a help file is just a stub (because https://github.com/JabRef/help.jabref.org/issues/88), a similar header box should be added. The text in the header could be

Notice: This help page is just a stub. Please help us to develop this page on GitHub.

In the source header, the line could be stub: true

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.