Go to file
Jonathan Druart b9258aa903 Bug 35043: Use Locale::PO->quote
We have our own "quote_po" sub that is stating that Locale::PO::quote
is buggy because it does not deal with quoting new lines correctly.
However it seems that it is fixed now.

Ideally we could use Locale::PO::quote everywhere, but it does not
escape tab characters:
  $string =~ s/\\(?!t)/\\\\/g;           # \t is a tab

This means the following:
msgid "Tabulation (\\t)"
msgstr "Tabulation (\\t)"
become:
-msgid "Tabulation (\t)"
-msgstr "Tabulation (\t)"

And we are seeing the following on Weblate:
https://snipboard.io/BjQmDC.jpg

Note that Locale::PO has not been updated since 2014...

The real problem behind this is that we have 2 methods to quote strings.
At first glance it seems that Locale::PO::quote was not used before, but
with the introduction of the koha-i18n project we will have scripts that
will use Locale::PO->save_file_fromarray, which uses Locale::PO->quote
=> Those scripts will be used on the translation server for post
processing (security reason, marking potential XSS strings as fuzzy).

Test plan:
0. Do not apply the patch
1. gulp po:update --lang LANG # Replace LANG with your favorite language
   code
2. git commit -a -m"init PO files"
3. Apply this patch
4. Repeate 1.
5. git diff
   => The change is about the "Tabulation" and "New line" strings from
      tools/csv-profiles.tt
6. Translate them (replace the \t and \n with %s) and remove the fuzzy
   flag
7. install the template: cd misc/translator && perl translate install
   LANG
8. Enable the language, use it and go to the "Nouveau profil CSV" view
   => Notice that the \t and \n are correctly displayed.

Signed-off-by: Owen Leonard <oleonard@myacpl.org>

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
2023-11-08 11:00:50 +01:00
C4 Bug 34678: Allow new entries to overwrite hold_fill_targets 2023-11-07 21:37:08 -10:00
Koha Bug 34008: Harmonize attribute names 2023-11-07 22:41:49 -10:00
acqui Bug 34908: Sort item types alphabetically by description when adding a new empty record as an order to a basket 2023-10-25 22:40:04 -10:00
admin Bug 34369: Require CSRF token for updating system preferences 2023-09-26 21:29:27 -10:00
api Bug 34008: Harmonize attribute names 2023-11-07 22:41:49 -10:00
authorities Bug 33406: (QA follow-up) Adjust tests and tidy 2023-09-17 22:49:50 -10:00
basket Bug 34731: Don't call SendQueuedMessages if message_id is bad 2023-09-14 07:54:48 -10:00
bin
…
catalogue Bug 33047: Return 404 instead of 500 when biblio does not exist 2023-07-18 10:28:24 +01:00
cataloguing Bug 32853: Fix cataloguing/value_builder/unimarc_field_125.pl 2023-11-07 22:04:16 -10:00
circ Bug 35003: Make cancelled hold requests filter by branch 2023-11-07 21:40:50 -10:00
clubs Bug 30718: Use flatpickr's altInput 2022-08-19 08:26:31 -03:00
course_reserves Bug 20256: Use new methods 2023-02-02 11:59:26 -03:00
debian Bug 34204: Fix koha-shell under debian 12 2023-10-24 21:31:49 -10:00
docs Bug 34424: Add Emily Lamancusa to QA Team 2023-11-07 22:28:02 -10:00
erm Bug 32922: Remove space in shebang 2023-02-20 09:44:06 -03:00
errors
…
etc Bug 30843: Add mfa_range configuration option for TOTP 2023-10-05 08:36:20 -10:00
ill Bug 28909: Allow illview to use backend template 2022-08-09 13:21:39 -03:00
installer Bug 35180: Fix 246 to 264 in COMMENT of deletedbiblioitems.publishercode 2023-11-07 22:27:10 -10:00
koha-tmpl Bug 35033: Add a validation for biblioitems in about/system information 2023-11-07 22:29:10 -10:00
labels Bug 31633: (follow-up) Group template params 2022-10-03 14:09:59 -03:00
lib/CGI/Session/Serialize
…
members Bug 34910: (follow-up) alert in patron details 2023-11-07 21:09:50 -10:00
misc Bug 35043: Use Locale::PO->quote 2023-11-08 11:00:50 +01:00
offline_circ Bug 33961: Remove built-in offline circ tool 2023-07-17 08:18:59 +01:00
opac Bug 33074: Take ReservesControlBranch into account in opac-reserve.pl 2023-10-09 09:56:08 -10:00
patron_lists
…
patroncards
…
plugins Bug 30367: (follow-up) Same adjustment for gitlab 2023-05-05 10:18:57 -03:00
pos Bug 34731: Don't call SendQueuedMessages if message_id is bad 2023-09-14 07:54:48 -10:00
recalls Bug 34013: Recalls awaiting pickup doesn't show count on each tab 2023-07-17 14:51:00 +01:00
reports Bug 34859: Remove unnecessary params from reports-home.pl 2023-10-05 14:52:14 -10:00
reserve Bug 34634: Show expirationdate of expired holds on reserve/request.pl 2023-09-07 20:13:21 -10:00
reviews
…
rotating_collections
…
serials Bug 34146: Counterpart for serials-edit 2023-07-17 15:57:40 +01:00
services
…
skel
…
suggestion Bug 26994: List names in alphabetical order in Suggestion filter 2023-10-25 20:14:28 -10:00
svc Bug 34014: (follow-up) No need to parse old record before updating 2023-10-25 11:58:38 -10:00
t Bug 34008: Harmonize attribute names 2023-11-07 22:41:49 -10:00
tags Bug 30718: Use flatpickr's altInput 2022-08-19 08:26:31 -03:00
tools Bug 26978: Add item type option to batch extend due date tool 2023-10-12 13:58:06 -10:00
virtualshelves Bug 34731: Don't call SendQueuedMessages if message_id is bad 2023-09-14 07:54:48 -10:00
xt Bug 34911: Test files from HEAD instead of 'master' 2023-10-05 09:38:43 -10:00
.editorconfig
…
.eslintrc.json
…
.gitignore Bug 33710: Ignore how-to related files 2023-05-12 17:50:01 -03:00
.htaccess
…
.mailmap Update .mailmap 2023-07-17 08:12:22 +01:00
.perlcriticrc
…
.perltidyrc Bug 30002: Adjust perltidy 2023-07-12 07:55:00 +01:00
.proverc.dist
…
.stylelintrc.json Bug 31528: (follow-up) A few additional rules 2022-10-03 08:23:15 -03:00
INSTALL
…
Koha.pm Increment version for 23.05.05 release 2023-11-07 20:34:30 -10:00
LICENSE
…
MANIFEST.SKIP
…
Makefile.PL Bug 26700: Remove occurrences in Makefile.PL 2023-07-17 11:01:46 +01:00
README
…
README.md
…
README.robots
…
about.pl Bug 35033: (QA follow-up): tidy up code 2023-11-07 22:29:10 -10:00
app.psgi
…
build-resources.PL Bug 32609: Use the current yarn.lock to generate node_modules 2023-02-10 11:07:57 -03:00
changelanguage.pl
…
cpanfile Bug 33964: (QA follow-up) Remove library from cpanfile 2023-08-07 20:05:46 -10:00
cypress.json Bug 33408: Extend defaultCommandTimeout for cypress 2023-04-13 11:48:00 -03:00
fix-perl-path.PL
…
gulpfile.js Bug 35024: Do not wrap translations 2023-11-08 11:00:29 +01:00
help.pl
…
koha_perl_deps.pl
…
kohaversion.pl
…
mainpage.pl Bug 35019: Add a CSRF token when deleting news 2023-10-25 20:22:12 -10:00
package.json Bug 33066: Introduce a KohaTable Vue component 2023-04-10 07:38:28 -03:00
rewrite-config.PL
…
tsconfig.json Bug 32030: Move cypress to t - fix build_js/watch_js 2022-11-08 09:44:52 -03:00
webpack.config.js Bug 32806: Move main-erm.ts to modules/erm.ts 2023-02-27 11:12:01 -03:00
yarn.lock Bug 33066: Introduce a KohaTable Vue component 2023-04-10 07:38:28 -03:00

README.md

Koha is a free software integrated library system (ILS).

Koha is distributed under the GNU GPL version 3 or later.

Note: Koha does not accept pull requests from git hosting sites.

Note: This project has its own bug tracker, to report a bug or submit a patch visit http://bugs.koha-community.org.

For guidelines on submitting patches for Koha please visit https://wiki.koha-community.org/wiki/SubmitingAPatch

The developers handbook can be found at https://wiki.koha-community.org/wiki/Developer_handbook

http://koha-community.org/

Koha Logo