pax_global_header00006660000000000000000000000064134662331040014514gustar00rootroot0000000000000052 comment=f58c0aba29c8e848d0d1c7b13a370db72e938084 guake-3.6.3/000077500000000000000000000000001346623310400126215ustar00rootroot00000000000000guake-3.6.3/.editorconfig000066400000000000000000000006551346623310400153040ustar00rootroot00000000000000# EditorConfig is awesome: http://EditorConfig.org # top-most EditorConfig file root = true [*] end_of_line = lf insert_final_newline = true indent_style = space indent_size = 4 tab_width = 4 charset = utf-8 trim_trailing_whitespace = true max_line_length = 100 [*.rst] tab_width = 4 [*.yml] tab_width = 2 [*.yaml] tab_width = 2 [*.xml] tab_width = 2 [*.glade] tab_width = 2 [Makefile] indent_style = tab indent_size = 4 guake-3.6.3/.flake8000066400000000000000000000001621346623310400137730ustar00rootroot00000000000000 [flake8] ignore = E226,E302,E41,E402,F401,F821,C901,E722 max-line-length = 100 exclude = env max-complexity = 25 guake-3.6.3/.github/000077500000000000000000000000001346623310400141615ustar00rootroot00000000000000guake-3.6.3/.github/ISSUE_TEMPLATE.md000066400000000000000000000013461346623310400166720ustar00rootroot00000000000000Before opening a new issue, please read the following: - for **feature requests**, please use [FeatHub](https://feathub.com/Guake/guake). This allow us to spot directly which are the most requested features. - before opening **a new bug**, please search for a similar one in the [GitHub issue](https://github.com/Guake/guake/issues). - to **report a bug**, please give the following information: - **Guake Version**: see in about box. - The bug may have been already reported and fixed on the main development branch `master`. If you are confortable with building Guake from source, known if the bug is still on HEAD is a very valuable information - Please describe **your system** (Linux distribution and GNOME version). guake-3.6.3/.github/ISSUE_TEMPLATE/000077500000000000000000000000001346623310400163445ustar00rootroot00000000000000guake-3.6.3/.github/ISSUE_TEMPLATE/bug_report.md000066400000000000000000000016751346623310400210470ustar00rootroot00000000000000--- name: Bug report about: Create a report to help us improve title: '' labels: '' assignees: '' --- Be sure to check the existing issues (both open and closed!), and make sure you are running the latest version of Guake. For how to run the latest Guake in your computer, please refer to [Install from source](https://guake.readthedocs.io/en/latest/user/installing.html#install-from-source). **Describe the bug** A clear and concise description of what the bug is. **Expected behavior** A clear and concise description of what you expected to happen. **Actual behavior** What you actually get. **To Reproduce** Provide the steps to reproduce the behavior ------------------------------------------------------------------------------- Please run `$ guake --support`, and paste the results here. Don't put backticks (`` ` ``) around it! The output already contains Markdown formatting. And make sure you run the command **OUTSIDE** the Guake. guake-3.6.3/.github/ISSUE_TEMPLATE/feature_request.md000066400000000000000000000011251346623310400220700ustar00rootroot00000000000000--- name: Feature request about: Suggest an idea for this project title: '' labels: '' assignees: '' --- Be sure to check the existing issues (both open and closed!), and make sure you are running the latest version of Guake. For how to run the latest Guake in your computer, please refer to [Install from source](https://guake.readthedocs.io/en/latest/user/installing.html#install-from-source). --------------------------------------- Please use [FeatHub](https://feathub.com/Guake/guake) to fill-up a feature request. This allow us to spot directly which are the most requested features. guake-3.6.3/.github/PULL_REQUEST_TEMPLATE.md000066400000000000000000000024411346623310400177630ustar00rootroot00000000000000Please follow these steps before submitting a new Pull Request to Guake: - rebase on latest HEAD: ```bash $ git pull --rebase upstream master ``` - hack your change - to execute the code styling, checks and unit tests: ```bash $ make style check reno-lint test ``` - describe your change in a slug file for automatic release note generation, using: ```bash $ make reno SLUG= ``` and edit the created file in `releasenotes/notes/`. You can see how `reno` works using `pipenv run reno --help`. Please use a generic slug (eg, for translation update, use `translation`, for bugfix use `bugfix`,...) - create new commit message ```bash $ $ git commit --all ``` - If your change is related to a GitHub issue, you can add a reference using `#123` where 123 is the ID of the issue. You can use `closes #123` to have GitHub automatically close the issue when your contribution get merged - Semantic commit is supported (and recommended). Add one of the following line in your commit messages: ``` # For a bug fix, uses: sem-ver: bugfix # For a new feature, uses: sem-ver: feature # Please do not use the 'breaking change' syntax (`sem-ver: api-break`), # it is reserved for really big reworks ``` guake-3.6.3/.gitignore000066400000000000000000000016361346623310400146170ustar00rootroot00000000000000# Linux, IDE and Editors # pycharm .idea # kde .directory .kdev4/ guake.kdev4 # vim *~ #Python stuff *.[oa] *.l[oa] *.py[co] *.mo *.gmo *.orig *.pot .eggs/ *.deb ./config.* configure .libs .deps intltool-* stamp-* libtool ltmain.sh missing aclocal.m4 depcomp install-sh mkinstalldirs guake.desktop guake-prefs.desktop org.gnome.Guake.service data/org.guake.Guake.service Makefile.in.in autom4te.cache POTFILES m4/intltool.m4 m4/libtool.m4 m4/ltoptions.m4 m4/ltsugar.m4 m4/ltversion.m4 m4/lt~obsolete.m4 m4/gnome-doc-utils.m4 py-compile debian compile doc/src/conf.py doc-pak/ description-pak backup-*.tgz workdir/ activate env/ # directory with pytest metadata .cache .eggs/* *.bak src/guake.egg-info/ __pycache__ dist/ *.egg-info/ build/ docs/_build/ AUTHORS ChangeLog .venv .vscode/ guake/data/gschemas.compiled .pytest_cache/ releasenotes/notes/reno.cache guake/paths.py guake/paths.py.dev RELEASENOTES.rst guake-3.6.3/.pep8rc000066400000000000000000000004571346623310400140310ustar00rootroot00000000000000[pep8] show-source = yes statistics = yes count = yes max-line-length = 100 # List of currently ignored PEP8 issues. Some of them definetely should be # enabled in future. # ignore = E731,E402 # E731: ignore use def instead of lambda assignation # E402: ignore module level import not at top of file guake-3.6.3/.pylintrc000066400000000000000000000367361346623310400145050ustar00rootroot00000000000000[MASTER] # A comma-separated list of package or module names from where C extensions may # be loaded. Extensions are loading into the active Python interpreter and may # run arbitrary code. extension-pkg-whitelist= # Add files or directories to the blacklist. They should be base names, not # paths. ignore=CVS # Add files or directories matching the regex patterns to the blacklist. The # regex matches against base names, not paths. ignore-patterns= # Python code to execute, usually for sys.path manipulation such as # pygtk.require(). #init-hook= # Use multiple processes to speed up Pylint. Specifying 0 will auto-detect the # number of processors available to use. jobs=4 # Control the amount of potential inferred values when inferring a single # object. This can help the performance when dealing with large functions or # complex, nested conditions. limit-inference-results=100 # List of plugins (as comma separated values of python modules names) to load, # usually to register additional checkers. load-plugins= # Pickle collected data for later comparisons. persistent=yes # Specify a configuration file. #rcfile= # When enabled, pylint would attempt to guess common misconfiguration and emit # user-friendly hints instead of false-positive error messages. suggestion-mode=yes # Allow loading of arbitrary C extensions. Extensions are imported into the # active Python interpreter and may run arbitrary code. unsafe-load-any-extension=no [MESSAGES CONTROL] # Only show warnings with the listed confidence levels. Leave empty to show # all. Valid levels: HIGH, INFERENCE, INFERENCE_FAILURE, UNDEFINED. confidence= # Disable the message, report, category or checker with the given id(s). You # can either give multiple identifiers separated by comma (,) or put this # option multiple times (only on the command line, not in the configuration # file where it should appear only once). You can also use "--disable=all" to # disable everything first and then reenable specific checks. For example, if # you want to run only the similarities checker, you can use "--disable=all # --enable=similarities". If you want to run only the classes checker, but have # no Warning level messages displayed, use "--disable=all --enable=classes # --disable=W". disable= arguments-differ, attribute-defined-outside-init, bad-continuation, broad-except, consider-using-ternary, deprecated-method, deprecated-module, duplicate-code, fixme, import-error, # needed for travis build inconsistent-return-statements, invalid-name, locally-enabled, missing-docstring, no-member, no-method-argument, no-name-in-module, no-self-use, no-value-for-parameter, pointless-string-statement, protected-access, redefined-builtin, too-few-public-methods, too-many-arguments, too-many-boolean-expressions, too-many-instance-attributes, too-many-lines, too-many-locals, too-many-nested-blocks, too-many-public-methods, too-many-statements, undefined-variable, ungrouped-imports, unnecessary-pass, unreachable, unused-argument, unused-import, unused-variable, wrong-import-order, wrong-import-position, # Enable the message, report, category or checker with the given id(s). You can # either give multiple identifier separated by comma (,) or put this option # multiple time (only on the command line, not in the configuration file where # it should appear only once). See also the "--disable" option for examples. enable=c-extension-no-member [REPORTS] # Python expression which should return a note less than 10 (10 is the highest # note). You have access to the variables errors warning, statement which # respectively contain the number of errors / warnings messages and the total # number of statements analyzed. This is used by the global evaluation report # (RP0004). evaluation=10.0 - ((float(5 * error + warning + refactor + convention) / statement) * 10) # Template used to display messages. This is a python new-style format string # used to format the message information. See doc for all details. #msg-template= # Set the output format. Available formats are text, parseable, colorized, json # and msvs (visual studio). You can also give a reporter class, e.g. # mypackage.mymodule.MyReporterClass. output-format=text # Tells whether to display a full report or only the messages. reports=no # Activate the evaluation score. score=yes [REFACTORING] # Maximum number of nested blocks for function / method body max-nested-blocks=5 # Complete name of functions that never returns. When checking for # inconsistent-return-statements if a never returning function is called then # it will be considered as an explicit return statement and no message will be # printed. never-returning-functions=sys.exit [BASIC] # Naming style matching correct argument names. argument-naming-style=snake_case # Regular expression matching correct argument names. Overrides argument- # naming-style. #argument-rgx= # Naming style matching correct attribute names. attr-naming-style=snake_case # Regular expression matching correct attribute names. Overrides attr-naming- # style. #attr-rgx= # Bad variable names which should always be refused, separated by a comma. bad-names=foo, bar, baz, toto, tutu, tata # Naming style matching correct class attribute names. class-attribute-naming-style=any # Regular expression matching correct class attribute names. Overrides class- # attribute-naming-style. #class-attribute-rgx= # Naming style matching correct class names. class-naming-style=PascalCase # Regular expression matching correct class names. Overrides class-naming- # style. #class-rgx= # Naming style matching correct constant names. const-naming-style=UPPER_CASE # Regular expression matching correct constant names. Overrides const-naming- # style. #const-rgx= # Minimum line length for functions/classes that require docstrings, shorter # ones are exempt. docstring-min-length=-1 # Naming style matching correct function names. function-naming-style=snake_case # Regular expression matching correct function names. Overrides function- # naming-style. #function-rgx= # Good variable names which should always be accepted, separated by a comma. good-names=i, j, k, ex, Run, _ # Include a hint for the correct naming format with invalid-name. include-naming-hint=no # Naming style matching correct inline iteration names. inlinevar-naming-style=any # Regular expression matching correct inline iteration names. Overrides # inlinevar-naming-style. #inlinevar-rgx= # Naming style matching correct method names. method-naming-style=snake_case # Regular expression matching correct method names. Overrides method-naming- # style. #method-rgx= # Naming style matching correct module names. module-naming-style=snake_case # Regular expression matching correct module names. Overrides module-naming- # style. #module-rgx= # Colon-delimited sets of names that determine each other's naming style when # the name regexes allow several styles. name-group= # Regular expression which should only match function or class names that do # not require a docstring. no-docstring-rgx=^_ # List of decorators that produce properties, such as abc.abstractproperty. Add # to this list to register other decorators that produce valid properties. # These decorators are taken in consideration only for invalid-name. property-classes=abc.abstractproperty # Naming style matching correct variable names. variable-naming-style=snake_case # Regular expression matching correct variable names. Overrides variable- # naming-style. #variable-rgx= [VARIABLES] # List of additional names supposed to be defined in builtins. Remember that # you should avoid to define new builtins when possible. additional-builtins= # Tells whether unused global variables should be treated as a violation. allow-global-unused-variables=yes # List of strings which can identify a callback function by name. A callback # name must start or end with one of those strings. callbacks=cb_, _cb # A regular expression matching the name of dummy variables (i.e. expected to # not be used). dummy-variables-rgx=_+$|(_[a-zA-Z0-9_]*[a-zA-Z0-9]+?$)|dummy|^ignored_|^unused_ # Argument names that match this expression will be ignored. Default to name # with leading underscore. ignored-argument-names=_.*|^ignored_|^unused_ # Tells whether we should check for unused import in __init__ files. init-import=no # List of qualified module names which can have objects that can redefine # builtins. redefining-builtins-modules=six.moves,past.builtins,future.builtins,builtins,io [FORMAT] # Expected format of line ending, e.g. empty (any line ending), LF or CRLF. expected-line-ending-format= # Regexp for a line that is allowed to be longer than the limit. ignore-long-lines=^\s*(# )??$ # Number of spaces of indent required inside a hanging or continued line. indent-after-paren=4 # String used as indentation unit. This is usually " " (4 spaces) or "\t" (1 # tab). indent-string=' ' # Maximum number of characters on a single line. max-line-length=100 # Maximum number of lines in a module. max-module-lines=1000 # List of optional constructs for which whitespace checking is disabled. `dict- # separator` is used to allow tabulation in dicts, etc.: {1 : 1,\n222: 2}. # `trailing-comma` allows a space between comma and closing bracket: (a, ). # `empty-line` allows space-only lines. no-space-check=trailing-comma, dict-separator # Allow the body of a class to be on the same line as the declaration if body # contains single statement. single-line-class-stmt=no # Allow the body of an if to be on the same line as the test if there is no # else. single-line-if-stmt=no [TYPECHECK] # List of decorators that produce context managers, such as # contextlib.contextmanager. Add to this list to register other decorators that # produce valid context managers. contextmanager-decorators=contextlib.contextmanager # List of members which are set dynamically and missed by pylint inference # system, and so shouldn't trigger E1101 when accessed. Python regular # expressions are accepted. generated-members= # Tells whether missing members accessed in mixin class should be ignored. A # mixin class is detected if its name ends with "mixin" (case insensitive). ignore-mixin-members=yes # Tells whether to warn about missing members when the owner of the attribute # is inferred to be None. ignore-none=yes # This flag controls whether pylint should warn about no-member and similar # checks whenever an opaque object is returned when inferring. The inference # can return multiple potential results while evaluating a Python object, but # some branches might not be evaluated, which results in partial inference. In # that case, it might be useful to still emit no-member and other checks for # the rest of the inferred objects. ignore-on-opaque-inference=yes # List of class names for which member attributes should not be checked (useful # for classes with dynamically set attributes). This supports the use of # qualified names. ignored-classes=optparse.Values,thread._local,_thread._local # List of module names for which member attributes should not be checked # (useful for modules/projects where namespaces are manipulated during runtime # and thus existing member attributes cannot be deduced by static analysis. It # supports qualified module names, as well as Unix pattern matching. ignored-modules= # Show a hint with possible names when a member name was not found. The aspect # of finding the hint is based on edit distance. missing-member-hint=yes # The minimum edit distance a name should have in order to be considered a # similar match for a missing member name. missing-member-hint-distance=1 # The total number of similar names that should be taken in consideration when # showing a hint for a missing member. missing-member-max-choices=1 [LOGGING] # Logging modules to check that the string format arguments are in logging # function parameter format. logging-modules=logging [MISCELLANEOUS] # List of note tags to take in consideration, separated by a comma. notes=FIXME, XXX, TODO [SIMILARITIES] # Ignore comments when computing similarities. ignore-comments=yes # Ignore docstrings when computing similarities. ignore-docstrings=yes # Ignore imports when computing similarities. ignore-imports=no # Minimum lines number of a similarity. min-similarity-lines=4 [SPELLING] # Limits count of emitted suggestions for spelling mistakes. max-spelling-suggestions=4 # Spelling dictionary name. Available dictionaries: none. To make it working # install python-enchant package.. spelling-dict= # List of comma separated words that should not be checked. spelling-ignore-words= # A path to a file that contains private dictionary; one word per line. spelling-private-dict-file= # Tells whether to store unknown words to indicated private dictionary in # --spelling-private-dict-file option instead of raising a message. spelling-store-unknown-words=no [IMPORTS] # Allow wildcard imports from modules that define __all__. allow-wildcard-with-all=no # Analyse import fallback blocks. This can be used to support both Python 2 and # 3 compatible code, which means that the block might have code that exists # only in one or another interpreter, leading to false positives when analysed. analyse-fallback-blocks=no # Deprecated modules which should not be used, separated by a comma. deprecated-modules=optparse,tkinter.tix # Create a graph of external dependencies in the given file (report RP0402 must # not be disabled). ext-import-graph= # Create a graph of every (i.e. internal and external) dependencies in the # given file (report RP0402 must not be disabled). import-graph= # Create a graph of internal dependencies in the given file (report RP0402 must # not be disabled). int-import-graph= # Force import order to recognize a module as part of the standard # compatibility libraries. known-standard-library= # Force import order to recognize a module as part of a third party library. known-third-party=enchant [DESIGN] # Maximum number of arguments for function / method. max-args=5 # Maximum number of attributes for a class (see R0902). max-attributes=7 # Maximum number of boolean expressions in an if statement. max-bool-expr=5 # Maximum number of branch for function / method body. max-branches=12 # Maximum number of locals for function / method body. max-locals=15 # Maximum number of parents for a class (see R0901). max-parents=7 # Maximum number of public methods for a class (see R0904). max-public-methods=20 # Maximum number of return / yield for function / method body. max-returns=6 # Maximum number of statements in function / method body. max-statements=50 # Minimum number of public methods for a class (see R0903). min-public-methods=2 [CLASSES] # List of method names used to declare (i.e. assign) instance attributes. defining-attr-methods=__init__, __new__, setUp # List of member names, which should be excluded from the protected access # warning. exclude-protected=_asdict, _fields, _replace, _source, _make # List of valid names for the first argument in a class method. valid-classmethod-first-arg=cls # List of valid names for the first argument in a metaclass class method. valid-metaclass-classmethod-first-arg=cls [EXCEPTIONS] # Exceptions that will emit a warning when being caught. Defaults to # "Exception". overgeneral-exceptions=Exception guake-3.6.3/.travis.yml000066400000000000000000000037431346623310400147410ustar00rootroot00000000000000language: python dist: xenial python: - "3.5" - "3.6" env: global: - PIPENV_VENV_IN_PROJECT=1 - PIPENV_IGNORE_VIRTUALENVS=1 install: - | # Force unshallow and checkout the current branch # https://docs.openstack.org/reno/latest/user/usage.html#within-travis-ci # git log --pretty=format:"%h %s" --graph git config remote.origin.fetch +refs/heads/*:refs/remotes/origin/* git fetch --unshallow --tags if [[ $(git rev-parse --abbrev-ref HEAD) == "master" ]]; then echo "reattaching HEAD on master" git symbolic-ref --short HEAD || git checkout -b ${TRAVIS_BRANCH}-test $TRAVIS_BRANCH fi git log --pretty=format:"%h %s" --graph - sudo apt update -q - yes | sudo ./scripts/bootstrap-dev-debian.sh - ./scripts/bootstrap-dev-pip.sh system - sudo apt install --no-install-recommends -y xvfb gir1.2-gtk-3.0 python3-gi python3-gi-cairo gir1.2-wnck-3.0 gobject-introspection libgirepository1.0-dev before_script: - export DISPLAY=:99.0 script: # Test no system dependencies prevent readthedocs build - | ( set -e mkdir test-rtd virtualenv test-rtd . ./test-rtd/bin/activate pip install -r requirements-dev.txt rm -rf test-rtd ) # for dev - make dev-travis - pipenv run pip install pycairo pygobject # check - make check - make build - make test-travis # prepare for deployment - make generate-paths deploy: provider: pypi user: stibbons skip_cleanup: true # keep build artifacts for paths.py ! distributions: sdist bdist_wheel password: secure: > MIbsyar7H1epBcp+TpSJ3APYUnIiQAB0M9cLEXFzqwJU1bjPev8fYNbfCQB0bA/TSHXaQjfR F3sTFFYxpVOxjRHPIWctBTTuKOETAd3XR96YtVRGLpglxLvI+9U5YPuGWC4SbKuAE8L8pqH9 O9pnKqZCaarGxOm+GjEZrfzfm1g= on: tags: true repo: Guake/guake condition: $TRAVIS_PYTHON_VERSION = 3.6 guake-3.6.3/.yapf000066400000000000000000000011361346623310400135620ustar00rootroot00000000000000 [style] based_on_style = pep8 column_limit = 100 indent_dictionary_value = true split_before_first_argument = false split_penalty_after_opening_bracket = 15000 align_closing_bracket_with_visual_indent = true blank_line_before_class_docstring = true coalesce_brackets = true continuation_indent_width = 4 dedent_closing_brackets = true ; each_dict_entry_on_separate_line = true blank_line_before_nested_class_or_def = true spaces_around_power_operator = true spaces_before_comment = 2 split_before_logical_operator = false split_arguments_when_comma_terminated = true allow_split_before_dict_value = false guake-3.6.3/COPYING000066400000000000000000000431221346623310400136560ustar00rootroot00000000000000 GNU GENERAL PUBLIC LICENSE Version 2, June 1991 Copyright (C) 1989, 1991 Free Software Foundation, Inc. 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA Everyone is permitted to copy and distribute verbatim copies of this license document, but changing it is not allowed. Preamble The licenses for most software are designed to take away your freedom to share and change it. By contrast, the GNU General Public License is intended to guarantee your freedom to share and change free software--to make sure the software is free for all its users. This General Public License applies to most of the Free Software Foundation's software and to any other program whose authors commit to using it. (Some other Free Software Foundation software is covered by the GNU Library General Public License instead.) You can apply it to your programs, too. When we speak of free software, we are referring to freedom, not price. Our General Public Licenses are designed to make sure that you have the freedom to distribute copies of free software (and charge for this service if you wish), that you receive source code or can get it if you want it, that you can change the software or use pieces of it in new free programs; and that you know you can do these things. To protect your rights, we need to make restrictions that forbid anyone to deny you these rights or to ask you to surrender the rights. These restrictions translate to certain responsibilities for you if you distribute copies of the software, or if you modify it. For example, if you distribute copies of such a program, whether gratis or for a fee, you must give the recipients all the rights that you have. You must make sure that they, too, receive or can get the source code. And you must show them these terms so they know their rights. We protect your rights with two steps: (1) copyright the software, and (2) offer you this license which gives you legal permission to copy, distribute and/or modify the software. Also, for each author's protection and ours, we want to make certain that everyone understands that there is no warranty for this free software. If the software is modified by someone else and passed on, we want its recipients to know that what they have is not the original, so that any problems introduced by others will not reflect on the original authors' reputations. Finally, any free program is threatened constantly by software patents. We wish to avoid the danger that redistributors of a free program will individually obtain patent licenses, in effect making the program proprietary. To prevent this, we have made it clear that any patent must be licensed for everyone's free use or not licensed at all. The precise terms and conditions for copying, distribution and modification follow. GNU GENERAL PUBLIC LICENSE TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION 0. This License applies to any program or other work which contains a notice placed by the copyright holder saying it may be distributed under the terms of this General Public License. The "Program", below, refers to any such program or work, and a "work based on the Program" means either the Program or any derivative work under copyright law: that is to say, a work containing the Program or a portion of it, either verbatim or with modifications and/or translated into another language. (Hereinafter, translation is included without limitation in the term "modification".) Each licensee is addressed as "you". Activities other than copying, distribution and modification are not covered by this License; they are outside its scope. The act of running the Program is not restricted, and the output from the Program is covered only if its contents constitute a work based on the Program (independent of having been made by running the Program). Whether that is true depends on what the Program does. 1. You may copy and distribute verbatim copies of the Program's source code as you receive it, in any medium, provided that you conspicuously and appropriately publish on each copy an appropriate copyright notice and disclaimer of warranty; keep intact all the notices that refer to this License and to the absence of any warranty; and give any other recipients of the Program a copy of this License along with the Program. You may charge a fee for the physical act of transferring a copy, and you may at your option offer warranty protection in exchange for a fee. 2. You may modify your copy or copies of the Program or any portion of it, thus forming a work based on the Program, and copy and distribute such modifications or work under the terms of Section 1 above, provided that you also meet all of these conditions: a) You must cause the modified files to carry prominent notices stating that you changed the files and the date of any change. b) You must cause any work that you distribute or publish, that in whole or in part contains or is derived from the Program or any part thereof, to be licensed as a whole at no charge to all third parties under the terms of this License. c) If the modified program normally reads commands interactively when run, you must cause it, when started running for such interactive use in the most ordinary way, to print or display an announcement including an appropriate copyright notice and a notice that there is no warranty (or else, saying that you provide a warranty) and that users may redistribute the program under these conditions, and telling the user how to view a copy of this License. (Exception: if the Program itself is interactive but does not normally print such an announcement, your work based on the Program is not required to print an announcement.) These requirements apply to the modified work as a whole. If identifiable sections of that work are not derived from the Program, and can be reasonably considered independent and separate works in themselves, then this License, and its terms, do not apply to those sections when you distribute them as separate works. But when you distribute the same sections as part of a whole which is a work based on the Program, the distribution of the whole must be on the terms of this License, whose permissions for other licensees extend to the entire whole, and thus to each and every part regardless of who wrote it. Thus, it is not the intent of this section to claim rights or contest your rights to work written entirely by you; rather, the intent is to exercise the right to control the distribution of derivative or collective works based on the Program. In addition, mere aggregation of another work not based on the Program with the Program (or with a work based on the Program) on a volume of a storage or distribution medium does not bring the other work under the scope of this License. 3. You may copy and distribute the Program (or a work based on it, under Section 2) in object code or executable form under the terms of Sections 1 and 2 above provided that you also do one of the following: a) Accompany it with the complete corresponding machine-readable source code, which must be distributed under the terms of Sections 1 and 2 above on a medium customarily used for software interchange; or, b) Accompany it with a written offer, valid for at least three years, to give any third party, for a charge no more than your cost of physically performing source distribution, a complete machine-readable copy of the corresponding source code, to be distributed under the terms of Sections 1 and 2 above on a medium customarily used for software interchange; or, c) Accompany it with the information you received as to the offer to distribute corresponding source code. (This alternative is allowed only for noncommercial distribution and only if you received the program in object code or executable form with such an offer, in accord with Subsection b above.) The source code for a work means the preferred form of the work for making modifications to it. For an executable work, complete source code means all the source code for all modules it contains, plus any associated interface definition files, plus the scripts used to control compilation and installation of the executable. However, as a special exception, the source code distributed need not include anything that is normally distributed (in either source or binary form) with the major components (compiler, kernel, and so on) of the operating system on which the executable runs, unless that component itself accompanies the executable. If distribution of executable or object code is made by offering access to copy from a designated place, then offering equivalent access to copy the source code from the same place counts as distribution of the source code, even though third parties are not compelled to copy the source along with the object code. 4. You may not copy, modify, sublicense, or distribute the Program except as expressly provided under this License. Any attempt otherwise to copy, modify, sublicense or distribute the Program is void, and will automatically terminate your rights under this License. However, parties who have received copies, or rights, from you under this License will not have their licenses terminated so long as such parties remain in full compliance. 5. You are not required to accept this License, since you have not signed it. However, nothing else grants you permission to modify or distribute the Program or its derivative works. These actions are prohibited by law if you do not accept this License. Therefore, by modifying or distributing the Program (or any work based on the Program), you indicate your acceptance of this License to do so, and all its terms and conditions for copying, distributing or modifying the Program or works based on it. 6. Each time you redistribute the Program (or any work based on the Program), the recipient automatically receives a license from the original licensor to copy, distribute or modify the Program subject to these terms and conditions. You may not impose any further restrictions on the recipients' exercise of the rights granted herein. You are not responsible for enforcing compliance by third parties to this License. 7. If, as a consequence of a court judgment or allegation of patent infringement or for any other reason (not limited to patent issues), conditions are imposed on you (whether by court order, agreement or otherwise) that contradict the conditions of this License, they do not excuse you from the conditions of this License. If you cannot distribute so as to satisfy simultaneously your obligations under this License and any other pertinent obligations, then as a consequence you may not distribute the Program at all. For example, if a patent license would not permit royalty-free redistribution of the Program by all those who receive copies directly or indirectly through you, then the only way you could satisfy both it and this License would be to refrain entirely from distribution of the Program. If any portion of this section is held invalid or unenforceable under any particular circumstance, the balance of the section is intended to apply and the section as a whole is intended to apply in other circumstances. It is not the purpose of this section to induce you to infringe any patents or other property right claims or to contest validity of any such claims; this section has the sole purpose of protecting the integrity of the free software distribution system, which is implemented by public license practices. Many people have made generous contributions to the wide range of software distributed through that system in reliance on consistent application of that system; it is up to the author/donor to decide if he or she is willing to distribute software through any other system and a licensee cannot impose that choice. This section is intended to make thoroughly clear what is believed to be a consequence of the rest of this License. 8. If the distribution and/or use of the Program is restricted in certain countries either by patents or by copyrighted interfaces, the original copyright holder who places the Program under this License may add an explicit geographical distribution limitation excluding those countries, so that distribution is permitted only in or among countries not thus excluded. In such case, this License incorporates the limitation as if written in the body of this License. 9. The Free Software Foundation may publish revised and/or new versions of the General Public License from time to time. Such new versions will be similar in spirit to the present version, but may differ in detail to address new problems or concerns. Each version is given a distinguishing version number. If the Program specifies a version number of this License which applies to it and "any later version", you have the option of following the terms and conditions either of that version or of any later version published by the Free Software Foundation. If the Program does not specify a version number of this License, you may choose any version ever published by the Free Software Foundation. 10. If you wish to incorporate parts of the Program into other free programs whose distribution conditions are different, write to the author to ask for permission. For software which is copyrighted by the Free Software Foundation, write to the Free Software Foundation; we sometimes make exceptions for this. Our decision will be guided by the two goals of preserving the free status of all derivatives of our free software and of promoting the sharing and reuse of software generally. NO WARRANTY 11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION. 12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. END OF TERMS AND CONDITIONS How to Apply These Terms to Your New Programs If you develop a new program, and you want it to be of the greatest possible use to the public, the best way to achieve this is to make it free software which everyone can redistribute and change under these terms. To do so, attach the following notices to the program. It is safest to attach them to the start of each source file to most effectively convey the exclusion of warranty; and each file should have at least the "copyright" line and a pointer to where the full notice is found. Copyright (C) This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA Also add information on how to contact you by electronic and paper mail. If the program is interactive, make it output a short notice like this when it starts in an interactive mode: Gnomovision version 69, Copyright (C) year name of author Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'. This is free software, and you are welcome to redistribute it under certain conditions; type `show c' for details. The hypothetical commands `show w' and `show c' should show the appropriate parts of the General Public License. Of course, the commands you use may be called something other than `show w' and `show c'; they could even be mouse-clicks or menu items--whatever suits your program. You should also get your employer (if you work as a programmer) or your school, if any, to sign a "copyright disclaimer" for the program, if necessary. Here is a sample; alter the names: Yoyodyne, Inc., hereby disclaims all copyright interest in the program `Gnomovision' (which makes passes at compilers) written by James Hacker. , 1 April 1989 Ty Coon, President of Vice This General Public License does not permit incorporating your program into proprietary programs. If your program is a subroutine library, you may consider it more useful to permit linking proprietary applications with the library. If this is what you want to do, use the GNU Library General Public License instead of this License. guake-3.6.3/MANIFEST.in000066400000000000000000000002041346623310400143530ustar00rootroot00000000000000prune .github prune git-hooks prune releasenotes include guake * prune guake/tests exclude guake/paths.py.in include guake/paths.py guake-3.6.3/Makefile000066400000000000000000000365731346623310400142770ustar00rootroot00000000000000.PHONY: build dev PYTHON_INTERPRETER?=python3 MODULE:=guake DESTDIR:=/ prefix?=/usr/local exec_prefix:=$(prefix) bindir = $(exec_prefix)/bin # findout the dist-package directory name. Under most system, users can install on dist-package. # On debian, site-package is reserved for the official python packages and has precedence over # dist-package PYTHON_SITE_PACKAGE_NAME:=$(shell $(PYTHON_INTERPRETER) scripts/find-first-site-package.py) PYTHON_SITE_PACKAGE_DIR=$(prefix)/lib/python$(shell $(PYTHON_INTERPRETER) -c "import sys; v = sys.version_info; print('{}.{}'.format(v.major, v.minor))")/$(PYTHON_SITE_PACKAGE_NAME) OLD_PREFIX:=$(DESTDIR)usr ROOT_DIR=$(shell pwd) DATA_DIR=$(ROOT_DIR)/guake/data COMPILE_SCHEMA:=1 datarootdir:=$(prefix)/share datadir:=$(datarootdir) localedir:=$(datarootdir)/locale gsettingsschemadir:=$(datarootdir)/glib-2.0/schemas AUTOSTART_FOLDER:=~/.config/autostart DEV_DATA_DIR:=$(DATA_DIR) DEV_IMAGE_DIR:=$(DATA_DIR)/pixmaps DEV_LOCALE_DIR:=$(localedir) DEV_GLADE_DIR:=$(DATA_DIR) DEV_SCHEMA_DIR:=$(DATA_DIR) DEV_GUAKE_THEME_DIR:=$(DATA_DIR)/themes SHARE_DIR:=$(datadir)/guake GUAKE_THEME_DIR:=$(SHARE_DIR)/guake LOGIN_DESTOP_PATH = $(SHARE_DIR) IMAGE_DIR:=$(SHARE_DIR)/pixmaps GLADE_DIR:=$(SHARE_DIR) SCHEMA_DIR:=$(gsettingsschemadir) SLUG:=fragment_name default: prepare-install # 'make' target, so users can install guake without need to install the 'dev' dependencies prepare-install: generate-desktop generate-paths generate-mo compile-glib-schemas-dev reset: dconf reset -f /apps/guake/ all: clean dev style checks dists test docs dev: clean-ln-venv ensure-pip pipenv-install-dev requirements ln-venv setup-githook \ prepare-install install-dev-locale dev-travis: ensure-pip-system pipenv-install-dev requirements setup-githook prepare-install ensure-pip: ./scripts/bootstrap-dev-pip.sh ensure-pip-system: ./scripts/bootstrap-dev-pip.sh system dev-no-pipenv: clean virtualenv --python $(PYTHON_INTERPRETER) .venv . .venv/bin/activate && pip install -r requirements.txt -r requirements-dev.txt -e . pipenv-install-dev: pipenv install --dev --python $(PYTHON_INTERPRETER) ln-venv: # use that to configure a symbolic link to the virtualenv in .venv rm -rf .venv ln -s $$(pipenv --venv) .venv clean-ln-venv: @rm -f .venv install-system: install-schemas compile-shemas install-locale install-guake install-guake: # you probably want to execute this target with sudo: # sudo make install @echo "Installing from on your system is not recommended." @echo "Please prefer you application package manager (apt, yum, ...)" @$(PYTHON_INTERPRETER) -m pip install -r requirements.txt @if [ -f guake/paths.py.dev ]; then rm -f guake/paths.py.dev; fi @if [ -f guake/paths.py ]; then mv guake/paths.py guake/paths.py.dev; fi @cp -f guake/paths.py.in guake/paths.py @sed -i -e 's|{{ LOCALE_DIR }}|"$(localedir)"|g' guake/paths.py @sed -i -e 's|{{ IMAGE_DIR }}|"$(IMAGE_DIR)"|g' guake/paths.py @sed -i -e 's|{{ GLADE_DIR }}|"$(GLADE_DIR)"|g' guake/paths.py @sed -i -e 's|{{ GUAKE_THEME_DIR }}|"$(GUAKE_THEME_DIR)"|g' guake/paths.py @sed -i -e 's|{{ SCHEMA_DIR }}|"$(SCHEMA_DIR)"|g' guake/paths.py @sed -i -e 's|{{ LOGIN_DESTOP_PATH }}|"$(LOGIN_DESTOP_PATH)"|g' guake/paths.py @sed -i -e 's|{{ AUTOSTART_FOLDER }}|"$(AUTOSTART_FOLDER)"|g' guake/paths.py @$(PYTHON_INTERPRETER) setup.py install --root "$(DESTDIR)" --prefix="$(prefix)" --optimize=1 @rm -f guake/paths.py @if [ -f guake/paths.py.dev ]; then mv guake/paths.py.dev guake/paths.py; fi @update-desktop-database || echo "Could not run update-desktop-database, are you root?" @rm -rfv build *.egg-info install-locale: for f in $$(find po -iname "*.mo"); do \ l="$${f%%.*}"; \ lb=$$(basename $$l); \ install -Dm644 "$$f" "$(DESTDIR)$(localedir)/$$lb/LC_MESSAGES/guake.mo"; \ done; install-dev-locale: for f in $$(find po -iname "*.mo"); do \ l="$${f%%.*}"; \ lb=$$(basename $$l); \ install -Dm644 "$$f" "guake/po/$$lb/LC_MESSAGES/guake.mo"; \ done; uninstall-locale: install-old-locale find $(DESTDIR)$(localedir)/ -name "guake.mo" -exec rm -f {} \; uninstall-dev-locale: @rm -rf guake/po install-old-locale: @find $(OLD_PREFIX)/share/locale/ -name "guake.mo" -exec rm -f {} \; install-schemas: install -Dm644 "$(DEV_DATA_DIR)/guake.desktop" "$(DESTDIR)$(prefix)/share/applications/guake.desktop" install -Dm644 "$(DEV_DATA_DIR)/guake-prefs.desktop" "$(DESTDIR)$(prefix)/share/applications/guake-prefs.desktop" install -Dm644 "$(DEV_DATA_DIR)/guake.appdata.xml" "$(DESTDIR)$(prefix)/share/metainfo/guake.appdata.xml" mkdir -p $(DESTDIR)$(IMAGE_DIR) install -Dm644 $(DEV_DATA_DIR)/pixmaps/*.png "$(DESTDIR)$(IMAGE_DIR)/" install -Dm644 $(DEV_DATA_DIR)/pixmaps/*.svg "$(DESTDIR)$(IMAGE_DIR)/" install -Dm644 $(DEV_DATA_DIR)/pixmaps/guake.png "$(DESTDIR)$(prefix)/share/pixmaps/guake.png" mkdir -p $(DESTDIR)$(SHARE_DIR) mkdir -p $(DESTDIR)$(GLADE_DIR) install -Dm644 $(DEV_DATA_DIR)/*.glade "$(DESTDIR)$(GLADE_DIR)" mkdir -p $(DESTDIR)$(SHARE_DIR) install -Dm644 "$(DEV_DATA_DIR)/autostart-guake.desktop" "$(DESTDIR)$(SHARE_DIR)" mkdir -p $(DESTDIR)$(SCHEMA_DIR) install -Dm644 "$(DEV_DATA_DIR)/org.guake.gschema.xml" "$(DESTDIR)$(SCHEMA_DIR)/" compile-shemas: if [ $(COMPILE_SCHEMA) = 1 ]; then glib-compile-schemas $(DESTDIR)$(gsettingsschemadir); fi uninstall-system: uninstall-schemas @rm -rf $(PYTHON_SITE_PACKAGE_DIR)/guake || true @rm -f $(bindir)/guake @rm -f $(bindir)/guake-prefs purge-system: uninstall-system reset uninstall-schemas: uninstall-old-schemas rm -f "$(prefix)/share/applications/guake.desktop" rm -f "$(prefix)/share/applications/guake-prefs.desktop" rm -f "$(prefix)/share/metainfo/guake.appdata.xml" rm -fr "$(IMAGE_DIR)" rm -fr "$(SHARE_DIR)" rm -f "$(SCHEMA_DIR)/org.guake.gschema.xml" uninstall-old-schemas: @rm -f "$(OLD_PREFIX)/share/applications/guake.desktop" @rm -f "$(OLD_PREFIX)/share/applications/guake-prefs.desktop" @rm -f "$(OLD_PREFIX)/share/metainfo/guake.appdata.xml" @rm -f "$(OLD_PREFIX)/share/pixmaps/guake.png" @rm -f "$(OLD_PREFIX)/share/glib-2.0/schemas/org.guake.gschema.xml" @rm -f "$(OLD_PREFIX)/share/glib-2.0/schemas/schema.guake.gschema.xml" @rm -fr "$(OLD_PREFIX)/share/guake" @rm -f $(OLD_PREFIX)/lib/python$(shell $(PYTHON_INTERPRETER) -c "import sys; v = sys.version_info; print('{}.{}'.format(v.major, v.minor))")/$(PYTHON_SITE_PACKAGE_DIR)/guake/data/schema.guake.gschema.xml reinstall: sudo make uninstall && make && sudo make install && $(DESTDIR)$(bindir)/guake reinstall-v: sudo make uninstall && make && sudo make install && $(DESTDIR)$(bindir)/guake -v compile-glib-schemas-dev: clean-schemas glib-compile-schemas --strict $(DEV_DATA_DIR) clean-schemas: rm -f $(DEV_DATA_DIR)/gschemas.compiled style: fiximports autopep8 yapf fiximports: @for fil in $$(find setup.py guake -name "*.py"); do \ echo "Sorting imports from: $$fil"; \ pipenv run fiximports $$fil; \ done autopep8: pipenv run autopep8 --in-place --recursive setup.py $(MODULE) yapf: pipenv run yapf --style .yapf --recursive -i $(MODULE) checks: flake8 pylint reno-lint flake8: pipenv run python setup.py flake8 pylint: pipenv run pylint --rcfile=.pylintrc --output-format=colorized $(MODULE) sc: style check dists: update-po requirements prepare-install rm-dists sdist bdist wheels build: dists sdist: generate-paths export SKIP_GIT_SDIST=1 && pipenv run python setup.py sdist rm-dists: rm -rf build dist bdist: generate-paths # pipenv run python setup.py bdist @echo "Ignoring build of bdist package" wheels: generate-paths pipenv run python setup.py bdist_wheel wheel: wheels run-local: compile-glib-schemas-dev ifdef V pipenv run ./scripts/run-local.sh -v else pipenv run ./scripts/run-local.sh endif run-local-prefs: compile-glib-schemas-dev pipenv run ./scripts/run-local-prefs.sh run-fr: compile-glib-schemas-dev LC_ALL=fr_FR.UTF8 pipenv run ./scripts/run-local.sh shell: pipenv shell test: pipenv run pytest $(MODULE) test-travis: xvfb-run -a pipenv run pytest $(MODULE) test-coverage: pipenv run py.test -v --cov $(MODULE) --cov-report term-missing test-pip-install-sdist: clean-pip-install-local generate-paths sdist @echo "Testing installation by pip (will install on ~/.local)" pip install --upgrade -vvv --user $(shell ls -1 dist/*.tar.gz | sort | head -n 1) ls -la ~/.local/share/guake ~/.local/bin/guake clean-pip-install-local: @rm -rfv ~/.local/guake @rm -rfv ~/.local/bin/guake @rm -rfv ~/.local/lib/python3.*/site-packages/guake @rm -rfv ~/.local/share/guake test-pip-install-wheel: clean-pip-install-local generate-paths wheel @echo "Testing installation by pip (will install on ~/.local)" pip install --upgrade -vvv --user $(shell ls -1 dist/*.whl | sort | head -n 1) ls -la ~/.local/share/guake ~/.local/bin/guake -v sct: style check update-po requirements test docs: clean-docs sdist cd docs && pipenv run make html docs-open: xdg-open docs/_build/html/index.html tag-pbr: @{ \ set -e ;\ export VERSION=$$(pipenv run python setup.py --version | cut -d. -f1,2,3); \ echo "I: Computed new version: $$VERSION"; \ echo "I: presse ENTER to accept or type new version number:"; \ read VERSION_OVERRIDE; \ VERSION=$${VERSION_OVERRIDE:-$$VERSION}; \ PROJECTNAME=$$(pipenv run python setup.py --name); \ echo "I: Tagging $$PROJECTNAME in version $$VERSION with tag: $$VERSION" ; \ echo "$$ git tag $$VERSION -m \"$$PROJECTNAME $$VERSION\""; \ git tag $$VERSION -m "$$PROJECTNAME $$VERSION"; \ echo "I: Pushing tag $$VERSION, press ENTER to continue, C-c to interrupt"; \ echo "$$ git push upstream $$VERSION"; \ } @# Note: @# To sign, need gpg configured and the following command: @# git tag -s $$VERSION -m \"$$PROJECTNAME $$VERSION\"" pypi-publish: build pipenv run python setup.py upload -r pypi update: pipenv update --clear pipenv install --dev lock: pipenv-lock requirements requirements: pipenv run pipenv_to_requirements pipenv-lock: pipenv lock freeze: pipenv run pip freeze githook: bash git-hooks/post-commit setup-githook: rm -f .git/hooks/post-commit cp -fv git-hooks/* .git/hooks/ push: githook git push origin --tags clean: clean-ln-venv rm-dists clean-docs clean-po clean-schemas clean-py clean-paths uninstall-dev-locale @echo "clean successful" clean-py: @pipenv --rm ; true @find . -name "*.pyc" -exec rm -f {} \; @rm -f $(DEV_DATA_DIR)/guake-prefs.desktop $(DEV_DATA_DIR)/guake.desktop @rm -rf .eggs *.egg-info po/*.pot clean-paths: rm -f guake/paths.py guake/paths.py.dev clean-po: @rm -f po/guake.pot @find po -name "*.mo" -exec rm -f {} \; clean-docs: rm -rf doc/_build update-po: echo "generating pot file" @find guake -iname "*.py" | xargs xgettext --from-code=UTF-8 --output=guake-python.pot @find $(DEV_DATA_DIR) -iname "*.glade" | sed -E "s#$(ROOT_DIR)/##g" | xargs xgettext --from-code=UTF-8 \ -L Glade \ --output=guake-glade.pot @(\ find $(DEV_DATA_DIR) -iname "*.desktop" | sed -E "s#$(ROOT_DIR)/##g" | xargs xgettext --from-code=UTF-8 \ -L Desktop \ --output=guake-desktop.pot \ ) || ( \ echo "Skipping .desktop files, is your gettext version < 0.19.1?" && \ touch guake-desktop.pot) @msgcat --use-first guake-python.pot guake-glade.pot guake-desktop.pot > po/guake.pot @rm guake-python.pot guake-glade.pot guake-desktop.pot @for f in $$(find po -iname "*.po"); do \ echo "updating $$f"; \ msgcat --use-first "$$f" po/guake.pot > "$$f.new"; \ mv "$$f.new" $$f; \ done; pot: update-po generate-mo: @for f in $$(find po -iname "*.po"); do \ echo "generating $$f"; \ l="$${f%%.*}"; \ msgfmt "$$f" -o "$$l.mo"; \ done; generate-desktop: @echo "generating desktop files" @msgfmt --desktop --template=$(DEV_DATA_DIR)/guake.template.desktop \ -d po \ -o $(DEV_DATA_DIR)/guake.desktop || ( \ echo "Skipping .desktop files, is your gettext version < 0.19.1?" && \ cp $(DEV_DATA_DIR)/guake.template.desktop $(DEV_DATA_DIR)/guake.desktop) @msgfmt --desktop --template=$(DEV_DATA_DIR)/guake-prefs.template.desktop \ -d po \ -o $(DEV_DATA_DIR)/guake-prefs.desktop || ( \ echo "Skipping .desktop files, is your gettext version < 0.19.1?" && \ cp $(DEV_DATA_DIR)/guake-prefs.template.desktop $(DEV_DATA_DIR)/guake-prefs.desktop) generate-paths: @echo "Generating path.py..." @cp -f guake/paths.py.in guake/paths.py @# Generic @sed -i -e 's|{{ LOGIN_DESTOP_PATH }}|""|g' guake/paths.py @sed -i -e 's|{{ AUTOSTART_FOLDER }}|""|g' guake/paths.py @# Dev environment: @sed -i -e 's|{{ LOCALE_DIR }}|get_default_locale_dir()|g' guake/paths.py @sed -i -e 's|{{ IMAGE_DIR }}|get_default_image_dir()|g' guake/paths.py @sed -i -e 's|{{ GUAKE_THEME_DIR }}|get_default_theme_dir()|g' guake/paths.py @sed -i -e 's|{{ GLADE_DIR }}|get_default_glade_dir()|g' guake/paths.py @sed -i -e 's|{{ SCHEMA_DIR }}|get_default_schema_dir()|g' guake/paths.py reno: pipenv run reno new $(SLUG) --edit reno-lint: pipenv run reno -q lint release-note: reno-lint release-note-news release-note-github release-note-news: reno-lint @echo "Generating release note for NEWS file" @rm -f guake/releasenotes/notes/reno.cache @pipenv run python setup.py build_reno --output-file NEWS.rst.in @grep -v -R "^\.\.\ " NEWS.rst.in | cat -s > NEWS.rst @cat releasenotes/archive/NEWS.pre-3.0 >> NEWS.rst @rm -fv NEWS.rst.in @echo "Updated NEWS.rst" release-note-github: reno-lint @echo @echo "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!" @echo "!! Generating release note for GitHub !!" @echo "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!" @echo "-------- copy / paste from here --------" @# markdown_github to be avoided => gfm output comes in pandoc 2.0.4 release dec 2017 @pipenv run reno report 2>/dev/null | \ pandoc -f rst -t markdown --atx-headers --wrap=none --tab-stop 2 | \ tr '\n' '\r' | \ sed 's/\r\r//g' | \ sed 's/\r\-\ \r\r\ /\r-/g' | \ sed 's/\r\ \ \:\ \ \ /\r /g' | \ sed 's/\r\r\ \ \ \ \-\ /\r - /g' | \ sed 's/\r\ \ \ \ \-\ /\r - /g' | \ sed 's/\r\ \ >\ \-\ /\r - /g' | \ sed 's/\\\#/\#/g' | \ tr '\r' '\n' release: git checkout -f master git pull --rebase upstream master @{ \ set -e ;\ export VERSION=$$(pipenv run python setup.py --version | cut -d. -f1,2,3); \ echo "I: Computed new version: $$VERSION"; \ echo "I: presse ENTER to accept or type new version number:"; \ read VERSION_OVERRIDE; \ VERSION=$${VERSION_OVERRIDE:-$$VERSION}; \ PROJECTNAME=$$(pipenv run python setup.py --name); \ echo "I: Tagging $$PROJECTNAME in version $$VERSION with tag: $$VERSION" ; \ echo "I: Pushing tag $$VERSION, press ENTER to continue, C-c to interrupt"; \ git commit --all -m "Release $$VERSION" --allow-empty --no-edit ; \ git tag $$VERSION -m "$$PROJECTNAME $$VERSION"; \ make release-note-news rm-dists update-po dists ; \ git commit --all --amend --no-edit; \ git tag -f "$${VERSION}"; \ make release-note-github; \ echo ""; \ echo "Please check your git history and push when ready with:"; \ echo " git push upstream master"; \ echo " git push upstream $$VERSION"; \ echo ""; \ echo "Revert with:"; \ echo " git tag -d $$VERSION"; \ } # aliases to gracefully handle typos on poor dev's terminal check: checks devel: dev develop: dev dist: dists doc: docs install: install-system purge: purge-system pypi: pypi-publish run: run-local run-prefs: run-local-prefs styles: style uninstall: uninstall-system upgrade: update wheel: wheels guake-3.6.3/NEWS.rst000066400000000000000000001176171346623310400141440ustar00rootroot00000000000000===== Guake ===== 3.6.3 ===== New Features ------------ - Add drag-n-drop to terminal (text & uris) - When scrolling with "shift" (1 page) or "shift + ctrl" (4 pages) it will be faster (#271) Bug Fixes --------- - Add schema_version check for tabs session restore - Add save/restore terminal split for tabs session - Save/Restore terminal split by pre-order traversal full binary tree in list - Bump tabs session schema_version to 2 (to support terminal split) - Lazy restore terminal split until Guake is visible - Manage terminal signal handler by handler_ids - Avoid spurious resize event when showing fullscreened window - Make sure workspace-specific-tab-sets only enable on X11 backend (due to wnck) - Add install/uninstall-dev-locale to support dev locale - Fix DualTerminalBox grab focus when remove dead child - Support customize prefix for make - Fix re-focus on terminal after rename dialog destroy - Fix split terminal by menu will not follow last terminal cwd (if option set) - Fix delete_shell using os.waitpid (should not use it) Translation Updates ------------------- - German - French 3.6.2 ===== Bug Fixes --------- - Respect the XDG Base Directory Specification by supporting ``XDG_CONFIG_HOME`` environment variable to find the ``~/.config`` directory. Translation Updates ------------------- - Czech (thanks @p-bo) - Dutch (thanks @Vistaus) - Norwegian Bokmål (thanks @comradekingu) - Polish (thanks @piotrdrag) - Russian (thanks @f2404) Notes for Package Maintainers ----------------------------- - The ``data`` directory is back into ``guake`` module, in order to prepare for the migration to importlib-resource (#1405). This should simplify a lot the load of resources, and avoid all the complication due to difference in prod/dev/traditional linux/debian customization/... 3.6.1 ===== Bug Fixes --------- - Fix search box background so that it will follow current theme - Minor build system fixes 3.6.0 ===== Release Summary --------------- This release brings three of the most awaited features on Guake: - search in current terminal - session saving - settings export and import Our MVC ("Most Valuable Contributor") for this release is Louie Lu (@mlouielu) who worked hard to build these three features in a row! Thank you very much for your hard work ! New Features ------------ - Add --support option to Guake CLI for user when need to report issue - Add save/restore tabs function. - Add label parameter to ``notebook.new_page_with_focus`` - Add search box for terminal. Default hotkey is ``Ctrl+Shift+F``. - Add session save preferences for startup/tabs: - "restore-tabs-startup": when enabled, it will restore tabs when startup - "restore-tabs-notify": when enabled, it will notify user after tabs restored (except startup) - "save-tabs-when-changed": when enabled, it will automatically save tabs session when changed (new/del/reorder) - Add CLI option to split tab: ``--split-vertical`` and ``--split-horizontal``. - Save and restore Guake settings Bug Fixes --------- - Add libwnck to bootstrap scripts - Fix a need for double toggling to hide when using command line with ``--show`` and option with ``only_show_hide = False``. - Remove unused logging level setup - Fix window-title-changed didn't save tabs - fix typo - Fix ``vte-warning`` when using ``Vte.Regex.new_for_match`` - Workspaces can now properly save/restore tabs - Fix ``on_terminal_title_changed`` only searching in current_notebook (it should find every notebook) Translation Updates ------------------- - fr (French) - pl (Polish) - added zh_TW (Chinese Traditional). Louie Lu would be very glad to have some help on localizing Guake! - ru (Russian) - nb (Norvegian) - sv (Swedish) - nl (Dutch) Notes for Package Maintainers ----------------------------- - Package maintainers should be aware that ``libwnck`` (Window Navigator Construction Kit) is now a mandatory dependency of Guake. 3.5.0 ===== Release Summary --------------- This version is mainly a maintaince release, after the big reworks on Guake from last year. I took some delay in fixing Guake due to a growing family. Thanks again for the various contributors who submitted their patches, it helps a lot the whole community. I may be able to find more time in the upcoming months to add even cooler features to our beloved Guake. New Features ------------ - new hotkey (CTRL+SHIFT+H) to open new tab in home directory - "New tab" button #1471 - Open new tab by double-clicking on the tab bar - Add new context menu on the notebook - Add a CLI option to change palette scheme #1345 - Bold text is also bright (>= VTE 0.52 only) - `guake --split-vertical` and `--split-horizontal` split the current tab just like the context menu does - Optional close buttons for tabs (disabled by default) - Guake can now provide a set of tabs per workspace Bug Fixes --------- - Reverse transparency slider (to be more meaningful, #1501 - Fix command-line select tab behavior #1492 - removed duplicate event bind? previously I had issue where quick-open event would be fired twice because of this. - fixes - fixes - fix unnecessary show/hide - fix settings only applied to the active workspace if more the 1 is used - fix prompt quit dialog numbers when more then 1 workspace is used Translation Updates ------------------- - fr - de Other ----- - For `Guake translators using weblate `_, I had to force push because of big conflicts. Some may have loose recent translation in your language. Sorry for that. 3.4.0 ===== Release Summary --------------- This major release provides one of the most awaited feature to every Guake adicts: Split terminal. Split easily vertically and horizontally each terminal and have more than one terminal per tab. There have been several shortcut changes to help navigate easily on your screen: Ctrl+Shift+Up/Down/Left/Right to switch from terminal to terminal. Thanks for you hard work, @aichingm ! New Features ------------ - Split and resize terminals via mouse or keyboard shortcuts. Deprecations ------------ - "New terminal" / "Rename terminal" / "Close terminal" items has been removed from the terminal context menu. They are still available on the tab context menu. Bug Fixes --------- - Fix multiline selection right click (#1413) - Fix tab name (#1017) - fixes jumping preference window (#1149) - fix no focus after closing a split terminal (#1421) - Add note about shell that does not support --login parameter (#469) Translation Updates ------------------- - pl (Piotr Drąg on weblate) - nl (Heimen Stoffels on weblate) - nb (Allan Nordhøy on weblate) - ru (Igor on weblate) - zh_CN (庄秋彬 on weblate) - cs (Pavel Borecki on weblate) - de (Robin Bauknecht on weblate) - fr (Gaetan Semet) 3.3.3 ===== Release Summary --------------- This release adds a big rewrite of the Terminal underlying mechanism by Mario Aichinger. It will serve as a foundation layer for long-awaiting features such as `Split Terminal `_, `Find Text `_, `Save/Load Session `_, and so on. New Features ------------ - add a new option in the context menu (copy url) - support for per terminal context menus - new more fullscreen handeling - load default font via python Gio and not via cli call - add json example for custom commands in the code - port screen selectino (use_mouse) to Gdk - add notification for failed show-hide key rebindings - add one-click key binding editing - port word character exceptions for newer vte versions - use Gtk.Box instead of Gtk.HBox - use Gtk.Notebook's tabs implementation - enable tab switching by scrolling (mouse wheel) over the tabs/tab-bar Bug Fixes --------- - fixes Settings schema 'guake.general' does not contain a key named 'display_n' - fixes ``guake --fgcolor/--bgcolor`` error (#1376). Translation Updates ------------------- - fr (thanks samuelorsi125t and ButterflyOfFire) - ru (thanks Igor) - pl (thanks Piotr Drąg) - cz (thanks Pavel Borecki) - de (thanks Dirk den Hoedt and Mario Aichinger) - gl (thanks Nacho Vidal) Notes for Package Maintainers ----------------------------- - Please note ``libutempter0`` should now be considered as a mandatory dependency of Guake. It solves the frozen terminal issue on exit (#1014) 3.3.2 ===== Bug Fixes --------- - Travis build cleaned build artifacts before deployment, leading to missing files when built in the CI. 3.3.1 ===== Release Summary --------------- This minor release mainly fix some issues when installing Guake though ``pip install --user --upgrade guake``. A big thanks also to everyone who contributed to the translations on `Weblate `_. Bug Fixes --------- - Don't translate application icon (this finally fixes Guake application icon not being displayed with German locale, which was only partially resolved with #1320) - Install of Guake through pip install was broken (missing ``paths.py``). Now fixed. Discarded generation of bdist. (fix Translation Updates ------------------- - sv (thanks to @MorganAntonsson) - de (thanks to @rzimmer) - fr - ru (thanks Igor "f2404" on Weblate) - cz (thanks Pavel Borecki on Weblate) - pl (thanks Piotr Drąg on Weblate) - it (thanks Maurizio De Santis on Weblate) Other ----- - Update about screen's credits 3.3.0 ===== New Features ------------ - ``pip install guake`` now compiles the gsettings schema and finds its languages automatically. Bug Fixes --------- - Wayland is a bit more well supported. The X11 backend is now used by default for GDK and it seems to make the shortcut works under most situation. A more cleaner solution would be to develop a GAction (`vote for this feature here `_]) - A new command has been added: ``guake-toggle``, should be faster than ``guake -t``. You can use it when you register the global shortcut manually (X11 or Wayland). 3.2.2 ===== Bug Fixes --------- - Fix transparency regression on ubuntu composite (#1333) - Fix transparency issue - Fix right-click on link - Fix bad css override on check tab background (#1326) - Fix Guake application icon not displayed with German locale - fix ctrl+click on hyperlinks on VTE 0.50 (#1295) - Fixed "Gruvbox Dark" color palette (swapped foreground and background) - Swapped foreground and background colors for palettes added in commit #58842e9. Other ----- - Add option groupes to the bootstrap scripts 3.2.1 ===== New Features ------------ - Thanks to @arcticicestudio, a new nice, clean new palette theme is available for Guake users: Nord (#1275) Known Issues ------------ - Multiline url are sometimes not handled correctly. - Users of Byobu or Tmux as default shell should disable the "login shell" option (in the "Shell" panel). This uses an option, ``--login``, that does not exist on these two tools. Bug Fixes --------- - Fix duplication in theme list (#1304) - Fix right click selection in Midnight Commander - Corrected usage of ``Vte.Regex.new_for_match`` to fix regular expression matching (hyperlinks, quick open) on VTE >0.50 (#1295) - URL with ``'`` (simple quote) and ``()`` (parenthesis) are now captured by hyperlink matcher. This may causes some issues with log and so that use parenthesis *around* hyperlinks, but since parenthesis and quotes are valid characters inside a URL, like for instance URL created by Kibana, they deserve the right to be shown as proper url in Guake. User can still select the URL in the terminal if he wishes to capture the exact url, before doing a Ctrl+click or a right click. For developers, it is advised to end the URL with a character that cannot be used in URL, such as space, tab, new line. Ending with a dot (``.``) or a comma (``,``) will not be seen as part of the URL by Guake, so most logs and traces that adds a dot or a comma at the end of the URL might still work. - Fix "Grubbox Dark" theme Translation Updates ------------------- - fr - pl - ru Other ----- - Rework the documentation. The README grew up a lot and was hard to use. It has been cut into several user manual pages in the official online documentation. 3.2.0 ===== New Features ------------ - Allow user to select the theme within the preference UI - Selected tab use "selected highlight" color from theme (#1036) Translation Updates ------------------- - fr 3.1.1 ===== New Features ------------ - Quick open displays a combobox with predefined settings for Visual Studio Code, Atom and Sublime Text. Bug Fixes --------- - Fix hyperlink VTE 3.1.0 ===== Release Summary --------------- This version of Guake brings mostly bug fixes, and some new features like "Quick Open on selection". I have also reworked internally the Quick Open so that it can automatically open files from logs from pytest and other python development tools output. However, there might still some false positive on the hovering of the mouse in the terminal, the most famous being the output of ``ls -l`` which may have the mouse looks like it sees hyperlinks on the terminal everywhere. Click does nothing but its an annoying limitation. Package maintainers should read the "Notes for Package Maintainers" of this release note carefully. New Features ------------ - New "start at login" option in the settings (only for GNOME) #251 - Add ``--verbose``/``-v`` parameter to enable debug logging. Please note the existing ``-v`` (for version number) has been renamed ``-V``. - Support for hyperlink VTE extension (`described here `_ ) #945 (Untested, as it requires VTE 0.50) - Add great color palettes from `Guake Color Scheme `_, thanks for @ziyenano : - `Aci`, - `aco`, - `Azu`, - `Bim`, - `Cai`, - `Elementary`, - `Elic`, - `Elio`, - `Freya`, - `Gruvbox Dark`, - `Hemisu Dark`, - `Hemisu Light`, - `Jup`, - `Mar`, - `Material`, - `Miu`, - `Monokai dark`, - `Nep`, - `One Light`, - `Pali`, - `Peppermint`, - `Sat`, - `Shel`, - `Tin`, - `Ura`, - `Vag`. - Allow application to capture right click (ex: Midnight commander). #1096. It is still possible to show the contextual menu with Shift+right click. Bug Fixes --------- - delete tab even without libutempter (#1198) - Fix crash when changing command file #1229 - fix ``import sys`` in ``simplegladeapp.py`` - change scope of ``which_align`` variable in ``pref.py`` (#1225) - Fix several issues on Quick Edit: - quick open freezes guake - support for systems with PCRE2 (regular expression in terminal) disabled for VTE, like Ubuntu 17.10 and +. This might disable quick open and open url on direct Ctrl+click. User can still select the wanted url or text and Cltr+click or use contextual menu. See this `discussion on Tilix `_, another Terminal emulator that suffurs the same issue. - quick open now appears in contextual menu (#1157) - bad translation update on the contextual menu. This causes new strings that was hidden to appear for translators. - Fix quick open on pattern "File:line" line that was not opening the wanted file. - Fix user interface translations #1228 - Some systems such as Ubuntu did displayed Guake with a translated interface (#1209). The locale system has been reworked to fix that. - There might be broken translations, or not up-to-date language support by Guake. A global refresh of all existing translations would be welcomed. Most has not been updated since the transition to Guake 3, so these languages support might probably be unfunctional or at least partialy localized. - A big thank you for all the volunteers and Guake enthousiats would often update their own translation to help guake being used world-wide. - Help is always welcomed for updating translations ! - Support for vte 2.91 (0.52) #1222 Translation Updates ------------------- - fr_FR - pl - de Notes for Package Maintainers ----------------------------- - The setup mecanism has changed a little bit. Some maintainers used to patch the source code of Guake to change the pixmap, Gtk schema or locale paths directly in the ``guake/globals.py`` file. This was due to a lack of flexibility of the installation target of the ``Makefile``. The ``make install`` target looks now a little bit more familiar, allowing distribution packager to set the various paths directly with make flags. For example: .. code-block:: bash sudo make install \ prefix=/usr \ DESTDIR=/path/for/packager \ PYTHON_SITE_PACKAGE_NAME=site-package \ localedir=/usr/share/locale The main overrides are: - ``IMAGE_DIR``: where the pixmap should be installed. Default: ``/usr/local/share/guake/pixmaps`` - ``localedir``: where locales should be installed. Default: ``/usr/local/share/locale`` - ``GLADE_DIR``: where the Glade files should be installed. Default: ``/usr/local/share/guake`` - ``gsettingsschemadir``: where gsettings/dconf schema should be installed. Default: ``/usr/local/share/glib-2.0/schemas/`` I invite package maintainers to open tickets on Github about any other difficulties encountered when packaging Guake. 3.0.5 ===== Bug Fixes --------- - Apply cursor blinking to new tabs as well, not only on settings change. - Fix window losefocus hotkey #1080 - Fix refocus if open #1188 - fix preferences window header color, align the close button more nicely and change borders to margins - Implements a timestamp for wayland (#1215) 3.0.4 ===== New Features ------------ - Add window displacement options to move guake away from the screen edges - User can manually enter the name of the GTK theme it wants Guake to use. Note there is no Preference settings yet, one needs to manually enter the name using ``dconf-editor``, in the key ``/apps/guake/general/gtk-theme-name``. Use a name matching one the folders in ``/usr/share/themes``. Please also considere this is a early adopter features and has only been tested on Ubuntu systems. Dark theme preference can be se with the key ``/apps/guake/general/gtk-prefer-dark-theme``. - Allow make install-system to be run as non root user and print a message if so. - Quick open can now open file under selection. Simply select a filename in the current terminal and do a Ctrl+click, if the file path can be found, it will be open in your editor. It allows to virtually open any file path in your terminal (if they are on your local machine), but requires the user to select the file path first, compared to the Quick Open feature that finds file names using regular expression. Also notes that is it able to look in the current folder if the selected file name exists, allowing Ctrl+click on relative paths as well. Line number syntax is also supported: ``filename.txt:5`` will directly on the 5th line if your Quick Open is set for. Bug Fixes --------- - fixes issue with vertically stacked dual monitors #1162 - Quick Open functionnality is restored #1121 - Unusable Guake with "hide on focus lose" option #1152 - Speed up guake D-Bus communication (command line such as ``guake -t``). 3.0.3 ===== Release Summary --------------- This minor release mainly focus on fixing big problems that was remaining after the migration to GTK3. I would like to akwonledge the work of some contributors that helped testing and reporting issues on Guake 3.0.0. Thanks a lot to @egmontkob and @aichingm. The Preference window has been deeply reworked and the hotkey management has been rewriten. This was one the the major regression in Guake 3.0. New Features ------------ - [dev env] automatically open reno slug after creation for editing - [dev env]: Add the possibility to terminate guake with ``Ctrl+c`` on terminal where Guake has been launched - Add "Infinite scrolling" option in "Scrolling" panel #274 - Added hotkey for showing and focusing Guake window when it is opened or closed. It is convenient when Guake window are overlapped with another windows and user needs to just showing it without closing and opening it again. #1133 Known Issues ------------ - Quick Edit feature is not working (#1121) Deprecations ------------ - Remove visible bell feature #1081 Bug Fixes --------- - Command options do not work, crash when disabling keybinding #1111 - Do not open Guake window upon startup #1113 - Fix crash on increase/decrease main window height shortcut #1099 - Resolved conflicting default shortcut for ``Ctrl+F2`` (now, rename current tab is set to ``Ctrl+Shift+R``) #1101, #1098 - The hotkey management has been rewriten and is now fully functional - Rework the Preference window and reorganize the settings. Lot of small issues has been fixed. The Preference window now fits in a 1024x768 screen. - Fix 'Failed to execute child process "-"' - #1119 - History size spin is fixed and now increment by 1000 steps. Default history value is now set to 1000, because "1024" has no real meaning for end user. #1082 Translation Updates ------------------- - de - fr - ru Other ----- - The dependencies of the Guake executable has been slightly better described in README. There is an example for Debian/Ubuntu in the file ``scripts/bootstrap-dev-debian.sh`` which is the main environment where Guake is developed and tested. - Package maintainers are encouraged to submit their ``bootstrap-dev-[distribution].sh``, applicable for other distributions, to help users install Guake from source, and other package maintainers. 3.0.2 ===== New Features ------------ - Preliminary Dark theme support. To use it, install the 'numix' theme in your system. For example, Ubuntu/Debian users would use ``sudo apt install numix-gtk-theme``. Known Issues ------------ - Cannot enable or disable the GTK or Dark theme by a preference setting. Deprecations ------------ - Resizer discontinued Bug Fixes --------- - Fix ``sudo make uninstall/install`` to work only with ``/usr/local`` - Fix translation ``mo`` file generation - Fix crash on Wayland - Fix quick open and open link in terminal - Fixed Guake initialization on desktop environment that does not support compositing. 3.0.1 ===== Release Summary --------------- Minor maintenance release. Bug Fixes --------- - Code cleaning and GNOME desktop file conformance 3.0.0 ===== Release Summary --------------- Guake has been ported to GTK-3 thanks to the huge work of @aichingm. This also implies Guake now uses the latest version of the terminal emulator component, VTE 2.91. Guake is now only working on Python 3 (version 3.5 or 3.6). Official support for Python 2 has been dropped. This enables new features in upcoming releases, such as "find in terminal", or "split screen". New Features ------------ - Ported to GTK3: - cli arguments - D-Bus - context menu of the terminal, the tab bar and the tray icon - scrollbar of the terminal - ``ctrl+d`` on terminal - fix double click on the tab bar - fix double click on tab to rename - fix clipboard from context menu - notification module - keyboard shortcuts - preference screen - port ``gconfhandler`` to ``gsettingshandler`` - about dialog - pattern matching - ``Guake.accel*`` methods - Guake now use a brand new build system: - ``pipenv`` to manage dependencies in `Pipfile` - enforced code styling and checks using Pylint, Flake8, Yapf, ISort. - simpler release management thanks to PBR - [dev env] `reno `_ will be used to generate release notes for Guake starting version 3.0.0. It allows developers to write the right chunk that will appear in the release note directly from their Pull Request. - Update Guake window title when: - the active tab changes - the active tab is renamed - the vte title changes Known Issues ------------ - Translation might be broken in some language, waiting for the translation file to be updated by volunteers - Resizer does not work anymore - Package maintainers have to rework their integration script completely - quick open and open link in terminal is broken - **Note for package maintainers**: Guake 3 has a minor limitation regarding Glib/GTK Schemas files. Guake looks for the gsettings schema inside its data directory. So you will probably need install the schema twice, once in ``/usr/local/lib/python3.5/dist-packages/guake/data/`` and once in ``/usr/share/glib-2.0/schemas`` (see `#1064 `_). This is planned to be fixed in Guake 3.1 Upgrade Notes ------------- - Minor rework of the preference window. Deprecations ------------ - Background picture is no more customizable on each terminal - Visual Bell has been deprecated Translation Updates ------------------- - fr-FR Version 0.8.11 -------------- Maintainance release with bug fixes and translation updates. - #885 revert to the old fixed-width tabs behavior - move the startup script setting to the hooks tab - #977 Add a configuration toggle to disable windows refocus - #970 Right-click tab options don't work properly - #995 Russian translation - #983 French translation - #986 Update German translation Version 0.8.10 -------------- Minors Bug fixes and new Ocean and Oceanic Next color schemes. Version 0.8.9 ------------- Thanks for guakers for the following contibutions: New features: - #793, #876: Execute a script on display event - #864: Add preference dialog checkbox for toggling 'resizer' visibility - #885: tabs share the full screen width - #942: Quick open also matches `/home` path - #933: Add `-l` option to get tab label Bug Fixes - #934: Quick open does not work with dash - #893, #896, #888: another Unity screen size fix - Translation update: ja (#875), cn (#955), nl (#931), pt (#895), Version 0.8.8 ------------- Thank to these contribution from Guake users, I am happy to announce a new minor fix release of Guake. Features: * Close a tab with the middle button of the mouse Bug Fixes: - Fix error when toggle key was disabled - Update change news - Uppercase pallete name - Fix pylint errors - Convert README badge to SVG - Update Japanese translation - update Russian translation - updated CS translation - Update zh_CN translation Version 0.8.7 ------------- Do not forget to update the software version Version 0.8.6 ------------- Lot of bug fixes in this release. Thanks for all contributors ! Please note that it is not tested on dual screen set ups. Bug fixes: * Terminal geometry fixes (#773 @koter84, #775 RedFlames, b36295 myself) * Fix "changing max tab length" set all tab to same title * Fix on terminal kill (#636, @coderstephen) * Typo/Cosmetics (#761, @thuandt) * Fix the bottom of tab buttons being cut off in Gnome (#786 @lopsided98) * Fix fullscreen follow mouse (#774 @koter84) * Option to shorten VTE tab name (#798 @versusvoid) * Updated translations: - french (b071b4, myself) - russian (#787 @vantu5z), - corean (#766 @nessunkim), - polish (#799 @piotrdrag) Version 0.8.5 ------------- Minor version today, mostly minor bug fixes and translation update. I did have time to work on GTK3, maintaining Guake to keep using GTK2 is more and more difficult, Travis kind of abandonned the compatibility of PyGtk2. * Add a shortcut to open the last tab (#706, thanks @evgenius) * Fix icon size on Ubuntu (#734) * Add tab UUID and selection by UUID (#741, thanks @SoniEx2, @Ozzyboshi) * Updated Polish (#705), Chinese (#711), German (#732), Brazil Portuguese (#744), Czech (#747) * Fixed doc (#709, #706) * Fix some Pep8 issue Version 0.8.4 ------------- Bug fixes: - Very big icon tray (#598, @thardev) - Feature keyboard shorcut hide on lose focus (#650, #262, #350, @thardev) - Endless transparency and small rework of hide on lose focus (#651, @thardev) - fix tray icon does not align in center (#663, @wuxinyumrx) - Updated pt_BR translation (#686, @matheus-manoel) - improved Bluloco theme readability (#693, @uloco) - ensure gsettings process is well kill (#636) - fix exception in preference panel Version 0.8.3 ------------- Quick fix about missing svg file Version 0.8.2 ------------- Bug fix version. Thanks for external contributions! Feature: - new palette 'Bluloco' (my default one now!) (@uloco) Bug fixes: - tab bar width (@ozzyboshi) - open new tab in current directory (#578, @Xtreak) - fix default interpreter (#619, @Xtreak) - fix use VTE title (#524, @Xtreak) - Russian tranlation (@vantu5z), german (@Airfunker), spanish (@thardev) chinese (@Xinyu Ng) - fix guake cannot restore fullscreen (#628, @thardev) Version 0.8.1 ------------- I started working on Guake 1.0.0, and not in a dedicated branch. It is now in its own source folder. We clearly need to move to gtk3 soon, since GTK2 is being discontinued, the VTE is no more maintained for GTK2-Python, and adds lot of cool features. So I am now starting to work on a complete rewrite of Guake, so don't expect 0.8.x to see lot of new features, unfortunately. But Guake 1.0.0 will add features such as: - line wrap in terminal - search in terminal - dconf/gsettings to store configuration - GTK3 look and feel - much cleaner build and translation systems But, this means I cannot work too much on 0.8.x. I still do some bug fixes, and thanks to external contributors that share the love for Guake, Guake 0.8 still moves on! So don't hesitate to have a look in the code to fix any bug you are experiencing and submit a Pull Request. New features: - a-la guake-indicator custom commands (#564) - by @Ozzyboshi! - Add option to allow/disallow bold font (#603) - by @helix84! - Clean current terminal item in contextual menu (#608) - by @Denis Subbotin Bug fixes: - Terminal widget disappears at random times (#592) - Typo - by @selivan, @Ruined1 Version 0.8.0 ------------- I have been extremely busy the previous 3 months, so I have almost not worked on Guake. I wanted to introduce in the next version some major features heavily asked, like session save and split terminal. They will have to wait a bit more. As a result, most of the contribution are from external contributors. Thank you very much for all these patches! This releases introduces two major changes in the project, thus the minor version change. First, the new homepage is now online: http://guake-project.org/ As I remind you, Guake has *not* control over the old domain guake.org. So far the content is still one of the old content of this domain. So please use http://guake-project.org to reference Guake. Source code of the Web site can be found here: https://github.com/Guake/guake-website The second major change in the project is the abandon of our internal hotkey manager ``globalhotkey``, which was responsible for binding hotkeys globally to the window manager. This piece of code was extremely old and hard to maintain. This was also unnecessarily complexifying the build process of Guake. Thanks to the contribution of @jenrik, we are now using a pretty common package ``keybinder`` (Ubuntu: ``python-keybinder``). Bug fixes: - Guake fails to start due to a GlobalHotkey related C call fixed by replacing GlobalHotkeys with keybinder. Fixed by @jenrik. (#558, #510) - Fix icon issue with appindicator (#591) - swap terms correctly when moving tabs (#473, #512, #588) - Remove last reference to --show-hide (#587) - fixed and completed german translation (#585) - Drop duplicated man page (a526046a) - use full path to tray icon with libappindicator (#591) Version 0.7.2 (2015.05.20) -------------------------- Bug fixes: - Fix Ctrl+D regresion (#550) - update Quick Open Preference Window Version 0.7.1 (2015.05.18): --------------------------- Some bug fixes, and cleared issues with new palette colors. As side note, our domain 'guake.org' has been squatted by an outsider that seems only interested in getting money to release the domain. Since Guake is a small project, based on 100% OpenSource spirit, we do not want to loose more time on this subject. The guake website will be deployed soon on a new URL: http://guake-project.org Please do **NOT** use guake.org anymore, until we can retrieve it. We cannot be hold responsible for any content on guake.org anymore. Bug fixes: - Background and font color inversed for some color schemes (#516) - Guake width wrong on non-Unity Ubuntu desktop (#517) - Add get_gtktab_name dbus interface (#529, #530) - Fix issue with selection copy (#514) - I18n fixes and updated Polish translation (#519). Thanks a lot @piotrdrag! - Remove add and guake icon in tab (#543) - prompt_on_close_tab option (#546) Thanks a lot @tobz1000! - Fix default shortcuts for move tabs Version 0.7.0 (2015.05.02): --------------------------- I had more time working on Guake recently, so I fixed some long term issues, and exposed some internal settings into the preference window. Thanks for the external contribution: @varemenos, @seraff and others! Here is the complete changelog for this release: - Reorganised palette definition, add a demo terminal in preference panel (#504, #273, #220) - Plenty of other new color palettes (thanks again @varemenos ! #504) - don't propagate COLORTERM environment variable in terminal (#488) - Force $TERM environment variable to 'xterm-256color' in terminals (#341) - Fix issue with the quit confirmation dialog box (#499) - Add shortcut for transparency level (#481) - Add label to tell user how to disable a shortcut (#488) - Expose cursor_shape and blink cursor method in pref window (#505) - Expose Guake startup script to the pref window (#198) - Some window management bug fixes (#506, #445) - Fix "Not focused on openning if tab was moved" (#441) - Add contextual menu item 'Open Link' on right click on a link (5476653) - Fix compatibility with Ubuntu 15.04 (#509) - Fix Guake Turns Gray sometimes (#473, #512) Version 0.6.2 (2015.04.20): --------------------------- - Packaging issue fixes Version 0.6.1 (2015.04.19): --------------------------- - bug fixes Version 0.6.0 (2015.04.18): --------------------------- This version is poor in new feature, I just don't have time to work on Guake. I got a lot of incompatibility reports on new systems, such as Wayland. Port to gtk3 is still a must have, but all features of the VTE component does not seem to have been ported. Features: - Save current terminal buffer to file - Hotkeys for moving tab - plenty of color palettes (thanks @varemenos !) - bug fixes Version 0.5.2 (2014.11.23): --------------------------- - bug fixes - Disable the 'focus_if_open' feature (hidden trigger, true per default). Restaure focus does not work in all systems. - lot of "componentization" of the code, in preparation to the rebase of 'gtk3' branch. Version 0.5.1 (2014.11.06): --------------------------- - minor bug fixes release Version 0.5.0 (2014.02.22): --------------------------- - Tab can be moved - Add change tab hotkey (F1-F10 by default) and is display on tab - Add "New tab" menu item - Quick open file path within the terminal output - gconf only settings: - startup scripts - vertical aligments - minor bug fixes - New maintainer: * Gaetan Semet - Contributors: * @koter84 * @kneirinck Versions < 0.5.0 ---------------- changes since 0.4.4: - Custom tab titles are no longer overriden by VTE ones (rgaudin) - Absent notifications daemon is no longer fatal - Fix for key hotkeys being recorded as key (Ian MacLeod) - Font resizing using + and - (Eiichi Sato) - D-Bus and commandline interface improvements - L10n: * Norwegian Bokmål po file renamed to nb_NO.po (Bjørn Lie) * Added translations: Croatian, Czech, Dutch, Galician, Indonesian, Ukrainian. * Updated translations: Catalan, French, German, Hungarian, Spanish, Swedish. changes since 0.4.3: - New icon for both guake and guake-prefs - Improved build scripts for themable icon installation - Updated some autotools files - Fixing a typo in the guake-prefs.desktop file (Zaitor) - wm_class can't be get by gnome-shell css #414 - Add the missing "System" category required by FDO menu specification (Jekyll Wu) - Do not install the system-wide autostart file (Jekyll Wu) - Call window.move/resize only when not in fullscreen mode #403 (Empee584) - Terminal scrolls to the wrong position when hiding and unhiding in fullscreen mode #258 (Empee584) - Toggle fullscreen malfunction #371 (Empee584 & Sylvestre) - Guake overlaped the second screen in a dual-monitor setup with a sidepanel (Sylvestre) - Tree items in Keyboard shortcuts tab of preferences window not localized #280 (Robertd) - Add option to start in fullscreen mode #408 (Dom Sekotill) - Refactoring of the fullscreen logic and addition of the --fullscreen flag (Marcel Partap) changes since 0.4.2: - Better tab titling, based on VTE title sequences (Aleksandar Krsteski & Max Ulidtko) - Some drag & drop support (Max Ulidtko) - Fix for the many times reported "gconf proxy port as int" issue (Pingou) - Better file layout which doesn't modify PYTHONPATH (Max Ulidtko) Updated translation and new translation: - Russian (Vadim Kotov) - Spanish (Ricardo A. Hermosilla Carrillo) - Japanese (kazutaka) - Catalan (el_libre como el chaval) changes since 0.4.1: Updated translations and new translations (unsorted): - Norwegian (wty) - Turkish (Berk Demirkır) - Swedish (Daniel Nylander) - Persian (Kasra Keshavarz) - French (Bouska and Pingou) - Russian (Pavel Alexeev and vkotovv) - Polish (Piotr Drąg) - Spanish, Castilian (dmartinezc) - Italian (Marco Leogrande a.k.a. dark) - Chinese simplified (甘露, Gan Lu) - Portuguese/Brazilian (Djavan Fagundes) - Japanese (kazutaka) - Punjabi (A S Alam) Bugs/Features: - Calling the hide() method when closing main window: #229 (Lincoln) - Fixing dbus path and name for the RemoteControl object: #202 (Lincoln) - Setting http{s,}_proxy vars before calling fork_command: #172 (Lincoln) - Adding the `fr' lang to ALL_LINGUAS: #189 (Lincoln) - Option to configure the color palette: #51 (Eduardo Grajeda) - Do not hide when showing rename dialog (Aleksandar Krsteski) - Fixing the tab renaming feature: #205 (Lincoln) changes since 0.4.0: Updated translation and new translation: - Italian - French - Portuguese/Brazilian - Novergian - German - Polish - Greek - Hungarian Bugs/Features: - Change start message #168 - Add an option to the preference windows to create new tab in cwd #146 - Preferences windows are resizable #149 - Guake's windows not shown when ran for the first time #174 - Implement dbus interface to script with guake #150, #138, #105, #126, #128, #109 - Command line arguments implemented -n create a new tab -e execute a command on a defined tab -r rename a tab -t toggle visibility - Improve regex to use character classes (improve the support of certain locales) #156 - Ask user if he really wants to quit when there is a child process #158 - Double click on a tab allows you to rename the tab #165 - Add more information on the INSTALL file - Tray icon position fixed #161 Infrastructure: - Move from guake-terminal.org to guake.org - Set up a mailing-list at: http://lists.guake.org/cgi-bin/mailman/listinfo/guake changes since 0.2 * Making prefs dialog window better, including a better title, fixing some paddings and spaces. * Added backspace and delete compatibility options (thanks to gnome-terminal guys =) * Cleanup of data files (images and glade files), mostly images. * Complete rewrite of tab system in the main window. * Fixing all issues (I think =) in close tab feature. * Adding tab rename feature. * Making easier to grab keybinging shortcuts from the prefs screen by using eggcellrendererkeys lib. * Now we look for more python interpreters when filling interpreters combo. * Fixing a lot of bugs. guake-3.6.3/Pipfile000066400000000000000000000013121346623310400141310ustar00rootroot00000000000000[[source]] url = "https://pypi.python.org/simple" verify_ssl = true name = "pypi" [requires] python_version = "3" [dev-packages] "autopep8" = "<1.4" "flake8" = "<3.6" "pep8" = "*" pylint = "<2.3.0" typed-ast = "<1.4.0,>=1.3.1" astroid = "<2.2.0" fiximports = ">=0.1.18" mock = ">=2.0.0" pytest-mock = "*" pyflakes = "<2.0.0" pytest = "*" yapf = "*" reno = {version = ">=2.8.0",extras = ["sphinx"]} pipenv-to-requirements = "*" colorlog = "*" sphinx-rtd-theme = "*" sphinxcontrib-programoutput = "*" e1839a8 = {editable = true,path = "."} twine = "*" pathlib2 = "*" scandir = {markers = "python_version < '3.5'"} pyfakefs = "*" pytest-cov = "*" [packages] pbr = "*" typing = {markers = "python_version < '3.5'"} guake-3.6.3/Pipfile.lock000066400000000000000000000776251346623310400151040ustar00rootroot00000000000000{ "_meta": { "hash": { "sha256": "be9e4409af88ff64e7e4fe680a5e050e485ceff14d7c0ac662f1d9234f3a47cb" }, "pipfile-spec": 6, "requires": { "python_version": "3" }, "sources": [ { "name": "pypi", "url": "https://pypi.python.org/simple", "verify_ssl": true } ] }, "default": { "pbr": { "hashes": [ "sha256:8257baf496c8522437e8a6cfe0f15e00aedc6c0e0e7c9d55eeeeab31e0853843", "sha256:8c361cc353d988e4f5b998555c88098b9d5964c2e11acf7b0d21925a66bb5824" ], "index": "pypi", "version": "==5.1.3" }, "typing": { "hashes": [ "sha256:4027c5f6127a6267a435201981ba156de91ad0d1d98e9ddc2aa173453453492d", "sha256:57dcf675a99b74d64dacf6fba08fb17cf7e3d5fdff53d4a30ea2a5e7e52543d4", "sha256:a4c8473ce11a65999c8f59cb093e70686b6c84c98df58c1dae9b3b196089858a" ], "index": "pypi", "markers": "python_version < '3.5'", "version": "==3.6.6" } }, "develop": { "alabaster": { "hashes": [ "sha256:446438bdcca0e05bd45ea2de1668c1d9b032e1a9154c2c259092d77031ddd359", "sha256:a661d72d58e6ea8a57f7a86e37d86716863ee5e92788398526d58b26a4e4dc02" ], "version": "==0.7.12" }, "astroid": { "hashes": [ "sha256:35b032003d6a863f5dcd7ec11abd5cd5893428beaa31ab164982403bcb311f22", "sha256:6a5d668d7dc69110de01cdf7aeec69a679ef486862a0850cc0fd5571505b6b7e" ], "index": "pypi", "version": "==2.1.0" }, "atomicwrites": { "hashes": [ "sha256:03472c30eb2c5d1ba9227e4c2ca66ab8287fbfbbda3888aa93dc2e28fc6811b4", "sha256:75a9445bac02d8d058d5e1fe689654ba5a6556a1dfd8ce6ec55a0ed79866cfa6" ], "version": "==1.3.0" }, "attrs": { "hashes": [ "sha256:69c0dbf2ed392de1cb5ec704444b08a5ef81680a61cb899dc08127123af36a79", "sha256:f0b870f674851ecbfbbbd364d6b5cbdff9dcedbc7f3f5e18a6891057f21fe399" ], "version": "==19.1.0" }, "autopep8": { "hashes": [ "sha256:2284d4ae2052fedb9f466c09728e30d2e231cfded5ffd7b1a20c34123fdc4ba4" ], "index": "pypi", "version": "==1.3.5" }, "babel": { "hashes": [ "sha256:6778d85147d5d85345c14a26aada5e478ab04e39b078b0745ee6870c2b5cf669", "sha256:8cba50f48c529ca3fa18cf81fa9403be176d374ac4d60738b839122dfaaa3d23" ], "version": "==2.6.0" }, "bleach": { "hashes": [ "sha256:213336e49e102af26d9cde77dd2d0397afabc5a6bf2fed985dc35b5d1e285a16", "sha256:3fdf7f77adcf649c9911387df51254b813185e32b2c6619f690b593a617e19fa" ], "version": "==3.1.0" }, "certifi": { "hashes": [ "sha256:59b7658e26ca9c7339e00f8f4636cdfe59d34fa37b9b04f6f9e9926b3cece1a5", "sha256:b26104d6835d1f5e49452a26eb2ff87fe7090b89dfcaee5ea2212697e1e1d7ae" ], "version": "==2019.3.9" }, "chardet": { "hashes": [ "sha256:84ab92ed1c4d4f16916e05906b6b75a6c0fb5db821cc65e70cbd64a3e2a5eaae", "sha256:fc323ffcaeaed0e0a02bf4d117757b98aed530d9ed4531e3e15460124c106691" ], "version": "==3.0.4" }, "colorlog": { "hashes": [ "sha256:3cf31b25cbc8f86ec01fef582ef3b840950dea414084ed19ab922c8b493f9b42", "sha256:450f52ea2a2b6ebb308f034ea9a9b15cea51e65650593dca1da3eb792e4e4981" ], "index": "pypi", "version": "==4.0.2" }, "coverage": { "hashes": [ "sha256:3684fabf6b87a369017756b551cef29e505cb155ddb892a7a29277b978da88b9", "sha256:39e088da9b284f1bd17c750ac672103779f7954ce6125fd4382134ac8d152d74", "sha256:3c205bc11cc4fcc57b761c2da73b9b72a59f8d5ca89979afb0c1c6f9e53c7390", "sha256:465ce53a8c0f3a7950dfb836438442f833cf6663d407f37d8c52fe7b6e56d7e8", "sha256:48020e343fc40f72a442c8a1334284620f81295256a6b6ca6d8aa1350c763bbe", "sha256:5296fc86ab612ec12394565c500b412a43b328b3907c0d14358950d06fd83baf", "sha256:5f61bed2f7d9b6a9ab935150a6b23d7f84b8055524e7be7715b6513f3328138e", "sha256:68a43a9f9f83693ce0414d17e019daee7ab3f7113a70c79a3dd4c2f704e4d741", "sha256:6b8033d47fe22506856fe450470ccb1d8ba1ffb8463494a15cfc96392a288c09", "sha256:7ad7536066b28863e5835e8cfeaa794b7fe352d99a8cded9f43d1161be8e9fbd", "sha256:7bacb89ccf4bedb30b277e96e4cc68cd1369ca6841bde7b005191b54d3dd1034", "sha256:839dc7c36501254e14331bcb98b27002aa415e4af7ea039d9009409b9d2d5420", "sha256:8f9a95b66969cdea53ec992ecea5406c5bd99c9221f539bca1e8406b200ae98c", "sha256:932c03d2d565f75961ba1d3cec41ddde00e162c5b46d03f7423edcb807734eab", "sha256:988529edadc49039d205e0aa6ce049c5ccda4acb2d6c3c5c550c17e8c02c05ba", "sha256:998d7e73548fe395eeb294495a04d38942edb66d1fa61eb70418871bc621227e", "sha256:9de60893fb447d1e797f6bf08fdf0dbcda0c1e34c1b06c92bd3a363c0ea8c609", "sha256:9e80d45d0c7fcee54e22771db7f1b0b126fb4a6c0a2e5afa72f66827207ff2f2", "sha256:a545a3dfe5082dc8e8c3eb7f8a2cf4f2870902ff1860bd99b6198cfd1f9d1f49", "sha256:a5d8f29e5ec661143621a8f4de51adfb300d7a476224156a39a392254f70687b", "sha256:aca06bfba4759bbdb09bf52ebb15ae20268ee1f6747417837926fae990ebc41d", "sha256:bb23b7a6fd666e551a3094ab896a57809e010059540ad20acbeec03a154224ce", "sha256:bfd1d0ae7e292105f29d7deaa9d8f2916ed8553ab9d5f39ec65bcf5deadff3f9", "sha256:c62ca0a38958f541a73cf86acdab020c2091631c137bd359c4f5bddde7b75fd4", "sha256:c709d8bda72cf4cd348ccec2a4881f2c5848fd72903c185f363d361b2737f773", "sha256:c968a6aa7e0b56ecbd28531ddf439c2ec103610d3e2bf3b75b813304f8cb7723", "sha256:df785d8cb80539d0b55fd47183264b7002077859028dfe3070cf6359bf8b2d9c", "sha256:f406628ca51e0ae90ae76ea8398677a921b36f0bd71aab2099dfed08abd0322f", "sha256:f46087bbd95ebae244a0eda01a618aff11ec7a069b15a3ef8f6b520db523dcf1", "sha256:f8019c5279eb32360ca03e9fac40a12667715546eed5c5eb59eb381f2f501260", "sha256:fc5f4d209733750afd2714e9109816a29500718b32dd9a5db01c0cb3a019b96a" ], "version": "==4.5.3" }, "docutils": { "hashes": [ "sha256:02aec4bd92ab067f6ff27a38a38a41173bf01bed8f89157768c1573f53e474a6", "sha256:51e64ef2ebfb29cae1faa133b3710143496eca21c530f3f71424d77687764274", "sha256:7a4bd47eaf6596e1295ecb11361139febe29b084a87bf005bf899f9a42edc3c6" ], "version": "==0.14" }, "dulwich": { "hashes": [ "sha256:afbe070f6899357e33f63f3f3696e601731fef66c64a489dea1bc9f539f4a725" ], "version": "==0.19.11" }, "e1839a8": { "editable": true, "path": "." }, "fiximports": { "hashes": [ "sha256:dafb83f981b430530bef61baf516e1e84d8cb1e202ecadb7d7988a3d0fddb875", "sha256:f0216ee55a1bca8ff2a578a9bfc39181ce4553abc4401dd9b6f7c46164e62a13" ], "index": "pypi", "version": "==0.1.18" }, "flake8": { "hashes": [ "sha256:7253265f7abd8b313e3892944044a365e3f4ac3fcdcfb4298f55ee9ddf188ba0", "sha256:c7841163e2b576d435799169b78703ad6ac1bbb0f199994fc05f700b2a90ea37" ], "index": "pypi", "version": "==3.5.0" }, "idna": { "hashes": [ "sha256:c357b3f628cf53ae2c4c05627ecc484553142ca23264e593d327bcde5e9c3407", "sha256:ea8b7f6188e6fa117537c3df7da9fc686d485087abf6ac197f9c46432f7e4a3c" ], "version": "==2.8" }, "imagesize": { "hashes": [ "sha256:3f349de3eb99145973fefb7dbe38554414e5c30abd0c8e4b970a7c9d09f3a1d8", "sha256:f3832918bc3c66617f92e35f5d70729187676313caa60c187eb0f28b8fe5e3b5" ], "version": "==1.1.0" }, "isort": { "hashes": [ "sha256:01cb7e1ca5e6c5b3f235f0385057f70558b70d2f00320208825fa62887292f43", "sha256:268067462aed7eb2a1e237fcb287852f22077de3fb07964e87e00f829eea2d1a" ], "version": "==4.3.17" }, "jinja2": { "hashes": [ "sha256:065c4f02ebe7f7cf559e49ee5a95fb800a9e4528727aec6f24402a5374c65013", "sha256:14dd6caf1527abb21f08f86c784eac40853ba93edb79552aa1e4b8aef1b61c7b" ], "version": "==2.10.1" }, "lazy-object-proxy": { "hashes": [ "sha256:0ce34342b419bd8f018e6666bfef729aec3edf62345a53b537a4dcc115746a33", "sha256:1b668120716eb7ee21d8a38815e5eb3bb8211117d9a90b0f8e21722c0758cc39", "sha256:209615b0fe4624d79e50220ce3310ca1a9445fd8e6d3572a896e7f9146bbf019", "sha256:27bf62cb2b1a2068d443ff7097ee33393f8483b570b475db8ebf7e1cba64f088", "sha256:27ea6fd1c02dcc78172a82fc37fcc0992a94e4cecf53cb6d73f11749825bd98b", "sha256:2c1b21b44ac9beb0fc848d3993924147ba45c4ebc24be19825e57aabbe74a99e", "sha256:2df72ab12046a3496a92476020a1a0abf78b2a7db9ff4dc2036b8dd980203ae6", "sha256:320ffd3de9699d3892048baee45ebfbbf9388a7d65d832d7e580243ade426d2b", "sha256:50e3b9a464d5d08cc5227413db0d1c4707b6172e4d4d915c1c70e4de0bbff1f5", "sha256:5276db7ff62bb7b52f77f1f51ed58850e315154249aceb42e7f4c611f0f847ff", "sha256:61a6cf00dcb1a7f0c773ed4acc509cb636af2d6337a08f362413c76b2b47a8dd", "sha256:6ae6c4cb59f199d8827c5a07546b2ab7e85d262acaccaacd49b62f53f7c456f7", "sha256:7661d401d60d8bf15bb5da39e4dd72f5d764c5aff5a86ef52a042506e3e970ff", "sha256:7bd527f36a605c914efca5d3d014170b2cb184723e423d26b1fb2fd9108e264d", "sha256:7cb54db3535c8686ea12e9535eb087d32421184eacc6939ef15ef50f83a5e7e2", "sha256:7f3a2d740291f7f2c111d86a1c4851b70fb000a6c8883a59660d95ad57b9df35", "sha256:81304b7d8e9c824d058087dcb89144842c8e0dea6d281c031f59f0acf66963d4", "sha256:933947e8b4fbe617a51528b09851685138b49d511af0b6c0da2539115d6d4514", "sha256:94223d7f060301b3a8c09c9b3bc3294b56b2188e7d8179c762a1cda72c979252", "sha256:ab3ca49afcb47058393b0122428358d2fbe0408cf99f1b58b295cfeb4ed39109", "sha256:bd6292f565ca46dee4e737ebcc20742e3b5be2b01556dafe169f6c65d088875f", "sha256:cb924aa3e4a3fb644d0c463cad5bc2572649a6a3f68a7f8e4fbe44aaa6d77e4c", "sha256:d0fc7a286feac9077ec52a927fc9fe8fe2fabab95426722be4c953c9a8bede92", "sha256:ddc34786490a6e4ec0a855d401034cbd1242ef186c20d79d2166d6a4bd449577", "sha256:e34b155e36fa9da7e1b7c738ed7767fc9491a62ec6af70fe9da4a057759edc2d", "sha256:e5b9e8f6bda48460b7b143c3821b21b452cb3a835e6bbd5dd33aa0c8d3f5137d", "sha256:e81ebf6c5ee9684be8f2c87563880f93eedd56dd2b6146d8a725b50b7e5adb0f", "sha256:eb91be369f945f10d3a49f5f9be8b3d0b93a4c2be8f8a5b83b0571b8123e0a7a", "sha256:f460d1ceb0e4a5dcb2a652db0904224f367c9b3c1470d5a7683c0480e582468b" ], "version": "==1.3.1" }, "markupsafe": { "hashes": [ "sha256:00bc623926325b26bb9605ae9eae8a215691f33cae5df11ca5424f06f2d1f473", "sha256:09027a7803a62ca78792ad89403b1b7a73a01c8cb65909cd876f7fcebd79b161", "sha256:09c4b7f37d6c648cb13f9230d847adf22f8171b1ccc4d5682398e77f40309235", "sha256:1027c282dad077d0bae18be6794e6b6b8c91d58ed8a8d89a89d59693b9131db5", "sha256:24982cc2533820871eba85ba648cd53d8623687ff11cbb805be4ff7b4c971aff", "sha256:29872e92839765e546828bb7754a68c418d927cd064fd4708fab9fe9c8bb116b", "sha256:43a55c2930bbc139570ac2452adf3d70cdbb3cfe5912c71cdce1c2c6bbd9c5d1", "sha256:46c99d2de99945ec5cb54f23c8cd5689f6d7177305ebff350a58ce5f8de1669e", "sha256:500d4957e52ddc3351cabf489e79c91c17f6e0899158447047588650b5e69183", "sha256:535f6fc4d397c1563d08b88e485c3496cf5784e927af890fb3c3aac7f933ec66", "sha256:62fe6c95e3ec8a7fad637b7f3d372c15ec1caa01ab47926cfdf7a75b40e0eac1", "sha256:6dd73240d2af64df90aa7c4e7481e23825ea70af4b4922f8ede5b9e35f78a3b1", "sha256:717ba8fe3ae9cc0006d7c451f0bb265ee07739daf76355d06366154ee68d221e", "sha256:79855e1c5b8da654cf486b830bd42c06e8780cea587384cf6545b7d9ac013a0b", "sha256:7c1699dfe0cf8ff607dbdcc1e9b9af1755371f92a68f706051cc8c37d447c905", "sha256:88e5fcfb52ee7b911e8bb6d6aa2fd21fbecc674eadd44118a9cc3863f938e735", "sha256:8defac2f2ccd6805ebf65f5eeb132adcf2ab57aa11fdf4c0dd5169a004710e7d", "sha256:98c7086708b163d425c67c7a91bad6e466bb99d797aa64f965e9d25c12111a5e", "sha256:9add70b36c5666a2ed02b43b335fe19002ee5235efd4b8a89bfcf9005bebac0d", "sha256:9bf40443012702a1d2070043cb6291650a0841ece432556f784f004937f0f32c", "sha256:ade5e387d2ad0d7ebf59146cc00c8044acbd863725f887353a10df825fc8ae21", "sha256:b00c1de48212e4cc9603895652c5c410df699856a2853135b3967591e4beebc2", "sha256:b1282f8c00509d99fef04d8ba936b156d419be841854fe901d8ae224c59f0be5", "sha256:b2051432115498d3562c084a49bba65d97cf251f5a331c64a12ee7e04dacc51b", "sha256:ba59edeaa2fc6114428f1637ffff42da1e311e29382d81b339c1817d37ec93c6", "sha256:c8716a48d94b06bb3b2524c2b77e055fb313aeb4ea620c8dd03a105574ba704f", "sha256:cd5df75523866410809ca100dc9681e301e3c27567cf498077e8551b6d20e42f", "sha256:e249096428b3ae81b08327a63a485ad0878de3fb939049038579ac0ef61e17e7" ], "version": "==1.1.1" }, "mccabe": { "hashes": [ "sha256:ab8a6258860da4b6677da4bd2fe5dc2c659cff31b3ee4f7f5d64e79735b80d42", "sha256:dd8d182285a0fe56bace7f45b5e7d1a6ebcbf524e8f3bd87eb0f125271b8831f" ], "version": "==0.6.1" }, "mock": { "hashes": [ "sha256:5ce3c71c5545b472da17b72268978914d0252980348636840bd34a00b5cc96c1", "sha256:b158b6df76edd239b8208d481dc46b6afd45a846b7812ff0ce58971cf5bc8bba" ], "index": "pypi", "version": "==2.0.0" }, "more-itertools": { "hashes": [ "sha256:2112d2ca570bb7c3e53ea1a35cd5df42bb0fd10c45f0fb97178679c3c03d64c7", "sha256:c3e4748ba1aad8dba30a4886b0b1a2004f9a863837b8654e7059eebf727afa5a" ], "markers": "python_version > '2.7'", "version": "==7.0.0" }, "packaging": { "hashes": [ "sha256:0c98a5d0be38ed775798ece1b9727178c4469d9c3b4ada66e8e6b7849f8732af", "sha256:9e1cbf8c12b1f1ce0bb5344b8d7ecf66a6f8a6e91bcb0c84593ed6d3ab5c4ab3" ], "version": "==19.0" }, "pathlib2": { "hashes": [ "sha256:25199318e8cc3c25dcb45cbe084cc061051336d5a9ea2a12448d3d8cb748f742", "sha256:5887121d7f7df3603bca2f710e7219f3eca0eb69e0b7cc6e0a022e155ac931a7" ], "index": "pypi", "version": "==2.3.3" }, "pbr": { "hashes": [ "sha256:8257baf496c8522437e8a6cfe0f15e00aedc6c0e0e7c9d55eeeeab31e0853843", "sha256:8c361cc353d988e4f5b998555c88098b9d5964c2e11acf7b0d21925a66bb5824" ], "index": "pypi", "version": "==5.1.3" }, "pep8": { "hashes": [ "sha256:b22cfae5db09833bb9bd7c8463b53e1a9c9b39f12e304a8d0bba729c501827ee", "sha256:fe249b52e20498e59e0b5c5256aa52ee99fc295b26ec9eaa85776ffdb9fe6374" ], "index": "pypi", "version": "==1.7.1" }, "pipenv": { "hashes": [ "sha256:56ad5f5cb48f1e58878e14525a6e3129d4306049cb76d2f6a3e95df0d5fc6330", "sha256:7df8e33a2387de6f537836f48ac6fcd94eda6ed9ba3d5e3fd52e35b5bc7ff49e", "sha256:a673e606e8452185e9817a987572b55360f4d28b50831ef3b42ac3cab3fee846" ], "version": "==2018.11.26" }, "pipenv-to-requirements": { "hashes": [ "sha256:04dc5b1fedfea18858efe3f28d62ed70ac0cd04c34bc32a8c3531384d11be460", "sha256:44bfefa3f6ded62e3bdcc5a6bb4de7a821b2658f821c1126f6abc3bffecb2c1e" ], "index": "pypi", "version": "==0.7.1" }, "pkginfo": { "hashes": [ "sha256:7424f2c8511c186cd5424bbf31045b77435b37a8d604990b79d4e70d741148bb", "sha256:a6d9e40ca61ad3ebd0b72fbadd4fba16e4c0e4df0428c041e01e06eb6ee71f32" ], "version": "==1.5.0.1" }, "pluggy": { "hashes": [ "sha256:19ecf9ce9db2fce065a7a0586e07cfb4ac8614fe96edf628a264b1c70116cf8f", "sha256:84d306a647cc805219916e62aab89caa97a33a1dd8c342e87a37f91073cd4746" ], "version": "==0.9.0" }, "py": { "hashes": [ "sha256:64f65755aee5b381cea27766a3a147c3f15b9b6b9ac88676de66ba2ae36793fa", "sha256:dc639b046a6e2cff5bbe40194ad65936d6ba360b52b3c3fe1d08a82dd50b5e53" ], "version": "==1.8.0" }, "pycodestyle": { "hashes": [ "sha256:682256a5b318149ca0d2a9185d365d8864a768a28db66a84a2ea946bcc426766", "sha256:6c4245ade1edfad79c3446fadfc96b0de2759662dc29d07d80a6f27ad1ca6ba9" ], "version": "==2.3.1" }, "pyfakefs": { "hashes": [ "sha256:39f1a39ed3b61def03aa4f3c38c4322273b18834e0b3cc0a200b33f36f7a4321", "sha256:8cd2270d65d3316dd4dc6bb83242df2e0990d27605209bc16e8041bcc0956961" ], "index": "pypi", "version": "==3.5.8" }, "pyflakes": { "hashes": [ "sha256:08bd6a50edf8cffa9fa09a463063c425ecaaf10d1eb0335a7e8b1401aef89e6f", "sha256:8d616a382f243dbf19b54743f280b80198be0bca3a5396f1d2e1fca6223e8805" ], "index": "pypi", "version": "==1.6.0" }, "pygments": { "hashes": [ "sha256:5ffada19f6203563680669ee7f53b64dabbeb100eb51b61996085e99c03b284a", "sha256:e8218dd399a61674745138520d0d4cf2621d7e032439341bc3f647bff125818d" ], "version": "==2.3.1" }, "pylint": { "hashes": [ "sha256:13109caab4972cb6d7395e94ad7189e93e9454f09ededaa6b6784cc5456d41f1", "sha256:31f997da02c3a41391a44e073c3572eb3ee923608dd9984df451ff8ddf92cfde" ], "index": "pypi", "version": "==2.2.3" }, "pyparsing": { "hashes": [ "sha256:1873c03321fc118f4e9746baf201ff990ceb915f433f23b395f5580d1840cb2a", "sha256:9b6323ef4ab914af344ba97510e966d64ba91055d6b9afa6b30799340e89cc03" ], "version": "==2.4.0" }, "pytest": { "hashes": [ "sha256:3773f4c235918987d51daf1db66d51c99fac654c81d6f2f709a046ab446d5e5d", "sha256:b7802283b70ca24d7119b32915efa7c409982f59913c1a6c0640aacf118b95f5" ], "index": "pypi", "version": "==4.4.1" }, "pytest-cov": { "hashes": [ "sha256:0ab664b25c6aa9716cbf203b17ddb301932383046082c081b9848a0edf5add33", "sha256:230ef817450ab0699c6cc3c9c8f7a829c34674456f2ed8df1fe1d39780f7c87f" ], "index": "pypi", "version": "==2.6.1" }, "pytest-mock": { "hashes": [ "sha256:43ce4e9dd5074993e7c021bb1c22cbb5363e612a2b5a76bc6d956775b10758b7", "sha256:5bf5771b1db93beac965a7347dc81c675ec4090cb841e49d9d34637a25c30568" ], "index": "pypi", "version": "==1.10.4" }, "pytz": { "hashes": [ "sha256:303879e36b721603cc54604edcac9d20401bdbe31e1e4fdee5b9f98d5d31dfda", "sha256:d747dd3d23d77ef44c6a3526e274af6efeb0a6f1afd5a69ba4d5be4098c8e141" ], "version": "==2019.1" }, "pyyaml": { "hashes": [ "sha256:1adecc22f88d38052fb787d959f003811ca858b799590a5eaa70e63dca50308c", "sha256:436bc774ecf7c103814098159fbb84c2715d25980175292c648f2da143909f95", "sha256:460a5a4248763f6f37ea225d19d5c205677d8d525f6a83357ca622ed541830c2", "sha256:5a22a9c84653debfbf198d02fe592c176ea548cccce47553f35f466e15cf2fd4", "sha256:7a5d3f26b89d688db27822343dfa25c599627bc92093e788956372285c6298ad", "sha256:9372b04a02080752d9e6f990179a4ab840227c6e2ce15b95e1278456664cf2ba", "sha256:a5dcbebee834eaddf3fa7366316b880ff4062e4bcc9787b78c7fbb4a26ff2dd1", "sha256:aee5bab92a176e7cd034e57f46e9df9a9862a71f8f37cad167c6fc74c65f5b4e", "sha256:c51f642898c0bacd335fc119da60baae0824f2cde95b0330b56c0553439f0673", "sha256:c68ea4d3ba1705da1e0d85da6684ac657912679a649e8868bd850d2c299cce13", "sha256:e23d0cc5299223dcc37885dae624f382297717e459ea24053709675a976a3e19" ], "version": "==5.1" }, "readme-renderer": { "hashes": [ "sha256:bb16f55b259f27f75f640acf5e00cf897845a8b3e4731b5c1a436e4b8529202f", "sha256:c8532b79afc0375a85f10433eca157d6b50f7d6990f337fa498c96cd4bfc203d" ], "version": "==24.0" }, "reno": { "extras": [ "sphinx" ], "hashes": [ "sha256:98e1eb504566e17611b2cbdbcc065aa4f35d34d3382aafaadeb041b399ca7544", "sha256:bc5279fa4f0c4b34eb2a146c7893555127b903f71880f7212a6c99c6aaca4ad0" ], "index": "pypi", "version": "==2.11.3" }, "requests": { "hashes": [ "sha256:502a824f31acdacb3a35b6690b5fbf0bc41d63a24a45c4004352b0242707598e", "sha256:7bf2a778576d825600030a110f3c0e3e8edc51dfaafe1c146e39a2027784957b" ], "version": "==2.21.0" }, "requests-toolbelt": { "hashes": [ "sha256:380606e1d10dc85c3bd47bf5a6095f815ec007be7a8b69c878507068df059e6f", "sha256:968089d4584ad4ad7c171454f0a5c6dac23971e9472521ea3b6d49d610aa6fc0" ], "version": "==0.9.1" }, "scandir": { "hashes": [ "sha256:2586c94e907d99617887daed6c1d102b5ca28f1085f90446554abf1faf73123e", "sha256:2ae41f43797ca0c11591c0c35f2f5875fa99f8797cb1a1fd440497ec0ae4b022", "sha256:2b8e3888b11abb2217a32af0766bc06b65cc4a928d8727828ee68af5a967fa6f", "sha256:2c712840c2e2ee8dfaf36034080108d30060d759c7b73a01a52251cc8989f11f", "sha256:4d4631f6062e658e9007ab3149a9b914f3548cb38bfb021c64f39a025ce578ae", "sha256:67f15b6f83e6507fdc6fca22fedf6ef8b334b399ca27c6b568cbfaa82a364173", "sha256:7d2d7a06a252764061a020407b997dd036f7bd6a175a5ba2b345f0a357f0b3f4", "sha256:8c5922863e44ffc00c5c693190648daa6d15e7c1207ed02d6f46a8dcc2869d32", "sha256:92c85ac42f41ffdc35b6da57ed991575bdbe69db895507af88b9f499b701c188", "sha256:b24086f2375c4a094a6b51e78b4cf7ca16c721dcee2eddd7aa6494b42d6d519d", "sha256:cb925555f43060a1745d0a321cca94bcea927c50114b623d73179189a4e100ac" ], "index": "pypi", "markers": "python_version < '3.5'", "version": "==1.10.0" }, "six": { "hashes": [ "sha256:3350809f0555b11f552448330d0b52d5f24c91a322ea4a15ef22629740f3761c", "sha256:d16a0141ec1a18405cd4ce8b4613101da75da0e9a7aec5bdd4fa804d0e0eba73" ], "version": "==1.12.0" }, "snowballstemmer": { "hashes": [ "sha256:919f26a68b2c17a7634da993d91339e288964f93c274f1343e3bbbe2096e1128", "sha256:9f3bcd3c401c3e862ec0ebe6d2c069ebc012ce142cce209c098ccb5b09136e89" ], "version": "==1.2.1" }, "sphinx": { "hashes": [ "sha256:423280646fb37944dd3c85c58fb92a20d745793a9f6c511f59da82fa97cd404b", "sha256:de930f42600a4fef993587633984cc5027dedba2464bcf00ddace26b40f8d9ce" ], "version": "==2.0.1" }, "sphinx-rtd-theme": { "hashes": [ "sha256:00cf895504a7895ee433807c62094cf1e95f065843bf3acd17037c3e9a2becd4", "sha256:728607e34d60456d736cc7991fd236afb828b21b82f956c5ea75f94c8414040a" ], "index": "pypi", "version": "==0.4.3" }, "sphinxcontrib-applehelp": { "hashes": [ "sha256:edaa0ab2b2bc74403149cb0209d6775c96de797dfd5b5e2a71981309efab3897", "sha256:fb8dee85af95e5c30c91f10e7eb3c8967308518e0f7488a2828ef7bc191d0d5d" ], "version": "==1.0.1" }, "sphinxcontrib-devhelp": { "hashes": [ "sha256:6c64b077937330a9128a4da74586e8c2130262f014689b4b89e2d08ee7294a34", "sha256:9512ecb00a2b0821a146736b39f7aeb90759834b07e81e8cc23a9c70bacb9981" ], "version": "==1.0.1" }, "sphinxcontrib-htmlhelp": { "hashes": [ "sha256:4670f99f8951bd78cd4ad2ab962f798f5618b17675c35c5ac3b2132a14ea8422", "sha256:d4fd39a65a625c9df86d7fa8a2d9f3cd8299a3a4b15db63b50aac9e161d8eff7" ], "version": "==1.0.2" }, "sphinxcontrib-jsmath": { "hashes": [ "sha256:2ec2eaebfb78f3f2078e73666b1415417a116cc848b72e5172e596c871103178", "sha256:a9925e4a4587247ed2191a22df5f6970656cb8ca2bd6284309578f2153e0c4b8" ], "version": "==1.0.1" }, "sphinxcontrib-programoutput": { "hashes": [ "sha256:55678c7f81e96df48e9f0d97a48ebf84ad9f659bc86ed27e7b0d656c050569b7", "sha256:75b182e9e8cf7efe828cac2c351bb737b00a76bc3aa60fd1a9b2b7096e99c383" ], "index": "pypi", "version": "==0.14" }, "sphinxcontrib-qthelp": { "hashes": [ "sha256:513049b93031beb1f57d4daea74068a4feb77aa5630f856fcff2e50de14e9a20", "sha256:79465ce11ae5694ff165becda529a600c754f4bc459778778c7017374d4d406f" ], "version": "==1.0.2" }, "sphinxcontrib-serializinghtml": { "hashes": [ "sha256:c0efb33f8052c04fd7a26c0a07f1678e8512e0faec19f4aa8f2473a8b81d5227", "sha256:db6615af393650bf1151a6cd39120c29abaf93cc60db8c48eb2dddbfdc3a9768" ], "version": "==1.1.3" }, "tqdm": { "hashes": [ "sha256:d385c95361699e5cf7622485d9b9eae2d4864b21cd5a2374a9c381ffed701021", "sha256:e22977e3ebe961f72362f6ddfb9197cc531c9737aaf5f607ef09740c849ecd05" ], "version": "==4.31.1" }, "twine": { "hashes": [ "sha256:0fb0bfa3df4f62076cab5def36b1a71a2e4acb4d1fa5c97475b048117b1a6446", "sha256:d6c29c933ecfc74e9b1d9fa13aa1f87c5d5770e119f5a4ce032092f0ff5b14dc" ], "index": "pypi", "version": "==1.13.0" }, "typed-ast": { "hashes": [ "sha256:04894d268ba6eab7e093d43107869ad49e7b5ef40d1a94243ea49b352061b200", "sha256:16616ece19daddc586e499a3d2f560302c11f122b9c692bc216e821ae32aa0d0", "sha256:252fdae740964b2d3cdfb3f84dcb4d6247a48a6abe2579e8029ab3be3cdc026c", "sha256:2af80a373af123d0b9f44941a46df67ef0ff7a60f95872412a145f4500a7fc99", "sha256:2c88d0a913229a06282b285f42a31e063c3bf9071ff65c5ea4c12acb6977c6a7", "sha256:2ea99c029ebd4b5a308d915cc7fb95b8e1201d60b065450d5d26deb65d3f2bc1", "sha256:3d2e3ab175fc097d2a51c7a0d3fda442f35ebcc93bb1d7bd9b95ad893e44c04d", "sha256:4766dd695548a15ee766927bf883fb90c6ac8321be5a60c141f18628fb7f8da8", "sha256:56b6978798502ef66625a2e0f80cf923da64e328da8bbe16c1ff928c70c873de", "sha256:5cddb6f8bce14325b2863f9d5ac5c51e07b71b462361fd815d1d7706d3a9d682", "sha256:644ee788222d81555af543b70a1098f2025db38eaa99226f3a75a6854924d4db", "sha256:64cf762049fc4775efe6b27161467e76d0ba145862802a65eefc8879086fc6f8", "sha256:68c362848d9fb71d3c3e5f43c09974a0ae319144634e7a47db62f0f2a54a7fa7", "sha256:6c1f3c6f6635e611d58e467bf4371883568f0de9ccc4606f17048142dec14a1f", "sha256:b213d4a02eec4ddf622f4d2fbc539f062af3788d1f332f028a2e19c42da53f15", "sha256:bb27d4e7805a7de0e35bd0cb1411bc85f807968b2b0539597a49a23b00a622ae", "sha256:c9d414512eaa417aadae7758bc118868cd2396b0e6138c1dd4fda96679c079d3", "sha256:f0937165d1e25477b01081c4763d2d9cdc3b18af69cb259dd4f640c9b900fe5e", "sha256:fb96a6e2c11059ecf84e6741a319f93f683e440e341d4489c9b161eca251cf2a", "sha256:fc71d2d6ae56a091a8d94f33ec9d0f2001d1cb1db423d8b4355debfe9ce689b7" ], "index": "pypi", "version": "==1.3.4" }, "urllib3": { "hashes": [ "sha256:4c291ca23bbb55c76518905869ef34bdd5f0e46af7afe6861e8375643ffee1a0", "sha256:9a247273df709c4fedb38c711e44292304f73f39ab01beda9f6b9fc375669ac3" ], "version": "==1.24.2" }, "virtualenv": { "hashes": [ "sha256:15ee248d13e4001a691d9583948ad3947bcb8a289775102e4c4aa98a8b7a6d73", "sha256:bfc98bb9b42a3029ee41b96dc00a34c2f254cbf7716bec824477b2c82741a5c4" ], "version": "==16.5.0" }, "virtualenv-clone": { "hashes": [ "sha256:532f789a5c88adf339506e3ca03326f20ee82fd08ee5586b44dc859b5b4468c5", "sha256:c88ae171a11b087ea2513f260cdac9232461d8e9369bcd1dc143fc399d220557" ], "version": "==0.5.3" }, "webencodings": { "hashes": [ "sha256:a0af1213f3c2226497a97e2b3aa01a7e4bee4f403f95be16fc9acd2947514a78", "sha256:b36a1c245f2d304965eb4e0a82848379241dc04b865afcc4aab16748587e1923" ], "version": "==0.5.1" }, "wrapt": { "hashes": [ "sha256:4aea003270831cceb8a90ff27c4031da6ead7ec1886023b80ce0dfe0adf61533" ], "version": "==1.11.1" }, "yapf": { "hashes": [ "sha256:34f6f80c446dcb2c44bd644c4037a2024b6645e293a4c9c4521983dd0bb247a1", "sha256:613deba14233623ff3432d9d5032631b5f600be97b39f66932cbe67648bfa8ea" ], "index": "pypi", "version": "==0.27.0" } } } guake-3.6.3/README.rst000066400000000000000000000053501346623310400143130ustar00rootroot00000000000000============== Guake 3 README ============== |travis-badge|_ |bountysource-badge|_ |docs-badge|_ |translation-badge|_ .. |travis-badge| image:: https://travis-ci.org/Guake/guake.svg?branch=master .. _travis-badge: https://travis-ci.org/Guake/guake .. |bountysource-badge| image:: https://img.shields.io/bountysource/team/guake/activity.svg .. _bountysource-badge: https://www.bountysource.com/teams/guake .. |docs-badge| image:: https://readthedocs.org/projects/guake/badge/?version=stable .. _docs-badge: https://guake.readthedocs.io/en/stable/?badge=stable .. |translation-badge| image:: https://hosted.weblate.org/widgets/guake/-/guake/svg-badge.svg .. _translation-badge: https://hosted.weblate.org/projects/guake/guake/ Introduction ============ Guake is a dropdown terminal made for the GNOME desktop environment. Guake's style of window is based on an FPS game, and one of its goals is to be easy to reach. Features Request ---------------- Please vote for feature on `FeatHub `_. Open Issues on GitHub only for bug reports. Most requested features list for Guake: |feathub-badge|_ .. |feathub-badge| image:: http://feathub.com/Guake/guake?format=svg .. _feathub-badge: http://feathub.com/Guake/guake There is also a Bountysource opened here for those willing to pay a certain among of money for a really needed feature. `See our Bountysource page here `_. Note when compiling from source ------------------------------- Do **NOT** use the Tarball packages automatically generated by GitHub on the Release pages. They won't work because one of the main component of Guake build system, PBR, requires the full Git history to be available when building from source. Note this does not impact source distribution packages you can download from Pypi. Build from sources instructions are described on `this page of the Online Documentation `_. Please read this carefully before opening an issue ! Bugs? Information? ------------------ - Source Code available on `GitHub `_. - Official Homepage: http://guake-project.org - Online Documentation is hosted on `ReadTheDocs `_. - If you are not a developer, you can still contribute to Guake by `improving its translations in your language `_. Guake users are welcome `to support Weblate `_ in providing this service for free for OpenSource Projects. **Important note**: Do **NOT** use the domain guake.org, it has been registered by someone outside the team. We cannot be held responsible for the content on that web site. guake-3.6.3/docs/000077500000000000000000000000001346623310400135515ustar00rootroot00000000000000guake-3.6.3/docs/Makefile000066400000000000000000000152341346623310400152160ustar00rootroot00000000000000# Makefile for Sphinx documentation # # You can set these variables from the command line. SPHINXOPTS = SPHINXBUILD = sphinx-build PAPER = BUILDDIR = _build # User-friendly check for sphinx-build ifeq ($(shell which $(SPHINXBUILD) >/dev/null 2>&1; echo $$?), 1) $(error The '$(SPHINXBUILD)' command was not found. Make sure you have Sphinx installed, then set the SPHINXBUILD environment variable to point to the full path of the '$(SPHINXBUILD)' executable. Alternatively you can add the directory with the executable to your PATH. If you don't have Sphinx installed, grab it from http://sphinx-doc.org/) endif # Internal variables. PAPEROPT_a4 = -D latex_paper_size=a4 PAPEROPT_letter = -D latex_paper_size=letter ALLSPHINXOPTS = -d $(BUILDDIR)/doctrees $(PAPEROPT_$(PAPER)) $(SPHINXOPTS) source # the i18n builder cannot share the environment and doctrees with the others I18NSPHINXOPTS = $(PAPEROPT_$(PAPER)) $(SPHINXOPTS) source .PHONY: help clean html dirhtml singlehtml pickle json htmlhelp qthelp devhelp epub latex latexpdf text man changes linkcheck doctest gettext help: @echo "Please use \`make ' where is one of" @echo " html to make standalone HTML files" @echo " dirhtml to make HTML files named index.html in directories" @echo " singlehtml to make a single large HTML file" @echo " pickle to make pickle files" @echo " json to make JSON files" @echo " htmlhelp to make HTML files and a HTML help project" @echo " qthelp to make HTML files and a qthelp project" @echo " devhelp to make HTML files and a Devhelp project" @echo " epub to make an epub" @echo " latex to make LaTeX files, you can set PAPER=a4 or PAPER=letter" @echo " latexpdf to make LaTeX files and run them through pdflatex" @echo " latexpdfja to make LaTeX files and run them through platex/dvipdfmx" @echo " text to make text files" @echo " man to make manual pages" @echo " texinfo to make Texinfo files" @echo " info to make Texinfo files and run them through makeinfo" @echo " gettext to make PO message catalogs" @echo " changes to make an overview of all changed/added/deprecated items" @echo " xml to make Docutils-native XML files" @echo " pseudoxml to make pseudoxml-XML files for display purposes" @echo " linkcheck to check all external links for integrity" @echo " doctest to run all doctests embedded in the documentation (if enabled)" clean: rm -rf $(BUILDDIR)/* html: $(SPHINXBUILD) -b html $(ALLSPHINXOPTS) $(BUILDDIR)/html @echo @echo "Build finished. The HTML pages are in $(BUILDDIR)/html." dirhtml: $(SPHINXBUILD) -b dirhtml $(ALLSPHINXOPTS) $(BUILDDIR)/dirhtml @echo @echo "Build finished. The HTML pages are in $(BUILDDIR)/dirhtml." singlehtml: $(SPHINXBUILD) -b singlehtml $(ALLSPHINXOPTS) $(BUILDDIR)/singlehtml @echo @echo "Build finished. The HTML page is in $(BUILDDIR)/singlehtml." pickle: $(SPHINXBUILD) -b pickle $(ALLSPHINXOPTS) $(BUILDDIR)/pickle @echo @echo "Build finished; now you can process the pickle files." json: $(SPHINXBUILD) -b json $(ALLSPHINXOPTS) $(BUILDDIR)/json @echo @echo "Build finished; now you can process the JSON files." htmlhelp: $(SPHINXBUILD) -b htmlhelp $(ALLSPHINXOPTS) $(BUILDDIR)/htmlhelp @echo @echo "Build finished; now you can run HTML Help Workshop with the" \ ".hhp project file in $(BUILDDIR)/htmlhelp." qthelp: $(SPHINXBUILD) -b qthelp $(ALLSPHINXOPTS) $(BUILDDIR)/qthelp @echo @echo "Build finished; now you can run "qcollectiongenerator" with the" \ ".qhcp project file in $(BUILDDIR)/qthelp, like this:" @echo "# qcollectiongenerator $(BUILDDIR)/qthelp/PythonFixImports.qhcp" @echo "To view the help file:" @echo "# assistant -collectionFile $(BUILDDIR)/qthelp/PythonFixImports.qhc" devhelp: $(SPHINXBUILD) -b devhelp $(ALLSPHINXOPTS) $(BUILDDIR)/devhelp @echo @echo "Build finished." @echo "To view the help file:" @echo "# mkdir -p $$HOME/.local/share/devhelp/PythonFixImports" @echo "# ln -s $(BUILDDIR)/devhelp $$HOME/.local/share/devhelp/PythonFixImports" @echo "# devhelp" epub: $(SPHINXBUILD) -b epub $(ALLSPHINXOPTS) $(BUILDDIR)/epub @echo @echo "Build finished. The epub file is in $(BUILDDIR)/epub." latex: $(SPHINXBUILD) -b latex $(ALLSPHINXOPTS) $(BUILDDIR)/latex @echo @echo "Build finished; the LaTeX files are in $(BUILDDIR)/latex." @echo "Run \`make' in that directory to run these through (pdf)latex" \ "(use \`make latexpdf' here to do that automatically)." latexpdf: $(SPHINXBUILD) -b latex $(ALLSPHINXOPTS) $(BUILDDIR)/latex @echo "Running LaTeX files through pdflatex..." $(MAKE) -C $(BUILDDIR)/latex all-pdf @echo "pdflatex finished; the PDF files are in $(BUILDDIR)/latex." latexpdfja: $(SPHINXBUILD) -b latex $(ALLSPHINXOPTS) $(BUILDDIR)/latex @echo "Running LaTeX files through platex and dvipdfmx..." $(MAKE) -C $(BUILDDIR)/latex all-pdf-ja @echo "pdflatex finished; the PDF files are in $(BUILDDIR)/latex." text: $(SPHINXBUILD) -b text $(ALLSPHINXOPTS) $(BUILDDIR)/text @echo @echo "Build finished. The text files are in $(BUILDDIR)/text." man: $(SPHINXBUILD) -b man $(ALLSPHINXOPTS) $(BUILDDIR)/man @echo @echo "Build finished. The manual pages are in $(BUILDDIR)/man." texinfo: $(SPHINXBUILD) -b texinfo $(ALLSPHINXOPTS) $(BUILDDIR)/texinfo @echo @echo "Build finished. The Texinfo files are in $(BUILDDIR)/texinfo." @echo "Run \`make' in that directory to run these through makeinfo" \ "(use \`make info' here to do that automatically)." info: $(SPHINXBUILD) -b texinfo $(ALLSPHINXOPTS) $(BUILDDIR)/texinfo @echo "Running Texinfo files through makeinfo..." make -C $(BUILDDIR)/texinfo info @echo "makeinfo finished; the Info files are in $(BUILDDIR)/texinfo." gettext: $(SPHINXBUILD) -b gettext $(I18NSPHINXOPTS) $(BUILDDIR)/locale @echo @echo "Build finished. The message catalogs are in $(BUILDDIR)/locale." changes: $(SPHINXBUILD) -b changes $(ALLSPHINXOPTS) $(BUILDDIR)/changes @echo @echo "The overview file is in $(BUILDDIR)/changes." linkcheck: $(SPHINXBUILD) -b linkcheck $(ALLSPHINXOPTS) $(BUILDDIR)/linkcheck @echo @echo "Link check complete; look for any errors in the above output " \ "or in $(BUILDDIR)/linkcheck/output.txt." doctest: $(SPHINXBUILD) -b doctest $(ALLSPHINXOPTS) $(BUILDDIR)/doctest @echo "Testing of doctests in the sources finished, look at the " \ "results in $(BUILDDIR)/doctest/output.txt." xml: $(SPHINXBUILD) -b xml $(ALLSPHINXOPTS) $(BUILDDIR)/xml @echo @echo "Build finished. The XML files are in $(BUILDDIR)/xml." pseudoxml: $(SPHINXBUILD) -b pseudoxml $(ALLSPHINXOPTS) $(BUILDDIR)/pseudoxml @echo @echo "Build finished. The pseudo-XML files are in $(BUILDDIR)/pseudoxml." guake-3.6.3/docs/make.bat000066400000000000000000000151121346623310400151560ustar00rootroot00000000000000@ECHO OFF REM Command file for Sphinx documentation if "%SPHINXBUILD%" == "" ( set SPHINXBUILD=sphinx-build ) set BUILDDIR=build set ALLSPHINXOPTS=-d %BUILDDIR%/doctrees %SPHINXOPTS% source set I18NSPHINXOPTS=%SPHINXOPTS% source if NOT "%PAPER%" == "" ( set ALLSPHINXOPTS=-D latex_paper_size=%PAPER% %ALLSPHINXOPTS% set I18NSPHINXOPTS=-D latex_paper_size=%PAPER% %I18NSPHINXOPTS% ) if "%1" == "" goto help if "%1" == "help" ( :help echo.Please use `make ^` where ^ is one of echo. html to make standalone HTML files echo. dirhtml to make HTML files named index.html in directories echo. singlehtml to make a single large HTML file echo. pickle to make pickle files echo. json to make JSON files echo. htmlhelp to make HTML files and a HTML help project echo. qthelp to make HTML files and a qthelp project echo. devhelp to make HTML files and a Devhelp project echo. epub to make an epub echo. latex to make LaTeX files, you can set PAPER=a4 or PAPER=letter echo. text to make text files echo. man to make manual pages echo. texinfo to make Texinfo files echo. gettext to make PO message catalogs echo. changes to make an overview over all changed/added/deprecated items echo. xml to make Docutils-native XML files echo. pseudoxml to make pseudoxml-XML files for display purposes echo. linkcheck to check all external links for integrity echo. doctest to run all doctests embedded in the documentation if enabled goto end ) if "%1" == "clean" ( for /d %%i in (%BUILDDIR%\*) do rmdir /q /s %%i del /q /s %BUILDDIR%\* goto end ) %SPHINXBUILD% 2> nul if errorlevel 9009 ( echo. echo.The 'sphinx-build' command was not found. Make sure you have Sphinx echo.installed, then set the SPHINXBUILD environment variable to point echo.to the full path of the 'sphinx-build' executable. Alternatively you echo.may add the Sphinx directory to PATH. echo. echo.If you don't have Sphinx installed, grab it from echo.http://sphinx-doc.org/ exit /b 1 ) if "%1" == "html" ( %SPHINXBUILD% -b html %ALLSPHINXOPTS% %BUILDDIR%/html if errorlevel 1 exit /b 1 echo. echo.Build finished. The HTML pages are in %BUILDDIR%/html. goto end ) if "%1" == "dirhtml" ( %SPHINXBUILD% -b dirhtml %ALLSPHINXOPTS% %BUILDDIR%/dirhtml if errorlevel 1 exit /b 1 echo. echo.Build finished. The HTML pages are in %BUILDDIR%/dirhtml. goto end ) if "%1" == "singlehtml" ( %SPHINXBUILD% -b singlehtml %ALLSPHINXOPTS% %BUILDDIR%/singlehtml if errorlevel 1 exit /b 1 echo. echo.Build finished. The HTML pages are in %BUILDDIR%/singlehtml. goto end ) if "%1" == "pickle" ( %SPHINXBUILD% -b pickle %ALLSPHINXOPTS% %BUILDDIR%/pickle if errorlevel 1 exit /b 1 echo. echo.Build finished; now you can process the pickle files. goto end ) if "%1" == "json" ( %SPHINXBUILD% -b json %ALLSPHINXOPTS% %BUILDDIR%/json if errorlevel 1 exit /b 1 echo. echo.Build finished; now you can process the JSON files. goto end ) if "%1" == "htmlhelp" ( %SPHINXBUILD% -b htmlhelp %ALLSPHINXOPTS% %BUILDDIR%/htmlhelp if errorlevel 1 exit /b 1 echo. echo.Build finished; now you can run HTML Help Workshop with the ^ .hhp project file in %BUILDDIR%/htmlhelp. goto end ) if "%1" == "qthelp" ( %SPHINXBUILD% -b qthelp %ALLSPHINXOPTS% %BUILDDIR%/qthelp if errorlevel 1 exit /b 1 echo. echo.Build finished; now you can run "qcollectiongenerator" with the ^ .qhcp project file in %BUILDDIR%/qthelp, like this: echo.^> qcollectiongenerator %BUILDDIR%\qthelp\PythonFixImports.qhcp echo.To view the help file: echo.^> assistant -collectionFile %BUILDDIR%\qthelp\PythonFixImports.ghc goto end ) if "%1" == "devhelp" ( %SPHINXBUILD% -b devhelp %ALLSPHINXOPTS% %BUILDDIR%/devhelp if errorlevel 1 exit /b 1 echo. echo.Build finished. goto end ) if "%1" == "epub" ( %SPHINXBUILD% -b epub %ALLSPHINXOPTS% %BUILDDIR%/epub if errorlevel 1 exit /b 1 echo. echo.Build finished. The epub file is in %BUILDDIR%/epub. goto end ) if "%1" == "latex" ( %SPHINXBUILD% -b latex %ALLSPHINXOPTS% %BUILDDIR%/latex if errorlevel 1 exit /b 1 echo. echo.Build finished; the LaTeX files are in %BUILDDIR%/latex. goto end ) if "%1" == "latexpdf" ( %SPHINXBUILD% -b latex %ALLSPHINXOPTS% %BUILDDIR%/latex cd %BUILDDIR%/latex make all-pdf cd %BUILDDIR%/.. echo. echo.Build finished; the PDF files are in %BUILDDIR%/latex. goto end ) if "%1" == "latexpdfja" ( %SPHINXBUILD% -b latex %ALLSPHINXOPTS% %BUILDDIR%/latex cd %BUILDDIR%/latex make all-pdf-ja cd %BUILDDIR%/.. echo. echo.Build finished; the PDF files are in %BUILDDIR%/latex. goto end ) if "%1" == "text" ( %SPHINXBUILD% -b text %ALLSPHINXOPTS% %BUILDDIR%/text if errorlevel 1 exit /b 1 echo. echo.Build finished. The text files are in %BUILDDIR%/text. goto end ) if "%1" == "man" ( %SPHINXBUILD% -b man %ALLSPHINXOPTS% %BUILDDIR%/man if errorlevel 1 exit /b 1 echo. echo.Build finished. The manual pages are in %BUILDDIR%/man. goto end ) if "%1" == "texinfo" ( %SPHINXBUILD% -b texinfo %ALLSPHINXOPTS% %BUILDDIR%/texinfo if errorlevel 1 exit /b 1 echo. echo.Build finished. The Texinfo files are in %BUILDDIR%/texinfo. goto end ) if "%1" == "gettext" ( %SPHINXBUILD% -b gettext %I18NSPHINXOPTS% %BUILDDIR%/locale if errorlevel 1 exit /b 1 echo. echo.Build finished. The message catalogs are in %BUILDDIR%/locale. goto end ) if "%1" == "changes" ( %SPHINXBUILD% -b changes %ALLSPHINXOPTS% %BUILDDIR%/changes if errorlevel 1 exit /b 1 echo. echo.The overview file is in %BUILDDIR%/changes. goto end ) if "%1" == "linkcheck" ( %SPHINXBUILD% -b linkcheck %ALLSPHINXOPTS% %BUILDDIR%/linkcheck if errorlevel 1 exit /b 1 echo. echo.Link check complete; look for any errors in the above output ^ or in %BUILDDIR%/linkcheck/output.txt. goto end ) if "%1" == "doctest" ( %SPHINXBUILD% -b doctest %ALLSPHINXOPTS% %BUILDDIR%/doctest if errorlevel 1 exit /b 1 echo. echo.Testing of doctests in the sources finished, look at the ^ results in %BUILDDIR%/doctest/output.txt. goto end ) if "%1" == "xml" ( %SPHINXBUILD% -b xml %ALLSPHINXOPTS% %BUILDDIR%/xml if errorlevel 1 exit /b 1 echo. echo.Build finished. The XML files are in %BUILDDIR%/xml. goto end ) if "%1" == "pseudoxml" ( %SPHINXBUILD% -b pseudoxml %ALLSPHINXOPTS% %BUILDDIR%/pseudoxml if errorlevel 1 exit /b 1 echo. echo.Build finished. The pseudo-XML files are in %BUILDDIR%/pseudoxml. goto end ) :end guake-3.6.3/docs/source/000077500000000000000000000000001346623310400150515ustar00rootroot00000000000000guake-3.6.3/docs/source/_static/000077500000000000000000000000001346623310400164775ustar00rootroot00000000000000guake-3.6.3/docs/source/_static/.placeholder000066400000000000000000000000001346623310400207500ustar00rootroot00000000000000guake-3.6.3/docs/source/conf.py000066400000000000000000000211121346623310400163450ustar00rootroot00000000000000# -*- coding: utf-8 -*- # # Python Fix Imports documentation build configuration file, created by # sphinx-quickstart on Fri Apr 1 14:41:17 2016. # # This file is execfile()d with the current directory set to its # containing dir. # # Note that not all possible configuration values are present in this # autogenerated file. # # All configuration values have a default; values that are commented out # serve to show the default. import os import sys # If extensions (or modules to document with autodoc) are in another directory, # add these directories to sys.path here. If the directory is relative to the # documentation root, use os.path.abspath to make it absolute, like shown here. #sys.path.insert(0, os.path.abspath('.')) # -- General configuration ------------------------------------------------ # If your documentation needs a minimal Sphinx version, state it here. #needs_sphinx = '1.0' # Add any Sphinx extension module names here, as strings. They can be # extensions coming with Sphinx (named 'sphinx.ext.*') or your custom # ones. extensions = [ 'sphinx.ext.doctest', 'reno.sphinxext', 'sphinxcontrib.programoutput', ] # Add any paths that contain templates here, relative to this directory. templates_path = ['_templates'] # The suffix of source filenames. source_suffix = '.rst' # The encoding of source files. #source_encoding = 'utf-8-sig' # The master toctree document. master_doc = 'index' # General information about the project. project = u'Guake' copyright = u'2018, Gaetan Semet' # The version info for the project you're documenting, acts as replacement for # |version| and |release|, also used in various other places throughout the # built documents. # # The short X.Y version. version = '1.0' # The full version, including alpha/beta/rc tags. release = '1.0' # The language for content autogenerated by Sphinx. Refer to documentation # for a list of supported languages. #language = None # There are two options for replacing |today|: either, you set today to some # non-false value, then it is used: #today = '' # Else, today_fmt is used as the format for a strftime call. #today_fmt = '%B %d, %Y' # List of patterns, relative to source directory, that match files and # directories to ignore when looking for source files. exclude_patterns = [] # The reST default role (used for this markup: `text`) to use for all # documents. #default_role = None # If true, '()' will be appended to :func: etc. cross-reference text. #add_function_parentheses = True # If true, the current module name will be prepended to all description # unit titles (such as .. function::). #add_module_names = True # If true, sectionauthor and moduleauthor directives will be shown in the # output. They are ignored by default. #show_authors = False # The name of the Pygments (syntax highlighting) style to use. pygments_style = 'sphinx' # A list of ignored prefixes for module index sorting. #modindex_common_prefix = [] # If true, keep warnings as "system message" paragraphs in the built documents. #keep_warnings = False # -- Options for HTML output ---------------------------------------------- # The theme to use for HTML and HTML Help pages. See the documentation for # a list of builtin themes. html_theme = "sphinx_rtd_theme" # Theme options are theme-specific and customize the look and feel of a theme # further. For a list of options available for each theme, see the # documentation. #html_theme_options = {} # Add any paths that contain custom themes here, relative to this directory. #html_theme_path = [] # The name for this set of Sphinx documents. If None, it defaults to # " v documentation". #html_title = None # A shorter title for the navigation bar. Default is the same as html_title. #html_short_title = None # The name of an image file (relative to this directory) to place at the top # of the sidebar. #html_logo = None # The name of an image file (within the static path) to use as favicon of the # docs. This file should be a Windows icon file (.ico) being 16x16 or 32x32 # pixels large. #html_favicon = None # Add any paths that contain custom static files (such as style sheets) here, # relative to this directory. They are copied after the builtin static files, # so a file named "default.css" will overwrite the builtin "default.css". html_static_path = ['_static'] # Add any extra paths that contain custom files (such as robots.txt or # .htaccess) here, relative to this directory. These files are copied # directly to the root of the documentation. #html_extra_path = [] # If not '', a 'Last updated on:' timestamp is inserted at every page bottom, # using the given strftime format. #html_last_updated_fmt = '%b %d, %Y' # If true, SmartyPants will be used to convert quotes and dashes to # typographically correct entities. #html_use_smartypants = True # Custom sidebar templates, maps document names to template names. #html_sidebars = {} # Additional templates that should be rendered to pages, maps page names to # template names. #html_additional_pages = {} # If false, no module index is generated. #html_domain_indices = True # If false, no index is generated. #html_use_index = True # If true, the index is split into individual pages for each letter. #html_split_index = False # If true, links to the reST sources are added to the pages. #html_show_sourcelink = True # If true, "Created using Sphinx" is shown in the HTML footer. Default is True. #html_show_sphinx = True # If true, "(C) Copyright ..." is shown in the HTML footer. Default is True. #html_show_copyright = True # If true, an OpenSearch description file will be output, and all pages will # contain a tag referring to it. The value of this option must be the # base URL from which the finished HTML is served. #html_use_opensearch = '' # This is the file name suffix for HTML files (e.g. ".xhtml"). #html_file_suffix = None # Output file base name for HTML help builder. htmlhelp_basename = 'PythonFixImportsdoc' # -- Options for LaTeX output --------------------------------------------- latex_elements = { # The paper size ('letterpaper' or 'a4paper'). # 'papersize': 'letterpaper', # The font size ('10pt', '11pt' or '12pt'). # 'pointsize': '10pt', # Additional stuff for the LaTeX preamble. # 'preamble': '', } # Grouping the document tree into LaTeX files. List of tuples # (source start file, target name, title, # author, documentclass [howto, manual, or own class]). latex_documents = [ ( 'index', 'PythonFixImports.tex', u'Python Fix Imports Documentation', u'Gaetan Semet', 'manual' ), ] # The name of an image file (relative to this directory) to place at the top of # the title page. #latex_logo = None # For "manual" documents, if this is true, then toplevel headings are parts, # not chapters. #latex_use_parts = False # If true, show page references after internal links. #latex_show_pagerefs = False # If true, show URL addresses after external links. #latex_show_urls = False # Documents to append as an appendix to all manuals. #latex_appendices = [] # If false, no module index is generated. #latex_domain_indices = True # -- Options for manual page output --------------------------------------- # One entry per manual page. List of tuples # (source start file, name, description, authors, manual section). man_pages = [ ('index', 'pythonfiximports', u'Python Fix Imports Documentation', [u'Gaetan Semet'], 1) ] # If true, show URL addresses after external links. #man_show_urls = False # -- Options for Texinfo output ------------------------------------------- # Grouping the document tree into Texinfo files. List of tuples # (source start file, target name, title, author, # dir menu entry, description, category) texinfo_documents = [ ( 'index', 'PythonFixImports', u'Python Fix Imports Documentation', u'Gaetan Semet', 'PythonFixImports', 'One line description of project.', 'Miscellaneous' ), ] # Documents to append as an appendix to all manuals. #texinfo_appendices = [] # If false, no module index is generated. #texinfo_domain_indices = True # How to display URL addresses: 'footnote', 'no', or 'inline'. #texinfo_show_urls = 'footnote' # If true, do not generate a @detailmenu in the "Top" node's menu. #texinfo_no_detailmenu = False # html_theme_options = { # 'canonical_url': 'http://guake.readthedocs.io/en/latest/', # 'logo_only': False, # 'display_version': True, # 'prev_next_buttons_location': 'bottom', # 'style_external_links': False, # 'vcs_pageview_mode': '', # # Toc options # 'collapse_navigation': True, # 'sticky_navigation': True, # 'navigation_depth': 4, # 'titles_only': False # } guake-3.6.3/docs/source/contributing/000077500000000000000000000000001346623310400175605ustar00rootroot00000000000000guake-3.6.3/docs/source/contributing/basic.rst000066400000000000000000000023211346623310400213710ustar00rootroot00000000000000 Basic Details ============= If you would like to contribute to the development of Guake, here are some general information. Found a Bug? ------------ Before opening a new issue, please read the following: - for **feature requests**, please use `FeatHub `_ ). This allow us to spot directly which are the most requested features. - A `Bountysource page `_ also exists for requesting new features for Guake. - before opening **a new bug**, please search for a similar one in the `GitHub Issues `_ . Submitting a Pull Request ------------------------- Please follow these steps before submitting a new Pull Request to Guake: - rebase on latest HEAD with ``git pull rebase upstream master`` - describe your change in the pull request - execute the code styling, checks and unit tests using: ``$ make style check reno-lint test`` - add a slug in release note using ``$ make reno SLUG=`` and edit the created file in `releasenotes/notes/`. You can see how `reno` works using `pipenv run reno --help`. Please use a generic slug (eg, for translation update, use `translation`) guake-3.6.3/docs/source/contributing/dev_env.rst000066400000000000000000000034361346623310400217460ustar00rootroot00000000000000====================================== Setting up the development environment ====================================== Before building the code, please ensure the dependencies are installed: - GTK: >=3.18 - VTE: 2.91 - ``libkeybinder3`` See full list of dependencies on the :ref:`Dependencies` page. The following section describes how to install these dependencies on some systems, please be aware it might not be applicable to yours directly. Install System dependencies =========================== Ubuntu ------ Execute the following command to bootstrap all needed system dependencies: .. code-block:: bash $ ./scripts/bootstrap-dev-debian.sh Fedora ------ Execute: .. code-block:: bash $ ./scripts/bootstrap-dev-fedora.sh Arch Linux ---------- Execute: .. code-block:: bash $ ./scripts/bootstrap-dev-arch.sh Setup development environment ============================= Install the dependencies of your system and use the following commands: .. code-block:: bash $ make dev $ sudo make install-schemas # still required even for local execution You can force the interpreter version using the PYTHON_INTERPRETER variable: .. code-block:: bash $ make dev PYTHON_INTERPRETER=python3.6 Local execution of guake (without system-wide install): .. code-block:: bash $ make run Install on system ================= Use the following command to build and install on your system (in ``/usr/local/``): .. code-block:: bash $ make dev && make && sudo make install You can reinstall easily in your environment (only validated for Debian/Ubuntu) with: .. code-block:: bash $ make reinstall # will execute `sudo` Git hook ======== Please install this git hook if you want to beautify your patch before submission: .. code-block:: bash $ make setup-githook guake-3.6.3/docs/source/contributing/hacking.rst000066400000000000000000000054361346623310400217260ustar00rootroot00000000000000============= Hacking Guake ============= Contributing ============ First, be sure to use a verion of Python 3 where GTK and GObjects works in your system. For instance, under Ubuntu 17.04, PyGtk and ``python3-gi`` does not work well if the default python 3 interpreter is forced to Python 3.6. +-------------------+----------------------------+-----------------------------+ | Operating System | Recommended Python version | Notes | +===================+============================+=============================+ | Ubuntu 14.04 LTS | Python 3.4 (UNTESTED) | | +-------------------+----------------------------+-----------------------------+ | Ubuntu 16.04 LTS | Python 3.5 (TESTED) | | +-------------------+----------------------------+-----------------------------+ | Ubuntu 17.04 | Python 3.5 (TESTED) | | +-------------------+----------------------------+-----------------------------+ | Ubuntu 17.10 | Python 3.6 (TESTED) | Quick Open disabled (#1230) | +-------------------+----------------------------+-----------------------------+ Validate your code ------------------ We are strict on code styling, with pep8 and pylint running automatically in travis in order to reject badly shaped patches. Please use the following command to validate all python files: .. code-block:: bash $ make style # fix the style of python files $ make check # static code analysis $ make test # unit test campaign $ make dists # make distribution packages Update translation ================== Update all translation files: .. code-block:: bash $ make update-po Install the translations files: .. code-block:: bash $ sudo make install-locale Then use your favorite po editor, such as ``poedit``. Start Guake with a different locale (locales should be installed): .. code-block:: bash $ LC_ALL=fr_FR.UTF8 make run Update NEWS ----------- Update the `NEWS` file using the followng command: .. code-block:: bash make release-note-news The ``ChangeLog`` files is not maintained but instead automatically generated by PBR when building the distribution packages. Same goes for the `ChangeLog` file. Versionning ----------- Versioning is automatically done using git tags. When a semver tag is pushed, a new version is automatically created by PBR. PBR also has some magic to generate the version automatically from ``sem-ver`` tag found in the commit message. See the ``Makefile``'s ``tag-pbr`` target. Travis build ------------ Travis automatically check pull requests are compiling and check for code style. Status of the master branch: https://travis-ci.org/Guake/guake.png?branch=master The Travis job also pushes new release of Guake to Pypi. guake-3.6.3/docs/source/contributing/index.rst000066400000000000000000000002631346623310400214220ustar00rootroot00000000000000===================== Contributing to Guake ===================== .. toctree:: :caption: Contributing Guide :maxdepth: 2 basic dev_env hacking packaging guake-3.6.3/docs/source/contributing/packaging.rst000066400000000000000000000032251346623310400222400ustar00rootroot00000000000000============================ Help for Package maintainers ============================ This page is primarily targeted to package maintainers, willing to build and distribute Guake inside a Linux Distribution, such as Debian, Arch, Fedora, and so on. It gives some information about how Guake is built. .. _Dependencies: Dependencies ============ System dependencies ------------------- Here are the system dependencies of Guake for its execution: - GTK: >=3.18 - VTE: 2.91 (>=`0.42 `_). See `doc here `_ - ``gir1.2-keybinder-3.0`` - ``gir1.2-notify-0.7`` - ``gir1.2-vte-2.91`` - ``libkeybinder3`` - ``python3-cairo`` - ``python3-dbus`` - ``python3-gi`` - ``python3-pbr`` Optional dependencies: - ``libutempter0``: compatibility with ``wall`` or ``screen`` commands - Any GTK theme: ``numix-gtk-theme``, ... Python dependencies ------------------- The complete list of Python packages Guake requires for its execution is descripbed in the ``Pipfile``, section ``packages``. Compatibility ============= The Team is willing to see Guake available on every major Linux distribution. Do not hesitate to contact us through GitHub Issue or directly by email (``gaetan [at] xeberon.net)`` if you see any issue when packageing Guake. The major compatibility issues we experience if with the different version of VTE. We try to integrate new cool VTE features when they are ready, and protect them with test on the version installed on the user's environment, but there may still be mistakes made, breaking the software for a given environment. Do not hesitate to warn us for that! guake-3.6.3/docs/source/index.rst000066400000000000000000000035721346623310400167210ustar00rootroot00000000000000.. Guake User documentation Guake User Documentation ======================== .. image:: ../../guake/data/pixmaps/intro-small.jpg Welcome to the official Guake User Documentation. Guake is a dropdown terminal made for the GNOME desktop environment. Guake's style of window is based on a famous FPS game, and one of its goals is to be easy to reach and developer friendly. Main Features ============= - Lightweight - Simple Easy and Elegant - Smooth integration of terminal into GUI - Appears when you call and disappears once you are done by pressing a predefined hotkey (F12 by default) - Compiz transparency support - Multi tab - Plenty of color palettes - Quick Open in your favorite text editor with a click on a file name (with line number support) - Customizable hotkeys for tab access, reorganization, background transparency, font size,... - Extremely configurable - Configure Guake startup by running a bash script when Guake starts - Multi-monitor support (open on a specified monitor, open on mouse monitor) - Save terminal content to file - Open URL to your browser .. toctree:: :caption: Guake Documentation :maxdepth: 2 user/index project/index contributing/index Useful links ============ - Source Code available on `GitHub `_. - Official Homepage: http://guake-project.org - Online Documentation is hosted on `ReadTheDocs `_. - If you are not a developer, you can still contribute to Guake by `improving its translations in your language `_ in providing this service for free for OpenSource Projects. **Important note**: Do **NOT** use the domain guake.org, it has been registered by someone outside the team. We cannot be held responsible for the content on that web site. guake-3.6.3/docs/source/project/000077500000000000000000000000001346623310400165175ustar00rootroot00000000000000guake-3.6.3/docs/source/project/history.rst000066400000000000000000000001421346623310400207470ustar00rootroot00000000000000====================== History of the Project ====================== TBD: history of the project guake-3.6.3/docs/source/project/index.rst000066400000000000000000000002241346623310400203560ustar00rootroot00000000000000Project information =================== .. toctree:: :caption: Guake Documentation :maxdepth: 2 history release_notes license guake-3.6.3/docs/source/project/license.rst000066400000000000000000000004611346623310400206740ustar00rootroot00000000000000 License ******* GNU GENERAL PUBLIC LICENSE Version 2, June 1991 Copyright (C) 1989, 1991 Free Software Foundation, Inc. 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA Everyone is permitted to copy and distribute verbatim copies of this license document, but changing it is not allowed. guake-3.6.3/docs/source/project/release_notes.rst000066400000000000000000000005421346623310400221020ustar00rootroot00000000000000=============== Release Notes =============== This page lists information about new features, bugfixes, translation update of all released and unreleased versions of Guake. This page has been automatically generated, using `reno `_ tool. .. release-notes:: :branch: master :earliest-version: 3.0.0.a4 guake-3.6.3/docs/source/user/000077500000000000000000000000001346623310400160275ustar00rootroot00000000000000guake-3.6.3/docs/source/user/cli.rst000066400000000000000000000002401346623310400173240ustar00rootroot00000000000000======================== Command Line Arguments ======================== Here is the command line interface Guake provides: .. program-output:: guake --help guake-3.6.3/docs/source/user/dbus.rst000066400000000000000000000002361346623310400175170ustar00rootroot00000000000000================= D-Bus Interface ================= TBD: Describe the DBus interface, with message, how to use it. Recall how to send guake toggle command. guake-3.6.3/docs/source/user/faq.rst000066400000000000000000000051031346623310400173270ustar00rootroot00000000000000Frequently Asked Questions ========================== Manual keybinding ----------------- If you want to trigger guake manually, for instance on system where ``libkeybinder3`` does not work, you can register the following snippet in your window manager .. code-block:: bash dbus-send --type=method_call --dest=org.guake3.RemoteControl \ /org/guake3/RemoteControl org.guake3.RemoteControl.show_hide You can use the simpler: .. code-block:: bash guake-toggle Please note the command `guake -t` will also toggle Guake but since it initialize a bit more than just necessary, it can be slower that the two previous commands. Note on Wayland --------------- There are some reports of Guake not opening when a Wayland app or empty desktop is focused. The issue has been reported on Ubuntu 17.10 LTS, Fedora 26 and Fedora 27. For more context, see issue #1041. The workaround is setting a manual keybinding as described above. On Fedora 26, for example, this can be accomplished by going to *Settings > Keyboard* and adding a new custom shortcut to execute :code:`guake-toggle`. Note for Archlinux users ------------------------ This applies to users of Archlinux based distributions too and may be of help to non Debian/Ubuntu users as well. Currently ``make install`` is optimized for Ubuntu, which does not mean that it can not be used on other systems, but depending on your system you may have to tell ``make install`` where to install guake (the default for Ubuntu is ``/usr/local/lib/python3.x/dist-packages/guake``). So on Ubuntu the following commands are equivalent: .. code-block:: bash $ sudo make install $ sudo make install PREFIX=/usr/lobal On Archlinux this can be done by passing ``/usr`` as ``PREFIX``: .. code-block:: bash $ sudo make install PREFIX=/usr which will changes the installation destination to ``/usr/lib/python3.x/site-packages/guake``. Note that the install script automatically determines to use whether to use ``dist-packages`` or ``site-packaes``. For more details checkout the official PKGBUILD at `archlinux.org `_, the PKGBUILD on the `aur `_ or this `gist `_. Why Guake crashes with Tmux and Byubu? -------------------------------------- Tmux and Byobu can be used as shell instead of bash or zsh, but you should be sure to disable the "use login shell" option. If set, Guake will not be able to start. Use ``dconf-editor`` to reset this option if Guake cannot start again. guake-3.6.3/docs/source/user/features.rst000066400000000000000000000063731346623310400204100ustar00rootroot00000000000000 Guake 3 Features **************** TBD: Long description of each feature Single Hotkey terminal ====================== TBD: - Appears when you call and disappears once you are done by pressing a predefined hotkey (F12 by default) - Customizable hotkeys for tab access, reorganization, background transparency, font size,... Auto-start ========== Guake can now (>=3.1) starts automatically on GNOME startup. Advanced Tab Support ==================== Guake has several modes available to manage tab. You can let guake automatically rename the tab or give you own name. Color Palettes ============== Thanks to the Guake community, a huge number of Terminal palettes are provided out of the box. Gtk Theme ========= Guake allows you to choose a different Gtk theme than your environment. .. note:: You need to restart Guake after changing the GTK theme. Quick Open, hyperlink and Search on web ======================================= Guake automatically finds URL printed in your terminal and allow you to click on it using ``[Ctrl]+click``. Many other terminals, if not all, does that already. Quick-Open ---------- .. image:: ../../../guake/data/pixmaps/quick-open.png :align: right Guake is also able to find out file names and open it in your favorite code editor, such as Visual Studio Code, Atom or SublimText. Guake brings this to much more, by automatically parsing output of popular system commands such as ``gcc``, Python's traceback or ``pytest`` report, and allowing you to automatically open the file at the correct line number. Guake is even able to find the Python function name automatically when used with ``pytest``. .. image:: ../../../guake/data/pixmaps/quick-open-python-exception.png :align: center Even if Guake cannot parse the output, you can still ask him to open a wanted file path displayed in your terminal, provided the file exists at this path. Simply select the full path and click using the ``[Ctrl]+click``, or with the contextual menu on right click. .. image:: ../../../guake/data/pixmaps/quick-open-selection.png :align: center Contextual menu --------------- Right click also displays "Search on web" (if you have selected a text) and "Open link" (if the text under the cursor is a URL or if the selected text is a URL). Guake also supports `HTML-like anchor `_ with special characters such as:: echo -e '\e]8;;http://example.com\aThis is a link\e]8;;\a' HTML-like anchors ----------------- You may need a recent version of the VTE (Virtual Terminal Emulator) component in you system (vte >= 0.50). Multi Monitor ============= TBD: Multi-monitor support (open on a specified monitor, open on mouse monitor) Hook points =========== TBD: Configure Guake startup by running a bash script when Guake starts Save Terminal Content ===================== TBD: Save terminal content to file Custom Commands =============== TBD DBus commands ============= The major features of guake are available on DBus. Tab UUID ======== Tabs are uniquely identified with a UUID. Each terminal receives this UUID in the following environment varialbe: ``GUAKE_TAB_UUID``. It can be used to rename the tab from the command line using ``--tab-index 3c542bc1-7c99-4e73-8d37-e08281bd592c``. guake-3.6.3/docs/source/user/gtk3.rst000066400000000000000000000045441346623310400174400ustar00rootroot00000000000000 Gtk 3 Port ========== Early 2018, Guake has been ported Gtk3, thanks to the huge work of @aichingm. Old releases and code depending on GTK2 have been put on the `0.8.x `_ branch of the GitHub project and will no more be actively maintained. Please note that we target to support mainly the GTK and VTE versions found by default on most popular distribution such as Ubuntu or Arch Linux (currently: Ubuntu 16.04 LTS and 17.10). Guake is now only compatible with Python 3.5+. Port to Gtk 3 and Python 3 lead naturally to skip all 1.x and 2.x version in the version of Guake: Guake 3. Dropped Features from Guake 0.8.x --------------------------------- - ``--bgimg`` (this option has been removed from vte) Broken translations ------------------- Some changes in translation system made during the Guake 3 port may have broken the welcome message in some languages (#1209). Help is welcomed for updating translations in your language ! See the "Update translation" section bellow. Note for maintainers -------------------- Guake has drastically changed its build system with Guake 3. You may need to adapt all the integration scripts accordingly. Guake now uses ``Pipfile`` to store it Python dependencies (except the system dependencies such as PyGTK3). It is maintained and used by `pipenv` CLI tool. It is a system more advanced than using ``requirements.txt``, but this file is still generated for backward compatibility (for example: ReadTheDocs only support ``requirements.txt`` for the moment), by a tool I've developed, named ``pipenv_to_requirements`` (makefile target ``make requirements``). It does generate ``requirements.txt`` (running dependencies), and ``requirements-dev.txt`` (build, checks and test only). From then, Guake is now a classic, canon Python package (with setup.py, building distrubution packages, ...). It however requires system libraries, so cannot work isolated inside a virtualenv. If you look closer to the virtualenv used with ``make dev ; make run``, you will see it is configured to use the system libraries using ``pew toggleglobalsitepackages``. If for any reason ``pipenv`` does not work on your platform, you can still install guake from these requirements file, but the ultimate source of truth for dependency declaration is the ``Pipfile``. Do not hesitate to contact me at ``gaetan [at] xeberon.net``. guake-3.6.3/docs/source/user/index.rst000066400000000000000000000002461346623310400176720ustar00rootroot00000000000000User Manual =========== .. toctree:: :caption: Guake User Manual :maxdepth: 2 whatisguake features installing cli dbus faq gtk3 guake-3.6.3/docs/source/user/installing.rst000066400000000000000000000056051346623310400207330ustar00rootroot00000000000000================ Installing Guake ================ System-wide installation ======================== Always prefere using your package manager to install guake. Debian / Ubuntu --------------- Ubuntu and Debian users will use ``sudo apt install guake``. Fedora ------ Tested in 29: We can use dnf to install it. ```bash sudo dnf install -y guake ``` Then you can open it via: ```bash guake ``` To allow global 'F12' to open the guake, go to Setting >> Device >> Keyboard >> Scroll to bottom >> "+" to create a new global short cut with 'F12' keybinding and comand 'guake'. You may notice the style may have some error. You can fix this by installing and apply custom theme. ```bash sudo dnf install -y arc-theme gnome-tweaks ``` Then use ```bash gnome-tweaks ``` to change theme to change theme to one of the yakuake will fix this. Arch Linux ---------- Guake is available on *community* repository, just use: ``sudo pacman -S guake`` to install it. Install from Pypi ================= Guake is now automatically published on Pypi. Please use the following command to install on your environment: .. code-block:: bash $ pip install --user guake Avoid using ``pip install guake`` without the ``--user``, you may break your system. You need to ensure the following points are met in your configuration: - ``$HOME/.local/bin`` should be in your ``$PATH`` - You need to have some dependencies installed on your system: - ``gir1.2-keybinder-3.0`` - ``gir1.2-notify-0.7`` - ``gir1.2-vte-2.91`` - ``libkeybinder-3.0-0`` - ``libutempter0`` - ``python3-setuptools`` - ``python3-cairo`` - ``python3-dbus`` - ``python3-gi`` - ``python3-pbr`` - ``python3-pip`` - ``python3`` Install from source =================== If you want to install Guake from its sources, please follow this procedure: - First, **DO NOT USE TARBALLS GENERATED BY GITHUB** on the Release Page. They are automatically generated and cannot be used alone. We use a package, namely  ``PBR``, that requires the full git history to work. Checkout the HEAD of the source tree with: .. code-block:: bash $ git clone https://github.com/Guake/guake.git - make sure that you have the needed system dependencies (Python GTK, VTE, ...) installed for your system. If you are unsure about the dependencies, you can run this script to install them: .. code-block:: bash $ ./scripts/bootstrap-dev-[debian, arch, fedora].sh run make Note: Insert your distribution in the square brackets. To install Guake itself, use: .. code-block:: bash $ make $ sudo make install To uninstall, still in the source directory: .. code-block:: bash $ make $ sudo make uninstall Tips for a complete Guake reinstallation (without system dependencies): .. code-block:: bash $ sudo make uninstall && make && sudo make install $ # Or use this shortcut: $ make reinstall # (do not sudo it!) guake-3.6.3/docs/source/user/whatisguake.rst000066400000000000000000000012161346623310400210750ustar00rootroot00000000000000============== What is Guake? ============== Guake is a powerful drop-down terminal, accessible by a simple hotkey. It has been designed to be the swiss knife of any developer willing to increase its productivity. Alternatives to Guake ===================== Here are some of the best terminals avaiable on the Linux environments that bring similar features of Guake: - `Tilda `_ - `Tilix `_ - `Yakuake `_ (For the KDE) - `GNOME Terminal `_ - `Terminator `_ guake-3.6.3/git-hooks/000077500000000000000000000000001346623310400145255ustar00rootroot00000000000000guake-3.6.3/git-hooks/post-commit000077500000000000000000000011441346623310400167260ustar00rootroot00000000000000#!/bin/bash [ -z "$REVRANGE" ] && REVRANGE="master..HEAD^1" # get a list of changed files, used below; this uses a tempfile to work around # shell behavior when piping to 'while' tempfile=$(mktemp -t tmp.XXXXXX) trap "rm -f ${tempfile}; exit 1" 1 2 3 15 git diff --name-only $REVRANGE | grep '\.py$' > ${tempfile} py_files=() while read line; do if [[ -f "${line}" ]]; then echo "fast-styling ${line}" pipenv run fiximports ${line}; pipenv run autopep8 --in-place --recursive setup.py ${line} pipenv run yapf --style .yapf --recursive -i ${line} fi done < ${tempfile} guake-3.6.3/guake/000077500000000000000000000000001346623310400137155ustar00rootroot00000000000000guake-3.6.3/guake/__init__.py000066400000000000000000000031151346623310400160260ustar00rootroot00000000000000# -*- coding: utf-8; -*- """ Copyright (C) 2007-2013 Guake authors This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA """ def guake_version(): # Do not import in the module root to speed up the dbus communication as much as possible import pbr.version return pbr.version.VersionInfo('guake').version_string() def vte_version(): import gi gi.require_version('Vte', '2.91') from gi.repository import Vte s = "{}.{}.{}".format( Vte.MAJOR_VERSION, Vte.MINOR_VERSION, Vte.MICRO_VERSION, ) return s def vte_runtime_version(): import gi gi.require_version('Vte', '2.91') from gi.repository import Vte return "{}.{}.{}".format( Vte.get_major_version(), Vte.get_minor_version(), Vte.get_micro_version() ) def gtk_version(): import gi gi.require_version('Gtk', '3.0') from gi.repository import Gtk return "{}.{}.{}".format(Gtk.MAJOR_VERSION, Gtk.MINOR_VERSION, Gtk.MICRO_VERSION) guake-3.6.3/guake/about.py000066400000000000000000000035361346623310400154100ustar00rootroot00000000000000# -*- coding: utf-8; -*- """ Copyright (C) 2007-2012 Lincoln de Sousa Copyright (C) 2007 Gabriel Falcão This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA """ import gi gi.require_version('Gtk', '3.0') from gi.repository import GObject from gi.repository import Gtk from guake import guake_version from guake.common import gladefile from guake.common import pixmapfile from guake.simplegladeapp import SimpleGladeApp from locale import gettext as _ class AboutDialog(SimpleGladeApp): """The About Guake dialog class """ def __init__(self): super(AboutDialog, self).__init__(gladefile('about.glade'), root='aboutdialog') dialog = self.get_widget('aboutdialog') # images # ipath = pixmapfile('guake-notification.png') # img = gtk.gdk.pixbuf_new_from_file(ipath) # img = pixmapfile('guake-notification.png') image = Gtk.Image() image.set_from_file(pixmapfile('guake-notification.png')) pixbuf = image.get_pixbuf() dialog.set_property('logo', pixbuf) dialog.set_name(_('Guake Terminal')) dialog.set_version(guake_version()) dialog.connect("response", lambda x, y: dialog.destroy()) guake-3.6.3/guake/boxes.py000066400000000000000000000566001346623310400154160ustar00rootroot00000000000000import logging import time from locale import gettext as _ import gi gi.require_version('Vte', '2.91') # vte-0.42 gi.require_version('Gtk', '3.0') from gi.repository import GLib from gi.repository import GObject from gi.repository import Gdk from gi.repository import Gio from gi.repository import Gtk from gi.repository import Vte from guake.callbacks import MenuHideCallback from guake.callbacks import TerminalContextMenuCallbacks from guake.dialogs import RenameDialog from guake.menus import mk_tab_context_menu from guake.menus import mk_terminal_context_menu from guake.utils import HidePrevention from guake.utils import TabNameUtils from guake.utils import get_server_time from guake.utils import save_tabs_when_changed log = logging.getLogger(__name__) # TODO remove calls to guake class TerminalHolder(): UP = 0 DOWN = 1 RIGHT = 2 LEFT = 3 def get_terminals(self): pass def iter_terminals(self): pass def replace_child(self, old, new): pass def get_guake(self): pass def get_window(self): pass def get_settings(self): pass def get_root_box(self): pass def get_notebook(self): pass def remove_dead_child(self, child): pass class RootTerminalBox(Gtk.Overlay, TerminalHolder): def __init__(self, guake, parent_notebook): super().__init__() self.guake = guake self.notebook = parent_notebook self.child = None self.last_terminal_focused = None self.searchstring = None self.searchre = None self._add_search_box() def _add_search_box(self): """ --------------------------------------| | Revealer | | |-----------------------------------| | | Frame | | | |---------------------------------| | | | HBox | | | | |---| |-------| |----| |------| | | | | | x | | Entry | |Prev| | Next | | | | | |---| |-------| |----| |------| | --------------------------------------| """ self.search_revealer = Gtk.Revealer() self.search_frame = Gtk.Frame(name='search-frame') self.search_box = Gtk.HBox() # Search self.search_close_btn = Gtk.Button() self.search_close_btn.set_can_focus(False) close_icon = Gio.ThemedIcon(name='window-close-symbolic') close_image = Gtk.Image.new_from_gicon(close_icon, Gtk.IconSize.BUTTON) self.search_close_btn.set_image(close_image) self.search_entry = Gtk.SearchEntry() self.search_prev_btn = Gtk.Button() self.search_prev_btn.set_can_focus(False) prev_icon = Gio.ThemedIcon(name='go-up-symbolic') prev_image = Gtk.Image.new_from_gicon(prev_icon, Gtk.IconSize.BUTTON) self.search_prev_btn.set_image(prev_image) self.search_next_btn = Gtk.Button() self.search_next_btn.set_can_focus(False) next_icon = Gio.ThemedIcon(name='go-down-symbolic') next_image = Gtk.Image.new_from_gicon(next_icon, Gtk.IconSize.BUTTON) self.search_next_btn.set_image(next_image) # Pack into box self.search_box.pack_start(self.search_close_btn, False, False, 0) self.search_box.pack_start(self.search_entry, False, False, 0) self.search_box.pack_start(self.search_prev_btn, False, False, 0) self.search_box.pack_start(self.search_next_btn, False, False, 0) # Add into frame self.search_frame.add(self.search_box) # Frame self.search_frame.set_margin_end(12) self.search_frame.get_style_context().add_class('background') css_provider = Gtk.CssProvider() css_provider.load_from_data( b'#search-frame border {' b' padding: 5px 5px 5px 5px;' b' border: none;' b'}' ) Gtk.StyleContext.add_provider_for_screen( Gdk.Screen.get_default(), css_provider, Gtk.STYLE_PROVIDER_PRIORITY_APPLICATION ) # Add to revealer self.search_revealer.add(self.search_frame) self.search_revealer.set_transition_duration(500) self.search_revealer.set_transition_type(Gtk.RevealerTransitionType.CROSSFADE) self.search_revealer.set_valign(Gtk.Align.END) self.search_revealer.set_halign(Gtk.Align.END) # Welcome to the overlay self.add_overlay(self.search_revealer) # Events self.search_entry.connect('key-press-event', self.on_search_entry_keypress) self.search_entry.connect('changed', self.set_search) self.search_entry.connect('activate', self.do_search) self.search_entry.connect('focus-in-event', self.on_search_entry_focus_in) self.search_entry.connect('focus-out-event', self.on_search_entry_focus_out) self.search_next_btn.connect('clicked', self.on_search_next_clicked) self.search_prev_btn.connect('clicked', self.on_search_prev_clicked) self.search_close_btn.connect('clicked', self.close_search_box) self.search_prev = True def get_terminals(self): return self.get_child().get_terminals() def iter_terminals(self): if self.get_child() is not None: for t in self.get_child().iter_terminals(): yield t def replace_child(self, old, new): self.remove(old) self.set_child(new) def set_child(self, terminal_holder): if isinstance(terminal_holder, TerminalHolder) or True: self.child = terminal_holder self.add(self.child) else: print( "wtf, what have you added to me???" "(RootTerminalBox.add(%s))" % type(terminal_holder) ) def focus(): if self.get_terminals(): self.get_terminals()[0].grab_focus() def get_child(self): return self.child def get_guake(self): return self.guake def get_window(self): return self.guake.window def get_settings(self): return self.guake.settings def get_root_box(self): return self def save_box_layout(self, box, panes: list): """Save box layout with pre-order traversal, it should result `panes` with a full binary tree in list. """ if not box: panes.append({'type': None, 'directory': None}) return if isinstance(box, DualTerminalBox): btype = 'dual' + ('_h' if box.orient is DualTerminalBox.ORIENT_V else '_v') panes.append({'type': btype, 'directory': None}) self.save_box_layout(box.get_child1(), panes) self.save_box_layout(box.get_child2(), panes) elif isinstance(box, TerminalBox): btype = 'term' directory = box.terminal.get_current_directory() panes.append({'type': btype, 'directory': directory}) def restore_box_layout(self, box, panes: list): """Restore box layout by `panes` """ if not panes or not isinstance(panes, list): return if not box or not isinstance(box, TerminalBox): # Should only called on TerminalBox return cur = panes.pop(0) if cur['type'].startswith('dual'): while True: if self.guake: # If Guake are not visible, we should pending the restore, then do the # restore when Guake is visible again. # # Otherwise we will stuck in the infinite loop, since new DualTerminalBox # cannot get any allocation when Guake is invisible if ( not self.guake.window.get_property('visible') or self.get_notebook() is not self.guake.notebook_manager.get_current_notebook() ): panes.insert(0, cur) self.guake._failed_restore_page_split.append((self, box, panes)) return # UI didn't update, wait for it alloc = box.get_allocation() if alloc.width == 1 and alloc.height == 1: time.sleep(.01) else: break # Waiting for UI update.. while Gtk.events_pending(): Gtk.main_iteration() if cur['type'].endswith('v'): box = box.split_v() else: box = box.split_h() self.restore_box_layout(box.get_child1(), panes) self.restore_box_layout(box.get_child2(), panes) else: if box.terminal: term = box.terminal # Remove signal handler from terminal for i in term.handler_ids: term.disconnect(i) term.handler_ids = [] box.remove(box.scroll) box.remove(term) box.unset_terminal() # Replace term in the TerminalBox term = self.get_notebook().terminal_spawn(cur['directory']) box.set_terminal(term) self.get_notebook().terminal_attached(term) def set_last_terminal_focused(self, terminal): self.last_terminal_focused = terminal self.get_notebook().set_last_terminal_focused(terminal) def get_last_terminal_focused(self, terminal): return self.last_terminal_focused def get_notebook(self): return self.notebook def remove_dead_child(self, child): page_num = self.get_notebook().page_num(self) self.get_notebook().remove_page(page_num) def move_focus(self, direction, fromChild): pass def block_notebook_on_button_press_id(self): GObject.signal_handler_block( self.get_notebook(), self.get_notebook().notebook_on_button_press_id ) def unblock_notebook_on_button_press_id(self): GObject.signal_handler_unblock( self.get_notebook(), self.get_notebook().notebook_on_button_press_id ) def show_search_box(self): if not self.search_revealer.get_reveal_child(): self.search_revealer.set_reveal_child(True) # XXX: Mestery line to avoid Gtk-CRITICAL stuff # (guake:22694): Gtk-CRITICAL **: 18:04:57.345: # gtk_widget_event: assertion 'WIDGET_REALIZED_FOR_EVENT (widget, event)' failed self.search_entry.realize() self.search_entry.grab_focus() def hide_search_box(self): if self.search_revealer.get_reveal_child(): self.search_revealer.set_reveal_child(False) self.last_terminal_focused.grab_focus() self.last_terminal_focused.unselect_all() def close_search_box(self, event): self.hide_search_box() def on_search_entry_focus_in(self, event, user_data): self.block_notebook_on_button_press_id() def on_search_entry_focus_out(self, event, user_data): self.unblock_notebook_on_button_press_id() def on_search_prev_clicked(self, widget): term = self.last_terminal_focused result = term.search_find_previous() if not result: term.search_find_previous() def on_search_next_clicked(self, widget): term = self.last_terminal_focused result = term.search_find_next() if not result: term.search_find_next() def on_search_entry_keypress(self, widget, event): key = Gdk.keyval_name(event.keyval) if key == 'Escape': self.hide_search_box() elif key == 'Return': # Combine with Shift? if event.state & Gdk.ModifierType.SHIFT_MASK: self.search_prev = False self.do_search(None) else: self.search_prev = True def reset_term_search(self, term): term.search_set_gregex(GLib.Regex('', 0, 0), 0) term.search_find_next() def set_search(self, widget): term = self.last_terminal_focused text = self.search_entry.get_text() if not text: self.reset_term_search(term) return if text != self.searchstring: self.reset_term_search(term) # Set search regex on term self.searchstring = text self.searchre = GLib.Regex(text, 0, 0) term.search_set_gregex(self.searchre, 0) self.do_search(None) def do_search(self, widget): if self.search_prev: self.on_search_prev_clicked(None) else: self.on_search_next_clicked(None) class TerminalBox(Gtk.Box, TerminalHolder): """A box to group the terminal and a scrollbar. """ def __init__(self): super().__init__(orientation=Gtk.Orientation.HORIZONTAL) self.terminal = None def set_terminal(self, terminal): """Packs the terminal widget. """ if self.terminal is not None: raise RuntimeError("TerminalBox: terminal already set") self.terminal = terminal self.terminal.handler_ids.append( self.terminal.connect("grab-focus", self.on_terminal_focus) ) self.terminal.handler_ids.append( self.terminal.connect("button-press-event", self.on_button_press, None) ) self.terminal.handler_ids.append( self.terminal.connect('child-exited', self.on_terminal_exited) ) self.pack_start(self.terminal, True, True, 0) self.terminal.show() self.add_scroll_bar() def add_scroll_bar(self): """Packs the scrollbar. """ adj = self.terminal.get_vadjustment() self.scroll = Gtk.VScrollbar(adj) self.scroll.show() self.pack_start(self.scroll, False, False, 0) self.terminal.handler_ids.append( self.terminal.connect('scroll-event', self.__scroll_event_cb) ) def __scroll_event_cb(self, widget, event): # Adjust scrolling speed when adding "shift" or "shift + ctrl" adj = self.scroll.get_adjustment() page_size = adj.get_page_size() if ( event.get_state() & Gdk.ModifierType.SHIFT_MASK and event.get_state() & Gdk.ModifierType.CONTROL_MASK ): # Ctrl + Shift + Mouse Scroll (4 pages) adj.set_page_increment(page_size * 40) elif event.get_state() & Gdk.ModifierType.SHIFT_MASK: # Shift + Mouse Scroll (1 page) adj.set_page_increment(page_size * 10) else: # Mouse Scroll adj.set_page_increment(page_size) def get_terminal(self): return self.terminal def get_terminals(self): if self.terminal is not None: return [self.terminal] return [] def iter_terminals(self): if self.terminal is not None: yield self.terminal def replace_child(self, old, new): print("why would you call this on me?") pass def unset_terminal(self, *args): self.terminal = None def split_h(self): return self.split(DualTerminalBox.ORIENT_V) def split_v(self): return self.split(DualTerminalBox.ORIENT_H) def split(self, orientation): notebook = self.get_notebook() parent = self.get_parent() # RootTerminalBox if orientation == DualTerminalBox.ORIENT_H: position = self.get_allocation().width / 2 else: position = self.get_allocation().height / 2 terminal_box = TerminalBox() terminal = notebook.terminal_spawn() terminal_box.set_terminal(terminal) dual_terminal_box = DualTerminalBox(orientation) dual_terminal_box.set_position(position) parent.replace_child(self, dual_terminal_box) dual_terminal_box.set_child_first(self) dual_terminal_box.set_child_second(terminal_box) dual_terminal_box.show() dual_terminal_box.show_all() notebook.terminal_attached(terminal) return dual_terminal_box def get_guake(self): return self.get_parent().get_guake() def get_window(self): return self.get_parent().get_window() def get_settings(self): return self.get_parent().get_settings() def get_root_box(self): return self.get_parent().get_root_box() def get_notebook(self): return self.get_parent().get_notebook() def remove_dead_child(self, child): print("Can't do, have no \"child\"") def on_terminal_focus(self, *args): self.get_root_box().set_last_terminal_focused(self.terminal) def on_terminal_exited(self, terminal, status): if not self.get_parent(): return self.get_parent().remove_dead_child(self) def on_button_press(self, target, event, user_data): if event.button == 3: # First send to background process if handled, do nothing else if not event.get_state() & Gdk.ModifierType.SHIFT_MASK: if Vte.Terminal.do_button_press_event(self.terminal, event): return True menu = mk_terminal_context_menu( self.terminal, self.get_window(), self.get_settings(), TerminalContextMenuCallbacks( self.terminal, self.get_window(), self.get_settings(), self.get_root_box().get_notebook() ) ) menu.connect("hide", MenuHideCallback(self.get_window()).on_hide) HidePrevention(self.get_window()).prevent() try: menu.popup_at_pointer(event) except AttributeError: # Gtk 3.18 fallback ("'Menu' object has no attribute 'popup_at_pointer'") menu.popup(None, None, None, None, event.button, event.time) self.terminal.grab_focus() return True self.terminal.grab_focus() return False class DualTerminalBox(Gtk.Paned, TerminalHolder): ORIENT_H = 0 ORIENT_V = 1 def __init__(self, orientation): super().__init__() self.orient = orientation if orientation is DualTerminalBox.ORIENT_H: self.set_orientation(orientation=Gtk.Orientation.HORIZONTAL) else: self.set_orientation(orientation=Gtk.Orientation.VERTICAL) def set_child_first(self, terminal_holder): if isinstance(terminal_holder, TerminalHolder): self.add1(terminal_holder) else: print("wtf, what have you added to me???") def set_child_second(self, terminal_holder): if isinstance(terminal_holder, TerminalHolder): self.add2(terminal_holder) else: print("wtf, what have you added to me???") def get_terminals(self): return self.get_child1().get_terminals() + self.get_child2().get_terminals() def iter_terminals(self): for t in self.get_child1().iter_terminals(): yield t for t in self.get_child2().iter_terminals(): yield t def replace_child(self, old, new): if self.get_child1() is old: self.remove(old) self.set_child_first(new) elif self.get_child2() is old: self.remove(old) self.set_child_second(new) else: print("I have never seen this widget!") def get_guake(self): return self.get_parent().get_guake() def get_window(self): return self.get_parent().get_window() def get_settings(self): return self.get_parent().get_settings() def get_root_box(self): return self.get_parent().get_root_box() def get_notebook(self): return self.get_parent().get_notebook() def grab_box_terminal_focus(self, box): if isinstance(box, DualTerminalBox): next(box.iter_terminals()).grab_focus() else: box.get_terminal().grab_focus() def remove_dead_child(self, child): if self.get_child1() is child: living_child = self.get_child2() self.remove(living_child) self.get_parent().replace_child(self, living_child) self.grab_box_terminal_focus(living_child) elif self.get_child2() is child: living_child = self.get_child1() self.remove(living_child) self.get_parent().replace_child(self, living_child) self.grab_box_terminal_focus(living_child) else: print("I have never seen this widget!") class TabLabelEventBox(Gtk.EventBox): def __init__(self, notebook, text, settings): super().__init__() self.notebook = notebook self.box = Gtk.Box(Gtk.Orientation.HORIZONTAL, 0, visible=True) self.label = Gtk.Label(text, visible=True) self.close_button = Gtk.Button( image=Gtk.Image.new_from_icon_name("window-close", Gtk.IconSize.MENU), relief=Gtk.ReliefStyle.NONE ) self.close_button.connect('clicked', self.on_close) settings.general.bind( 'tab-close-buttons', self.close_button, 'visible', Gio.SettingsBindFlags.GET ) self.box.pack_start(self.label, True, True, 0) self.box.pack_end(self.close_button, False, False, 0) self.add(self.box) self.connect("button-press-event", self.on_button_press, self.label) def set_text(self, text): self.label.set_text(text) def get_text(self): return self.label.get_text() def grab_focus_on_last_focused_terminal(self): server_time = get_server_time(self.notebook.guake.window) self.notebook.guake.window.get_window().focus(server_time) self.notebook.get_current_terminal().grab_focus() def on_button_press(self, target, event, user_data): if event.button == 3: menu = mk_tab_context_menu(self) menu.connect("hide", MenuHideCallback(self.get_toplevel()).on_hide) HidePrevention(self.get_toplevel()).prevent() try: menu.popup_at_pointer(event) except AttributeError: # Gtk 3.18 fallback ("'Menu' object has no attribute 'popup_at_pointer'") menu.popup(None, None, None, None, event.button, event.get_time()) return True if event.button == 2: prompt_cfg = self.notebook.guake.settings.general.get_int('prompt-on-close-tab') self.notebook.delete_page_by_label(self, prompt=prompt_cfg) return True if event.button == 1 and event.type == Gdk.EventType._2BUTTON_PRESS: self.on_rename(None) return False @save_tabs_when_changed def on_new_tab(self, user_data): self.notebook.new_page_with_focus() @save_tabs_when_changed def on_rename(self, user_data): HidePrevention(self.get_toplevel()).prevent() dialog = RenameDialog(self.notebook.guake.window, self.label.get_text()) r = dialog.run() if r == Gtk.ResponseType.ACCEPT: new_text = TabNameUtils.shorten(dialog.get_text(), self.notebook.guake.settings) page_num = self.notebook.find_tab_index_by_label(self) self.notebook.rename_page(page_num, new_text, True) dialog.destroy() HidePrevention(self.get_toplevel()).allow() self.grab_focus_on_last_focused_terminal() def on_close(self, user_data): prompt_cfg = self.notebook.guake.settings.general.get_int('prompt-on-close-tab') self.notebook.delete_page_by_label(self, prompt=prompt_cfg) guake-3.6.3/guake/callbacks.py000066400000000000000000000066271346623310400162210ustar00rootroot00000000000000import gi gi.require_version('Gtk', '3.0') from gi.repository import Gdk from gi.repository import Gtk from guake.about import AboutDialog from guake.dialogs import RenameDialog from guake.dialogs import SaveTerminalDialog from guake.prefs import PrefsDialog from guake.utils import FullscreenManager from guake.utils import HidePrevention from guake.utils import TabNameUtils from guake.utils import get_server_time from urllib.parse import quote_plus class TerminalContextMenuCallbacks(): def __init__(self, terminal, window, settings, notebook): self.terminal = terminal self.window = window self.settings = settings self.notebook = notebook def on_copy_clipboard(self, *args): self.terminal.copy_clipboard() def on_copy_url_clipboard(self, *args): url = self.terminal.get_link_under_cursor() if url is not None: clipboard = Gtk.Clipboard.get_default(self.window.get_display()) clipboard.set_text(url, len(url)) def on_paste_clipboard(self, *args): self.terminal.paste_clipboard() def on_toggle_fullscreen(self, *args): FullscreenManager(self.settings, self.window).toggle() def on_save_to_file(self, *args): SaveTerminalDialog(self.terminal, self.window).run() def on_reset_terminal(self, *args): self.terminal.reset(True, True) def on_find(self): # this is not implemented jet pass def on_open_link(self, *args): self.terminal.browse_link_under_cursor() def on_search_on_web(self, *args): if self.terminal.get_has_selection(): self.terminal.copy_clipboard() clipboard = Gtk.Clipboard.get_default(self.window.get_display()) query = clipboard.wait_for_text() query = quote_plus(query) if query: search_url = "https://www.google.com/#q={!s}&safe=off".format(query) Gtk.show_uri(self.window.get_screen(), search_url, get_server_time(self.window)) def on_quick_open(self, *args): if self.terminal.get_has_selection(): self.terminal.quick_open() def on_command_selected(self, command): self.terminal.execute_command(command) def on_show_preferences(self, *args): self.notebook.guake.hide() PrefsDialog(self.settings).show() def on_show_about(self, *args): self.notebook.guake.hide() AboutDialog() def on_quit(self, *args): self.notebook.guake.accel_quit() def on_split_vertical(self, *args): self.terminal.get_parent().split_v() def on_split_horizontal(self, *args): self.terminal.get_parent().split_h() def on_close_terminal(self, *args): self.terminal.kill() class NotebookScrollCallback(): def __init__(self, notebook): self.notebook = notebook def on_scroll(self, widget, event): direction = event.get_scroll_direction().direction if direction is Gdk.ScrollDirection.DOWN or \ direction is Gdk.ScrollDirection.RIGHT: self.notebook.next_page() else: self.notebook.prev_page() # important to return True to stop propagation of the event # from the label up to the notebook return True class MenuHideCallback(): def __init__(self, window): self.window = window def on_hide(self, *args): HidePrevention(self.window).allow() guake-3.6.3/guake/common.py000066400000000000000000000046411346623310400155640ustar00rootroot00000000000000# -*- coding: utf-8; -*- """ Copyright (C) 2007-2013 Guake authors This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA """ import logging import os import sys import gi gi.require_version('Gtk', '3.0') gi.require_version('Vte', '2.91') # vte-0.38 from gi.repository import Gtk from guake.paths import GLADE_DIR from guake.paths import IMAGE_DIR log = logging.getLogger(__name__) __all__ = [ 'get_binaries_from_path', 'gladefile', 'hexify_color', 'pixmapfile', 'ShowableError', ] def ShowableError(parent, title, msg, exit_code=1): d = Gtk.MessageDialog( parent, Gtk.DialogFlags.MODAL | Gtk.DialogFlags.DESTROY_WITH_PARENT, Gtk.MessageType.WARNING, Gtk.ButtonsType.CLOSE ) d.set_markup('%s' % title) d.format_secondary_markup(msg) d.run() d.destroy() def pixmapfile(x): f = os.path.join(IMAGE_DIR, x) if not os.path.exists(f): raise IOError('No such file or directory: %s' % f) return os.path.abspath(f) def gladefile(x): f = os.path.join(GLADE_DIR, x) if not os.path.exists(f): raise IOError('No such file or directory: %s' % f) return os.path.abspath(f) def hexify_color(c): def h(x): return hex(x).replace('0x', '').zfill(4) return '#%s%s%s' % (h(c.red), h(c.green), h(c.blue)) def get_binaries_from_path(compiled_re): ret = [] for i in os.environ.get('PATH', '').split(os.pathsep): if os.path.isdir(i): for j in os.listdir(i): if compiled_re.match(j): ret.append(os.path.join(i, j)) return ret def shell_quote(text): """ quote text (filename) for inserting into a shell """ return r"\'".join("'%s'" % p for p in text.split("'")) def clamp(value, lower, upper): return max(min(value, upper), lower) guake-3.6.3/guake/customcommands.py000066400000000000000000000054651346623310400173350ustar00rootroot00000000000000import json import os import gi import logging from locale import gettext as _ gi.require_version('Gtk', '3.0') from gi.repository import Gtk log = logging.getLogger(__name__) class CustomCommands(): """ Example for a custom commands file [ { "type": "menu", "description": "dir listing", "items": [ { "description": "la", "cmd":["ls", "-la"] }, { "description": "tree", "cmd":["tree", ""] } ] }, { "description": "less ls", "cmd": ["ls | less", ""] } ] """ def __init__(self, settings, callback): self.settings = settings self.callback = callback def should_load(self): file_path = self.settings.general.get_string('custom-command-file') return file_path is not None def get_file_path(self): return os.path.expanduser(self.settings.general.get_string('custom-command-file')) def _load_json(self, file_name): if not os.path.exists(file_name): log.error("Custom file does not exit: %s", file_name) return None try: with open(file_name) as f: data_file = f.read() return json.loads(data_file) except Exception as e: log.exception("Invalid custom command file %s. Exception: %s", file_name, str(e)) def build_menu(self): if not self.should_load(): return None menu = Gtk.Menu() cust_comms = self._load_json(self.get_file_path()) if not cust_comms: return None for obj in cust_comms: self._parse_custom_commands(obj, menu) return menu def _parse_custom_commands(self, json_object, menu): if json_object.get('type') == "menu": newmenu = Gtk.Menu() newmenuitem = Gtk.MenuItem(json_object['description']) newmenuitem.set_submenu(newmenu) newmenuitem.show() menu.append(newmenuitem) for item in json_object['items']: self._parse_custom_commands(item, newmenu) else: menu_item = Gtk.MenuItem(json_object['description']) custom_command = "" space = "" for command in json_object['cmd']: custom_command += (space + command) space = " " menu_item.connect("activate", self.on_menu_item_activated, custom_command) menu.append(menu_item) menu_item.show() def on_menu_item_activated(self, item, cmd): self.callback.on_command_selected(cmd) guake-3.6.3/guake/data/000077500000000000000000000000001346623310400146265ustar00rootroot00000000000000guake-3.6.3/guake/data/__init__.py000066400000000000000000000000001346623310400167250ustar00rootroot00000000000000guake-3.6.3/guake/data/about.glade000066400000000000000000000131571346623310400167450ustar00rootroot00000000000000 False False center-always normal Guake Copyright 2013-2018 Gaetan Semet Copyright 2007-2010 Lincoln de Sousa Copyright 2007 Gabriel Falcão Guake is an easy to access terminal based on FPS games terminal http://guake-project.org http://guake-project.org Guake is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. Guake is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with Guake; if not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA Gaetan Semet <gaetan@xeberon.net> Lincoln de Sousa <lincoln@guake.org> Pierre-Yves Chibon (Pingou) <pingou@guake.org> Aleksandar Krsteski (SnapShot) <aleksandar@guake.org> Contributors: Louie Lu (mlouielu) <git@louie.lu> Mario Aichinger (aichingm) <aichingm@gmail.com> Maxim Ivanov (ulidtko) <ulidtko@gmail.com> Adonis K. (adonisk) <aklp08@gmail.com> Past Contributors: Gabriel Falcão <gabriel@guake-terminal.org> Catalan: Raül Cambeiro <xrulet@gmail.com> Croatian: gogo <trebelnik2@gmail.com> Chinese (Simplified): 甘露(Gan Lu) <rhythm.gan@gmail.com> 吴新宇(Xinyu Ng) <wuxinyumrx@gmail.com> 庄秋彬(zqb-all) <zhuangqiubin@gmail.com> Czech: Daniel Milde <daniel@milde.cz> Martin Lukeš <martin.meridius@gmail.com> Pavel Borecki <pavel.borecki@gmail.com> Dutch: Robert van Drunen <r.j.m.vandrunen@gmail.com> Heimen Stoffels <vistausss@outlook.com> Farsi: Kasra Keshavarz <kasra545@gmail.com> French: Benjamin Danon <benjamin@sphax3d.org> Gaetan Semet <gaetan@xeberon.net> Pablo Martin-Gomez <pablo.martin-gomez@laposte.net> Pierre-Yves Chibon <pingou@pingoured.fr> Sylvestre Ledru <sylvestre@debian.org> Thomas Canniot <mrtom@fedoraproject.org> Galician: Antón Meixome <meixome@certima.net> osl <tecnicosl@uvigo.es> German: Frank Dietrich <bits_n_bytes@gmx.de> Mario Aichinger <aichingm@gmail.com> Markus Majer <mm@mpathy.de> Roman Zimmer <hello@roman-zimmer.app> Greek: Μαριμπής Αβραάμ <makism@venus.cs.teicrete.gr> Hungarian: Dávid Horváth <chronos.hun@gmail.com> Péter Trombitás <trombipeti@gmail.com> Indonesian operamaniac <rizkiaulia.r@gmail.com> Italian: Giulio De Pasquale <depasquale.giulio@gmail.com> Marco Leogrande <dark.knight.ita@gmail.com> Japanese: Nishio Futoshi <futoshi@momonga-linux.org> IWAI, Masaharu <iwaim.sub@gmail.com> Korean: Nessun Kim <nessunkim@gmail.com> Sangwoo Joo <sangwoojoo@naver.com> Norwegian: Håvard Havdal <haavard@havdal.net> Punjabi: A S Alam <aalam@users.sf.net> Polish: Mieszko Ślusarczyk <mieszkoslusarczyk@gmail.com> Piotr Drąg <piotrdrag@gmail.com> Portuguese (Brazil): Djavan Fagundes <djavan@comum.org> Gabriel Falcão <gabriel@guake-terminal.org> Lincoln de Sousa <lincoln@guake.org> Matheus Manoel <matheus.manoel@usp.br> Russian: Igor <f2404@yandex.ru> igorsub <igor6130@gmail.com> Ivan Komaritsyn <vantu5z@mail.ru> Pavel Alexeev <Pahan@Hubbitus.spb.su> Spanish: Adolfo González Blázquez <code@infinicode.org> Dante Bravo <dbravo.iessabadell@gmail.com> Diego Martinez <dmartinezc@gmail.com> Ricardo Hermosilla <ra.hermosillac@gmail.com> Swedish: Daniel Nylander <po@danielnylander.se> Morgan Antonsson <morgan.antonsson@gmail.com> Turkish: Berk Demirkır <perq87@gmail.com> Ukrainian: Сергій Дубик <dubyk@ukr.net> Максим Іванов <ulidtko@gmail.com> Gabriel Falcão <gabriel@guake-terminal.org> image-missing False vertical 2 False end False False 0 guake-3.6.3/guake/data/autostart-guake.desktop000066400000000000000000000023361346623310400213450ustar00rootroot00000000000000[Desktop Entry] Name[ca]=Terminal Guake Name[cs]=Guake Terminal Name[de]=Guake Terminal Name[es]=Guake Terminal Name[fa]=Guake Terminal Name[fr]=Terminal Guake Name[gl]=Terminal Guake Name[hr]=Guake Terminal Name[hu]=Guake Terminál Name[it]=Guake Terminal Name[ja]=Guake 端末 Name[ko]=Guake 터미널 Name[nb]=Guake Terminal Name[nl]=Guake Terminal Name[pa]=ਗੁਆਕੀ ਟਰਮੀਨਲ Name[pl]=Terminal Guake Name[pt_BR]=Terminal Guake Name[ru]=Терминал Guake Name[sv]=Guake Terminal Name[tr]=Guake Uçbirim Name[uk]=Термінал Guake Name[zh_CN]=Guake 终端 Name=Guake Terminal Comment[cs]=Používejte terminál jako ve hře Quake Comment[de]=Verwenden Sie die Befehlszeile in einem Quake-ähnlichen Terminal Comment[fr]=Exploitez la ligne command dans un terminal tel Quake Comment[pl]=Używanie wiersza poleceń w terminalu w stylu gry Quake Comment[ru]=Использовать командную строку в Quake терминале Comment=Use the command line in a Quake-like terminal TryExec=guake Exec=guake Icon=guake Type=Application Categories=GNOME;GTK;System;Utility;TerminalEmulator; StartupNotify=true X-Desktop-File-Install-Version=0.22 X-GNOME-Autostart-enabled=true Hidden=false NoDisplay=false guake-3.6.3/guake/data/guake-prefs.template.desktop000066400000000000000000000004541346623310400222470ustar00rootroot00000000000000[Desktop Entry] Name=Guake Preferences Comment=Configure your Guake sessions TryExec=guake Exec=guake -p Icon=guake Type=Application StartupNotify=true Categories=GTK;GNOME;Settings;X-GNOME-PersonalSettings; X-GNOME-Settings-Panel=guake X-Desktop-File-Install-Version=0.15 Keywords=Terminal;Utility; guake-3.6.3/guake/data/guake.appdata.xml000066400000000000000000000027041346623310400200600ustar00rootroot00000000000000 guake.desktop CC-BY-SA-4.0 GPL-2.0+ Guake Top-down terminal

Guake is a top-down terminal for Gnome, and is highly inspired by the famous terminal used in Quake. You can instantaneously show and hide your terminal with a single key stroke, execute a command, and then go back to your previous task without breaking your workflow.

Imagine you are working in your favorite text editor and want to execute some commands, like execute the unit test of your code, check a man page, or edit some configuration file. You can do it at lightning speed without leaving your keyboard. Just press your predefined "Show Guake" hotkey, execute your command, and press it again to hide the terminal and go back to your work.

guake.desktop http://guake-project.org/img/screenshot.png http://guake-project.org/img/screenshot2.jpg http://guake-project.org/ https://github.com/Guake/guake/issues https://hosted.weblate.org/projects/guake/guake/
guake-3.6.3/guake/data/guake.glade000066400000000000000000000062521346623310400167250ustar00rootroot00000000000000 True False gtk-preferences True False True True gtk-about True False True True True False Quit True False False False True Guake! True True True False True False vertical notebook-teminals True True True True bottom False False True True True 0 guake-3.6.3/guake/data/guake.template.desktop000066400000000000000000000003741346623310400211330ustar00rootroot00000000000000[Desktop Entry] Name=Guake Terminal Comment=Use the command line in a Quake-like terminal TryExec=guake Exec=guake Icon=guake Type=Application Categories=GNOME;GTK;System;Utility;TerminalEmulator; StartupNotify=true X-Desktop-File-Install-Version=0.22 guake-3.6.3/guake/data/org.guake.gschema.xml000066400000000000000000000730231346623310400206450ustar00rootroot00000000000000 false Enable debug mode When debug mode is enabled, logs are printed in the standard output where Guake as been launched true Appear on the mouse display. Appear on the mouse display. This overrides any setting in display_n. 0 Display to appear on. Display to appear on if the mouse_display option is not set. If this is set to an invalid value (as in the case of removing a screen from a system), the invalid value is automatically updated to the current primary screen. '' Path to the default shell. Path to the default shell. Set to empty to use default user shell. If invalid path is set here, guake will fallback to user shell. true Restore tabs when startup If true, when guake startup, it will restore tabs from previous session true Notify when restored the tabs If true, when guake restored the tabs, it will notify the user that the tabs has been restored true Automatically save tabs session when changed If true, when tabs has changed (add / delete ...etc.), it will automatically saved the tabs session false Login shell If true, the commands in terminal will be executed in a login shell. true Sets the tray visibility. When true tray is visible. false Use workspace specific tab sets When true, each workspace gets their own set of tabs. true Sets the popup notifications visibility. When true, popup notifications will be shown when Guake starts. true Prompt when quitting. Ask for confirmation when quitting Guake. 0 Prompt when closing tabs. 0: Never 1: If process is running 2: Always. Also prompts on quit. true Stay on top. Makes guake window be on top of all other windows in the desktop. false Refocus window. Refocus window instead of closing. false Tab on top. Makes tab bar on top of the Guake window. Per default, tabs appears bellow the terminal. Setting this to True will move the tab on top of the terminal. Requires a restart. false Determine if guake hides on lose focus. If this property is set as true, guake will be hidden when the main window lose the focus (when Alt+Tab be pressed for example). true The tab bar visibility. When true, the tab bar is visible. false Enable Quick Open feature. If this property is set as true, guake will open a text editor when the user does a Ctrl+Click on a filename printed in the terminal. 'gedit %(file_path)s' Command line pattern to start a editor. This property gives the command line to execute when doing a Quick Open. You can enter the following python string pattern in it: '%(file_path)s' will be replaced with the full path to the captured filename, '%(line_number)s' will be replaced by the line number if found (set to the empty string otherwise). false Quick open the file in the current terminal. If this property is set as true, guake will use the current terminal to execute the Quick open feature. Use if you want to inherit your terminal environment in your text editor '' Startup script to execute when guake starts This property allows you to execute a startup bash script each time guake starts. You can configure your initial tab settings within this script. Please see the command line argument of guake ('guake --help') for complete help. false Start fullscreen. When true, the program will start in fullscreen mode. false Start when GNOME starts When true, the program will start upon GNOME login. false Audible bell If true, the system alert sound will be played on a bell character. 100 Window width. Percent of the screen that will be used by guake terminal horizontally. 50 Window height. Percent of the screen that will be used by guake terminal vertically. 0 Horizontal window displacement. Displace the window horizontally by a given amount of pixels. 0 Vertical window displacement. Displace the window vertically by a given amount of pixels. 0 Window horizontal alignment. Place Guake at: 0: center, 1: left, 2: right 0 Window vertical alignment. Place Guake at: 0: top, 1: bottom true Sets the scrollbar visibility. When true, scrollbar is visible. 1000 History Size. The number of scrollback lines to save in history. false Infinite scrolling Scrollback lines in history is infinite false Scroll on output If true, whenever there is new output in the terminal, it will scroll to the bottom. true Scroll on keystroke If true and a key is pressed, the terminal is scrolled to the bottom. true Use default font If true, Guake will use the GNOME monospace default font. true Use terminal titles for tab naming Any terminal program can set the terminal's title via special escape sequences. Some shells (e.g. bash) display user's prompt there (though you can adjust that to any arbitrary text in bashrc or similar) and update it automatically as the prompt changes. So you can have easy automatically updating meaningful tab titles with this option turned on. false Set window title to current tab name If true, Guake will update its window title from the current tab name. It is useful when you work with applications that use windows title, (keepass, automatic time tracker apps) 'ascii-delete' Backspace Compatibility Defines the behavior of backscape key. 'delete-sequence' Delete Compatibility Defines the behavior of delete key. '-A-Za-z0-9,./?%&#:_~' Characters that are considered "part of a word" When selecting text by word, sequences of these characters are considered single words. Ranges can be given as "A-Z". Literal hyphen (not expressing a range) should be the first character given. true If the tabs bar must be visible in fullscreen Set it as false to enjoy guake's fullscreen. true Give focus to guake if tab is opened (OBSOLETE). If the guake window is out of focus but open, enabling this will give it back the focus instead of closing the window. '~/.config/guake/custom_command.json' Path to the default custom command json file. Path to the default custom command json file. If is blank or the json file is not in a proper format the terminal context menu will be built without custom commands. If the file is a valid json with recognized structure theterminak context menu will be buit with the commands read inside. true Open new tab in the current working directory Open new tab in the current working directory 100 #TODO PORT max-tab-name-length #TODO PORT max-tab-name-length false #TODO PORT abbreviate-tab-names #TODO PORT abbreviate-tab-names '' GTK Theme name Name of the GTK theme to apply on Guake. If set to an empty string, let GTK use the default system theme false Prefer Dark Theme for GTK Prefer the dark theme version of the theme if available false Show close buttons for tabs Show close buttons next to tab titles 0 Cursor blink mode of the terminal Controls the blink mode of the cursor in the terminals. 0: Follow GTK+ setting, 1: Blink on, 2: Blink off 0 Cursor shape of the terminal Controls the shape of the cursor in the terminals. 0: Block, 1: I-Beam, 2: Underline 'Monospace 10' Font style. Font face and size that will be used in terminal. '000000000000:#cccc00000000:#4e4e9a9a0606:#c4c4a0a00000:#34346565a4a4:#757550507b7b:#060698209a9a:#d3d3d7d7cfcf:#555557575353:#efef29292929:#8a8ae2e23434:#fcfce9e94f4f:#72729f9fcfcf:#adad7f7fa8a8:#3434e2e2e2e2:#eeeeeeeeecec:#ffffffffffff:#000000000000' Color scheme. Color scheme that will be used in terminal. 'Tango' Color scheme name. Color scheme name that will be used in terminal. true Allow displaying bold font in Guake terminal. When allow_bold is disabled, any text in Guake terminal intended to print as bold text will be instead rendered as normal text. false Use bright colors for bold text If true, text from the first 8 colors that is formatted as bold will also be switched to its bright variant (VTE >=0.52). 90 Background transparency. Alpha that will be applied to the terminal background. 'F12' Keybinding to show/hide guake. Global keybinding to allow user call guake from each place after it's opened without clicks. '' Keybinding to show and focus guake. Global keybinding to allow user call guake from each place after it's opened without clicks. '<Control><Shift>f' Search terminal Show search box to search text inside the terminal '<Control><Shift>q' Quit Quit Guake. '<Control><Shift>t' Add a new tab. Calls the function to add a new tab in guake window. '<Control><Shift>h' Add a new tab in home directory. Calls the function to add a new home directory tab in guake window. '<Control><Shift>w' Closes the current tab. Accelerator to active function that closes the current selected tab. '<Control><Shift>l' Search current selected text on the web Accelerator to active function that search on the web the current selected text on the terminal. '<Control><Shift>Page_Up' Move left current tab Move the current tab to the left '<Control><Shift>Page_Down' Move right current tab Move the current tab to the right '<Control>Page_Up' Previous tab. Shows the previous tab. '<Control>Page_Down' Next tab. Shows the next tab. '<Control>F1' First tab. Switch to the first tab. '<Control>F2' Second tab. Switch to the second tab. '<Control>F3' Third tab. Switch to the third tab. '<Control>F4' Fourth tab. Switch to the fourth tab. '<Control>F5' Fifth tab. Switch to the fifth tab. '<Control>F6' Sixth tab. Switch to the sixth tab. '<Control>F7' Seventh tab. Switch to the seventh tab. '<Control>F8' eighth tab. Switch to the eighth tab. '<Control>F9' Ninth tab. Switch to the ninth tab. '<Control>F10' Tenth tab. Switch to the tenth tab. '<Control><Shift>R' Rename current tab. Shows a dialog to rename the current tab. '<Control>plus' Zoom in. Increase the font size of the terminals. '<Control>equal' Zoom in (alternative) Additional shortcut for zooming in. '<Control>minus' Zoom out. Decrease the font size of the terminals. '<Control>Down' Increase height. Increase the screen height. '<Control>Up' Decrease height. Decrease the screen height. '<Control><Shift>Up' Increase transparency. Increase the terminal transparency. '<Control><Shift>Down' Decrease transparency. Decrease the terminal transparency. '<Control><Shift>c' Copy clipboard. Copy the clipboard content. '<Control><Shift>v' Paste clipboard. Paste the clipboard content. 'F11' Toggle Fullscreen. Toggle main guake window fullscreen. '<Control>F1' Toggle hide on lose focus. Toggle whether guake will hide when it loses focus. '' Reset Reset terminal '<Control><Alt>T' Toggle transparency. Toggle the terminal transparency from the actual level to 100% and vice versa. '<Control>F12' Last tab. Switch to the last tab. '<Super>less' Split tab vertical. Split tab vertical. '<Super>minus' Split tab horizontal. Split tab horizontal. '<Super>x' Close terminal. Close the currently focused terminal. '<Super><Shift>Up' Focus terminal above. Focus terminal above. '<Super><Shift>Down' Focus terminal below. Focus terminal below. '<Super><Shift>Right' Focus terminal on the right. Focus terminal on the right. '<Super><Shift>Left' Focus terminal on the left. Focus terminal on the left. '' Move the terminal split handle up. Move the terminal split handle up. '' Move the terminal split handle down. Move the terminal split handle down. '' Move the terminal split handle left. Move the terminal split handle left. '' Move the terminal split handle right. Move the terminal split handle right. '' On show. Run this script on show. guake-3.6.3/guake/data/pixmaps/000077500000000000000000000000001346623310400163075ustar00rootroot00000000000000guake-3.6.3/guake/data/pixmaps/add_tab.png000066400000000000000000000015271346623310400204000ustar00rootroot00000000000000PNG  IHDRasRGBbKGD pHYs  tIME,(tEXtCommentCreated with The GIMPd%nIDAT8˥=lu3w?B,|H9Q"H(((@ E!!:z :::Hl+\r۽ۏPE'M1{3|.%F|z~+֒Q O>@Z]]5^9,pa|ˉ+#d;Ax+r[׶* @>`}KPFEYȱgMu;+Ɠ{L#d7.l]ӽn`U]s̓*3#J5@NewuLⓟO7?d~@3ꨫ9UT ڄm.Է&':#ȁ1L-{fog&qPUV*P# EiubcSq6+nA(#D'EǾlKC7L|.,j~ `ūA-?Z ^`?Rkke78|kcsYy?x\ޔH1B饚hV{g4+joN|ҭarূ "&U4kVoDނjR~$^(WǠSv1l&HeUyaYޭ@ RďM1`̋ f!&R2٪L;A% 0m|S>HM5IENDB`guake-3.6.3/guake/data/pixmaps/guake-128.png000066400000000000000000000250071346623310400204250ustar00rootroot00000000000000PNG  IHDR>abKGD pHYs B(xtIME Ń IDATxy$]?eVUw333{HX$й:Ң ,dP>lp16a6aG`B tYBs5}wuUבʬʚcw/x7~omߞtMu]3W|n6EQtr[<Ǐ[kj}'QSJP{ R$j"BEZ {IԌ1u5EQDRd_s].ד[.y^˙~o:-^|+ͩk~?'M 9lrVMmS^Oʁ/~a(*cPtKtڻPYH Ip1HvSl$c ;s;v2 JIbH\0 W9BUJ45A ܌*<#kߍaX Z,vx;Fe.TUd)?h+X.v3#V^KσՎWEpp9k }1X;<Rd2%KΑ*#S uJΟӾAƸqmz _(A؁INlO{Si)u+iҎ.9 q ˜+ 'P*3@h V"ћ8U@cb(9:ްS5IO \a:ݔ\@WD]񱑱ت `j E$3f8=o;TAhOkVN\ʍ>ň,{q pBIR.˚i\;1VƍF bڢ16bT(S @kЀJPdsgC ;GrAH$Yf3`V5L`ш r(KUb M4r QgHY)+k4XVO>y[B5|ZqBt^j0 Ac B f0uKWQ, 5.śI(p+ j$Q|`M_j;,{ 2SG BR98Dݟ#kl@wvvt^S3I(GSg <(Vc'(f7L"{m6 P*Į3kJM*=WN)< FݟX!B?XB^ ϸ0bm@#2e x^B[Fa V7'ܹ^`腉,6d@r"2aC {b@ŠGu7 }a@l| `]&0FS4sϝL2lɌMo6a + !2n$fлVzj)V,P"}ŵ'S#eg%e*к( ֊5 0/-HN*ʺLVK0Z |%c H=>10l̬AК[ˆ!2&U E6R't/HҒ0c`|Y]Qj Vʥ\_⴫%IF33N.@'s|uٽD0RhF 0pSӉ@kk*է9*fʊ7.֘%LGV/IM&1ec0&Zt.+ m:)?E=Z!qZAc*F +ee;7=E`dQس<(1CauMP0;IdkbY,0mELF=JAX+hPnZ q3ZirYW  2:15 f Asyg JJ [\*^S(D;$@* k*Ah蔼gBa6C FAb b /,cq"Fa)52ҳBW!)2]⎷:cx }$fįDX*V2`b1"P2"Y(R:3 br2~qBi,qg9TπDX e1&rs!I.rh,~ЧC1~jx5p J aVęaнI X{I`@Ig' cүq5YlԒQ5PߙluI}~#L\3t/) a5Rڝ ZkD%O `H^iM`Bd̸ulymSн#>@^~J0V+"v8bL{̴|HlX7 JtJ$F)ĠXbmٟKs *&$-,y ߝ{ ku\60hwየ~䕲 % ?bH!Ѐhr 0Dc㪂\/mЯ^Z\@2ow;l }|" C$>?' uk %1"ÙK0U]@LN}-\GWm6P$7[q#;a`x*t"2Q@׉NJLlB-kcFI`t :(e%#cFq@2iM1A{0c8eEz\@\%SlIi3>580qpY;)`׹AiYu>V Cy@ؕ!{JG\`1ck@=ϱF}vwHw)XV'`}3*S8/eK[#kC'48~ 3sFQK3\FvD,&2i3^Y#Nq~Q Va2N-Yk4jpX=?8C?\bF] vz7|zP3a /gDji8Pq`rPFs7$]JeE ;yFͱRX8AhI@pd<00f2"lMnZjfQCk8X& )%ql6NQ+djJE EI%ƬMDz:fꚃ568ڍ(tkA(0vL!8/)n ҩY=GFb{=¹:V A݁ykN+|/>Vhu2薬rqnQ)L'0;(j5Bc 2VS~^8#:< 0$L<_O_bXCd!" #|V^>4WKd>AWJ!vϠzLW]JTkeNb"nDckơsus1aDKF tZ"vRDq{7sj{>;;]6w;#.`* Wun0")Ȉ8;" -w &X\tKA- 0CKx*t&Pr"NPX]   , oy>uߣ9wZ+{5r\3ھ~nKMVڗW_n5nzLHY!IQѵ#EkKh f-8}ڧs +|ꋟbӣ׋0"P@$SVrru%x d"XTJ|eXA7>l_+zaDobslwgSd"1q 8Fs$.-qHXtԊ{O\w&nnҟÈvXXeev;\d&hO3Ō nF}ȉ"Zipv3K70~WHA2=ѧ%ۙQ($E.ϯ\C?b X. Ku`ŝ>~R_ zGec.WwYekC^Z`"F8Ws+x^ g0twa4Ho*}+ }GK4Ǐ!0>S%'hwy[Eade_61l:бٜ@]cאJ_X+$`ck-5OS5'wO,}ױ"lvYZeau;]:ЌA6 si =<bqd~ĈGͱ kG8}?C_xY:~\ i'Oq?+W+ :3L9d$@1qNAP~GϹzm`k {,oXXmbcgVO?0iwM`$.ЄaXAD)/tVcg[Wr ,|%VFMVwYj LZSOգtl~Z.0i7<ݯEϩ{:z%Η90yr̪5t!X!@u?),"iוIej:}T<ӊkx9/Z](^6 MVwXjlbBW?ɏɠͫɘ%նOrVѓPBOiw:`acnz 7^{ z>~Kh̚?Vɠ!(CJB|N +x}=^p >0^V;F.~HBt `MQ m9KaX&Db$s" <n{[)'_G~Mĥ(4hqtYMf$ aܢOkix|yX1@&^ L9!B1ר1xOrө[t8pv'`y͍s\l꺩lcUC h.Uѱ +A k5/z}QJUJ>vL@"Aկif>3 N wGnKt{X፛ќL(Ɖ3ܵf>Gcnyg%ڽg8{a\};4飯͔3?y۩Fr^W5_UL` =ρ~ٙ96w|'ӏmc2QFH(eJ)fk5?ˈL!"M:;,7jvE{ivvȩ _΃tNٙ١w?7s)-cgw"@WG1h69qFnf[_$BW.fLF9a <;I\"q /U/Йc56V9jfNOKSN}]mVz.㯾|50S4fj~nMllopP.;5_3;۹S9u Lq2dv^bϸ7hygB֞3&K;lJL@X]mVZ1[>gY~#WG)oJϩ[~/wD 1SQ[ptn:}s3>zAmX#}@H܂…{ǡ:OV~P[,׈"as{s+;Yd[{a{n@(ry IDATN\+^r^W;.8'WUЈ 7vGշyG7K#n?D&N-hWKǁ^w4곬=NaEu)s[,^a}kN~쯋nz^{xՋ^3nZ1GrcxFky񤑧5^sZG?r/o'~:-sh+oם8ʻ>gc!V?"4,^hrvq۬mmE%zJP~z;yiUzVsćUe!X7mO:|'D3nykxǽee",XRN{6<8yz%?BiXZWvXllaxܭdr0.w͒E~~5P(! B qU)|Aop~7]BDg׿AvwY~GQ*t_..8ֿbnr͢ej~;||/>9gKwwG `kY_y?5}kJ1[?8;Na*vWw9ŹmV֚l7;t%'z&>t Cѐg9~.翫>:@~H3]8qwt~O8~__Zodn7FsK[]byVl|꣩`oJO[?yܣՆUt%d"p,K+L͟şU~75M5%w byяYt?҅6tap卟ش:L_1|t `i"4B8rhs ůO/5744ѳv#q6 xc\o^<[ۛOHg;DBWmqPy #g~˳pj~󋟣:qm-mf^ 0 X[/F>њ`B#z3kp`Μnqnyʳ;_l5XXM-obգ\D$iAWic 8& S.P>yÅ o]dg`{wm]k춺W&S*`)ǷOPIܦ~ܘ {w"TkOa6,,osfa ,5WSx1T_u.qe2"tG7xta&;{.T!=n[xT\v~y.vEu !DQ^ M3H0y2h{_QO6.a쇁Ov%w$U><`O@\:kO( u~;@j<? R T@(dʪ A~=qZwU^P<1<^`S]UEq i}NM&|b3c忧J @RugES+VUftg,՗ןp㌜.=xU+ EA-1x}n-!?ʟ^ODrr.)㌞kLg@Pm8wY:.W%& T5<{:Z1- E2B 5.x? jai >|y}ۂ~)E~θR'\0*L+v(z? blJF7S]FsوͺssJ]؂s p)8ƀdP]\˘dI#}9&הe381>#ʚ}g C'1BU㗱$#˘9[ܳxFKs1@۪Jql23E?Q@1t8qU5 ,U~ʾ_=@p,3Ch>ƕe#w(2X'UU0.<_/&0ȟ^*'v^I`EPI\8JLT0~ OcG{_ . 8M6,Dj|5~J e|]%|:K~1n)* EWbu!?L0$#O%tD̥LҭT0LRU |I;|x\*`b_edNI1%4יfwBu֘UG{p9Q8WH.9~om~o g{v SIENDB`guake-3.6.3/guake/data/pixmaps/guake-48.png000066400000000000000000000055371346623310400203540ustar00rootroot00000000000000PNG  IHDR00WbKGD pHYs B(xtIME5iQ IDAThdU?Uuggggfwqb Dm)%FHl K#~Hń>0yX1cGrm$ײΣgzVso߹ӳJz9sNu5U馛>ތ{ᅵ !̿h4ޔ1Z6??D_=0U3 Q=l} ;;o [sU0^st`߁eǏΏw džfQFMʞ/UVwW|S_VV T-:@lԮVh;TF9nps5nȚsART+b*1Q \ư?4V8g`j!x+T UPJ`f8g1ZbmT,8hb{eJޫ1(*b:*uJ UeLΖTx3=0⫍:Вιa@pz$E@Z,F\hܐ%8F5g1ӜAtIZKpltZNL$Q)yǜ<tj)Ŋ t{+Ó'WϿ#K, ,0lB:QXELt(.ѨJ' *Xl-t ǻ<{8Q&.9!*135Qi`fHkltRYP/Hރf, TשTAtgbG0թjY|9qifFH7bE^$""d!S03t3M wRhe+;ǔw436;nd")E^+Yf䍀9ipd ,DHjl V6;Pj192 IHbx+AgHM/%DRYH!TB)M<45>x>Y[]j )$5 H+Xq]T2*"T>^49֥[7 o~}=t:_{N'@>!!#2Y4Cu ユ=VZhͅ6^e0/X-cG/֏<>[E:aB2X;\up?J뇼xI.\jsva+t{9л9r >/tN=|X\^zN^{|>8ʾ)I..lus?#kLCfys+,,^9_=wŭ7ݲS?O=qelp2_V9snko+:ZBv0՘bnfnfּzIzŋ<™زc=IN|$?UE.cp~sK+Fj3vI*@ex/dtÛ=,gx  S`'ql0sBلƁdawڝUDŽ ^?Vz Y$+ Iԟ#rf5@vpo0u @G*g>I& aLoJcN| kMS]z7ٸ3^$\o) !֗IIENDB`guake-3.6.3/guake/data/pixmaps/guake-64.png000066400000000000000000000100741346623310400203420ustar00rootroot00000000000000PNG  IHDR@@iqbKGD pHYs B(xtIME,߰RIDATxkeWU{s_=$C" 5(B)R CILHe_R V!UP(FECR@˯}`8I 4،lbбe=?jF>>Fx8+^S{th(8Fǒ{~ :y ER~Eƨj>Lu3av@L7nG/y@Tԉhg׉P 7W,F!y4i PQTg:;)6}F1`  Ulke6*q =,@TQC!/uB,ADll 墥˄HUB;UZ5?/. S) D:9o&Q Jd,W,*Rlz^I g%Ɛzh*M<]'ޙ PUw7A>c4[&/hcg(U&!' Q3Ct.4% Vup^nU>;Ϗ4 Kd-H+ϹNDTC솿^3c316n2th4[6wSEs)^G [MgCR`]E5"uB;mq5c{538g)Ɩ{)DzZBuZndIFN;cz* N0AH[zJIh%l0 - VCΧtEl3˟fTR,R)3Sg>;uZԴz@4M*MwGSfhjh67hw#Ix/goceNM0G%ꩾ(6"2^/$iJ0S.O*a -*(½sG9CVַ_RFXG$`@^&M5ʖV4 `/{~?m\A"(&2P1g\ՍZ|'Zkq:g6٨$n-S\le?eZ3BfIegc+~:w}'K7#xB!x>(E)ؘEn<Z*< k-mpzq-:/t8=gM3fﵯ7_Oj)nsB(6"eyqpoh,?7T\p_7_f*5ZZ`~a&N:Xo֣͕8(?u\Ky_;v]| gnTMz,K 8"<XYt ތb{+\翈}ZO[gyA%{83T73`ay/Of)W7{ŕgBXJM1Ӧ {7?.J T披eG8OQ&OYgqAcskjUT,0klnnLT6E(?o;yF;EŖ=W^R^Ʒoc}s5TY\hvH_ uZUEY|||;p=sQ$J# Z>xG_1Han&]Ư_w+w}U9ɓ8\Vn,m[LGF*C?,< §waMӛHE(?8uJY>?>Qڝ./<qC +5N^&\>v=o8W֪1PGĕoq,yt3on$X5~{jbTkX>\sxoRsTST7t:)߷u:׀V*(ʹSjf[c7?Nj/?z&'OW?jA0cPf-zv}|̽~;yi + iԳlۜ ̥"+[a( Kj櫔OS?` gPr{@Q*:S̊Up*QKAR pbr٩d%KX1| \IIe8I6EA aHBW#FԹYMA+ЁB5z9g{$؄(%!aэ!:5dʹde(H$Iu{\ɒ,) lW~N/\as3kAy֢֨ JMP$gJȩ"[.ƫeތS−0( {(.aڋVR(TU9 :qΖ# qaJfmэ鋲"- ^Bt;NҊ^)-Gj"/ #zne!qVu>9%Q׋螜t^$wCLFL&-+_(eE[iԦ[ 4P.nHs@"spG yܗz8$t0Ku2 3m¨G(V7G1J r8zr~vjȉ30ؚV04Ə%0 `^25;G6:$̅M֭^wxv:|]C(â\i*bjv>03;fYYbiυ8}Ħ u8"#c2~sCs;|!fa4NNw fZ,?`\yY1W3?1Nj-ι, C"7c{ |7a>}a籉CH)Ts(t  a'?3%.iqɚ>>vՇΞ]LN#Z㈩i Z.(?!T N]^P5epDqLl߸־WoEE:h K[ߘ S[hC -cㆫi}U #E\q$MIm,MIӔ&$6%N9YfО됤)3툭0 6?qir8a')q% Q8$ -N1O2|#7%䨗9G$%IR8&BzQ\3Lv'ebM09=Ʋ%p|q i&J? i'1I^{=C9~[n/3@FJ҄'_z^P /=?~put !09a=\ro [`w,;+|gE)TpR#qiMױbJ@j,Vjr4K־[n (((1k? M^r,$o48Kdj#{gyh^åu,~_ ?|kعO #lF r-]S=Dͬ`6l:rs޾q¾飌k " a7.`_iz"V+_4OrY++rZyl9kc8gpfAwc|ˏ ʚJRڔyKݨyf&&O3\RQ X;+<CHeQLsIm֭Z~DThm>%->m_ 7}z;`s=v"L uV)hxKͻyHlT)Jp]|9\lӛ;l<p!Y|+P!1"0!~/vԢڽ-=}''yl{Nu˨wehѕTb-K5.zE 8rџ׿qصcW9q4]NM]C!T< $^h/8>pق~Ѣp4q'sZx5XYӉ/,=[@مǦ}L;_ydr~s͉7vμ`*[鍤xm@k}xhV emF7љ+2*Zߨ(eC\`GڮbժUȐpvlF#wIENDB`guake-3.6.3/guake/data/pixmaps/guake-tray.png000066400000000000000000000017331346623310400210720ustar00rootroot00000000000000PNG  IHDR bKGD pHYs GtIME #5&hIDAT8͔MhU{/3IӔq*UKi%., P ]cTQJ[EMqSEPDP`n ij)&i2M2LR]{Ͻpyn_jıɨJD@RJi,]F)(J+ջ;K(@AD@†D,,Qsj#1bg[zlnE f(,r醇 Z*ve>cZ@#Bw·ۀ`P(=E~4R \o& ("MG8V΋D\9O8U 6 }u]D F6d#ȑe)bD8蠷0F6"xnmSanvA` k~(vy(_L\FAy.:1RgCOevչUW*DIxX¤~F}R"_O\FDA=TNa}+]EŮa~;F ߖP(9Kg+}J zەT*,-b"*o͵*Cq0Iws\k4L@-"4G\*!I1껟Srhhq9pa>~NƤQ-i_zRV?$ B «{xCF޿ښa~OL!m*dqB^r6:A61/>T*8};I!?ggg0c< VfaY+n8W$qRCݵ7mVIbRCŜyZӕyޜ\VgGDk K[(jU\p6} IENDB`guake-3.6.3/guake/data/pixmaps/guake-tray.svg000066400000000000000000006362431346623310400211170ustar00rootroot00000000000000 Tab Tab image/svg+xml guake-3.6.3/guake/data/pixmaps/guake.png000066400000000000000000000100741346623310400201130ustar00rootroot00000000000000PNG  IHDR@@iqbKGD pHYs B(xtIME,߰RIDATxkeWU{s_=$C" 5(B)R CILHe_R V!UP(FECR@˯}`8I 4،lbбe=?jF>>Fx8+^S{th(8Fǒ{~ :y ER~Eƨj>Lu3av@L7nG/y@Tԉhg׉P 7W,F!y4i PQTg:;)6}F1`  Ulke6*q =,@TQC!/uB,ADll 墥˄HUB;UZ5?/. S) D:9o&Q Jd,W,*Rlz^I g%Ɛzh*M<]'ޙ PUw7A>c4[&/hcg(U&!' Q3Ct.4% Vup^nU>;Ϗ4 Kd-H+ϹNDTC솿^3c316n2th4[6wSEs)^G [MgCR`]E5"uB;mq5c{538g)Ɩ{)DzZBuZndIFN;cz* N0AH[zJIh%l0 - VCΧtEl3˟fTR,R)3Sg>;uZԴz@4M*MwGSfhjh67hw#Ix/goceNM0G%ꩾ(6"2^/$iJ0S.O*a -*(½sG9CVַ_RFXG$`@^&M5ʖV4 `/{~?m\A"(&2P1g\ՍZ|'Zkq:g6٨$n-S\le?eZ3BfIegc+~:w}'K7#xB!x>(E)ؘEn<Z*< k-mpzq-:/t8=gM3fﵯ7_Oj)nsB(6"eyqpoh,?7T\p_7_f*5ZZ`~a&N:Xo֣͕8(?u\Ky_;v]| gnTMz,K 8"<XYt ތb{+\翈}ZO[gyA%{83T73`ay/Of)W7{ŕgBXJM1Ӧ {7?.J T披eG8OQ&OYgqAcskjUT,0klnnLT6E(?o;yF;EŖ=W^R^Ʒoc}s5TY\hvH_ uZUEY|||;p=sQ$J# Z>xG_1Han&]Ư_w+w}U9ɓ8\Vn,m[LGF*C?,< §waMӛHE(?8uJY>?>Qڝ./<qC +5N^&\>v=o8W֪1PGĕoq,yt3on$X5~{jbTkX>\sxoRsTST7t:)߷u:׀V*(ʹSjf[c7?Nj/?z&'OW?jA0cPf-zv}|̽~;yi + iԳlۜe6H,ik iB]3Ρ=7U ȫu^@M2*;3IFHy Yk;@{VA!"y c(F3&744>S%:" \Xp/   gXk'TkfPPQL$6<4:?gk#hRI$9Qe{֟uf< .ILL8 Ҵvcfwms|U=T?4@r(@+eDײ}+NO]vU8el8mgгbvpC-gnFC" A<-\|k20:mSm/4c6״kzEOec2׾)u4;6kPì Fݯee;)Ǫ̋r}Ʋ6EϠҢ$ XX?-GڵϮiK]4aՆ*[u?늋z&3kf·s " iMkZl iٿOl=&˟h;۰;]$꫷LMVt:NE}\<6ujY> o8Aܪ~]BL cq,- gV?F~fCٚ=5ӎ솸mkw}+]ޫ*uϪ7S6ierݲN޹9u(h9l2~?H:ٹ>,{ӴV{w{[)?#%#chk1۹l-uovlکq$8Jh&Nw'}Q5ְl$N[7:F׻mnݨ_7de5wث66ZX9}VEߍM} `-o[93cW9.=ZmC?o̫cQmI?k7edlmƶ3s8=6Z83YjB+cYk"wlNݪ4WNMs\IIFԑ'P>E?ѻORƊ69Ǎ~+<*18T(F2ט+ ȬF_H(ɢa X?[&Xx!-|Xx\Ӂko=d)1Ju~0Sc^*> 7BX}M_ᾊf:.zy%~vjǍKoVFf*R Kmv+AR*cfҩd8\!~1$vu$=¦7cn3>fjI)8ȠN-DAu֧UcH3;$)X(ËY>7Q鰙~1w>/k.*)gT$J]U#gv۷Ђ2'iuЭ;0}5m`TƄ4Xޢ)p̭S{Z c,\7e]>E5b@Q@Ʈ9́\ 1_z]oO  .Ci4|]^Ԙx[_Xs.aT1;^5Gg}l|af{>%B":И3eM|]e*Cglla;gSȣTڿIqR7&-Ë9>(wKg}l|a` n1Khje3>oc;d>oݵ g:ڬX=՛0Mx=}fɡiЂӘ4U˾Wu?Ht*?h DUnJD)A4'ꄜ IUta7[ʏ~ K݋{g_Su;MjKKƂ@ct-hcѽ(4T|3\-&u Npu jXZ~i~D[FY]H&bvHl^26 zy_gK°m.'7I[ctQf⋭6n!]koC x'b{ngɲqq w*>=ޓ-8Kss')={ubV0MqDj zN#d}g#/;PNIœ?dvl:;q~v9Ck9j4oZՔ7?-IL d =Wf3|]]^5p#Zt?ղ3Y}E%΋k?J6n.}Vr?ίI*##2A݀V[znn A1ȘSdϭuEXݬs?xvX\r ¤O:U +mb.d6L&K?Aݳ-ZH}bqs`~}U { ? 'QcuA\-OT]muM8q| YLC\KH ,1ص-R3?.ݹ ԤҮ̫g;ݍKw09h [`Znjw1[nnTnT?-I k?P֜z{3y!~ng7$:;/ݻ>ϳ߫5BGSUؑ?+ԛ隺]{@w;c6;o}?(:st6Z-WZ_I?ק-:$Ug'U.$&%:89?G}FwT!e"8=7~s7W[ 5^CI%5^#I%{Ux8uW>of9KfgOM{^:od4 ]{}[^?_b?\G5g܆ܛ[ֱm{?7?b2e6H,ik iB]3Ρ=7U ȫu^@M2*;3IFHy Yk;@{VA!"y c(F3&744>S%:" \Xp/   gXk'TkfPPQL$6<4:?gk#hRI$9Qe{֟uf< .ILL8 Ҵvcfwms|U=T?4@r(@+eDײ}+NO]vU8el8mgгbvpC-gnFC" A<-\|k20:mSm/4c6״kzEOec2׾)u4;6kPì Fݯee;)Ǫ̋r}Ʋ6EϠҢ$ XX?-GڵϮiK]4aՆ*[u?늋z&3kf·s " iMkZl iٿOl=&˟h;۰;]$꫷LMVt:NE}\<6ujY> o8Aܪ~]BL cq,- gV?F~fCٚ=5ӎ솸mkw}+]ޫ*uϪ7S6ierݲN޹9u(h9l2~?H:ٹ>,{ӴV{w{[)?#%#chk1۹l-uovlکq$8Jh&Nw'}Q5ְl$N[7:F׻mnݨ_7de5wث66ZX9}VEߍM} `-o[93cW9.=ZmC?o̫cQmI?k7edlmƶ3s8=6Z83YjB+cYk"wlNݪ4WNMs\IIFԑ'P>E?ѻORƊ69Ǎ~+<*18T(F2ט+ ȬF_H(ɢa X?[&Xx!-|Xx\Ӂko=d)1Ju~0Sc^*> 7BX}M_ᾊf:.zy%~vjǍKoVFf*R Kmv+AR*cfҩd8\!~1$vu$=¦7cn3>fjI)8ȠN-DAu֧UcH3;$)X(ËY>7Q鰙~1w>/k.*)gT$J]U#gv۷Ђ2'iuЭ;0}5m`TƄ4Xޢ)p̭S{Z c,\7e]>E5b@Q@Ʈ9́\ 1_z]oO  .Ci4|]^Ԙx[_Xs.aT1;^5Gg}l|af{>%B":И3eM|]e*Cglla;gSȣTڿIqR7&-Ë9>(wKg}l|a` n1Khje3>oc;d>oݵ g:ڬX=՛0Mx=}fɡiЂӘ4U˾Wu?Ht*?h DUnJD)A4'ꄜ IUta7[ʏ~ K݋{g_Su;MjKKƂ@ct-hcѽ(4T|3\-&u Npu jXZ~i~D[FY]H&bvHl^26 zy_gK°m.'7I[ctQf⋭6n!]koC x'b{ngɲqq w*>=ޓ-8Kss')={ubV0MqDj zN#d}g#/;PNIœ?dvl:;q~v9Ck9j4oZՔ7?-IL d =Wf3|]]^5p#Zt?ղ3Y}E%΋k?J6n.}Vr?ίI*##2A݀V[znn A1ȘSdϭuEXݬs?xvX\r ¤O:U +mb.d6L&K?Aݳ-ZH}bqs`~}U { ? 'QcuA\-OT]muM8q| YLC\KH ,1ص-R3?.ݹ ԤҮ̫g;ݍKw09h [`Znjw1[nnTnT?-I k?P֜z{3y!~ng7$:;/ݻ>ϳ߫5BGSUؑ?+ԛ隺]{@w;c6;o}?(:st6Z-WZ_I?ק-:$Ug'U.$&%:89?G}FwT!e"8=7~s7W[ 5^CI%5^#I%{Ux8uW>of9KfgOM{^:od4 ]{}[^?_b?\G5g܆ܛ[ֱm{?7?b2 peshkov - Fotolia laptop, cup and diary Adobed     ""       ("?   3!1AQa"q2B#$Rb34rC%Scs5&DTdE£t6UeuF'Vfv7GWgw5!1AQaq"2B#R3$brCScs4%&5DTdEU6teuFVfv'7GWgw ?MnCܖPr[-)&!KrJI-{ܒnKr$=nII7%rRnKr$=nII7%r[RPTASܒJb H)nP%6TrR-)&r[RIJP%))&!})CrRO({ܒnJP%%$ܔJRRMJ%3ܔnKrJg)RܒJR)JJI)PܔrJRR)JJg)SJg)J)%*rP䔓r[%%$ܟr$Ȁr riJYHBS$9ɷ(=;B]nBܖ䔗r['ܒnKr$Bܖ䐗r[%$ܖ=$܅>䔒R܇-),({ܒJ[%%$ܟr$JRRIOR܂JR)%3ܞP)II7%*S%$BRSS)nII7%*R JRS9JT%ryC)IIe-r JRRIJP<{ O%3ܔJR}{܂nKr$nKrJg)SIL䔐9-{JI-{rR)%$ܖ9JRRIO(r))&BRSC%$ܖ JRRIJP-)$܇)$rP'r}r܇)JII)nP%$BR$3BSIg)J)! JPK9ORS)$BSJg) yIL)P%$BRR O))*R O))򂙂JyIL)JRR]nC$v*]&.䋔7$J cc%5P7%SII%)CS=SIL䔒R܇)%$ܛr%cVQUa4 HR¡)r-g)SJg)SR)%3ܔJyILַ|޻t x?4u{g}O:?Mv#vZ5kpT/ǿKX-1>`,S.7\͎{7AsGV,?1SU7ЎA rpPZ0PRP(JuO)):J]$ҞRJI%.dH]$R8QNY' )AK)S$eبFϸ%«yU?G6}?FB\*toUn[c }m<* K[cG7 pAjlooU z#\ѠzMKh0ŠԔ'H'IJJI)IBtR<$NtxI<$NJRI'IK$$I%)$$$HIֱXS ڬVY $tI$RNJRI$I$$I)II%)$IJI$R'*$Q/Q{L%#6(ЭQ~3> [NPKt9H]FiIIItI%)$IJI:I)d$I$$H)dIJI$RI%.d)I$*RI$I$$I)I$JRb*.rg9Mk$$&ޢ9oWEB2ˀ*$UEiIIBuTRI$I%,S1@dI&N'NRI$I$$I)I$JRI$I$$I)I$JRI$I$$I)I$JRI$ԦBIdԜ$I8IJ H$'JA+I'IJNJRt ҄%)"rVo*f4 RMICr5I I$TJRtAJN:I^I: PNI$2tR1)%rS49 `%@%5l} NΜ^y?UZط7Wvga&0@ BI$TI%)$IJI$RI$u^[5^_ ՟OAcC(̘fU=&ߨ-Pɤ-m4@ JJet$lL$LE 'AKI'0NI2pmp4铄I A%.Jt$I $$'$)E?*XRFzԒIJ.+?+j?Ό6[eVrΩ%BW:4+CRUƍ*<'9 'O %,'JJR)<% )P'V(O %- O BJZO (IKBxO BJZxO )'"S$/+k|%o;> Ql$IRI$I$$I)I$JRI$I$$I)`=6*Uћg~FP—J+ *Jh%( P)$%,t%)$$$$(IJI$R$$JRI'EK$$I%)3rJk؂QA)rVkUֈQLA:r$HI$JRI$IRI$I%)$IJN:JbTTJZ᪴;BI"Qf\{QY5\x}PTVC^TTJRI$I$I$I)$IJI$R$JRI$I$'I%)$IJI$RI$I%)$IJ**e %"`Tr~ !*I$Mq~ju L\n%Z3E$ڦQBJRI$I$TJK'LMK0D)')$EJI$RI$I%)$IJI$RI$I%)$IJI$RI$I%)$IOըBA9H ƤO %IBIJRp: PO $I$%I$%):d'I$(H,YjUWaID)& % c+0I%.I$I$Rt: \$pT2E%*T+_Leu}4@;?V/ثx1[$I)Wɱ?}hWI',~K3ORݔcϏo7TGebKpuoU]C-.m6-Njr ,RXOŭ?UJ?6}F/͎; t];O!gםTM)Zi\AS^=gH~W;^_Wxd~.#iwW^jw;k<4{Sh,X?MyfuFdd;sBDnun{ȵʂje,F)I4p)IK 2 &NRIRtRS$2t8))hN$NTR䔸N$IQदIB`%/ JyIJLSE$xGӫK,FӫKI%*ӣ-}|?7؛-PAYKDWXF: J<'M)^ҞRRJIZp IKBxI$6:$rrJdR<$VJ% P$$("BIj~M5Uljk;+y!;VyK;)N=)߂?1?roZzt#`}hϽ4醙u G{z'#j} $E TUS! ԫ&IL׾)872^u[eZBOx>tJ_KeBC~ %1 o72\{1ʱ] Z+%2v>8U^tmV+ 0S:r[RTDRIN'QEJg9% X¹#UFYJT7%=jIIz[RD7'%2N)%.iM%2ICrm)"R8rJfCryILM)JJX،P )9 ~cP*=՝$2ֲp?,6{GTuΨۿWA꣎ A. JڐSe KrJf$I([S$7%%$Iz[RD7'ܒ$RNI:I)d钔J2rJdP˓oIIe)BފH{ILPܖ% nIL{rJjU_Y~ !2I$&0l?b属:}rXIN3d╩B o1 ֊R$JRI$*%H I$jY%I)$IJI$RI$I%)$IJI$RI$I%)$IJI$RI$I%?֭ LNIRI%):P PNI%)8I$$xIJN:JRI'I*HI 7+ U&@)& A5% H!Y<$IJI:I)I'A*NxI* 'AJ NVLS12I/BX#@jkѬo?tJI$Х}vz[>LjYxO-Y1,˳]?yo#"˝}u$@#ԞJ3*O]rRjvR](ͩ5*^+O餦DүCTe9 JT/"=\R'$̭֬ALf!yMu}?ݏ]\Nsz?EI4M<*'*j6TcmSRIWcњ䔐'LJT% ҄&!NBJB>l@9RuJJr]UhPv:Hq_ v lVOW6o $z߯Bzps]EOER)PqZ&x1UiVYB h7/JCY°}N-}I,ZaHXӘߦKT}<(0?$I.[(҃cUmLZ[kwі%Jkq:!JlFgvZ`J^%2%1rr-=S=@حf%~4Y^X1YhJTM`gxwWEl %JsBxHñZ#J$\.Z/@ZޜkY~)HXZ1z JEqr-Ju?$V_#=d DXzd6(!mQ7+>r4\v<)REx6\[`IIJԥE)hToj~4%<ͬ@5c?M#?䒤<+Vb0kMM:ORRImTUk*(:fvx~)}ģJA[Ʊ @=`A.RmV{y$jYn5m??I>i /Y?+<}OH%JF.Smը.PYzItCTr3,AMSJL*%.rIIXh{"Q5ͪxT%JstZ! cTHZvۭf|*v$ԽU_ :~%$5T?٫J_f)Rz  &I,.+K MZ_3H'[!ur8)Z,UB oVE )tI%)$IKTJiPY$ aID)$HI$JRI$I$$I)I$JRI$I$$I)I$JRI$I$$I) Hƴ$<$NJRA<$J:PIRI<$$t:PNţUa Xji^ BMICj- =aZ (Y:I% 'IJH'I<&NT$%,PQS1cy,8Ż/hFRI$;]Pۑ^wUW#Szu3!$W-5TK؂ћZZ!ԡX71pG'QC\#O4VRS\UJoҊS'8Eg%"kQO'T hAAL8?"tQ\R.RcWZX[Lt?HY>QBڂ $(8$N+^b)$NKrvjUs-K%9UɊJJQmx0MzgZ?F@ǩS he v$$I)I$JRnSkAӕ"5s]kOB 备M,4pT$ENo_.A>ָ֟Qu7w_^k I$ ^}Qo[-W}{[blHqZ4JS%s .:ޟ1WOR='p~ɭ,#Z$OBGZzҞO~Ynprkq{$B%Zʍ*Il4Cj\IILc9_ FSn;6]"֖Ȅ;$z~-o"jb g&%Mj+C+-A,KQ1;ȁha>wI]$I)I$JRI$I$7;(U]ѡtk#mf%jGkU7l5Ml'IwR/Vzk"I$qc ֲI)I$JRI$I$QPX$vz4kJ^unZ +[-T!dT~H*I)}7Ь]h#I$RI$I%)b\Ox- +m,v))Onb DWE[>^IɿAJI$RI$I%0ݯFf3em))ǪVV]v%q>!XMK&qAee)V[BI$Tmc>%fT3_Y؁Kǫ9aeIt+PSI'!g `ncF]e mM%0f8{$RI$I%)S{*Jpia+5(WgX0PKǣ,mVT )q6j]-g=l ӐI%)$IJI$Rl&e7]ث)$1侻9-[Jw%4I%9amJnu#ao7\oלEiok%ָ'0:]oſQawcjwלn[]zR5;oڼЋwN_AGgz"J}=%O 'Gw1\OBI$}k1.?pw?[仿WZh)K´O_/YUuzhOfI)P^EM/A^yQoS-!ŨD.7 im?I}'^ RWI$TzXSj7Tut wyvuF}IvhƠJ[fUӹ2JKUzkZT-W+UVWұ3w..6ܮ4@'D I'JR1CxhNSu_JvE?yߚygoۜ~?*z Wf}? *ίya֪L&R7$j-xWqu ~-.6֥%jz¬+CQpծXqwn3Oҫ $EZV9-{ǵvͫVT4TښBCKܲZ5-ƕ0ŠRNJZNJRIIK(MEȩj|#nCϟr!I$,/?Gc#7Sb-UqT*" W>; J@¯mryvxZLL"5$3Ծ2YϤ Lc?SnZKgu܇jl|Xӫ.ď^p~Q h#]RVаά[C7VtΣgLZZtsy*10\ȧ! N褒Jy<?EU.,bf]g$뤒IRI*ٵ싌1OE)-6rI6_ Z4=պGWl;jGMuwז϶GESڇTw\iDn:V06x{bn0qopjkuna!Â9Zy絍۹%ji\wIԣ&RSs_5k)VpBI$Gu|nxhΏn:XnqJÉ"<\ɨISH%5\RLŋNƒ?uZ"5WvmfX9HvI$TI%)Pkisߺ5w;?ӼL\\KJ z~Vqn ا.wArMOIObӘR#/;˅{ّ[m\*I$p_ꕕrri>XASU ,VCJw|BXD-BI"c"ġg뉊lz讛jaZ?;$rJ$:$'U6~ EsƟ?5[e=#;V<**iDJ,TT]?&q ]]+Uy]'վdczw+SҤHK4 }{u6bJjQr]ա]nZỏ',Jƈ.I" eeՇYw)kay֯=}Rwi[١%;][g^ϻ\_o{TY\ PJFu t;5I$SN?uCuYWZqPS(YxRޭ!VR$JRI$*S*M* S aMAa8!I$*RI$I$$I)I$JRI$I $I)I$JRI$I$$I)I$JщM d&LcY$<$PIKBt$xO ILR(JRBP'- <$)bR65 U0#B% Ї ehO BO :% )hO $'J% 9 ) ¯bSvx%[b4 ʕ*YX:nKG>7- 1ջ%>+HZ8RE9G^Q7 RZj! CpIO[g >.Uq8X2p*>g_;fU;J^%xwCw?k?k+k2-%jztI)ygU/S^OՏC':&L2P*(Ɋ}A-]T7* R//&ʖ$RGe>u@ZxfㅩeMBƠR27xB \%wjXuBI$crW3өցb$zd7gcK3r~EI~5z\OL{F5םMY\P4)x[aB sf:uҒpek]4XHI$roUpX%$ޭj}__^+Zuzu=I$B׺g-46{ئ5@RȄ;I$zA-Յo"[8lc&%YSFt&lq4mI= YZ2.keh. BI%>R:fg?wEޛ?wEzzHR:daw%Jxo_`_$):~Gji]gՇZ0w5sZ7?I*RI$TuL+<[4Nk\@:mze|a1oYĒI9 \Oeiow?g|]^wRdz?M*~1Z u#\Yf:Jsۊe(R$?QuPM(6VEOZ; E8!I$J|y.e>oCCis;%IOM qWYB*sˇkI*В$,go=(]kic~h.?~j9IOY~zj_SԪyF4+%9/]k2>̕ 1տ{Nj!D)I$PK.x=ߕw ޡh71ޮ5,g+r g> \> D($E9"[\.B;eW?CXSI'!K60ƬP}?oԜյwSEkFeJjVX4+-%9NUIЃ ЩBJz\,˿xIr:bq*RW iFio!%<65B6;օV&}wʵWAַ>媈BI$T_\ b4+wBUrqɲqQΊ%^KM)U#YB%8c*ŎhnYB}12MM~p2躳V(RI$<kꜬЫgM5NVhA-~aѫHlH'[!ur)Z,UBIoVE)tI%)$EKT iPbI mSPjpZI)$IJI$RI$I)$IJI$RI$I%)$$LJRI$I$rB&š<% %- P:xIL@Nt%- BJc pV<'%- Bt JԈ Qڂ>3Bi^6J;"NXV<'P B'<'NJX''t$xU ۂ%=kl%P?[lp/kRI>eǧ}={.ww[1sX7khrdU*49]&6Tڑj j-1 J61>PJ6!.]mQcYJ~mT~TAOdI)[PWaPɲRGS]?mN(R/&ʖQ^imԊ7Zfc$YIqwcyKu2I ֧@_^*ZuztI$ZXXꃧdC[cXzObJvI$2kIڂ;8}/5t=8=?}oZjv;K@<;V;3f%F״ C0ov+}V# RSw6:+=-*I$RT5850A{AMܛO?q$IScU{IkaSm%SzoI/ڸ=$ITKzoI%6U?kIMrjȵka֌r[Si{_!u'-luūCSݩZjPVZK$$I$$I)J.RQr*kZ%?[PCI'K X_\ߒ*y|E:b[ Lgm%;$zH9\zJNkn7$uj*=$ITOS=_$I*1?W{I~O_$JL?o=$ITKzoI%&e?yv}Ofk'c:.:) -ϫJσ[_W:π $IR^ο5N^<~k꜁RLZֶ5j#V3PKfT-) IMWV§pIIH;_TzWwI>KCu[8Uqo 5Ξ=j*@j[QBԩVK!)ҊȌ??"*z|[Tղ|[TԔ8ZVVEJЩFAZvԧ۷!?7LyH)I$ХuQ?ZF߈bIq³MJVs~!tkoo.8($E9"A"J[zPV,֯AĔ裸IRFyZoB TZjjj[T֭6Z);Zv5S)/Dnoക!WӂI"ͩrSu%]꾮wbXV4x: I$˩ Sz#+G&ƭhZ!%%ejF6$7ִ %/۴T:M{Xxȯ)$IOgM5NVhU+4p[CUsU I$ur'[!S(YxRޭ!VR$JRI$(nD(n@1)djS S jI$I%)$IJI$RI$I%)$IJI2I)t$I$$I)I$JRI$! BLZ')'I BP BIY%(JRН:PO R(O IKBP'- BI)`8)‹ICvr3P+6V!VԖb aZxH'(O JH)hO JY(O R7+` duF8<4"A^osSKzGU|ԑ=)$zW3ݝ;[?1ܻ:zSY$߁H5qe-pFE)c%SvؚИ0r})b؋*)%kVԱ]QU\.P2xﮫzs6%8$GT7RI%"GuN^GuNMHVB+4ի7V;G;BeA?cD!Hy"TDSΡض4sZ~J1[\: yҋzBri\emcUS+I?Int_W#?FE_  ۓU2X=fwI$9}kstDrTLjp0A]]#c֨E?i$9TXTM- mLKvPNר K{-wsl:?9tΡIWI$~qzpo/zŭ~FucW7V;߻Kىf-Z [U15MVb `'Ֆ֥$D֮zSI RBƩXk~ڒS]t҉]JU Xѥ4֮Ĕ $I$I%)$IJQrIMkPj|#I= X\?ߖ7Sb-u1jqa*l 6-!N˽Z@\OZ}y9XDnг&54ZD{`VkjWo%wc?N%lFkejة/I%4j&x֬bT9=Ԕz*l[`FRJ]HҬ1k}_>ևC>SI'!K3/C^{69 Z'k㦥R^a)I$S\zrJOҾ*=+;pBI$T^0n`LnV s*88I K!]zzJugGEBeH,_{-jYZ[TԊC-UqSPVh Vϟ7SZI$.6GKvN(-@2ş+MJF}6BW2Ϧ߈]21QRI$_?s_?s.kWHwbɯ?; I$P˾\Y.Iq 'k&Ш+-UVZS\zz*OҾG}[+ I$SU+TԻV,_@X.$H~`|\eJ#apI]ˎuaZiC?yZTbZi:mrrUPS;\gA%cU!~D)WXgEI$)$IOgM5NVhVkꜬjCUs lH'[!ur;XR(A-Bh%.I$$I)bB &NW3j"QpZI)$IJI$RI$I%)$$$I)I$JRI$I$$I)I$JRI$9 BhQ-Y<% ,xNIZtR'JRP:JZPRД'𒖄%- 8)+P3f (b aZxHI<'%- S<'' %15HJԱ4dYsoÚgqUmT7Wiwk9VoI{5aM]uY v柼zSa$NR| |G_S}O3p*oϢ8|HjM xJmǖp]rHp'Zoy}!' 10+\yqYI8DZIEk2I$SKuw_[?仿WZlխN6ԽfVBK$JE^w[bE^=@ŷ؛-iXvهko{LՆԢϡ^_UX4{|Ah8Vsvsu˿ͯ6uGCKkHl$IqzH'&HW5.`u>7BB BT)Yk1,n:.gW?!UKr]HRmKt};"ߣ[f*ki ~u^IC4Zt _tsQ.E EkjSQMZ*٩PVXK60$LI$R\ֵ K>ȶaIg9i$R!KX\?ߒ*ylE0LKy'J椔}?'C?[ȭitFF(.I$wRkvB󾦶Kݷ6.$蹘S};h仔c1mcjo-<\˩I*CzÆV0@*rG?Ec6:5X`H" j JBjF$$IRƿЗoS*nb-|u:j[+ UV$RHoTW,TII_wG}Y^O!I$*|[*%? 8Tq"OR\rzJugGEBeHK#OꚵG֟=5"[8lb%աY*+C7SZ7SZI$ХFj#XB֚MӮaMtbI99"C"iK~?;dֵPV  $z.(]eޮ Y؋_db-|tԺ+-UVXT[zrHltyQ_A x I$ST BHZT55)6\b3Nݣi=:J-pp*IRNkvZ8?nf7w 6U[t8<#-?I*M ;2|;+$lRIJI$SyoS8Uƿ mOW\t75B)$*rgb/o\(AN"ԡeJKzPZ(AKI)I$JX 8M\ ij$*RI$I$$I)I$%)$IJI$RI$I%)$IJI$RI$I%?մBhRLBО)(N %P𒖄Jt<$% JRt(IJNtO )d P)@yEji\f  "X bhR BJX:JZ<''!<"<$xA+BD)BP9+d!)ͶzGK1\?ZeIGLn NqNזYIC,>cmA>XX_\p2`XK4[=l}w}NoNE>Б$IJI$RI$vw n;._}f 6vͳ@}OctLGFw#gР;*Yܧnq{$(Rd4ԯRjhW S:Vi1]ZwY`j*֐*zj, ɳʉk-C3[_AJ%*ؽG,M5@gVSФQ}nyx )b@tcgl5 L,?12T}d8^`Jk{޷NWsScQUֱk! :tISr*=$k䓭'ס4Ss1}mʣ*618ݿQtLEԪb81-8uNa t*p,'Ԫ]IS=Kv,3$zAq34OH+[$*RI$1YV-[bG7&p ~qꝆΙQ<ן<:\I:{}`v8=9> zTOڸ=$0{Ii}j-]kÛ~9lOb)2I jcRJ+$9'R`} 7K$g1X5$}ulM_.GUZw_!Īm(Z]jJ3m$~eID)0YYH(H?ӳ}tGbn䔠e['joI/x5$~Ҿ}#g[Hs^ YMXYMKu%0 yBdoO{5iMWM)nꎽM\յ*>8=KM?yige7cg]kӭ ĒI)$IJIE +7//6ow=EK?S=_٣fl#َ=&f0I<)uϳ5} Z451Mʕ*e% N'IJL))dI%):dRRL׵ K>!cu?B ̠sc? "']O5$QU{ p?<+V0Yխ\vPFڣPF A-KYvp,buR};6m֪a{O;P,_Xznvc`QC$I%)$IJIU꘸X֟ zaqh?I).ܬrOF=,;ov];] *q)YC@sQ{[& t@9lg7 a󚞆s[rh!\ RW,f-:JP+AKI)KZВwCV {Vn8*ǩbn~O_#j| U\cu*qgq%:3"d9#9z'5]Y{.cKtS5kZjb[ԫ!Ժo=Gͮ^@{ZI9ADaCepq ~#\Vnmai"28jL1گ*1\cSR{~!t˜h|B9tlgIW9Ûk8&NCMUXECVlrkTgiMi)j#PV* bmW3-AE=zK'5Z}'+۟5Ƕ5NC$I%)$^nq%2UsjqbZqm? LK>[Fjw>[:T4ںY} ik$v?W{I6RUibxEO/S%Vc#RԲ ]/Nς [y25h w!H;sc? hcXGعXz8?MG~* Q(c_IY)TeJұf9DJ1Q[uҭJebtš]*lILv t:JRbLdR&I%.S))«kU9w**]" 㩲qԛQT-XU0ζƢ9ʸB˩Tn[OU{(INRfanY?4s7?wթ?oS~*F{O4Uks2^\aZ*C+S)Ee qQRJ-xtBJU5MjUj DZk'%97ԩBٲUB(rjW:#(ILhUPVԒAL II$@+ %92V~EKbJu))P=ui)kJbU+GU5YhCca,ԔYRlUT:B4'm !5+FUII+j0 ,j$ o W\,b*rU+([*I_]*JJaMjXRZցb "P Yz !UGm̥%#mijȭ9$ԫ>]BHr BJcEp:eI)XBBIK9'йVVe%8DPBaRR(VkJbSؒ6*JujJpU59?$-1V5:Z I`;53P*6l<+n$se[*qR4[JqփqQ[߳&8\bT dVc-1dTժrYB;)IHEjV RJrVu at涅jUJJ^]u 4"JRt$LJQBr)BrAH&)bSlE jI$TLI$$I)I$JRI$I $I)I$JRIIK$IIKH׼S)B`I'RI<'xH𒖄)$%-xI:JT% 'IJJPE(LKXʘ@3j=h-"I8 '%,p)e(I?))dRtJX'JBxI8 )hLBP(:xP4&m BZISq:zIZ#Hc+SLPZ$J3kE R IL@P<'RИNCuj&-EM7RiWShOu{HT(SB!ZJjTd1>ĔRU$R ILZ0PQ-DJS]BuJjb*h:3B5Sq:$*EM!(VJB)z*Э>ĔSUlIMaRkG؜5%" O5>Ԕ@ԭ&ؒ *Z6J 0F5HIF5-VCtA+#$VN +E%iT}t7F֎+N5AILv"PΩ ԫ%ugiMI)8ɾ̴}c] SU"`V6VH5H @$tI%,S'LI$)I$IKZ )C5+E"RziRV))LR1 IBJDXՈM%4JZ@-#R߳'GHRةLV͡# ԃRSL5HS11 )JjĔTR>ĔEkR R%.I%.dREHIH +VC{SuHsr\2z !4NbR1 իE%)$*V%%!mhjj )@)BA$nl ԭ$ՍR&5L5>j RSQ(Jbm)*Smh$a#%5jh6ĔjăR6N )pR IJB:dũ)jL*VlIHR3XkT:JbZ#BP+T; 3R'CN*EM&7[)SPPWi4UM/M5H`-)čhSmIMSR&STRڕS8 PtIJI$RI$R LSX؈$*RI$I$$I)I$JRI$:dI%)$IJI$RI$I%)$IO!4)dxJxI<$$ (NJZHJRO BJQNH$Bg 3Ɖ%TƒS mG ԖOPDz"hN R'%- BxN8J'O )hNxIJ$AJ PR)BIR% I)P'O )Զ )pR0i%0إ:t'"IRI:JRPI)P'I%- mN1ږ$)$J BpJZIRОI%)$R(NJc mRNmKjHSILa<'I%*$<$*$(NJX^ЬZl!;BE&6)Vҭ5I4'I9 B[SILa<'I%*BPI)PILvI$j[TILCR SI,xI:JZJRI$:d2 Y$d$I2H)ItT'A:*T% $I2tI)$IK% ILvI$j}I$;SRI%1$'LJRI$ :I)hJI)I$.dRI%)AME)pUV-@*). +U*VF*)$ԋT$RBtRД$JT% $2I)t$$JZRД$%- BIRКIKBP$'I$J:I)P$JRI$I$M IJ$%P2t$hJILvH'ILSR詈j}Ӥ(NJT% I BP$TJФJZ"BI$I$$I)I$JQAz)BziHFR pDBb*xZTI"$I)I$JRI$I$$dI%)$$L ]$$$HI$I$S!4'H*O (IKBxN[e%,Sx%,O )P'8)dIK$IJxI%(J?#U0TE!Uv o  -XӀI<'!%,NR$:A:JPNNNN&N$RJ\$t'tI%.2I)tt铢$I)tI%):dR$J]$EJI$R$J]$IKI)I'IJI$RNI$'L%)$EJN$I$I$RN2tI%(+%V )H$Rjsbi*MItI9 NI)I$JRtIJI$RN2I)tI%.I$'L)$IJI$R$)1NTJIXNɥ)A+QI%2D$P' !H"tB$*RI$I2I)t$I$RI$I%)$IJI$RI$LJS$LI)I$JRIIK$LQruP K&jQHEd֮$RI$I%)$IJI$RI$I%)$IJI:I)I$JRI$I$$I)I$I$RI$I%,I $I)I$JRI$I$R$N:*RtIKHtI%)$IK:HRI$NI$$HI$JRI$I$$I)g 4#)8MJf"&"$EJI$RI$LI2I)I$JRdIJI$RI$I%)$IJI$RI$! QP xI<$(O SOI(IKBP BJb:xIT$IK$ %)3ƊP$ƩO8I,±RBPILޢHX'(N Ӥ҄NNNI)IA8 )I$J]$A%.0N)I'IKI)t铢$tIKI)tI.dJ$I2tEKI)t'IK'IJN'IJN:*RI$$)tI%)$IKI)I$*]$IK:JRI'IJN:JRI$Uk\ 5͊Uҭ5ItI9 N:JRt$I$I%):I$'L%):d%I$JRI$I$BI$dJXNTRJD1MRJbSJ e)JH( PN:(]:dI$JRI$I$$I)I$JRI$I$$I)I$JRI$dRI%)$IJI2I)I$JRI&IK:SV⫔{@*). T1ZI$ZI%)$IJI$RI$I%)$IJI$)I$JRI$$RI$I%,$RI$I%)$IJL2 RI&IJI$RI2I]:tu)IpN:*]$IKHI'IJI$BNI"$I)I$I2t'IJI2tI%)$IK)MLS5)؈TI$PI%)$$$I)I$JRI&IJI$RI2J]$$$JT$L$)$IOׄȸNI]:P$' $U IBHRp  BtR$ */)hH&NԔ*UJG'&I '$!P BtxH'IKBxH% )I'BPW?Ub;?]G&j^R?ソQ/wǻMygԽVAO=i=?k=F7*Stw_w-* }KqCJ/.* }GqOǻ^Z* }CwNw8}ɯ0I*i0kDソ5I!;>ӛ5{<C&IFe>ǻM/xp?=kɋ{>ǻgM/x?={?Tֿ҉Łq^JTǻM7ǻgM/x0?={kɒJY{={t }cq{E%;)x0?=?iq^LT<8?4ɯ%I* }o<w_{ג$>&ǻM?<_5i#J}sL/w_a{ב)y0=?i˅q^HTɧǓ C&$O˅qK\/wT>.ǻM/yp=?kRJ<_4ɯ%I*S_a{Ǔ C&$OɅqKL/wT>.ǷM/y0=?kRJ<_4ɯ&I*S?a{Ǔ C&$ODžqK&ǻM/x=?kɒJ?Nc]&1^R\!OŅqK,/ot>ǻM/x=?kӥJ}_/wxp=?kJ<8_?4ɯ(ISa{ǃ C&$qOǷMyBIRWǃ C&<_5 %J}_ /ɥ ה'J<8_?4ɯ)I K{ӷp`h^PT?_EågNEeǶ2݋RJ*ۚ e=(~i;mY]U6tg1N)ŎF䢦I$JRI$I$$I)IIJL2 RI&I*I$)t'IKQNS$0)RB'EJN$I$I$RI$I$I$$I)I$JRI$I$'LJQ@ؚRb֊ҺIE I%)$IJI$)t$I &I$LWI2I)t$2I)t'IK$NRTY' )$NBJ]8L H)t铄I2tI J'IJN'IKJj?)"V*UڬԂD)92HRPN JR'IJN:HRI'IK'I)IJH$($I!II%):dR$%)$IKLJ]$RRI$I$I!t'IJN:JRtRI%.I$I:JRtRNIRI:JYdiW3uowgU}sl'+?ұ{M5R]+LُOz_h=IMJ'I%,$R'L:d$I2 RRL2I)N%2N.E:*]:dB$R$N$TI$I)I$I2Ht$I2I)I$I2tI%, ܁b!H&)ښ=h5ഩ$E I$)I$JRI$I$$ddI%)$IJI2H)t$I$R&I%?% )UYJyQ%(JpRS Sʌ8Q!IFSM䔤RiJRS dS%8Q))HfYH)3Bw$.d &O))ttIKI2yIJNS$I *RtBI%.IRI$I'L)$IK:HRI$I J]$$JRtEJN'铤' tI$%)$IJNHOI8lg{׃;mXc??חI$IRI$I$$I)I$JRI$I$$I!ILTtBI2IRtIJI$RI$I%)$IJI$RI$I%)$IJI$RI$I%)$IJI$RI$I%)$IJI$RI$I%7zgQ m67m{ggvSjޭ;co{K}KlzA>j+?^TRI$I%)$$$8IJI$RI$I%)$IJI$R$JRI$I$$tII*L$I$I$$I)I$JRI$I$$I)t'IJI$R&NI$$I)I$I2t铠$:JR~3Ӻ$ew sUXixKnS'$ecWp8oVI$I)I$JY2t)2t)b:dI)I'A+)S$!8)!t:*^RM)*]:tuI2tILJ])I$I%)$IJI$RI$JRRI%)#9 B"Rjb&.lVE i]$"$TI$$$dIJI$)I$.$RJRIJI2I)t$N$TIIOҔ**IN Y ILO*SदryILN JdRuSJd&:$ΩJVbYYL N:& !A0I%2N tuO))I2I)t)BSM).L$):d%.2I)tIKI)tI):d)I$J]$E N:JRtR:A$$$RNJRA:I)II):I$'I$$2tT۸ͥbe5TI$nel Χhlm~lz^ %KI$I xwѱѴ]?_Ӧ)I$I$R)$)AK&N$1H()II$RSӦI%2JS$'QNN2$$$T$$dR$*RIJI)I$I$$J]$RI$,GrbiPBS;S6+F5 ZI)$$$I)I$%.dRI$$$RI4L ]$R&I%.dS׹>=*̉AN  TAܤN>Iw'9Kr J !'ܒnO({Jf r=%$ܖ9N H g9"/:㪛JEIUFb[*2PܒTHSʀ)Jt9O))pTNdS)%.D3FRI iz3KXCu0/`$8i#uvi\E6qcvKw}/сV8 w22w3A;SIHHqQXi ș}K-ݬi9%2N͵Z`H͎.-bavt-< Yr۸jKt?HSfߡ] $Κq[i²{ _~S k$V۲\K ?66.k-ȏoexWEPaƉW%k\dO_Բa]sc f@auKn =R ^6fhC==yyp9hݷ˰bL}^[!'kgz}\th0Li5[x{=::n.fY[ 塉r,ǧs<,ll߯&|k%`6^N@_rQ/6{CķAUln$9G.mx h]0 ~T1Ɂu:msZb.g Vkd_x}Ts4`$ RSkO%['fItLLu%6?kd_x} 7zOl2HiwW>lLLA?D ~Z_{uNKy;4ojJM['om\;65]F;c} Ao%& ~U'Q'HH*SgO%['{(=8 E9ư0ZCZvxjTkd9H>)5$$lpKO*cs+isM۶A1Jm~kdu/kۡ|Jm~kdZG  )[' kJlkd+y0'ɋHԂx}/># U>q$]}α>.1*Vkd_?x}<8N)[# t: ~p1HLĶƹi w߱Eߵ?x}/>>cCd ~w_avB:6kd~_?x}TkKku'@~3\DIkd~_?x}V_૜kE~i14&o:qd)M># ~pTՑӲIL<7^O_|Gc7}C,pACJ>lQ,0AHxIM># ~pUEO&LltnIM# ~pUHO>ciR_Սe}ozc![#}/# Ʊ}mHIإvK_eMK+DੑKsO%['4SsO%['4SoO%['DSoO%['DSoO%['}TI%6kd%['}TI%6kd_x}TI%6kd_x}TI%6kd_2$}TI%6kd"7f@T@Ũ6n;e8˝$!;[9G HSoO)4TS|pHu;੤|G I)_' I)_'?8}SI%>.Ζ춲Xc yvśOkCKGI$A$J}\Ș/]:?_Ӧ)I$J]$$'L$Rɓ)%dI$VI:H)I'IJN:JRt"ӦI$/)er}[I)e>-nI w'܅)$ɜ7$hQJ:RfbPJw ɬrrHH pP'%<$ K)C>TCJ@J}) 9YQp?YӞo֫ٲ=Djhi2cth{/+tks.V:׸xn-Z6" ā#HG88qv1mCYwSg7 0-ScXAeulo?ei㱭l~~'ѱ͢9hg[Ɠqsz{?vs.uDƓ< ^wTac49w3Q9zOeĞ@ltrJzHplǨYcӺ鲭NUIշ^fb;Žc;^!'fVD{% FXV'Wv-Lck =[ tpr0t 1tX4A8_?#W}ht̀p;k9vTf#OU0R$u=-n?7WCz]q:js6M힞FhG`(.$I{7iFOU&Zy'h%?rKϳ{~R=q<7Q2i` 5}&ڭ/9H\}GDKp7 ׸(kD%LݻoG :u& TvK1ipenKnbYy,Z JXdic\O35D"۫ eBkdž{Ϣ_2qΎm۶?Wqb=}O?IwO7'YwH{ݲl9gүI6Uܯ1 T(.-;`vzߣk?]^얺sZfUI;uwT6vGO͟ ҳd]eV\Xku/ ,\I%Y9͏!qzY^[W ,_-E?Y?Ю}$e}cߊʅluƐ㹮& WIOhKp[ (~EJuuuKD 疗sU? WKAY$ANA9>,huP5l{^Ѹ׳zGKxkt8.f_gQ8#C[gSI 7k: <8H ?G?T nk*%i[8sv}/ZY 4 \:]fSٲw+I+OݹԟUu8jG=6XVq.mNӎFߥ@I+uζd}n2k"k{7IyvOo?U$Yz _6ց>\wWgSgݓK)-7R{F$6"(ݰ:cp}ښO=$X@.uXZ\=CWN67wayhͯ swO~uIԿ?:zaΨVAۥv:?I;GTpcq?qvޫF}վAFnms 5w62Qd\!KQu4TH7GYmlYi $wv)heu+2%mm[?״:gwN{6Yw?GrI;];v"wq}+:4wD74 kw;!.c{@kq1_^K:}b}gsk?g_*lTְEs&}l=wmzk%$x彫:ϵ{Aklto[oѪ0bf6;YjۿrDHp=W\]WwѵGgGK4`8}?X%$pV{cTRI5rI$I%)$IJI$RI$I)$IJI$RI$I)$IJI$RI$I%)$IK$$I$I$ޮ]?Z^w)ׅjI$JJ}]Ș/]:?_&)t$I$RI$I&AJLES'L$JI$铤$Ht$I2I)tRBE:*dIK$$LJ]$J*]$IK$IIKI)t'IK9WXrj! N;Jsf`R8RI$)$IJI$RLJ]2I$&I$$PR%)J$RIJNRI LJ]$$iJ{(J@N)$8(` PO))J%$ܟrR܅)JIK>9Hrp0SN:(N: dZP(H%iG(ՔԤyPT%>䔐9<S!JyIIw)nBO$ܜ0S H p)O)),CKrHH yCE5_d3abI$ѱKZc>+n+ FhIeOx"|DXѥ?XփcĐ+GAOB?fq%/uxVΒ8 vQbƛWMso=O]?GX.ɢSd\ջ{/웽eoaw~ Z|{Lߋ+I@ƸXu6b=K3ή{^ˉ=j_U>ed[C/.h.͋'m  XV[c[mx;?ڞsXǯ1/ko=_OҼ=R G#׶dխg`ѕs6 έ{BMQظu{R[c[Mhs~̏[I)fGLm׋6Kk{=781&/_4N>Ew&5Ǵ\_e]~R0ٗ{Ů __Ѥ1%{6U{=V=޵Kg.-o~?[eA%ϳn M%];mm.J:5TECuM:K?EK2Aks{q;j?BJVȗ4l7Կ+o?KJJyԖXãyGuqgS^MkVokg;{~$2&8?_Tɺ|kc-mݿ~z~涫kEvCFV7?s?׿:ͮ]f~5߳ڏ쾠vmsMckvn}&Nk'Ex{}Z;33?o5W7}u 9]>齟P2j/{cV5{O+[ax.+]u>zLIL >σZG+)+7M}# K..kKC nm?KmH`',m_[}6Mj,{xAx>?=~Go& EsZWmp/;t%_*= 7$Y`sKy8[{Wfolv7mK2>sc^9{qvB?M5k3tWzX`H.+&Tsņl~_]g=INWe`۴k͕?_OBK}G7^'g3%nOQɯ9 [ 3w{lWkщPO)HƴzWTR vS`52׿cMkY+VԾe.v8w}/oRIR~}ׇ@t_S+ۿ}~\9MS{~?C.gU񽶚`m_q\]03=`sO'e]~u E[anvݺʽo[~,ޟVu?sɹhu/ݿ ]L9 + sKT: -ȳ6i]XVr0+*/pczsnfe?VX,~X zl665X7J|~henȰ4v}oVkmwHk\ZLIv1,k&Do};?D~]7Q[ay']P[f3(49က mmn{?T=y=6Y a{wH.fSsYLӺ^~cC wӿ6zv3Jitģ*8p1s=?QYo ca?5rh܋ p\C={6zwWү床U4p`qowLf~ֺZl5wWSS2ZH_uoس;5ċx?۵S7彅'71=KIsAh$rJFX?ř_R/-.;#y;/(R6}nsYUWz>?DLO9ݐV]{ gS*-n}MEv~wM?zlR4lȦ)갘IknɭϽ,k9Ű۾r2 [pg~V8LNVϨ]okkf%.r 0-~sIo+"?] a=ͻ6e~Jv%s*\X@[ڽ/OB"24{ٳeڻwX85&&=/L/S<$šX6l/QٌDZ7M.c~_V\ wv5_} wS*۷4$=9}/ZY.մRSZYEu{}:Y]oGgzV][.K~S{ޒ<Զu{ZN3gf;}zs ^[Zِ1lEMqYۺZ׼oW"Ng0X$rw۳~_Z"^OP!ǻg}OYW# ;41q>-"I*[?_]"uN=00+fFd=%Qkili :mҵޏ٪֒Hsq;n>K=:[fYښnQ[6~e~ZU`!ZSZ?o'3~x}qkȬ~9H)m=94ɾ[_9EOe_XKL6{ݹV~=+͗ߴw׳OA1dsmuRKc6C*kEnÛϳ1 n/W:졔Q.ikGw}mmPvNS﹀9.sYW X\E+O:Y2᱌emcbڿXK[ۓlkk~vwV3!t޳Cjw{XHG̗{V~F饹#m@C 2V?[gR q35#z~VF=\ژ%&-~c=?֞m,emc!i:_c45KeFqۄnkZ7S$KkMQ8oCOːݬK63v5Yank\R>ܝcFCԍ-ikT=ASk 8He^jx7R÷Lm *h&7 CDԬw(װs.{cl$O;=A}d4vfCc hy%IX=i;:~R%1II(IV%(JS(IV%(JUIJlRR%[$lRRLdIV%$UII$lRRI%[IV%$UII$lRRI%[IV%$UII$lRRI%[IV%$UII$lRNJNJNJNJNJNJNJNS$$HI$JRI$I $I)I$JRI$:d ^8 n]?ZAAt$WH$IO.sDL*RI$$R'L9LRJɊt,9LIJI$I$I)I$JRI$TI$I$I$I$Ҕ$RdB&RSJ]$$ӨIKp$T$ )NUmV\Z$;TJv6G#B¤"$iI I$)t%))t&)%E)I2JRd &I2 ]2IR&O))t)C$$$$ԪIveI$pS'IKpTP<$ZxR-4S<%i'Rڔ$Y31%jfFE3j33jXچj$P*IN!$"'J0 A$RB@) IKpRP'I+RBtJP"% NJZ$$1J Rӧ )dBPN8IJI$%):d%).RI. tҒHdI$p'IK:JRtR$'L>M5?c5?㕦%$I%KwTd.kp{۹fOFlG^Wa5LD'txUO+?~D3LNݥճ`M/}oڸ!fƸԃtv*}u4IhƦd [ is__K({}NI* `UYۓG9?C~͟eo`stvmZTkr-M{ikm ~_r[[[ƛ}[=[ޥڥk9iƹۋ-}w2qN+4:^X7bvCݮg*kwWg?V:Vb1Ie;i+k˿$ϥX U{Վ ͖uoa u^ߙ»Ŭ!Nycm;w;]5bmx` 06CV6V]hzˇS' y9$D3u^ZgBrZeۻoKO$fZ[iwZ=z>l._[{÷h$[OI7V[շcC`\ϧ~-LK譧v,f[*Iu[[?G׮úpk+g1%;9{6Ax k;*V3~?|jr5yk;۔g+kg.M]&zl4sI~ݙC5 nph-c27ҳԷSO/vA{ˋŶm;}&>F^GL7t9gmwmVo,4яSYc񧽻*Cims=:`n+ {w9u-ew@߮ -kQF}UY?S/'ӱƛ*=oZ=ro}moiS}Բ2ې ӽqlG[Se .~WvT_k5Ȁ?hf,VW`lp>׳sX)'u>܆6zEX;?o5[_vY {VOWSuqcŏu>3oo?,ᕚ`} k}jtMX3}~ 0=F϶Uo_Rn}QX\o'%G֊2[_±Y*;#0ݹDԷ?dn1Y-ݹ?6Fz+s+Vp j߶l_):}Bjc M\N?9?UXC\!a?e{?ccQ]MCZ6S)g:KoD`c!u&.6[8 KIY*Eh$Mm_[MiHi[{g!enK7WO'RϾCwk?{W|vE-/is\`/?6h-/xzdʉ!궷m1OUʧh{?r?=E BjYiƮT]%M]e޿i'dq9CkֿKv;k?K(IOC[̊D1=?+?[jW9nݻv/xُͬwrpXֆ8dnM IL%A$r[IL˒ܠJg- ${ܠJg)JI)S)JTRIL)QI%2E$RS)JTRIL)QI%2E$RS)JTRIL)QI%2E$RS)JTRIL)QI%2E$RS)JTRIL)QI%2E$RS)JTRIL)QI%2E %%2)I$$EJI$RI$I%)$IJI$RI$ ޮ]?Z^w)ׅ I$JJ}\ȔWt-/]Bb2tI)2tRɓ%d:b)AJL2IRI$I"I$I%)$RI$I$I$'LJ]$RI$IKIEK:J]$$IC$'IJrjZ$*MQ)ڢ\۩X HL$(Y2t$2IRd.)LLJIRdA*LdLI2I)yNJd2JI)կ NBLSڜ5%( ` Z JL@O {SBYH$jV(N!i!-48j&T !3ƉZ3ZЍZAk"V1 E:V'JV )`-K  PLNAI$*M R$$($<$tR2HxH"BP )BP$- )&IK$I+RuK"+S SyIt%j]:`"A:tN:HRt:*RtI)A:A<$N&gq˱gq I$~eL/[ٳ|I$,\Hwn~ѫm[hO:s?'N3d[QѮ45xw͛GpsZ~GOn6=ּ~Gz}?gEY{ր[%{=?~Fjӆr[|Z=ήK[?3eJ>Fb_ksZgn+s-v?VknpCgGK˫/F +:qմ4nc v{?MIBlq{OCs/ -5 醻knV=C ǩY~Oެt\u /?{'sYؒudzVW#Uc;{?=Y]Wc,v譮}ҷꍡy|?dM}f)6_OLWhivdz+7e O~]{^.>?׳<ŶX2b[VUnJoIz$K ˙Ē{,kcClp}gEЧ*mXe̶C^NvM [_c,&`E#lvW&kmsg2}f9ߣ߉V$P>;-c˯!c-7m̶zUm2,Ceqm~}JsѲ\G: ^ZXA;\Hl~VXctd Ph~g}_[E_*MސtKclgWcHgռVZU};ң!zY =saȰڬcX{z߬!8汛v%WS=\߶]ֲYaYSc8' wlj|z罖:HԢ\zU5vGӭg_Rn{6;ݹ7=GbCuU3u;*k9:Sg鵕Fks쇻p-:eoe?][cQKM!ܘmOuޞ6z[Oo濝JngnvW[~~!QWîQv }mgt^RƢǗ=T}9=ߣP\a5 HMgH?[c@-iߤI K='Tln׷leQwpgitò+?,wπ\H Knp!O <"Jի$Rϧea [˼V5~>#EOՇcX@ջit\cs^^ Z;o'gy| vmcӱUURwPz_5w#/yy{&alu}KdYʪZKśz_O\_"2h!sgN1^ȫ6[ccef6իm \&\i)FV,a ;}"N5O_1O?$αkI563ӽgLγ5iFpw7?H8 {(~{HoDʫE55}/>v{ZoT}:R.?W,\wO&V7{:Eq$sX s`uB)v3d*첿eҤ\ٱ_̻9t9?Y}O?Z#mq-[O,{=W絟{2P4q_KgH)|豶^KI@7~{wWf?zr,);mcCVƵM+b8Eeŭ ss^+. g%IM?]I-.[| =]oW?Q8o{cKHpnnMb[Fs~S2C #FT:v]7$S oowU?ނ8 CH;>ֹcg?Nߋln[sZH=6}=9 d>EkLue));'6l sJK l Eh?_QUNp5ր~eڬHU^CN3ZĶ^t`Ysƹq2=cYc+% k?ԥN:s>amOzh/\Wau:bpޕf[lXwЭ3} f=u"" ߙMNsX\g7mU̺634׍q 5gҔW.[S%%2J^%*!2yLI$$I)I$JRI$I$$I)I$JRI$I$$I)I$JRI$I$$I)I$JRI$I$$I)I$JRI$I$$I)I$JRI$I$‘Qjr|RBRRBdEJI$RI$I"$I)I$JRI$I$$I)I$JRI$yAwkG ݯ?ZMR$ RA$J}\ȴWu -/]:aR$ ]$$$$2rS I2JRd()dI$I$'L$)$IJI$RI:IRI$I2t$I2H)t$I$)t'EJI$R$JRp:J\' ӦNrrV$5v&)أ\۩X *˜,*LSTdDdES$J T))AKI$JI%RĠFRҒ4)ZJiM)+S)JTe)JRQ?B0U69N RT%8))QT,t: d))R%8() )(yIJQq"T\tEH(B<59jVzvԚR0NMRLBԨO  1!FHM+C–ԀIKBpJY(N(PRL.e<#[_g3= 5vцswQ]L]gV*+6+Ma{}kwvgq$/s&F0ic?9[-9쭂m%hW=ESfWZ5.өo-,4k)/in~k,c[9Y{YI{EN&-1~Ϸǩ~; @k?F>ѽ;Ծcױeucz4?Ys;.  IuJ~S~EFDMEwIO?kp܇ZomkЛcXT}UblxZSN?=?H9W hsKJޖǿ,gR[YXF#>w9~ԫճcX%ez[X;6S.CjD7և]u: l~6{?cHOUXyqqz_S* rNsms`kWE;?[>ZӿgPٶzo}Ҭ뺐9#kv=Y۶oO]O{]a7׻~'OugzMZk~?⫩hs+-ufZ}kgTSfw]z7Rۯ:Saeg^;)G nxI~ey#?m=q[PNᯮGu:{z9/)EC\ZO%FSx.0Ia.{} zշ4X:Zaq f5e7V.ѽ qy걸zo?Au#絎ta'u-=u)Ԯv=d̥!&OPn->ck$~ӿ=^EXl .1C)1{Y] ?Rn4׸P6oٳ؝J[$7Q>Ԥ쬫msCm5eS?=[|9cWmemG"[&X];ծ,q#~%{5^kw54:{Kks[麲0foD>^9"z.Җ҉}`CLLn(RS˒蒖XJ L'JTvLM%,I$$I)I$JRI$I$$I)I$JRI$I$$I)I$JRI$I$$I)I$JRI$I$$I)I$JRI$I$$I)I$JRI$I$MH)$ $JRI$I$ȄdI"$I)I$JRI$I$$I)I$JRI$y@wkG{^8MR$ RA$H}\ȴWu -/]:LҔ $ҒJRiJS$JR$I$I$I$I$BI$I$:d)I$JRI$I $I)I$JRI$I"'L%):d)I'IKL$ӄRUnV\$RbN\ܥX *SGeIu*%9LPSSTQMJ򔦔ҕ)%j^RI2VJIR1I1)%R%2RR2FR-L%I+SЬ ( rȔQJJ҈ ((3H(0Y2ESJD43<򒗕SJbQR>A<-Jf*UJ7 ܓBed B))'ڦjHDZ"T"BbS<$(O ! ))d:b yQ!$T@)$:Jd)I,JXSJIQ*$J).\Ĩba$ܔ[M%8([L BiDjKR5!H P)($VR \'M)B钔R$S Ɵ\z?Ɵ\zI -L/[-ja2ߟM͞[?NI&7WSæ"0;slg]~ޕ ;YѸo96M~gcGXȵTnsM-c͍n6l>; [-eokoߣ?]b-[-eizOCBu}%p?og?'֯IHˢkÃ\\'oG}QͣeoceeO/eC+tѝMV}J͞[c?UN0*֐K6]K+l/'i)|<*뽶UkM{7}*P9^{C}D7}{O*]98 kzoG}&_5gwo%-Ѝ#*.k\>?GșͿ=W `lc`-~GS~_Dū++Ҵ{]>?FW}%zK,{Ehm5.tE~?b%]}2ڟK):<1ȭn3,Y}{72F6b}>wc?GkeMo,haf7ڶk,mec90xoOoo;j{-ؒ[i1]vo>C-:7[Xc9 ܪG_Hw-so2}o Tpq-uXK'.Uz6~ԊY}KvSMcs5i-}~=~,EOKf lѬDdŢ+ uNXX6ӱ}S?\. 6Yn^[F_o-ߡEL֌B}rX7on?ݑtEdߟKrۻcc={=}W{* ܰ:ըI?Ҭیz\8\@ig醴zo]'}ane_5SQQozidm\_g]jw\iw '%ͷ{}g謭fuLlAKh=IvmWT[}?cՌ,s4\ݕm}vUkY~Fv,dgٕT-Z]8]=`[=FWz?Tzq}C׶]QNJ52 `Fzm7oJ/H{+Vݗ⹌3G=OOն|70I.s {~{PzSeOdK+n=Rk=?_WE-sjc}ohk5;4b+1knxomLkl-]%~{jh.umk';KwUjz >xsCMU7k+}~{zX{`l^_ee?(D]  xanh +f^?RɷB/lWO{"]X"Ign.% ݈pqx9$&RI$I$$I)I$JRI$I$$I)I$JRI$I$$I)I$JRI$I$$I)I$JRI$I$$I)I$JRI$I$$I)I$JRI$ EJJZ)@LBJY$IJI$RI$I$$HI$JRI$I$$I)I$JRI$y@wkG ݯ?ZjI hz1.J?+M*3I)AKRS RSJiIKRIKI)I*HJRd$I$I$I$$: Rt$L%)$IJL2JRI$I$$I)tI%)$EKI)tI%.S:`1w Kd*MQ)آ\ܥXUV+ ɊrQRD*%,J)ʉ)+RLSJWLWI2I)t$IRɓ()dґLPR4L$ @kÕ6yJPÓ g)CH$FR0PS5)bSJDM)M)!R>S$2ĨL⊘EaU9jvUU)!3Tk!S!ShQ PRjmB*G(S$% J%(8IJJ SBJ`BxNBE,TJdI Q)pJyQ!DĨTVqQ%1P%$-%% g8([$ r2 J N +J QҘ)CHV$ QQZY%RQ 2N)S$ɒR)SOY?L=vKY?L=]a I$R-Upof-I:I\ƴ&&X$ңct-[WE[]}0W,MGf3kq im> .#A*!>;:x\`i6s?ǵ T9:YB=/\.o^Ȕ|rPKuI)LJR)AKR )NT'Lr$R$IY$IJI$)$$$H)tI%):d)$IJI$R$JRI$2I)tI%):dR$N N:J]:d)KVީޛ-RaQ)ء\ܡY *SeED)(XJM)XD2I $: Rt$$JRI$I:d&$)BE%- BxI$,tSASiC mU`&iFb pl1,GbHB.]<$,TTHILJrT *)!LȩHNPSʰYUeSZUbRa\(BF(K"vV)ItVRҚRRJN(d˓\^I< TS*M()0*`4r0NC 0Nr'I !(R0pMN$0 "I& JHT(*%0!D2$"BIDZ2IC8hSA6Oj`+Vڛou8O !&%2 ItV"$PLO*)J)$OS?]OS?WI$J-Uof+I2toQw!i,Btw`~O$I%)$IJI$RI$I%)$IJI$RI$I%)$I $2J+(I )HQR))NfShg4R4fJPf̥))mAF>{l dp㮩?1 hO)^^[|J)ׄkO$pI$2tW1tDw?ˡ*\R)R$R !:*dNpӦNI$$I%dI,I NT2tI%):dRI$I%)$IJI$)t$I$R$J]8QNR'IKI)gY TM G'jgT+۴+* SEaQLJED)bTM*X1MJ$ RI$I2I)t$I$RL%)$$I2JRI$dS+Qk*g #f3J3 QXSJ( &.f JRR7 9pZX)M)e)&HfL yA+7aNZ*S$6eEȔ)JR e)FRSJbQBP,((98% ^ǢXV'2ވǪ茱87b z[\kYSkE6FWaEaIiL QZRĤRTIM(rrbS"`*R*2R)R)&N$$% R,ГZ Pj}A%a-{R(JCJ4"d(B%LTQJ$I//d3d3RI$o򬕭~2[6y_u:I$ogu?d'v3I$$H)I$JRI$I$$I)I$JRI$I$$I)I$JRdA\'$ JHYH>4QI%2.ݡH>4RIL' I)=TRIL2I)$&S$JRI$I$$I)I$JRI$I$$I)I$JRI$I$$I)I$JRI$I$$I)I$JRI$I$$I)I$JRI$I$$I)AT%(!J|JJY$IJI$R$I I$JI$I%)$IJI$BI$TII+$RH/?ZϫAh5&tI%.L ~ȸ\}@1t%VR$I%. !K 'L)tI.I$&I$ &I$I$J'I I$RI$TLI2H)I$RJRI$2I)t2$2I!IӦNR] BdNI%U«B8RaX1NSTMKTSTI$WI$BI$&R)dBI)I'M )II:d$I$Q+(RYPp۬^LEji\Bj#SWT ]$ .WʽiBSJz'Q S0I*o*f򬰤; Jf. + EaPDIAiRIBhA ħ*q@ȯ* {JcgB "&9 L)mNTU  ؚգIiH `KBhELJS!6TR=mI ))bS$R%,2I)tILH$4J\5LS(xI !(S%0R! RИ8Q)) "PJ2JP)$,"IsGY?LAuGY?LAhԒI"-l[%k`2ߟL͞W?l$J6;;oRw!>&I$h$IJI$RI$I)$IJI$RI$I%)$IJI$R'L RI% Gt%7DhIH-IHS$~T$Tʒ$<%#IJDВIL-ILN|쒖I$RI$I%)$IJI$RI$I%)$IJI$RI$I%)$IJI$RI$I%)$IJI$RI$I%)$IJI$RI$)QRR4)Jb%%,:dI%.I$I$RI$I%)$IJI$RI$PE$I}?c =x/zoMWPI%.I$O+@.?W.B$bT2I!pAIE8N dBt.2tTI$$$$dLWI2tI$HRI$IR&I%.$RI2I]$$JRIKQN $'QNR'I _¥RLrLLQ.nЬZ–;-+TQCXTJjI$R$NI)$IJIK$$E$R'LL"I)PԚT,ͪʲ©U V1&Z˜MJ@TRSґ))g*L8*!: d)%fVo* +SYVbQQpNQZHTħL*LRaWիU[Zrv$D6+Vk0U¹Œ*()\[6aAimV3I0*A$- ʐ @"FMB(eИ% ږRԓlH8LuILI9LJ PN)I+ SMD DjHf@C `I)$ .%Cr#܂B7('I2p_4?gr ?gr+EI)k`2ߟY+_*dl9tQԳ Egu_?jNIIK$I)I$JRI$I$$I)I$JRI$I$$HIIpS$)$JRI$I$$I)I$JRI$I$$I)I$JRI$I$$I)I$JRI$I$$I)I$JRI$I$$I)I$JRI$I$$I)I$JRI$I$$I)I$JRI$I$)BJY2tR$JRI$I$H]$I*I$R'LI $I)I$JRI$LQSM{K `aq}Uࣀ$I)tIG+@W?D*BLbWI$RdK !L кI%)$dRI$I$T&NI$BI$I%)2I$$I)I$HRdJI2 ]$IKIKL$Ӧ $A$:HY*9 ʣyMrv(;+۴d*+AKED)r)bX9LL$铢ӦNRN:dI%)$IK&N%)D)R$I/TABaVk* QM+mFWiS LԥPWCXۯKޅբ=p6S3zK3\ 紾H7?gSX9_tHkJMĝ8?SwoEM?k#n$57(;s69 s_]n?$5 Dۯ[l s[o$8zam7gq%4?_]n/kzۯWk1k\XLҿKf, }C$⻠*??⻠j?چmDAIqg&Q<0ZC\CO?W߽%4,z>/k'ⷡ.^0pm䗍$99W=c4~ϥS?wAQ^itOk^>u.swH.O ߽]\ؓk}Sg/^5WпzS ƳۯKϫ_nu$ƳۯKϫ_n=u"ƳۏKϫ_nu ƳۯKϫ_nu$ƳۯKϫ_nu$ƳۏKϫ_n=u"ƳۏKϫ_n=u ƳۏKϫ_n=u"ƳۏKϫ_nu$ƳۯKϫ_nu ƳۯKϫ_n=u$ƳۯKϫ_n=u$ƳۯKϫ_nu$ƳۯKϫ_nu$ƳۯKϫ_nu$ƳۯKϫ_nu$ƳۯKϫ_nu$ƳۯKϫ_nu$ƳۯKϫ_nu$ƳۯKϫ_nu$ƳۯKϫ_nu$ƳۯKϫ_nu$ƳۯKϫ_nu$ƳۯKϫ_nu$ƳۯKϫ_nu$ƳۯKϫ_nu$ƳۯKϫ_nu$ƳۯKϫ_nu$ƳۯKϫ_nu$ƳۯKϫ_nu$ƳۯKϫ_nu$ƳۯKϫ_nu$ƳۯK߫l_]bHIY ׮$}_BuY ׮$}_BuY ׮$T}_BuY ׮$}_BuY ׮$}_BqY Ǯ$}_BqY Ǯ$}_BqY Ǯ$}_BqY Ǯ$}_BqY Ǯ$}_BqY Ǯ$}_BuY Ǯ$vQr*d3x jp&eYP@I$WH$%> D.{?ˠUr|!I$bT2tp8NRAD'2N$2I2RI2RI4))t$VI$R'EKNJRI$d%dI%,I$$I)I$%.dRNI2pN$$:*]:`%1z=Q)Hj9&(Ꝋ%«B8RaX)JqBD)jVLS$N.I"I N:*Y$$'I,I$dRɓJIIOLDͥZW 3JYFiQ@@SRSJR$ȮBqNbS%))NRR:,U[ʲĐY*E2KbQj(QP@iSl(1KR$:IL\b3 M[BfYX(ޠ9RXU*Gb)ڊ҂f-A ҄fb;+ KJV0ZN <)i !4"BP)jj,&! J756sP^5Ap(HLPTB`IDhQhShE #B!k0 A/ $,S'LV%AEAɥ!\Q#qC.RqBqIx_riCܐ(,","CEI$*Ra?厶0g2{6y_u:IQ /FֺV/JXZ;69VY[D,xY_V?WӳE/;?W%{E?g,2rY$}_rt>䏾.%}=?%}/A-ȯ'I.$}=?%{)^r[^L\J{Pȧ%įGX7/S~$}gr߾Ŀ/AM^L\J{̌LFTK~?+ɒK_vy>9zobvh,!%8}^J.%}=?Ӣܦ}j?ܶ}kNJ6Uvh$&sg)Nkݱ-$~Dz @:΢=V>:g&-sTVڿClw^*^;ֹ5΂ GG!t(ѯxǽMxaq7~bw)nX oKs ?GY]olIݾ!oIkI-#Q7KŪȩN}%\C5_t.^ }}qG,'ntߠW֮pfK"gP#7 o{rʸfdz)ˣ9Ń)I?Kt ioϡk@3u9Kw>~JS}rvS q}",. $:^g$ϟN/7`sITtd9ͻ15_ZUs2YӨ}{^%Cjtw]0ɹp{̟އOˣWLqc1;~tw$h~b'"O)דmP4" y(}xt,!m=-44Cxw;C c2GBD9Kg4 JK߷nKۣ1!ã%Ktv/V@q2'=E5Z$O3Qۙ rY:ݻMMw@*oo.cH]YE9Ĵ$S+\: n.- a Hhk?yxİptO^M4 " ?I|e[:U:ِ8w}|t?ϹMx˹685:O!$ ڿClw^*6ڏ׎-sCDϹMxIZjwK|t?ϹMxIZjwK|t?ϹMxIZjwK|t?ϹMxIZjwK|t?ϹMxIZjwK|t?ϹMxIZjwK|t?ϹMxIZjwK|t?ϹMxIZjwK|t?ϹMxIZjwK|t?ϹMxIZjwK|t?ϹMxIZjwK|t?ϹMxIZjwK|t?ϹMxIZjwK|t?ϹMxIZjwK|t?ϹMxIZjwK|t?ϹMxIZjwS}W7[/d6|rEu']:)u?6Q 9(ڟkw^'._[>5T>>:g&-sT+SDwlԿFL׋Pb_`]3wA/ѿS>5 #Lwr)s_ϣܦ}kK_wr)s_ϣܦ}kǓ%ǹ}zt_ϹM7)sp_b3wKzt_ϹMxIp_c3wA/S>K^{EL3wAxdUG}z_ϹEL^2<*#ܾ~jc}Ok@kcV2Br@@RI'McRA$KP\["r\1HI$ӨILBN9KL9JN:*RI$IRM)%t'AK ELL%,2I)I$JRIIJL2JRI&I$I$u%tI L%.2tTI$G!^C!G4E=|׷VBXTTJDQ*EDd$IRe<ӦS$2R$'IK$I)dL)d$$LD"PB# ![Y0 @Š b䀧@ PK$FR)M)JSqC(I$Q RYaUYʴJV+*Q)\jrQ*D,(FIҝ,)J`' 5-UZK€RX#"(AaFjjMF`IIXZS0#!0B;B!aHЈТЈМp:B% RBbHMR8# k <+/Uޘ!!4).P `& A$3j#B(E 6+TS ]$IJ*%Hġ&ў +\gr+grKEtEJZ7\ W&Of+I$N}ei߂!EP'I1:I!dI$$$T(NZ)$$II $I)INJ`URP3-; n"U7!p 4LFg^Oih8h>~gUI"H[k i-LrOkQA n$gaZ^w()U(vRHƱᥭ'q G}MMWXZִs@oJw@N" {Ƽ qkGr[wZ F+1lqm4ܑx~$cv\{?[oUEHe~5sHi$k>COdi'en`$Lbxc;DU$Ai8d:!I"kKZZC|NpiLinCwW $S` tN@SMPBI$I%)$IJI$RI$I%)$IJI$RI$I%)$IJI$RI$I%)$IJI$RI$I%)$IKu-g=59HGZ.'ab:Ɓg6\s[NoJgODNE w3<#\ƵŮD'iE &w ;d*+AH|]2tlI:dI$L$$R'L:d$XcB&Ip铦0) A$E+"rߕS'W JS'LRE:*d$BD)')t'EK$TIIKd4LJ]$R'EKI)II%)$$$)&JRJ$.dRe:J^RL%.2I)u!t0NN$y* \oO_*/:VuQoPRlp±Q*EDNTJ XNTPJ2R$)J*e)BSJe)FRR O(%*2M)4R4K)AJI2I)LFʸDjSj f]0 PPQM(r(`R%BRĦIJ%@%FQRiI$*SʌFUJUv֙%1(\zB hQ &R$BxF! 媫–(-wG(XL %`F`Cb3BF AIZV[ e,)ڊxH$'I$LTJLJ aJ<#鋂(9FR\*ABSM*m)-L҈ԐH(5L'I$TJLG!4E9QE/ 3[3䖈h)$EJ[7\ W&Of+I%j߂="<$ ҄P$%$!hM PJbt%,xI%1I!d:PI<$D)&I HEKApkề䕋.faU~־Z\GQlm wNjR)$RR:5kF'Y-'=SH  - [p~tm&mm-I6!犫mE3_ wA=!r[ldt:NOܫm{v ]Ý^o@Zݯnk@gU{nj+yyv'XVNX;Ůmn0n˛v=IY[YXc-0}F{wb%=nqS+єπsm?G|6cn㽬OGL"2 ^][Y$; ͞oPmvVqɍF߯4itƎ*SjLK$KQ~?Ѡ"q;V5ͅkDc j3KT v#sH};?89ϧYoC駫6PeFS#?0ԅ ( ǻ"沊-lKo ױս`H߻jڪU]zMi5ͭ8m?KoTD" ֪2$U K[O~r0ʺnvuGdUc`p{{qSZٳqp"C_W/:FuVcAZ{^;{7z6XˁVW"]e|{mg~. {cv6Q;Nal5bg󕓝{,I>gmI{Gz٫muvۻg׳~N(NCf5>Y]Ey;}OY[+ejFi`c}wڨMv'OF`kJ(UuwH4I%)$IJI$RI$I%)$IJI$RI$I%)$IJI$RI$I%)$IJI$RI$I%)$IKW^N*_M qn҂ gINO;n9?h8g .Y5 9~RR+-k4ωqrI$&w ;h*+A<79tͅ)$'I%1I:dPd$'L:I)dIJo!ao!a$ϸRt&$}/?y`}E?L[Ҫd2RS$iN *d:rI4I$ȥt$)Jd%.t$.R*RdIJI$J$PR2E2J]2R%.dR&O))t!:J]8LtR$$$*9*JkMQrvSʶJ 8OQLSJr*%9Q()bTJt)JRR)JVrR*R3ң)JVD*2RҘSJiM)))$t8 6U6)F(BH (`YyP S9LJ)%rT O)%*SJI%.Te:J]UiTg*(JҍZQL) J=JV)QPۭ ڢ+ 0&!$#! "VxV I  PVLG`A`V*Jf!0#Z 6QXЊ7Dv"b3P N N u*2je*$*$Bra)`75p`)9\ PR%%-JV5-H@rEK򘠖Cr# iHB`V\^W&@S!4"grKgrKD4I" W,e~ə6l9tQ:*W+ *j_AI$T&R)hI:P$$$JZ$))&IKBIIK$$bn W9ik|w*n:,kn 'Pw-qp,$jrsQI"I"I"q>=9k׿ͬeMg#k\o?Go?Ѥ?ۚ[V_Ood9#cýνljxUAcwXXe~K=OMլ>E,k9~^}/w,Jr.w5uݸ~owkI!-z^pX~J!(]/[;s+ʝXLק=j/۹;_k[^IN"K~=c~s,+w@Q챉)JEhm Um{}Wc,oj7Zmt mki.uOMؒ.ݮ`d^wW)ŏSZ;k\\ZOeo$JF:+\fݤ}'{߳3E ޠYSskktHu~w~ %9i&NI$$I)I$JRI$I$$I)I$JRI$I$$I)I$JRI$I$$I)vYsHЬ{ѝ%gu׃Pem$<~65[*1̗Z]ё?M|na?r'LRZ9V©G*O _>kIͅ')R'L)))IEK$2HY$IJL2HSyXan78 j)$M`Rp:J}7?u`Fqnʥ+̒2t.NS BrN'NRI$R:dI$$)$ RIBI)@ 'QO(J2Q/)4))yH()yM)4RTe)JҺI4jdiJR/)FR`/Aln7lgm?q oo˞\V5*n/a\ c o>r.߳/C_SmFCk}{~bJw1[FC.S}[c\mmֹW?Y$~KfͲZNsOW}۴T--??ްIOApE-@cYl5̫7l (ukqYHu_kDDZSmmm7هWvU_^F=m &Z̷kCSO$pƝkZur]FαK/Moo~઒I)hNI)I$JRI$I$$I)I$JRI$I$$I)I$JRI$I$$I)I$JRI$I$$I)Rq,eťU ^ tP7,.Ѿn>dQ!]xt_Zͻߣ:%]ԔZLmמ):(Rgp3IIVʴsO'LebI"B'LL2*RdR'L:dyXCV2M\$Iu$H$>ȸ\HX_Q\[O)I4'Į& IL`'!t$'E+$<#Jb)BhILR(JSJB Y<',t)IJIRS$yM))JҩM)P/)1I.R%))IL)QदA<%3 Št:*@ӄ:J]$1C%2I 'LL^PLulD)bS$"PJĨԩ)QRFR)M)JHe)RRҝ))I"RLR)$H)e\)H AH( Y% J\)()FRRҘJSJiA+uNJIuVUFr1G*R=J"+ J%% @&NZ&!J  E-[5<5V KB k mShFԑ(M a%L60-EjHLҌPQXR B@SC9M*2jdJ)IBҹ(O)ːPHDG"$ ILڊ VS ` O*P)%3))bĨHҔOAxGpBxApk(8J+<grKgrKH4TIRg|+2a?̛6Ou:JEezTo%2Ф*b'I%,J$)% )JIB'I%1I2JZNHZ)BI)JI$0)&)).3pY4T3e$ 6ci2ѣ֕Ji5 -cW^ZZu?E۳{ڍM"E%)"E%)C\t D$$DM -~ςۡZX=-wl6^e BꪴZu@7n+oөCӍOSˈ }6K=Oڦ =¿mok=;0VlFwսI_vi?K@7@:xUbW-$D'n[,{7zm?@eqg#d>z# r KG3L]34M{{Xϳȟ;t`> Ȯ8VK {[h"hZ+,b0k}~{,n.0ιfv۩b4I]ap 4&notl~XK{7~gjT$GEc,k,{?Osѕ,ڬg;o! n*+y O9Oӿs!͍mvKU -*:?lv{l _N-,\c{v{JKG+c^71õ=(gϱחq$@?;'ĸҩ/h-Ng܋gHUkk7_o?Io=4T䤭NEOa v*c.I$$I)I$JRI$I$$I)I$JRI$I$$I)I$JRI$I$$I)I$JRǤd΀U{e vSn.Y#2V߇Y. {* '")FI"&w ;i?*O [>kHVLIK&N)2t%,:I)dI,I$'Lo+p,dtI5)$SQ\[`Fqo*Y>r;.p)')p& *d'EJNHpI*RPtT$$(N Y(Nt)dJ%%,SjVLDJd$)Q2IFSLJdd$.%2 @दr ViJ)EL:C$~JlL:80ꚽ**9V c*%D%2*X%,TJrPKSJ XҒIe)A?KŶ[vCE{pJ]$C1q8vQ :I%*{vS7=kgFN'($&#ApHI$)3=I%(y)|RI%/ùII)[D$:$J\8 MI%.ǹZ`4LI)I$JRI$I$$I)I$JRI$I$$I)I$JRI$I$$I)I$JRI$I$"pi:BOo˺JoYY H*/8Dl`eX2[k?xɜ83'!It&[ ?*O [>kRHY2t)dt,:dI$I$R$*Y2tR+p+p&1]$Mk A%>E弰~ȸ\SH铦%pE O N PR 8EKHII"'L%)$I+$$I$LSVL4 %1R),TJLSTĨPJ'*))yJS$%*2QS)N%H:NC$d)yO*)K SrT% :c_ynS:CZHl"twcyzL*Ŷ MoLGݽ67i&5}MYUNún.n$xRkYen"'CD=:Ƽ &7] mdl Fv#oi V {Y~DtRYpގYzje,6 q$G"~s{8lS}~ эXn~5[?J&5k>f'6zI$$I)I$JRI$I$$I)I$JRI$I$$I)I$JRI$I$$I)Cs[6ZګHu;V5N t+R- h=hWQ5w!T)h4fΞ3kgD [Y8 H'vIBHIt%&[jʶwO$-'L:ddR'LI$B'LI$R-G js%Lk]td㔔/O+"rU2|Œ;1NJ4) Od0)B$*]$IJN:*PI$)dI*L2 Rd$d&b!I1 bB eD1 D&!I(LPRI4R N Jf ʐ)) I@ RS$2RRŠyAKQ%-g ;( ;(RnRbv$+Kc*)D%,TINTRJe9Q%,TI+"$I&O)%RE<ԔSA8QR !xI4IJLRBɈH)%dI?ԂpfdकҔҔ)M)$W%2I2RU)$%.2H%*R000PJr^(ՠ"С,ʰ*lr;!- L=&<)nA *(NSqBqN X 2vaH rT%)I %)P<[܆J[R`-Aȡ8r(!`0SJd\JbTIA*%D$DiP A3 J!H$0TEI!I$S$@ RyCࠤ -ȢqP%"TIA48PI$)D4$d&2JI|f)ɮf)ɭ ]$ROϟr[]?|+y6mr9a$Q:*Z8MoR$$0)&$ILa(RC )hL BJc BxNP RBxO )&*pcJpXգ-%cều;uzlw R|wYq!ߣp!_=Hj$RH$RH$RH)ݠҠ ԤǼۚ,2iQԲ(mL[[d??Y /T[\Hv~׷}n=Ysq7UnEYS\L4̟UE\K=]쭵CfSXnKniݺsw=D$cn}O9tk.؀ߥ/u2!. L;B783F7gBZk%0N Ha$ؐhŶA-?;v*68-P!rg`1>viPAW G72ؗnRF+-![ riH1U-[;f3oQ̬V[K+j}ͭvCiI8$cu/@V K{{+mOґͯ3?rSHVD4)ntCI4ZXa*{] alf?<@no'T.Wh3-im[PrC/ {UBI$I%)$IJI$RI$I%)$IJI$RI$I%)$IJI$RI$I%)$IJI$RI$I%.%iae; Et Hn1I6K71c up=C9{)lqdǂeyBBuEI Lw6?*U1Vxn)]$EdR'LL1EJL2HRdI L2*Y$IJo+- js%$Iu' 7?+"rIŒ;,':E2Jd * ,J*A8!*2')NS$tT铤&NJY$I+% AK$BJY2&԰!4)) SB") D!Dd&!1I<% %IL e*R pRS9O*- Q'I!QiQV;ZY7 ԴHn~l{(5P6ãlq+M7ibcN%1A#CͪT\` Ip/ ѽ?&nM8kvWKRID-lC)mڊ mwEaG ŞkIk?Mn9VzhT$Mw<{=Ih~m=h2 h;'w?/g4Lj(#Bޡ[C]t!_O)u kv9qI膮{JeԪMmYxkGfg` s?l*qҎ5:psammUq3IтֻzO~{?Ox[}K"ͥw{}VzCn͎yp vmkJrL$I)I$JRI$I$$I)I$JRI$I$$I)I$JRI$I$$I)I$J]L-,~'dN> f[c5@R<y7URo_~[ݣNi!Qimf#^sB E Lw )6?*U1Vxn)$-'L:ddR'L$R$(Y$IJo+&I|I$k]Id%>EЂߨ.?W-U'H% &xJ$I&)9R8*C0Sʀ)+S$)2JTe8))IFRT%N J](I$I$RД'I1:H)& &!HĄ)X"&"SRI$T4()u%S4Q8))IILlfg 3%jU&Ύ1WPW5i\ҘĤSJRTINJ(bSJK))M))tFSJe)&H8*2$`H^S R"RM !J%HI%?J :I$I$d)Rd)tD'IKH%t$N'IK:Je_*j9V@'j3J QTepf'k䃓){eDU0m*z^%[\-.A)w HJ p ILҔ$"TfKS"%BM!JyFTCHH0TIIB(mR:)/)JR$RH p ($3 ˆNTR2R1)&N)IL< JdT rT ILQBHRNI$S?˓Y?LYi8)B"HY c+y6mr9ttZ7VZ?oR7K Bt5rД'JS:P I$0xI%,I(ILa(R%1J S)dܟruhMAnH?V,6[FknmW5|'Yʳcq;};gjVA"E%)"E%)$ G^.x!I\3+'emFf>O CuEw2IirZXY{}?I~o_"ͱ6foqRHiHm2VwX1jywo߿b ]$ƍX?hH-Y:I$$I)I$JRI$I$$I)I$JRI$I$$I)I$JRI$I$$I)I$JRI$I$$I)I$JRI$I$$I)I$JRI$V%Ñ+cm4 5.[P`Z^Y[_a.3g A;Hl><Q̃8e̴I.?NBJuZ\H PI)3N$aT[ |ˤE&2tȩII &N%)2tȩdI$,I$I$PBo+ 59LkNI)t\[ҹ:.?W-ʦOdO)rr(dۓJJe)P0S69ORIKr%jK>-Ñ%)Cs$Roũ~hBq xII$NJZBJY4)% )P $,tR'I%,xI%,BbB7ϻ] uhKEBXbK@ ϟEꪯw}y2} i1 -Ӱ+ s~i4)$RR)$RR)#@!qG$34Lp>nou2ߥ?AY%J&7ۯ˶m`}u`b,(x]nsd=~C_l &+.Y$\??jkn٣YOO}DG-s1a-sͮZ6~?EkH%p{ 4l{:'zw:hZKLko4R^?/?5\b@2s\[~E"u:tiV3_9}?o,'Zʄ%{jV9{y36'gG>]7I~`s>'HN];Ջ KwOs?E6t=F1/%[YǦ %#Vt- @[%}OhtQm:={w?8cvB'HzNIRI$I$$I)I$JRI$I$$I)I$JRI$I$$I)I$JRI$I$$I)` 'o's:mYL0| m;x@Dó[ LT7@3r@%jA;u\dE Lw )6?*U1Vxor)$ILS))d$&N,t)dI$,I"BomLO.I&5ԒI*XS\o*וS'Yܟrk0rr"% r[E&nH9%R]!oO+U$!H9+U% 9658C JgԌPGԜS G5zo#ݑP6Qrk4) z>9o~RSԈpqL-bjG?ڣGCJ㋂ۣ4}ipI\qဦV/gIͷm՟. vW{)DH}gG"~e?8%\qBA&c9 7xt]`k4Ԭ@')hM p$LTP!.*rW A@S !RQI$):dIK%$Ġ4M))*)%BSR pRRf0PZQPAJ t0T K+Y?L.Yu?+Y?L.YjI$ob~ə6l9a$P*Z̷VZeHH$'$% A+BP$hRI$1J$4)$LJc BxN<$)SLBJDλ+p\?6.s~`s^dVKK{ VlļH3aLhRH$RH$REf;\a%щE%ikfOoj1?5 +%hwJ1Ftg]iL8ߦ[FҪ2Ik6e\Ƶ{Xw4k}2zloZ"Ml"csH}'*"a~O@Dr~OIzۘvՊHT!HOn !ԕսF=ox.5 m}M=Euq"'P~o4@$ t)@$y?Iɵ.Ioim@v6т/M^ޫX+.;Sn] k^@'TS*0uƉD#[^^R?G-}nuS*^mcy~w}?\ӵ4;HaV㣿9k300Tۑc88LLJMʹIN'!R-.qlXqsdj[ٻ$ |Cuށ!Hx˸A8m=Ij {ZuJMtRum-.(щ]#_:vP+ʺ$'B~dZ"pׇ~ҩwRhK$7BI> UK2<?TLhhfm 0CsAc׼{'Cs?7$Zƿ{@p}Venk *3k\KJmKtMV OɱsFnm~fD"6auCO]$IJI$RI$I%)$IJI$RI$I%)$IJI$RI$I%)$IJI$RI$f Tixxq pԖYuZNnFHH7Rԛp#_g{km2Z?Ϊ??:5ZJ iϲc2̃QB;JMʶL~USNɓE L2JY2t!IEK$I)dI%,I"Vx js;%L1I%>CE;IY?T\o*ԕS'[Y[%6AܖI%z}"Oz}*oO=8r*ۓ 'ܒ0r(!$N }!$M-;JI%z}*nN>Tr};JI% z[RmnAޟzVI1rrb-TD2Zi*$ \$\ܢJI7Br IBNh rࠊI)J)ZVESCM;\RaHC]iP*]aQe)iQ)!yQ%)Q%/*%$$$)IJ%)%p0)R8L. *:Hf (r))PҘSڛj&JKm#ږ8J[PKLZ RB". #!AQ((0*%L$I):dRJVةʶ l|[:x4ԫV0SxYH=z[ieUzXT;mh[HFeR2?W\^=Z|- #c_VUGX>-(}wվ·iFHt疢]$zX՟7q7H3|OJknc*g8||.crhJz(yy+Z_k)QVI?5<4ҕ)m?KMXiK)R) >hFﳩ1+5 w\)Е!edH Ù>՞LЮKSH*wrmkrjNF> f}D+g\e7/ѪWҳVO@CGj~}JTQ0?΢TXv8+tz6~&Q]#>"PzD:F4I+ak4zkQAA<$ئRЂ I,%.ڒ%!RHR)1ILe$ĦN ܒYBTS )IJ$)vH,R OեO,ߗ.,ߗ.jI$JNߟr[];;~ə6l9e2t.[?Z؟̳P) $ɋI:I)@L<% )d:PL $)'JBД'RД'JR'%- RLBHF:Oe<"QKmkKG6~Ϥգ~mc H#W j#ָOHO?~]~mLiz'X$ã].3oo$kwu:+'G׎ ϳg>?wzRS#[tˬ-`{Wj" Ss\`Cc_jTRAQ/p1?oP h0򭭃o;D{5k[>%/PJ2'r~== q-}ock^J~˼Šnn[g]`qfHV|RT``> n[>)z*SΒCٸd,[W?H:}=q,ústЃP7<48^FK0 ? t:ִ >|[K>(QS~I.ŧߘ4>5ߣ-P~ߤHyo$ Go{VϨ|R|JTT7m)Go{?Kkhs3[[ϊ^Fzzu֖p$87m*\7ptw[K>(Qg1xx& `!qh~3魯PC)7 5oo{S7 LHnr|J^Bm-0IW;@5nӷ޷=C◨|Q9M67{wZ{G5]+& Z5%oz[ϊT*a KP]`n.p&$6OuY[ϊ[ϊT!3"֏tĹ ! ?{s[ϊ^Jي5x'N[fרzo-P)Koĥ)Koĥ)Koĥ)Koĥ)Koĥ)Koĥ)Koĥ)Koĥ)Kt-S5$ĥJyM~7\& &s{'P8#Lݟ}?RP1_?zֺL ƾ\jmOfy&W]fPpW1$ŇiG>%*p owCuXWs ȹ-m?fE;:ҥ<?rgV']U6-#lުĥJq(cVe<%S_ydEdR$HY$d"&I$I$I$B㕆F$w Ie$E%>PE;9Y_Ut\_~UT?)rb=ɋl7&ܠ\rJI6=oOr9>!0rrU&R܁>Iށ>I܁-*%z}*Uޒ/QW%$lKUDđMQ7z&>cbRU6}D귪)*Q7i^(>}*nM(%$9N H ʐ() *@$3H0C0Sʈ)$1,:,ܓ|RI3"\iRWaI^SJdTJ*Y$IK&N$8IKI%/) e)S' I L)&IK)$ښBP  8 P&ډ A4J6nCpE(n D!AkTܠQ`ܢӄ%3m|l@cK=>u|RXcF^{kS%A_ в߅]_!O8 ޢoQ+R:YOHG V zZZǣo8qd6M_$~e}$i%lAJ?qӿILc˔ в^NoOI-L r*zVuP>X? m?Fw{% :仰h6EZa@ydl?Y)HJtW,tR'JRO )삗I:I)dL%- 'JRД'PJc B$*[!D8HJڞM{w?f5KJmYؖĸt{0ҖҬKb\gv[iKiV}4%{{0ҖҭlKb\gv[iKiVv%.3^;–­lKb\gv ]-Zؖĸrj[aK*Ķ%{ه`Rʵ>ĸu{PO[ K*-oI/I[ؖflGWjzIzJĶ%{هhOI/I[ؖĸt0KKWjzIzJĶ#{هh=$%ob[=ôZ^-a-OM/M[؛b\GvWMobma-]-Z؛b\E^;E;؏Wkm)gbmq{0ڏWkC+mFʽv_ܔbmYGA.J\6lهh۟ZjVf{So.Q{0~tޣQvZهh.Ũڽv[)j;T\D7£UtL)]1JSJHTҚSI&%%*SI%,t%dL BtIJH)|Y=KY@:gBS<RHBSJJg6 JJg6=JJf\((&ܢJb䒹(n*D8VshPReU,AE;ZFPoد5NP*G5*@ѬHT7  RQn)$$%@BRR"!8I* iI dI)bTTQR%JIXۓ(nELN) ے(;$M(!a)Ҧ"5IQAj#PZ_8grgs YI$mW,E\ɳg[)$Re,lT:II:hIJ$R'I%(%ࠥN$N$BPI<$:H)hJP<$L$'ERJCJ$$CJ:Ja JILa(RJRД)$P$0t$RД'RPTJI,a(RI%1I$"4)$P RКILa4)&EKBhRLФ1N%- I2*c I1ETĦRLQR%I2JbHELHLTT4)&(I$($ȩ dTĄ)&)!&RLBtȩd$I1EJLI!d"&N$,I"I$I$I$Rao+ pd~`铦5IgA1?Q:ʎU\1lBĦ)ILS)I$A8L.dRNI0I%/)Jd)RI$)LI^SJIJJTdҜ(bSL)"HRR$'D)H( 0R)6 R45"4 *@P tRJRR!gz~G)SY&SZ*:*8\FW.JiJS"R)rIBJ`J]2I$'Q:J]$ҐIL)M) S )R$RIOҢ„.T[%*܂JR pPK)LSJRV(nS% eM <,,!9ibTS$܎4u θ/E`gV{4O߸-xWwi"phĭ? cs4rt?EC\#OgѵJ̆QR\%ޣ`~DG,_Q$mT@JpwMڕI$)iL*^S$ \RSQ> 1I+(%$ KB{>СݩYbREjZaDCb) Qk(A8 U{?QsB)R mhI:E%*Bt) E4$d'HJ]4%)1)JEKJJbT rTJ*`Jw(Q.HJ@JtFQZJV4"43QZF/`ųCWw[˚ZI$mW,Eӿ\ɳg[)$?BχXg |?lH*P$$$IIKBIAK$$TSL< NRO $$N%1&$HRPI $$% IKBt:JZ$BP'IK$IIJI(Nd:I)CD铂tJ'LI$&N*Y$IK$HdI,L:dTdRdRɊt)bLL2*Y1N,SB2r%,"*Y$ɑBR)EIE%,:dP$)E &NS"I$dR$HY$IK$HdI%,I$7l|<$:cYIIO_XUʬV1lcBbLȱJ'L%):IJd)INRJ]4$%)$IJI$Ғ%)$J*T)JbR%2JRd2H]$J\)K BMS0BA)PjMJ@ D LR@)ALpT%<))IKXtY:,S⦻5'$*9W[£UУ+)ҒdII%.2I)E4JiI,R$ TI%3e$ )!e8IL $$I)Δ˨cKcݏSf߹+)n]O?"o?GHr=crpcO1H+ݏwܖoCR%1H+ݏw.BsX~O)??""G${.??"gԉ%oc.TO_F0cۗki9#˜[^_8 j&I$^xemqRK#&dٳtXѴ:vVeU1eux7/;DZ3y%C[NP[:_3V~SLh0χPoxEn$Q*I$$RI$I%)$'%):I$ RI )ctBВtRN$,$RNJZO $$HIBtR'I,$RI:JY$$NJY$$JPN atRɓVI:dE:dRI$I$TdRdRɓ,E1IJ)EK"')BɒLSIK&),I*Y1N,&N%,:dTd2HXL$Bɓ)IE $I!dLIPI$I$RV|d~at&5HNH#~UhFzMC~Lxn~yHg^m1]'3i컎=jR>+4o?. vW{pOC3Kf>{K4;f.#K4w7/n]G$? G3Kg^{K?4w?/n]GΥ+?47/n]GJK4w7/n]GJi]'?4vW9)t;f˲yJWI3i?\r=jSJOԿ?_/f+܏w%2W?He{̟/CR%${ O?Heqǻ WI2D.?dH.fӏ?4=vW> [T7]GUc78 G3Cڟe{ VJ_odϲ}wqR \}\$wd># k_? G2Kٟd{'7?IO?+܇wâw}]ݧG2U4g3O#M+?S?if˲r=|rg]h&S܏wS7I_?#܏w.V7?HSr=dl_?_sd.#H7?I//j]GJ$gd.#)n͟_?_cd.#Ĕ>̓ͯ_?^+܏w?VIͯ_?'܏w%6i//j}GVJ_wd># $GO?^+܏w)1+_'& G2Kڟdqǻ G2I/j}7}oUscKU܍?-ZKzjO>_z[ҵ6=DoKzVށI%+Rm*r+yC7QqmLW/qwˢsj};&5 LWgY-M-𫣦c*m`.N <#Ve4(Z2$YX]4jAҷz~UӇQSnVuVa@LN$S|S)RL*.RQrJ`LPJAeAi)>Сg- JCrijRf" N R5L(5M= jOOE9 Qmy )kpTmM䷠ORmoAܖI r[%ޖ-nJԗz[з%+R]KrVے܃-ZoKz%jM-[ܕ.nKrVޅ-ZKr%jL998rVȌ:ê(|{u?+*g<T~W"I$tq4>Q&D2bc"36k]7ۗQ54;H~\y< O~"۩RGޏڝ$S߁Ȧu?Vr9Xc~HOVP&ɫH(% Bc]IJIhg>ػ"W*7bMR4(%}BR-L)P+S9JT%)JRJR2)JVrJRR)JJg)J))*RS)JT%)IL)P%3BRR JRS)JTe)AL-2R3BRL)P%3(JR*je)BR-L)Q+S9MFRL%FRL4R)JV[P+S9JT%)JR JR3BRL)Q+S)O*RT%)IL%*rJR*jg)JRJRS)JTe)IL% I%?7%BRYs=n JRJMnC%$ܔJI!䃔e$rRɀƇo淔&/=}O%Z_f%WSl՟{{u<ߴZn-NS<~O17MB&RI%2 S_G[=S3_caigȢ#$#[*%8:&()IBMLVL2JY$黤̨90LSAeA$gZ,}%~ CviJTBb+SґJ-ROMPШS )\(d4SCiA.H*@ bOA:Je)JJRIg)PO))BS[I%2ܞTIL%*)JJe)A)IL%*2RI%2ܔRʐ(aHTBpCZ?d~WƏG6<77=aV$I%I$%)$IJI$R%"a7)!nT $()ɔڢ$))I$JRdJRI$I$$dH$)'%,I$'JE%)$IJI>RI RS"TR%$$$I$D%()I$J^S&I*I$)E2yL8IJ)I%)9HhI$R R$')Ix$IJ2tRHII $I*H$JQI"RIJI$%,I$E2tI'IJI IJN dR2RJRI$I$)IBI)I$JRI$)JR%-*CUS$RIJ:pRR$JRI$JdI $RLRSN?[WdW).1F~S%FSJS$JR%/)JiI%/)FRIL)M)$)LJ^R$RJRJ]СݩZbR'b(Bb+SԍS L'5<*{vB2J"OOAN(R !I1+$I$I$$NI8I$)$I*I$RI<$$I)IJIBJRI$2td;Ykj~ANWrTa+BaV]^B6}Vi(qf3htA??ؼ'un&ڝJ?P/ ?h䕚:VkxgݸHK"O*P/ _!o_M6~}/mUdkC^,Jh5Gjs OQMg+ksN>E4vF(5Fߪ0`.a^,wXmekff/*=bF1/0? ??rY{I~Y4t_t_;?ߦG+5$Q}{ޟLOGY>--kGb}f?q%ߞgҠ_Vp'#8?^Ŭfpcw8os;c?}yVε8[ZƷY4Fy ??rY{HDGM??gֆZ洶wY$孲͠u|ucM#KlwJoz#/zx/(=cus߻=f<;܊ۿ{u^4EOow!_#YW~SVLY9\}G#wS̳^00Ʊŭ-fU oz?7?༄,N3mg_7?7?༝bi.'ľT,.ǷrT{OA&KI˞#knmRwX{konCnTuT/ӿ%N?Gz0sv"#? WӲfOK7<=vY4FiOA'u7{J_lۿշoN{~ { /kve߹w/ĭYlwK(*_j:|edcf=z7r+> tٳ AZNr_# L{Aa~{_]~-Sludo{ y Ṟkvncgu\4_&<Ͷ&LŖ&j7?7?།O 8il YY=a;A#'KCJ}K?%0:wJwNϾqpk~[?[ /]\,vwPV7??༑W6ù^gf5COsAZ?OA%OA/%oThcΑ;NzANJ}goop? ImxoI\T71|8g_*V4%0:w}VsئAc^"?Es u{a;l0w-OA#_t?ozy-_:̋|KQ~nc#u\7?7?༟_K?1N=@yB5l}$?y=ke;u=?ίp<%A:OA%OA/'`}u{ ?uQoX^斆a?שWO * oz/o?~ 2z9C@!#+{R{e{O=m*Vp^f߬ p/ȭk6kT;)zM_'95%RZ){^[>u ۞2np.${5Z;;1m$+W?A/&X׽ﱠ>ͮmvb8}6O~5* o?~ C/(s=׽=Uk^۶=T_ OD>~6;욞>ÏSzzG~%g6@:~>Tt}@g}^q6gPͺd[p`gmc6,f0u\~J}o_`~Mg#uߺniPV}H?KzC\^I!!T`xg03g轟R_T?~ mKIƷ*$> 6}/gs]՟__T$nw/o=1* P:y>?ྸ}l98 `8~͟?h䒠_\7?rY{J?[[Θ{ps?,k* ?o? C/&Tph=$=s>ˍ\-phuiPVM0z!u+%ْӲ-I?aOa:MR5k; R5w}?7?}uoQd\I9G_ZJ}i/x &?Tȭ{huV2h+WGJ1c~.Wf*>,G'"K_9$('WڇVy8↏x@u]%P畅ڳn6ciCJ+B*lt" jH)dLSBI$ĔD𘠦*.> EA%9Zp٫I!RZeNV1jF'H*QNB2!%8_?*RTM䔙$s{4% |kt$J޽cτ%7_c_BA%7[9~{_|N&1ކ?I߽+`6US^=*s捍V>)4c*Xz\_P ּh?Cl~Z7<[/woG<7]2׼ELK[lb!T]s{۞$IQzK}/TdcHf|ޓ^+KE@Ο3Zr\oV_UM'qv?{ CO餦KA%7+[R*)979.*ohQKbGU!s͖;sI$IQcbg4[:c x"9/ ֮zss~QƆ\ڻoZV7}{|BN3{}I#vݷ=)E'%s.<:kHkts;McXށ$. ?[ݏu4utGJ} [~w uS'RO$cbb9ELeӓ]=k/O\p /OQѾFXj/a.0Au,\Jf kvĴ*is,u<$2r+<1mՂ74IM|ZM\ uzqSkHcts-VU[[$9ͫg;&B[`I>Vͩ~, uSzPlKb*G)67qϻntC>5T[,ѭQN?Sv[b9]=JœXoJIzi)?h $ivg)XFC[sEAn1܇d3?W_X:[l]+<؊=Az}mSغL﬘6tqSoe^C՜~eȂoWp9f$Ĭ)!/oV6%%+T.ɭ.][^)-CFߣ*,v}wY|M1?ֱf,}yR$=6*yoJM-Hc5Y *ѮiY^+5XoC.,e:-Z\>`ju{CZ=!aO! {|B/M/rl5Oe׺fMHl5MnGa&@x^[jVZ!ָ &~bN'% Ķ"8g0n4ϼ0Nٽt[tLGэoYo5:O_WE=W5NnE&FvUN+ xxoJL%%$c+kׂukuXzN&7N驯h+~ݻ?F- tV>U-xk*w: YŠ {!Xؗc\-mM]T,q}\. |ogY}+ʱǺߥIuc^```ݗ[.,)=!47+p؊tA[+kǴ!ڵu_Yz>.?O}S h 5rC\@ HS7#4ZXHp箋_G?[ٵB-zm>uul{}!-G[C?#O Qn] *Soen)n}lՌ񫭁ݰAk C5^![iyoO->+^ VTXa';kb!eX'^7i;7L˰GuMz"4gr)!(oZ3gۋSHٸˋʆTv=YaUuog}Uf!m}s5dcSULdr6-c*s qX{_o5Z{xo6Z<;~?*$Tu^77O-EݵgXX%RܰM}tStkrv5gH)佾!(o[Z]< ֖Ob؊V2+e}vCb>%ǣnF-TNX ߽/[Y׶cslo;7urz+}[.&hgGmzg]+b*k|Gޗ+ҺWQ8DX׿1[?OJ7.ժzKbҵ6_Ed[^?Ou};VdveM-kJOR`,ppD%$Έ(v4 ~fIMߥ%=>ZƧ;vf3n}jee}w؂Yw;kq N2[s v ?iGQs {swS&7S:{lO>(lg ů& i~j򪳧۵ڎDZ@JC:r}ARo!׷~o#H*:N,5[=4D&Ί*EhbdNR$$I)I$*Rt$'LJ]$IJJRI%)$IJ$I2I)t$LRiN$RI$I%)$IJI$RI)IJI$R2xKiIK$iO))JJRdJPRRLJ]$ҒJ]$$$IJN$I$I)I$JRI$2tI%)$RI$I%)$IOS V^II :PVIJBHT'JIK' )oDZouBY1>)'vzyO#o.U;^Xg亚ZZ!4E1R!4 )xM )Pw)FHR,|*hZy;,]BVj+D5()$jrR2t%e)(%1)HCr!CrJbϤ1ϯ- B\,UVXEjZjQjOlQ)`¯Կ[B_F%<(5LhI$p Bt%)(I<$<$$% R'I" BI$'HRKIJ$(9J]ΎTBIL)^3 BAEXw4 'JŮ:}?b 7[|s g-m9t>?̡Y}X \^;I(oNʦje::F1: lT^ F1ޫ_ [^Cjlu.ϬI k?*t {Za1i{UZ_us鼶yc~SF8N\%EwHk`VQ8Vb潭{L>l>>LredQS֐Z ^DwƐ=@}4!d $kK驜:GywM%$gǒKZ@k4ZzN,{\4A˙:wwos%Ʉo(x}zvR?3ISCŵe߹1e>f}hy;"!!BRNkçf6;?Okq[F$OwO%վN-'k}sH.;6[EL;|`ʣ!԰֨~,̒چR}9Չ}Nk|K`$W,n˪ȩ[eOnUաx})ףWTǨQU嵁45k37\c f=5_su;@#󜺟W\۰lŰHm^+/rl=Z;3|̭X-Œ=&1C &wϢϧ.x}}yZW5͎_Ȫs~䛏-iF;^u78Gb?V}fF0x})zmb[u f5:\MֻWx(vH9Vsɠ8Gvm6r?ŷQǥZ[\'s3]ֿo8~%֝][o+E1;|ٕ}t 1e>O)+o)zboȘGާmUZ֘i;Vedo`=ݪ{m$K9%vLյO*o3lwqځo܋s3XF1_}:;2{v??өCtLk6c]ė+ʿS0\.-$So ; H}Wa2v7T[KӴ o_]wyx'GR.cr Iݿ%}\Tq0}׻sgټ}z-mvORyu]덏;ϸ?3bVP?goR;|Hoܒ]~Mɮ5g.kP9 ̥h.!Np&_cAcL|HmQ])7Oޛo]DޥuJN>]βA5G5fܖx})/M6u\k L{VTCc;.Ș&u-b7󛏕|weݰzG?]sm6thIms_VUOz_goTv7-~TWC>~rK+$;;nn|񌦿b9/!7qi.?RvScK`hԓ[ V08;lau2v=׹ռmsaww7OrJF0k$@x{>qhFדy?Cn}?^wLtX\@nOnGg+(~-t0u;|u {Û[ v GAa[[錇moAb2v8~kZe>&{5tqYE>tqv{V[/nu$2>2\zVUOպ)y{@2vU>?-Yy*ŲLn|oa ^l~pS+bWk/qkyvwe>K'e>ͧ2lD\cINTWNmw7 ='i?L_=SMk oYVau}m7=ku>& $Gڭuy$Xc1cX$;6,Վ/-H-"vNIlgm%"R~nɵ6ڲ?B}YYPf=Ok]M\A %j`1wtzS1|753骻-(i$C#E%}po籾r&^2gޛiPEnȨd C\ ~kR~}J㑔]{ءPɯFmy;$ PoNVLp-)zn=~-Y,VKu\Ε?cw}άR&ips[\: [?ܒ=S?#YQ obQ≲oܗi$3&]]iL ^vTOخk6n.s7F6Ho_MMV\\?}JJʞ{_goT[Ke>t <@C{+?~Vʿe*Y7=սg_5Qv QӺA.ƴ>}Ouffl @cX>jMmN[IN@_CcgPe[sSHigr@C%ϧOuɪB!vҵ8goޗ1]?Kӷܒ}yE݋`ZAo%Nr^߹%:yX:Rv+-oEdVߊ'oRo$3|ONojJI_G +1\Z]vߞL 9ۚ{eO e̖1֝ {_Gg{\ϢK-=):v{rCG׫2?# l\Z!/3{]?𿣭Wfhn{뤺=O=dIĖ:YS]}W`<[ w;?Ӯ%y:cqt'?3ƋdvџUzw=Lz/gӭ~G 3[I{!nB8HF- oovpgUoQِZD9ޅmH?$:5 JJҔT$NRI$R$*RI$$RI$I%)$IJL2JRI$I$$I)dI)$IJI$RI"9Qu ))PT'IJ<$IJNtIRI$Hx'I%1ژTӤ&|TK;+ %Jk$*&4J%3I(RJRNJY$RI$I%)$IKI$IK)IK$Y6(ˏ*ua8 Z8G?z\*_ۛ9Џ 9pNUCɄpOR?;Q9xfJn _[٥P%AVvpx--DVǰx|AC4cPQ khUΑL:eɪӵ܍G{G# i77B`$#o>̡eR$xB!my䟽DT(E !H' IH5UjПZ qdkt/Z\G&h١zIJ IK0: Y$1IK&NS$\TX> &AKSr)YKBJj&j+PQZjP a>Iߺ?{r+츺˻^e}'x֓L.2Q. @5\Xw*o# }M&K׋^bq$WwT 94NOMŌ5Ww. _[]EMoIsmaqj!,ysU J>z`bR=h&šIsM?k5(%>o(m"S63E\d!r )%"9AP_܊=UP&h]gnx`64roJ=-cvzXn. hVEk:lg?G8r}[[SK^鵞v?稨?K܋)JJC?QvkYXWY͡SA.8INGO1o#3}?ݫ?Foؕ:P)nCea<_3/&LH~=m^;☀z.78o:}"ϠF7dc\XY&}g?ANO?ZYl+ݴ#ų9#>_趇ǸooH0\_ M/nh#%YA[UyL熉))άv) '?S `ǎ\V+Tô9+ sqph;t qK>Ym..?ws*] 6V=h*\ח$$%r= 4 mC=/Tr5ސ氓mqEENO?h3/Qih۴C=ۣc\,1yKk0O7Hf-iM=?IߤٿĭNff]Z_ Y{X=9x%KmY.YYk>:_X31}2xG^X'}˾]8]]ַO\f5G"h+ڪN6k)Պ{Vhj\C'uM ?CSC|u.cC;k5^BJH~}/$T0c}uӣg?ڠĹy'RHԢ))?06;FSPOc  znbjs38VڣsḹJtwܟ܊?ej@phQ#Y[}zo9JRR/!r_hCYJRSG:~M8ָ ,nSWuϬ=:k{SZ%ĵ[J@܃r%r4(rHsZAi?GRv@ѹoϠRRIKuKu>%P~ȲJC}~`Q9۹?FJ w>SwT7c8\s w3jȡ)EH?,jM6\ktoʼ[v}iV{{EO{}Ȥ)!}{>qSsKd:Astp2AOv9"\5ýx3k UԱvEGy7 r)֎HH6>]aca&:^mhC}W5jUw\c}m,ykvRr몧Sf)6ݼ972uWmfۭPsvR:Ielpxŵw{IܑCk7?hi9WKY\3ۻl1k/!}rqcGظsUcØwwVԾ^cZKsrV9 v~HenmFcuL(C g0Hf֝s';ՊgE&|oٿROooPkMu?Zs=I.1oeR k7{W-_6Aos&hn]=?Dy6{K {7lnW q%cwl{ _gS~'P{I[>~_ܭVƁcÞ#w&;Կ}ɮS;F:;>XFܗ۫GKg )S#RW9%zzIQvx\~7V32cc.}vf mt}N}bOu;:S.eſu8WN#Iu^'(ڵỳZ]^Vm6az8}}{=:vWK˳kA۷U%5SO;Mo_䤕]%x5䍃<2pG- Nԫ9CDz߽WTz$m?FnJ_JJb35~ЯsX7oRvn= 57v諒o{P$s+[3s"*\\F p~5Wmi%?k[Zaw,2zY"ۿwG̭SDmnY ;+Wgls5d##I/_ޢU]DݍtlmktZ-p*pv}_|J}R~k=?}n#2ZGr5G\vhKg}e5 v v5s~ \-GFv̦ùD[1óMҜ X#kttm+$uvd~u~kɴ:NI$L%/I2tI)$JRd$$$IIJI$RI$IJL$I$IEJ&9P..ӲQ&JpR'8 %,% )<% IKBt<$$tNI$'I$NI$$tTN2tvQ4*u+$j@8U3)i68IVw@)3zx/Mq,8vۚ7v?}m(&[iPsh7+\߈)ۗf^RSnK)jknfwU=G'p4oMuӚYh!{"r~>b {~cqu[OY7c 5}o.7H/NOW?k:lqAzvDS?_Q/Q/qTy=mݏn;HCбr\^Vޢv|s˦C,vR_[?q?Azw)+:KKKU>aW[Ky WQ-{cWuF]z2 qsikDޢ\jAe}l .Wz Ri*cƯ ;KGE>c_[Ky WQ/Q/qT5}o.7H%_[Ky ӷ%*0Ư<| qqAz~Oo_gܑe.m` %{=]GRw[[en`$ ziK }lqv?"޹w^X]0F<y"5ƳƳgZy'֭䔅}c7䇊ƳƳm^W 0%䧉ƳƳku^X 0%䧊ƳƳk^W 0%䧊ƯƳmu^X 0%䧉ƳƳmu^W 0%䧉ƳƳmu^X 0%䧉ƳƳmuoK܆SYcێ Y?cێ o7?C qy)z]_7C qy)z]c7!_u_u.r`Mu\^Jxk:lqA/k:lqAvX 0%u\^Jxk:lqA/k:lqAvޗX 0%u\^Jxk:lqA/k:lqAvƮr`K!?u_u}.r`Ou\^Jxk:lqA/k:lqAvX 0%\^Jxk:lqA/k:lqAv®r`K!?u_u.r`Mu\^JxkzlqA/k:ϭn;H.!ƞr`CIEuc:ƴ->jNloqnz5u^Y 0 (g5}s.?"5}o.7H.!X 0#䇋⯭Ư<z]c7?ӷ,_u R^C"-KV_u ζ8S=i̛+HpGWctqkkkIKZ?-V|vKIJH{D'z?o\Mn;H/NOY6_u=\x ӽDDOYok:\o^1z^k:\W?:]sӿ]M0L;O:}C6̬kj ;-T|޷wKw^-?klqA75oWoGT5s6? 5s6? 4XSmqpG C7W֬6 qK[?WO/Q;U>b?g\oQn;HƷzz1Ʒ?ⳮ}\pޢ^\jU>co\Mn;H.Υҩɫ.ڋn`kv8G_﮻M gi]Y>l/sO5o6? ;M#ƪ|޷wQ?ⳬmWO[\qE@9oWC*O&?I#`}BxwV$~. ?4ªZ,iAױV.nSvCBTv?Uos뱍#VW\[e4$mlV4N p$RIKI)I%()IKHI$%,I$$I)I$JRI$J )J$S8p1!ZL ZzIS*mԩAСݩYaUVZFj)[ahN*O-*UKQCǴ 5ک&8wd()yP)JJg%JRK9IFSO))yO*=))ra1)bRS"ST Wckkܹ8`UZP *lj ZuRILE AI$RRĨ$ B ʭN);{vBVsǦmEFk m%>ʻ^>U'ޖE&ޟzSI4z[Cܒ)6KrIoBH9%R]oAܟrJAܖ*oKzr[)*z@ބ䔗z[зvKrIނ\Iw܃6I^4Iw nEn0a%6CRoP'}!j^jǨ 鷡jQW)oJMQ/QWޖmT7ܕ^-Z%*ѵRQ-oJMQ/QrmZ&7[ҵScK@ޛrVlzoUܕ>oKr^>mTK@ܖIDE\=>Tؖ oJI oKrVM-%jށ>-Tz^R}o@ܖI<5PܘSONdUX4^ˇwZ puSc~n҂Kr$M-;ܒ6&ܒK%$ޖ-nITr[%)).!nKrJK-[ITzmR䔛z[CIIw^y z,ʽ<>;4ًHfmcm/wGAQ=)X=_?iT?^*z&=~>:'joMN,і14ߗ揹78l#J}AR|U͠w\chRqx:Zۿ鶴߯,k[[ҥ> B*oTZl0ս7dy6O} r+[aZYVveR{n wrTJR#QRSJPPNNYK]K@zuszU{Xֺ1]lM'\Ro+th3F:Q6b8o޹:lǒReٝ53ys_?:Xrmqz xu6Zƈ'k:1SCZ4# )hL$)<% )hO (IK'JZR'NI:I)I$JI$JI$I)IdRBI|RRRJJe)%3ࡃe%$H9 RS0Sry> +׵En!7PWM)Q()u?:$I)b\&AJQrQqIL bSjRJAd(8 KBРHoVU*lLIJŒ҂֢ Z B LNC owQҧLa]P!mr mMBp CYpT@S J[h IJ '8))dD%RĩK>]ʝ8ަ諡 S!'R!4 )(AK$(EK%)(IK$ %"q@ X<SR Un=)2)4; ZBfVК`J`RJR$4RM*P$R%,}BJZ{)xIKIli;]Gu]n.f>;MmOPD9_nav7~{Y|Qg^,?bp S{N~-i*<|gE{t-h.]E uڿTO?>GwHlAX]Ґk/x?  Jv6 =Cuv-'(ŖwA?os9%;q8ca _:k5~cȟ$K$9e3Jz;ߋ?n1)oc?4oѹ kUZijL,K OiINþX]RJw ~ar5Yݮlx8w3T<}& nYZ3>oEYy{kx>,/JQC?Ejc}s븄XZV-1{[]T0Z$Aҫw Gˀn\{Z '_"KKn, VG6gP^i1JSդKڿanC"vĔD% v z_%au^ԔUNg{~\KR#Je~\Np}A-69wU:VW[tYԲkk$Vc:{ÿs_?JS#yutu ՆF?K_^]]vዎ!K5۝0U-5 cwR:'@ 1;q8 +mF@ܟZmjd'iV8JCJ<$)}*SJ6RSJ$(ILa(R%1JKBI$:d.`H\j$JPI$RJQRd҂I6ۑS)JTw$] )R6IIfJ}oUʼnzRe#)|úN|PHn! 'I,Bv&)$RN'))J.RP> )E"QqIK3+BJѠ&RZ0&3ZVPjDR bܨ o`x􋍷*g몾(s3eM;m\zqaҊޝg-(7Y. -mmcQa<N!(EL6OjPBxR%1)'$0ڍN1yV;kIZm$j JbmKjTp"mKjT{Rڋ6ĩHb[R!ڟj.RЋ-RZXXj ڭN%4,j-ԂRS@)zp)T5EkQT)ԣ R E R IVl' Fؖđhb})ԶlKbT;ڍ-ҐKb6Ķ%JC>]%JDb>!)lFؖĔj}IH6boM*R#%!ږmlBhڍ>ĩH6%b}RUn )ja;IaQ5F؂%%ZlKbJ6ĶwIVjmRؒKdlN ) bbrUؖ}lIVb}ؒb[Q%%ZKbJlKbJ;SlGؖĕh6ڍ-*lOb[ZmFؖĕhvb[RlFؖĕhvbm)Q%*U؟b6Z(Mb}RLZ>ԩHvb["ږ]mJfuJe>-wbXFEWNqSC*Uڛb>Ķ!JA-ޚ}RMbmRmMb[!-Ob[!ږmlJ56mlFjm؅*]%JA>ml) &ڏ-RKj.Ķ%JE1ؕ)jj1bTk+FZIX:Qu)%N+Z)zI!ěR3JLj+BMb+ZP @' R> H5 1 BT0ԡ0-)% P$0)BP'O *F{%"ZLɉ[$IJ%))pR >y12ek݊ /X' %׏%~uNe5NlQ[Z%Oq8[܄GκO7lD]c?I-w"?<O QV|@*>j4s [4h_Oc~HNPR[YXr h ?$WSO;-JK?$,H.*T *IM}dL?U@_zޛէޒ>:g')"%8S߬b=?VdX~Q߂T+||GELuG]`zTKШxJ^S afcC~^7?߽*Sun.ըÙ?HF)E9 U`q n ~stOTF u%JzfWsqoOVr!6nɷd4럂(럽[T]o?Mn7PiRu6vpGrJŀ޵KF> (R^c3*~ꮧӔC-kyX7/#̱7uZ>n68iuld.Bs0@cOjo鏓ߔHeՏ5>͓pH5?[>soKoUT@?Zwמ^uR;^l32Z&Ga0Sc_aUO?s.9t6<1t!))x3kWj?Z,?_Ѯz?zcS?$iK-MAXnYcŕVLUYRS}^Ԉonϥ}IuJHzZecкa[ܦ>IZ٨~P՟%-z=|8q56d`V8%jkVd X+VOEnoPid[s#zQaZ<]7_gp~5 k#shxa&o\|kR{Nk)IM_Ro󸴸y9Ҫ_B#p`?XŘ\r#rmXxy㤧ht9Uw{%vyfU#Ь%gn-JS[ŭrhgPU9SȿU)\dJ$$IJH&)%2R  r9X{\t?YZN;H5|r:`4Y'ZBX ^rҦ$.p)Bӷ;`?CR-C'W~qp\Զ^~WqpK~qp\ԡ."_."."o_wrRڗWzipL~B[Ru/8(ԟ.8.oj[Rxџ/oO's!q[BPv {qWzHW+ B^{+W?jڗU^}U׺; .g=B<WzWK}qp\ԡgOj[QϺ;j_-pqtwtN8Kj\WzOK~Sqp\ԡ.g>9ږԸ""_=mK*/Y?*9Ϻ;j-pE\E??5/W\ԡ.hOK}qsW% mK*/[?*9;j(K*/[?)9Ϻ;j䶥.o>9ږԸ""Kj[RϺ;j_-quwԿ_5r[S\WzOK}qp\U^~SqsRuwBPU^}qsRtwmJ֟uwԿ?5r[RڗU^}qsRtwmKj\WzWK}qsW%-pE\E_5/W\ЗU^~UqsRu\ԡ.o>@-.g>k@<q @_'>IJ\\E?_pK}qsW$%quM>@8JϪ?j(K+ojoW\%%^}qpK}qsW%>ԸϺ;j_䶧ڗWzOK~SqsW'6Ը8ʿ;jW\ԡ.o>8.Kj[R/[>9Ϻ;jڗOzW/O\Զ^~SqpK}qsW'-pE\E?5/O\%."_8Kj\\E?_5/W\%.o>9ږԸ""?5/O\%.ow[R /[?*9;j䶥.o>9-Kj\OzW/W\%.o?)9ږԸ""_-pqwԿ_Kj\\E?_5!8Kj\\E?_pq5/W)8j\WzQGG ڜ5.?7 Զw8O}sPjWzaʯ/8)8.^U]@_r[Q ^9; ڤToV>WqsSwmN[w"PP϶wԿ?;j4%Jz_嶧 JoQ>qxPw? !E%=⏝U`ff=C\z Sb}i3[4_m.\H:bPlUBti N $$IIK TʃΉQqIM jq- (pWnm A%5P*#k)֊jQ8*&m8LqA[Е; &rRwB<_wd|j[<۾x|]ZÜS&*wo/`dk &RMS^8?4}uDㄕo(gd79w'*7k{wbj{ $x?RvUA!; &?W)}΃][ROAwպO 1,yV̏d~O%4ym{<:iJϫ- OGRRc辿8%I6†q,o-?rTtv[ycOL:K?+42xÊTL}`hky VX#Vp˸rgiJ'gGEMY~qKԠN~Zfu7"'&6|*w4(*ޑc V WquB?Ez?J+*sD. <~jMK*n9jsu\ssŏѫY*ްnw_綱EnGη6P䶫4}ls4}st+Biw~S|mI* Պ״7I**ӔhhPOt鶞RˇܕQsm29['(WrR .@`O[(7.%p(vWLZ[)8K\/+06~I;4AbJ*ygp ?A]%Oy1*cU=WU ԸʸC˷^/r~_#~A?5ڇ>Fgռ}Yv#4^5F8kxkG+mBMEXRhA+2Vj)v50 a%.B`S BN~%3.Jmp! #z B#TJ(c)EKJIJiIJH c%5s/50 Y,% uX,&TAy;~>޻Ov}Bv*MQaqm4Nw9-UA)m~<:?xRҲax&:1?xS~iYMA)~iY_/ ~üvIT_x)~iY_K *s/ۘ++% b_:߶?|S~iY_/K%%Pum~_?xeÿ7KJiK'J_/IT_x)~iY_/K% *o/x++% ~ÿ$O?政m~4ؗ%:1?x/x++% ~Ŀ%PuG[iK'JK% *o/x~ⲿb_KUW'J_?|VWKJm~4w%AҗO?qY_/K% *o/x++%/ؗ$O?qK'ؗ%AҗO?敕b_:?xRҲb_% *oRҲb_KUS'ҲbKU['J_?xVOKĿ%Pu?m~4oVW[J~m~4ؗ%AҗO?敓oITOx)m~4ؗ'J~iOoVW[~ſ%Pum~4oVW[Jm~_oITox)~iY?/K- *o7O?敕/ITOx~O?qY_/K% *oR++% b_:?|RҲb_KUW'J_?xVWKJ߶xeK% *kR++% bdx$_?qK/ؗ%#%Pu?m4++&G_/AT_x)~b_um4oVW[_?政m~4ؗ%#$~iMoe~K% *oRҲb_KU:?xRҲb_% *o/x+'% b_:?|RҲb_% *o/x+'- ~Ŀ%Pum~4oVW[JiK'ؗ%Aҗ_?敕b_u?m4oV_K*җ_?敗KV_?政m_oIZ:?x/x+/% ~Ŀ%h~?xVOKĿ%Pum~4odſ?KUW'J_?xVO[Ŀ%Pum~4oe~Ŀ/ؗ$um~4oe~Ŀ/ؗ$_x~O?敕b_ҟ'ؗ'IT_x)~iY_/K% +GW'Ҳb_% +GW'Jۘ+'% ~ÿ:߷1?xS+'% ~ÿ$1?|SiX/O۸)~iYO#%:4wcO#*S{8+t<dx!Iv?oa4ұadx% #*S???敍#% #%;?|SiXádx% #%S{8+Gqr<ޕ%Ҡ+9Wr[? UuYTfx~InL7}Z O'$r"ശ7%%8}>AuLnO.j#CWM3GY?D}5/.q }.Tr^?t}y_+ zL?>p8&+|Z*g![?upCG} }s 5WݣNjg#'<=[3Gzu^Hbcut}/I߸%#~< ]pKg/q<!@R]_%~h^;c?]xpN*`p<C x.g'3G܇ }.g%3[#+K#v>?t}zL!+ǂ~YKW$0fjg/E>}p~bK>Av~?t}/I>ppA?<=~z,}pGHt/MKg x^4tv^?t}>®_&~>Ž;=1Kg x^;X`]%}{\/zhP 53Gܛg/q YKg/q\ ?E>?t}{x?E>~_aׄa]pKg%+ ~,' {x|8>Av~?t}z,h`Np`i3Gܛg%#KY z,p<_|=~^?t}{xy]pKg%+{g%[%+ =~Y {xuz,%GbK+ z,%+<]pKg/q\//_b˳Y z,%+>]pM^^3C/w,%G /z,/E>ooz ?pKW '(]pMGeo)}.Я[ރ?t}/q\/!V1~^?t}/q\/#A]wpKg!Ʈ+Sw֊  q(N1G=^{%ƚyOžOub8JU<;~d|atbeT෠Xu;GWyb[))'8Z!l)qSM3VߘVߢƏޚ}YU#4"i$-H\PJ&VijfԌB ); (mRORRd$RI$$%,TJ*)LJc⤙$SBtS(! (I,RJc B$)% )&0ILvMJSJxIK P$NB3 a8IHF#;h<Ѧ}!E?Z*SE?xpe$NIDeuLZ<KAPv3J5BZ8:@QЛ~6UAN!@ќ*oDTGKTf(Ci=${!})) 9))dҒJdRJR4I&)@RҒJ^RR)IK)IK)JJdiJRR$)%.M)%2IFR)M)JJ])M)JIe)J%*)JJd R)JJe)JFSJe)JJR)JIe)R)))JJe)J Je)J))RIe)())0)))RJiM))t%))yJSJRJR)$IJI!t)IL2iJRS$ҚSJJdFR%%.iHR%/)(tR)IK*)JJ])M)LQ+S$e)JRHSJyILE<ӨyIKQ8EK:JT% 'IJ:I)P'I- RЖ(JS$Kl)BxILCTP$AIE:rII%)2I$&)RE9LM IJb|O RJ)ӦIJIK$JY(O $$ IJRIIKBtN8IKpI$R$J]"S$I$&I$LA JI%hL(IKBhRLBJXФM pSM p%1 %"JLV^JRI"JIJJRI%)$:dI%- iJRxNJXNJRb0 $JRtIJI2A%.JPI$)IIJ'J ' )pS0AIʈRNSIBtTI$RBɊt%,LI$)RIBI"RJ1I$Q)Ħ"L)SN%1!4)pJbAJI$$I)I$JTH%)$RRI(IJLI$$I)I$'ґIJI(I%)/$R'Lt)IBE$)'AJI$S 'p' )JA4' )A?I" ' )IBt$RJT$I)I'I%(' $C 2Ht$RJRIJI$R"I)Idd$L$d$$ I$)$$I*I:I!I %IpBt% Ӥ$I%)$IJI$RBtR'I%, )dRJ$RIR% S$t%,\'ILa(O B Y$$'IV\H$$I)E$IJH$I%dIJMt)t8Q))yMII"JXHIBJRI%))t'IJLLt%)RJI*Nd.D' )S H AM@)SʊEK铤M)"&I$%(N%)2r%)$$$E$)'M))E:b)$5Mt$$BxLRRDHD0I"dII%,9HTJ:IR2%)$t F$I$R8L$E%):I$BI )d$E$I%($ 'I%- 'I)2tRI$tIKR'I$,H$I8I JJ0NJT&N$$I)PIB*RnRI$'EJI$R$$RI$I$I%+I$$I)IBPJRI% )PI$$I)I$JRhNJRPI)dI:GTI%))I%)RRI$I%)$R $JRPI%-I'%,PJRI%撖:I$$$(NRRNJRH'IJNI%('L):I"ӦN4'IJI JRtN BNR*RRH)dI%)2t)I))dI-\JXI$$%IRBPIRCI I$R$$%)$|RI$P:JRI$$N%. JRI$E(IK%tJ'I%- BtS)IKBPPJP $JSRI$I%)$IJI$RLJ$JRIr )b9 $JdIJd䤒I$RI$IBJRIJRI$BtRH )A<& d&R )N3I@)' NR$I2HtJI)I:d$&I$:dIR')R'LJNL2 RIhRIK$IK$S%,TaI"$RJZI%I2ttH$d SNIJ H铤$ ^iy $TnS$HII%) H)I$*RI$I"JA$RI$TI%+I$))J)%I$JRI$$ RI$tȩI$ $I)I$REJI$RN)$RI<&N'I$I:dhNJY$IJI:dO )dI%)$IJI:hIJ)$JRI$I$$A%)$IJI)I%)2pIK$tIJL2JR_IJI$RI:JY$I)d$NI%(I$NR(I:JRtJRt:J\' tTtREJNI)pIIRI:JRI|SI%.I$I$$IE"NSI &)I%)$I)E$IJJI%* $I$$I%)$IK)$RI$I$R%)$$I)IdIJI:I)dR$I:bI$$I)I$JRI$tS IV\I$RI$II%)$$$JPI"SJJQLR )d SRO %)1I$LI$$I)I$IJI$RH$ % IRq8AK HR H(2N `JddI4E I$)I$%)$$$JRE$)IL1 )I)$I$R$IJLR$dF)dI%,I1IKC%-@tJX$JNRN)P&O䒗I$))I'IK'AJH$H]$JI$I)$AK:*QI2tI)$IJI$RI$I%)$ )I$JRI$I$'L RI$I$$I)I$JRI$2I)t'IK$H)t$I$)tLL2 ]$"$LI)PIR$%)2I$$I)I$JRI$RI$ JRDJTI)d铤$:JY:IRI%)$IJJRJRI$I$$I)A:A2J]$ )I$)A$' NR2tT铤I$J]$RJRI$I2t $L%)$IJI$RI2JRI$%"PI$RI$$I)I$JT$I)IBPJRI$t)I'I%)$IK'I(IJ $J] :JRIRI$I$RI$I%,t%.NH$%)2I$'KRn%%)$IJI%?I%YrI$ $|I$LS$2I$$E%)2r%- 4iRII%,&IJ$$I%,$)I$JP $JRRI)d$U)$ JPO xAK4' )R !H A:N' HILH]"EKd$$dI$,t%I%(H)dI)4'I,I"O ,RHL2JR_IKqIdRI:J[R$)$&%.dIJN'IJ2tR)d%)$T2Ht'AJI$RIJRSI$.I$$'IJI$I I$RI$JJI$IR$JRI$I$% $I|PR)$d)I$IJI$RI$I%+I%))I$I%)$IJI$JRI$RRI$I$$I)I$JRI%JRI$IR&I%.L%,$I$$0IJI$RI%(I%)$IJI$RJRIKBtIJ IKI%/I)I'IJNI.2t铤$I$R$IK:JRt$'L)$ )I$I2t$LI)I$$I)dIJH &NJY$I$ )dI$&I:JY:II%)$tIJI$RIJI$RI$I%,2ttIJL2JPNdE$RJIJI$JRI$SeI$) I%\%)&铤HJRd%*RI$I$JRdR"LJJY:II$tIK'LJRI$C$I$)dJ\JJe AE8ILp:]:d.d)tLRL*RI$S$JRI$ I%+$I H)$ Y(I$JT)$% $E%-:I)@)JI$ K R$$Ӧ RJR))tI%/)$ ]2IRL$H)I$*]$2J]$AJI JRtD'M)$$H)tJI)tBI!t$WI2I)IRI%*RI$I $)]$ 'L%,I$JRRI:JRI$$ &IJNI)I%)$$I)I$JRI$I$$I)I$$$ddI%.$IJI$RIJI$)I$JRA$RI$I%)$))RI$&NJRP8 )I$%,IR҄)p0NtRJ\HpN0NI2tTI$I$BI'I+'I)I I$RJRI$I$$I)I&)II%)1N Y$IJLRIJI2I)E$IJI$RNS$$2J]2IRI$I%)$IJI$)D:JRd"$I)I$JRI&AKNJRI$I$$$I$NH$I)I$RIJI$SBIjU)IS/I%>x H)ԗ$| j $ExHx"I)${LWzIx*Hx2H)Ex2H^ J}$Ax*I)ė} S8_?BuH% :$P $ /RIO/RIO/RIOɗI$TI$P|J~)I)K紑SeI)}I%?A$Wϩ $S/EO2S|W$L~x I)R+RIO$$KRIO/I%>^J~H/IO)/IO)/IOA%I) %H! %H $|I%?A|I$A|I?A|I?B${I$?B$i$Di$@$_=_=_=K紑K"A|H~I| ~I|H~I|I~I|*~N{I?B${I%?B$Wi$D$$$T$$_=_= K紒S"K紒S"K紒S"K紒S"K紒S"K紒C!I|I~I|J~I|J~I|J~LWω$4ω$Di$DĒS"K紒CE|I~ 5I) %I) 9_=/IOЉ$ _=$SRIO/IOH/IO!:$T/IOii"Ԃ$$IO/II)A%zI)A:$T"|ޒJ~I|ޒJ~I|ޒJ~)/IO /IO/AO/IO/IO/RIO/RIO$$$$|J~I|J~H/IO$|ޒ*~NoI?H&_8$/IO /EO_7ӯIO /IO /IO /EO /IO /AO /EO /IOguake-3.6.3/guake/data/pixmaps/intro-medium.jpg000066400000000000000000004340431346623310400214320ustar00rootroot00000000000000JFIFHHExifII*nv(1 ~2iHHGIMP 2.8.202018:04:14 19:37:08peshkov - Fotolia02210100@H(PVHHJFIFC    $.' ",#(7),01444'9=82<.342C  2!!22222222222222222222222222222222222222222222222222{" }!1AQa"q2#BR$3br %&'()*456789:CDEFGHIJSTUVWXYZcdefghijstuvwxyz w!1AQaq"2B #3Rbr $4%&'()*56789:CDEFGHIJSTUVWXYZcdefghijstuvwxyz ?1Tkuy_jյR#??5=upz֬%C][?S.ĥդb:!YS=뒆q.:ԹH/~`3RzvhS`t q?a٩VsV!ԬëcSc zMȹJ<1 )#o;H Davvoq9F=Gek! i%U ㏛?2H#d'ڕE5`KIFb%_&`iR,Hn-sG.f>_~T {}^j|`{jI-%kߴڑͤ|gonm1Ŭyp?|sQK3k/UVW|ˬ'PcKTy f&O*=,MmxƾE[iS"1o  {Fit}s]Ћ/2ϊfuBq/rON6@}BQvzbbEȥ}Q)"A 5ARTPY%"l, N-U?y1KARmTN(+A7f"IO5q.\ݢ0⸥'{ :8cڠd7) L+ʰ e8؝P ɩ!3mDwU[kY#rj?G% |cgj ɢFd4a 7czn9!X8\CFGf;Mu#og@1;ESxL()OjJ<#\' o Ky)7(FqPQD5!<'5-nIz|ԑA&lG%EW_CulEaر8OhHvG7AE^`/AfR \k6Z3ǣHfHAa#8PHiqh#vk j嶇U&ヌ4`)Tz :k G_κh;E3JR_T #/7!ҘJ?.HGk5.i_ AQ_ gd)g6~,?޹WeI0x#pfѳ7~}U` >}U` bdGKTJf56)#riCy(ǿZԨ+#m#?Ÿvփc2"¦LJaJ*iOUW#JCZ 1ȯ:-p)gK#sT j]BFmVD3Tm<:g%\/ FE.p<%UI>)$5+U_RxgBR 4o4]DK4‘Tus]3ut1v$9;m& d>\VJ |ᚽMT:qL˞N+ʆ=ȩVl@].gw``.{ʗCDQzTͦƬm\y>3mMx05=lRhVTk|=i]K2dƵNJ PMVoKP,eVn=X֫˯?ƔG?*mZ*AǙjfd^AR?=4a_j8ciZ8w_k*)|?2G8"0?>:HkHot?awlQG;#r=<ӤfUdY5|PfZҋ:\6ٽc6j_Z5\ H$FUM`/RI=-z0~֮GB>􂩏@Ï^rQMqڸȤ YA!W|3+^9zΥaSF=:bqGy'>_^y_{ +@3EkŏoE} d`q*_` CcԒӚ!ns is+Zo88,0G],JKVB AޟZz?>_L6u˿#Qd`>q:~Y*ֹM#'J I} ;]KҾ; \dF*9ǥx%z_.&K<~:.GOBяꋑ"o&=:MTTZ3G@3/1iCu8\)G5jqr8z_&w.?3wVmsO{Ϡ"KN !!}O8\tm@EaǑoy^|ksú?4wWm>CH9@HGnVMgE[K}~!fHS ƣZpHci(hi(4sIE>$cz:1SBբ&S !@i–#Ҋhttp://ns.adobe.com/xap/1.0/ 42358DBD1D9C4D7F011E65E9B4B77CC8 xmp.iid:ae118c27-94de-5a47-854d-39d3cc2e6a03 42358DBD1D9C4D7F011E65E9B4B77CC8 xmp.iid:ae118c27-94de-5a47-854d-39d3cc2e6a03 Adobe Photoshop CC Windows 2015-05-21T09:10:41+02:00 2015-05-25T20:27:27+02:00 2015-05-25T20:27:27+02:00 image/jpeg x-default x-default B18E65B96DE294972CDE5D0C574F5B47 3 C     C     X2 4(L*4  J(1`0$1Cpd` c6X C-"l 2 ((NLchPnD:,dC+Pc cP2@!clz0c@@ `0d+*( thEn555c!1x1"C$rؖX1C cc) `/ XрKd٬\} dHd1C!ՀD$2@0^um͔5(I%$:4d1`0(VM4h `x5%2p]gX۔j11(MfJ%dHc&O $H`Js"%d$JN>lc+Q0`Q@F @%h%1:.E$Hd1W,c"D "yՅ$̀K7o d@Hc d4h1Ѥ `:ΡwH!B4`0AZE@$Pƀ%TA@wC!ϟ\mDH"P "K9^R$:c&O)5"D2dL27@HcT*E1!$0@H cN`AKD @b* `|yڔ 68H!d2Q(9d%HdMN&HBpR$H52Duq׎.)f&J$2PĆ2D&YգK6eRY]6ft$!*i% !JLJ͙2ZJI$I$2C 5|zW.9c@ BXs{uy$ՄD,:]sdزrYAUٻ4.KȘh&ݙXL lLhrLH"M4%"c'J)X%Red"C$I 难]++:e Be@`*c24-&:ErKKzY7>Aߙ̒jd',͒P̐sSIe52M6$b{Gom&H5diB~l4P (s`Jm74yR,Xg]qr"2Vk2k"Q"k"dR>}v{U׆7LJYK&9esox9-(Й|NXr1jdcEń G^.ލδk/KݶQnAhқtsիNN3|2ڛw.ZRI3 V1]-cSt=z#)ի\j"1ԥ%.2TVN٢n;;c]zͧYS$$H9dv{W׆6%SS˾=3y:6YQEHΓzpϗq,D﾿?͚7o5J]^rhғ}ܧ^qvsf7;M*bnkaT{p1+u]F#7v["5]>*+ٕEkEnbknvzr]UƆX^i%Mp8សo'7l^Zs @3Dc qqK%luw9<[TIq6=U=Vߧ]Kǝmp8]v+x7o^to~[Nwc7sMj08#6$:< O=9HsvQ}[:4LyN/k=NG:8q[cQlS4nor1Mv$ ]nSe[S,ƻ{--n^Z395 J$Hz8]xQrYK5l>~sឣ-zt肾x~_4|{?[{m=o _z,[bg>wᯢXG5ny;sF^%[רumgY͘zNΰs`glso-;]Ey.=t1=tfήYt>W]۹#i^ɹޚy7:NSʲ3wK^F#f|5p_z{m ]d!P,@`~f"CYd1e˴q\,dRƺkʤ41Κ;zG͞vn_Cz^iofo]wiw^=CsYz_I<7yަ6s0(AtLn:O:O]g\y5V^>} z[Rc玺ݦ5>}ƺwkz㟗_R:mOzL޴W<׷o<ץ㟮y>zƽ=o&s5(fso$0+&HSDa˭8ӼJ'&Mb.}:>oM9}='3+o\&vq{˿A~=>K|w9S˹5Eg[ߟ&A$crِݳtw;>%ٗG 7^Ln#zS9^WR:mO{lިS<׾8c^t͇\mns@7Ly>fșR$H(5Ǜ9D#[owѬ<]30aV5宷{Lu{׍lWw6nՌ<ῠ<򿛯Ծ{O9F7{_%}Ok?g,xsų+.LD#랏|S2o=\!ιM0G;m/ϾwU}O7g.>徻7ӻ_'}K٥M2LfQ3נԿLHܙM%kDlxoc:YXVM>lޮЁ4)f(7+-)5qc*L맳Tf\afy\Ѧ!] l#*4ٙqFٓDC7L _;Y%$0ZcP&H2dL"WAim! U+҂ZZL`rm:ggLŁTAW%J fPPD-H `"WƺO)U$IT"2dJjN Q2d4uq4LΘ)C>Y$N%$M}Yl4zaYQfE]3=1̲㙛&nyu%eY3N7#ami@ ( =3sәG*Q -yΌ*;2w2%Fe8iv}Ph8FXTW͜ab4Jkrݝ.,,,'&I2i22dd2'S%_}<[|}/}'tcXO|6\ZHK2 X :)a(9][sTMa"TP!}3nUQ f54tRِSi6tT #MD@I0ɩ8),ɬt,,[bqa2dDɤe읓$L$KIOR6gxNb&(!`fL2uʻt\:4 J={F_dqR-y͋FF&w3ԐTѳ*z*Y(U2VI>\fX͜L<6KIbXYKr$dgR$I,dnRkiw3\3Uf7¨52Zzdu’uNoϠ :b d x~vhpZjh5i$˩hT"Lɪp78€DZ aI;>Xɩ,Y1笚ȵ.o#)䩒I˒d$ʑ"Z O/*u\y,e[dܪQsrVVȶ/.&2V*6l$d#i2,%|-[^\}'+'BdS4dךӯ=O-`"^ F{'ga9}()fj9h+i `=DٚUhwYyjBX͎,V|͟KKs'.Nz]!zjfcuPXYEٷٕNBRIVЖz͉;%_ }*l?7ޯWn^rNͶK"L贄W 5h 1d"lܣx}|fƪƫ (RAO]2rƮΠJ1p푆Jd%d%jYrjVcTάL3o,g#|Ocg_O=?1\86Zke\z8t˭ΐ!QP޲`_< Q2ci"Dٻs}w^YFX?-GC `|ee#+:J"鍬o|2ysYRH UjYcI%x,6ufkNeH/狕6x]'tkuzyu/KSo|}[& 0" $K|\؀@DCW@{^g~tf,*` !&OL|^ow8.-n7SΪ ߭.?m-df=Lz7v\sZ[Ry6Fu͗ uSQ&gDr/i_bur΀s  "j5*=3±{'+\͛]vӡSK@GNq"Dɘǃ;Ӛ0㪳|o}>N2fƷ`Yf^Nςe;h4}n7ٳKC Y˔ĉ0[CT[2r=7X<\D ͌`!j /fx^#ظ_>oH oEWm+[H :(ĕ ^wvz9w?;LF1 @"ongϦזs剼ieu};N9sdΝ'[ۼ71N"C1scM5EƟܶN?G~udA@  $@CWvQ/r Asnu[mD P!@<o]ߣݹӍQLH:}&q笼jt[.w\p铜WnF9^.ks5ykTv͜srzegXSx9ƿ^?G~~.O@'6  @H!z!d}'9}uSޒW@QdID "d;|~[Ωͯ NFkoқn}?m-egR)[fѸ!n5F9^oxݴmv+X*23xq6 lw+yc-xֿ=/ߤ~?G~~{}>ΕVi( @>fu=iPTN*",q"u3_}~{O*9jaH# #gşW>F˖dD0'gso|>ןV"4zszջvv{?9)ư\dl囩e8[ qod|2jZ`T'ci 21k̍lPD*w"%ZɏY/+,跢{:p+ZL@"fi=&bq'rT*#ʵ{ƬiF7IfϋӽHǭ/<ﳅ=-m$N[(n&p>aӞf!.'}=/??G~3u Bo ^ߙ0jB K$ 2NfOvӯ݊GR ""!9O_^ϑ:ݧЅD 55 ɳ;,0o;f)ԉjHqWnwoˮ^ul\{)H瞶/NcʫK糅]FM-n2w rթ~XC,.]uG}f1|6tZ&RAƼ5ʪ:S8"3Ȕ0R0oy]sY]=nv6g n$Yh*i+цQK^Q@J]VYa:y7~=lQ>5,F2c |?.FYD;d3q|}9^v-st6Yju8oV$j5#\/l>ޙk7[vZ0 cS՛Vu\OI%9'5enasϦ)ʉlm pWʿ|JYm:=/EÎJDֵnL,rjhk %ܙnwͶHjqu^/f5HA"I?7^k)o7RSY9abuZ}>ߧߊŚ"A#ig =wo9-GLj2jiEtMd0;=7-NtL&(,HEz+}%`*%67)^{,޵TjYY);k2I.<;WequL6nImQk~9?_[($(LMy09s׭Wm΢N#%D @gfMe~~+B2,_ᯫ~G$o%Sı*͆mTH\$3*77cYd1i(J-"\Țbܲ "Qd|>Lޏ\DH[q[@K:f5.Z͜]2則fNm[.df/!PH,GPqT鯏_rM%kYI*K q|3k9ф3__meZڙR ҴEe-nq/Oκ~PDE8G~fHt) W (P@BT :2iٍ ơdH9q^_ˑ\:{XA,ılI 9K"^Va͕uZ5 $2qc6#C5YNo 0:>yzq.P/K}7N{>tź|ϡ!K@%ێդϜ~Ao.\~]6u(N% I,IVV)%2C;K@RT:GH*7!JHjԅvCHՂB\##rߖz7~qXfس(*JK+db󹘹٘xrJV jI^~1`]מL^915T @ZLhyo=|9?BPd5nb[ rrl/[ַ\>]6U!CDX$Y!$^*BT6 Q꽫R5 JUvWZ+!s #dHE>Wը&Ɍ B$legYYn5ɗL=w KD"n9[Tqu˵/5VF2cU˧Iq퍗|Yx}|ok hi_#so8/eu=/XCJ+A`1cDZ*#4BU^u^VCRWdHm[11H9poN=>_ԁy@1Y["[7͕fsg+ij0[ٍ-m!ZI$- $CVbLJ4ms%d#Zhn6}iup4k$EH#meeO>ٿ{3 WBĀ  5 -! XV^nTB*һ+܍Bb!¢,j!N\GOU篪5-QW.-ӿ<SU0 ,Z~}]g?M<]3`j"db 6QD5CDdFHĂ!j.=s/9R@` 0S8/8P5djvܲjt)ME`B1:]:VvfƛI1P 4u߫@EW: QX!bc!q#ٹ҈C` @/"fL{56uZVA`B1:]:V6VI00 ?&zy BČP0 bCCx۹ڔ C08~ SDӕv9$s}ߟv&LH$v DC PSLC@ P0T+Pȓi&DrL~+t S1 `q<@l)ѳwXBk.ލ_kƊtX\]f 6 g7f8ůS5j\Ɍ*d+1pζNvGA%5C0SmЮ"峿Nms67͘Y3G8ɫi.;=Y۸^t[-)[eq!1 @ԙݎ]$Fkn~DA.4U.-u|:t^답99PL>Nǖ%ްlMqGU9]Qjt9zrl"rΣf FrUaݧ]o=]Fn/+wiܜ1KNt65/5F}i:Gn5^fX_MтD:`HC8'24vMy7Ġwvř8U~.n33c @^xKy`1 NA^OC @F @Z-` !cQAf 9gU'2F1`ш@~+8iQAXfb5kBr#.\22dzg !<ٔK%VK~5svYZJxgYE[^=UR""V%b1!!`CC)M @j0Jd,[%ˢU.l51J7I`oSW<\Թ9l&yŬZ\+q+0ϣ<ٳ:-,ŲX+,&DD&rL*i+8E5T z¤*TLwLP $ *p@ %J[ iULc M (@CT¥2 Ūkimz"^w(q fq gc{fYk5yj5FQj5FQj52dɑ\jL2dɓ;dɓ="'Cq!8q!u_XSe?A 3&L*g& <ɽcOO/{I̚FLܝ2dɑ ɓ&L/nɟNcț?Vzy1{MN,')W#^MH0dGwA7dɓ;TXf%fEEdƙ3g4iꌓ#DC 1Mzy.\N6dE%qQ&i7yݜ$ES[ӹr\f92"2.n)& 0` 0`^RϨr"&=<v0TĊQ."v^\8utjw'1M+udmlmwkԏPU1[p5;z7z(L0``-;5RzƛonQ6ƁG=$Pg|ޱ|duK z'잔ɢ@~r~C=&<\QiqbіAI< DA%A"pqkܮI (qp"AN}h _dE]R;ɐk!ْz}D[MV 7]%%;nHH!DtRdEMĈ̬sO?s[6er RL,`mB(32[4Jq,q>-";;,:´J:`|J3nrO9Ps{MݜWjgéiC6!g_Cl] *1%_QI_%%+Ij{6^}KL.ozF˷^7Ӿ |qw*TI4RdiHdZlҦ,h6ٺe!Lp2-ao9RJ9")6 y'tP6.|:GZӔZL!SFْ0MD׍Wn(i𷮨Jzif8Y%U;* ~Q`l:j7rJ Me^T3nro nu0cv 61&LJ8cҲ)3(Q.fvnݮEBB^c$e$l'H.R׵t'ng鑎[ mZ/_-TJxP?WP=CrJ>MEQmlbahitJ[[mrOtrfUSfV:]U[n6Ɓ_Mr՛<$2]cKF6k-:Kry0RTGɺmxYuV>-XUVCQӧum |R5A rUEY)6ȹmޑznv݃ 0`{IP &{Α2 oI/! I[D_>xF^EKMM% ݇m>ldSQYͦFuoʴjυRk#nmMfng 0`>v' 0`x/v4u 5)SL[7,IGFI+JJsQىg I_;pLM]MV@x͹}|lfY2;j䆣Rqr=|WJJ>8sCh]M5,,}-RmJ< dj($#1K{c 4_}ҟШ~tlI?JQ{zl{S'M%*ez=t+w2d)uaizEۙ*10`'C7`dw[.EqN Ĕp+QIF%R[dܚ w3m2ߕ׍%YmLGWmURw/SSi#N쾖63<Myh.:5sI(IW!5tJoj-$|)aߖ2jh0A_ntՌ-}-GS座|[Rj1>A}U-ڗ8Ҕu2Ms WE_Vzy߃ `p`!䖓#6EC*TA`><@%e"PREjMD26GE`#Ai%>Q`xMIߑm[Hx#wT-C :FdMoiلv -$p|Da`H&IT|t,*xM~1RZ?"ZlFGOFEI#rKKR ' Q5#m1ێAZ|GG(~FLp` o{'˻!hCXJq  pD0+2,W8G VaiV#3`"YA `ߤtHӡՐl0c8b7ziS,jx ӆ#0&aY#0h8BF"nT4!E" $ X?T0` n܌_C w;ݏO!zy)Q{~{gqy40cv Tp`IzL'SO"n 0I |ߍ'n{Xqc8ќxOE3ߗ#/og?\(*_O+I=;"(dE2d{?#Wuݬzp8Ȏ2dȊdR5DS&+k~,|zYG mH5PMT&U Bj5PMT&U Bj5PMT&U Bj5PMT&U Bj5PMT&] Bj5КMt&[-zl^ZŏnΫZ:ѧۄ:%ϛ/<$-8= ], `kfH&#TNmJUDfFI*e%Et jxu5,ZIQZjҎQ^GljIhUmN{elT>)$lʊvMJ{eE3bz~īq 4UMZV5Tm슝J.wDtWO2_EfX*ju 3v[}-;Nnoh)bm%dѺzȟ5UΥemʭuΩQ]QV2dɓ&L2dɓ&L2dɓ&L2dɓ&|/]s_oO.dɃHi4ѭH44D !rw~P~.x_bG?T-JPR6nĹBzڈt[y(*ceZ+e:f8WW֝ 0` ~ y _I_oM)WvLrd "`k[AD  J");P~QςufBs0G =4}Fii&j XX*LXAg|o?|΍/[_M{W֛EvL2*ɓ"8FDQT_|b4D4L wTU2j(77#]67UjQ-CEO4}puXti$кG$ }3Hdդm\4:7wDtɓ?ɽM袊*3ɓQ2dbܫW1nEaݑ;*\kF گ)MK-oSLq[eYI*ukb:esS+CmuRQsKud3:=jٞ2[;=ߔ<΍792dɟA QEQLvLyG QdU5F#hZc~Mdɑ9Ep cF(C&E6bʏmM;SǔIbHRz9m `'ѿ';gWM装vLQw^0hjEpAQ=&슢ܨ+|{z#Q5L6b_y/ o.2dȂ~nھUQGw~1J5wdU= dWCw4T4Dq*U1o<7)Io.~ݝ'O_u7Th* 8QÞk5 QMʆ "xnp@~LU1o\ca n 7wE?swNG_EwXox2"3у\+),ŲTEvE]rNjM"4}[|o17/4T:7wEs*܂ ]U_.?XHbQ\dAFz4E5q;M2ɑ2j53wiIiگKM ZJgsMM}A?u//t^t_3f "#߃]ƍi`TگKwM`M&J4Ǚѧ,z QwEj1T*9>(Bѥ'B3╠h'I-hΔm>*O⭤i>*O⭤i>*O⭤i>*O⭤i>*O(sR5~*O)Zd>&[mj>'ڏⅨj.]#km.z O:u'(_F..쑯!_ *IHb#"B$"Ai4F0`y*)ڟKg`0`:]EM.8+907/&w&35>=QLɓ&ES&wnƣP3?{j/nqR~!HjoRRT܊1F(S(RJTSelF~#E[zH7%,UJ_]O]}ǹݓ&Lݓ=گc~(&LݝFɓ;iN1 Bt%hxѭ$"MCJWnidUHZO݃ *|r>v<\VS$STS:%g٪Ҷ%}t.?%DYQ^>5M=c&{K/}=wtaL2dɝdM^{QES&wgvwdȂ * _F!'i#Do(1F)ƣP%p#(GQ!kp`0`2j%˷1WӮ򠓅-SԾ'>M's wrdqQɒ~GF*(Tɓ&LݑDC&L܄^9 ,b1bךf")TRD}Zn`tˇ牽^+JK"H[Oq\K W UWVu';R&V5OQ{뻢 y (ɑMȦLK9~j%UE) nɞ)"2aҊ*ܞ$8<9!D*<ڏ _0``t(qT~m;>Wu\%LtSm %,ʖRuXh!Vy2W}/{/sDAP]/v~E_~UEQ*zCɓ;~h v#q*QTjF$89¨r8G#Ci-_PQ 0`݂?J "ΈoIPB+3 ®h##US9Þh٥Ԟ׻MȢ(gS*oEL2UK*"nS;L2d!_V? s Wp2"5 P׍qUݓQ+6B0cv 0`Q0Vlj߈ĪYRTl$ΑY*dW\ɥq h$QK#޽wErndɝ0`Z+EiwUxлTUEQTɓ")&|}0َ(M^(Mx8jS&LQɑTȊdrS;2%`0`OсZk1Z͝(;z#me5op#j: h]ZFȪdM}IA=0`V]+>51ԽQR js<ԴF#g$JS -DVi'Eu$k5DW@n__rS:=sQ )8fܢŠ"6s~,骮&PIo݃;ަ;ߏQEQw)Eܢ a]ȦwdADL^z)&w2dEnO96a.T`-$mMdZ,VxW޾/!~Ήmˀȧ;Jc_QvnEٚ59bMA*de/.w,WudTйϸyߎ7.ܽܢwsѵ3kvvJ:3R9N:3S9N:3R9F 3N9: #jD9jci*s4TjGTNv9`SLr1˴.Lr94b@vCqN +҂k]|oE޾/!~jNK9*䪣ů廙w3g-Zs9nr嫙W3g-Zs9nr廙w3g-\[s9nr廙w3G-\s9nrˑw3G.\\r9nr廙w3.G.܎]r9vS|rmI#v2l-NA u:>rAR{o+}Z+7 /. /!~{SNؑdU6uhtZfZx9`/'H)hꦺt=%ove7H7lͣۻH:D=ސ[g[뤠mtvm׵|[{yV^Ll6KWFzOfͶMO|CJ}Mڈ~#}e$=(9,Li=K6h6^K4 hmDU2R"_mAo.*Hm[&.y]uMeۋvc]&:[_+ymdW++8L̽_*|cvi"QERzD0%lLJκîNĺGS# qEHD0޾7! E]%ň,D8"z Q1آMoIjꑣdlq׳[\[IѱRqmE-?L_h~eb.wY5f3ʍg閫Ur3:MKOΒQSmٝ"Jɒ_5J@VóYT[w "lHR'Y,ږUMSIt|rGDAv<=+k ]j1Bl{HKjpkF=]=w="C_vҮ#j2dɓ&MC&ȧVEF:g-g/h 9s,Vk]<6mdg;vT}[,`Yg![)oB-9شbӝNv-9شbӝNv-9ؔbӝNv-9شbӝNv-9شbӝ4شcSG4t f'`Y_h;Amv[\/jNg;MjZQ'Чa)3MJ1TFM&I;;Sh6eviHۏ;#ə5 ;K#dػw="4CjQ&L!M2+PC1Jq!8Cq gCk,SqN)8SqN)8SqN!8uCq fY!5C:RYI_Q'w=t܍..&ˢ#I{HviP-bH"*=&Ҕ}dQ ݂sm{Iy٭h(㣃 1NMB8]?RL}##Ѧ֯̍Ȉ` 37csv|bB4 S 0```nn{;߂92` M& !"gLAyz4W+!SqޒdcN%|6RvcD/2Klj˼iIvڅc,w:+6<<EV%e2iSIɓQblNT]*OFQSY jڧP*0i0#J p8G Eje:2Tp8G#p8Gc{5/#p8GpN 8'#p8G & w2.8G #p8GaLGO Xi4M&T[lJ| iu sZ|A+PKZ յ#T󄼵I5AgRM7*ÆA CNSSND##W8epG[]N_m1%Nڧy{;V7yڐ^H^)mHz +k.N۸3go߹s;vv㶫ݸr;zv3Go߹r;~v 3.g0\`s;~s 3.G0\`s;~s #'oN`r9v3.g0\`s;~v 3.g0\`s9s 3go߹r;zv5mW|rr;vvˉwKEWK:f%ފ?ҺQ+ʼn Eh>L=H^G: #6r/!G%r 5CN ҍ4m Ht/&{2&\peSL6&{"X؂ةr4H6LXG h:Da+A{ *CuY.qXfu.YfunYfunYfu.YfunYbunYbunYfunZfu.Yfu.u.Yfu.Xfu֮Yfu.XbunYfunYfu.Xfu֮ZUv%Uwc݄({%X`v (hhhQ(ZQmcSLvE9TZ [deIQ,sهۣQjgGjG 4öPvJ?f*DH%D  hx!&"52gsFG5:RdZ@.&j^CZvNi9}/×Zr\aˍ9m-妜ÖrZa,9e,ÖXrg,F&r1T-SLr05Lr)t-ҜJr)tjNZ嘎Z娎Z娅٘Ya,9e,rg,,9f3c9e,ÖXrZaL9m-ƜӗZrD朾lJtjh8p f=0i44<8l8,-uu[Ô9Ø' ca3&wJ  w.G2dɓQj5FQ&L2dɓ;dɓ;dɓ&L2dɓ&L2dɓ&L2dɓ&L2dɓ&L2g~ 0`ip`ZH4h7Oy7'/wn nǔb  *xA_ ' ~;'SM'_ߙ3 0@P!13"2AQR`bapq#?W ikgI]QW}J>»Jϣ>/>K 5g՟tK ?>rt՟tڮvr$CţxxNWZ,y$Nt<ˡue$Ԃ2:zmPhFguMjӒsI\#c9^t"Ai)^9gŠA#I$bCzI#dI$b$FnYdI ^duwEg V|u+>| /:ZR<3sNI ~U(\UXViUm}i}T;Z<[Jp#T(ghUۦQMjU*:1C!Y1hƉ;E0*u$vĘH)HČHČHƹʫ= hWM%`Ma< )<  6͡h_ B"~dB!eɫ>n~logVLoc՗&V#AO]O1RJV+A/V\m ST w:$T{E2ɴI$I$I$I$I$I$I$O"5jބAh#,Fgnvp mv=욾Bo՟"Vu-" ;=HܽkoGY RY_"VAq򻗭m?J:j,;т n^KU? А2VgZn" Y2[}_Bsϡ VbvbWfVܽkoɽW{t{>P+TE~>̇PE+U̡k;+,Y*[|jHz˗V[YdY]U.[|_RCY_*X;7z=Ԗ%"b)mֶ辤0V%9^F"!vCCWzMnF2ZԔ]b)M%pz5u%j1يCuI:hY7ZWR]UN)VeZ#Bo9NDETΘwG9{ϚVrMvyYt6I'޶q媕M2GM)y_(#:Z2NdR|2 K# 2&;YFx"MW?6I$Iw/WGi1N/Ve#MevEHЛDdm:S(AAn^mOH"@UQOyHY挳oE.ӫ5NXO"C^i7Edܽ\i>BoZ.i6hg"Y[-M; 'USPz^MOd$ "P9ewx -Vd^zoՖ-gSI$&Ci;@H #$dګ2O(;ֲhEYjRQjkj!dDAG$WGk FX FHfEAVY$\ACW? VF՗?1eQ%5.^˾#h   AAYFXL$5hș#F6U&j1Tccc iY?(WYU#$f=:8fI$#pڋ;+]~H A Z-@FnMmF"I&ܛӂ*e6Ժiq#ڜටv8-mNjp;Sڜට8Njp;Sڜv8jp[Sڜට8-N jp[C^ʼL{?{"AAZ2Œ"f]Dg~6c*W;,AAAa0AAAa0H 0H˵~$E$uٓ|IWMvݼޜz嗟!AA}}xʲFlcUGBco79j­eKlvkO?AAEn/}\Y+QTqEc*;zՏhcTqE_#q|"*E_#q|&jSXSc IMr ,C>YF1Nm$NI$I$I&i'4Ni$CZI&rxjF(1F#$D͠zLLUىىىىLdI$Mߖf$I$MI$C03`F*Q1gIIIIIIIHHHHHHHHHHB!IIG!E$RB"xI쐈<-<hEQ0A`D" a I1Aa!isk+_t,!f!CF. ]M_/ !01@APQa2"3`bBRq?{͋'e 1kvZ_NWUZ:zk/UY{J/UYvC>콢{;=Y{EE"we3Z,:Ѧ,!/ d2 a*y˷IR*RDx}/>B-uNR+I$fƘzc$F ~[*#.oLoy a Vzazb {;ڝlFE_{SN!Rړ ;VzٌKT :d3zlɲâ1aiV5ƈ/!ڝE Yلa0bI(jn-1 ֏[2%( wEMZWWn)ŢtMޥyԯ= I$NeyڋT7j;騧}WrTIKVzٔSn͔ofABCMڢ=*Ͻ՝[՝v^ENɒ6I:(vc12J\ڱwC$]d߇j]nAYwTSgi$YӸ6I"vw}gS֒I$I$;.{'ՔHv w8G zڳͪD[|F#wUeI$22tSgc&Bj.I$ڝSi)P:ae<7zvjGCD1Pؔ(WdTSYѦY^/$Vziz{Yv=l+5h KOII$馢$fwi](/UGmtګNM6fI"fzڛ=.UeҒu$I#$F-2ShƌhlW3l1ͤUb'sLc}{t1I6N Cz1I7:SbI"f+;*Dʨ1 7tDH6[=.ˡ:I$I$z3t6NUI$I$I6I$H$I= 'ĩo7I$I$I$I$ڝo\I:I$RI$Вt= ZrNI'$jXiu;S$I>Qu$I$I$Iݩz2I$qut 'VSsi$ڒ|$fafafac.*FafafafafC0 0 ,t  ,AAH a0H l AG,B-{$I$I$}/x᭿=v^K҅ ~:޸7f㒩HNfjݏª}(#D{%nB޸9N-Nq~ܜU~~E`k(UE0e:]=eAl˨ùKBcCʨTLeAv? S#ئxOeY7Ng2P8mw{NfI&$Y,oK}DoUzjv~O\OJJ%Q`;c]UZ#ثm}l슓˨Okw ڞ뾋ҼN7-YuRRQ4N*J}UВm$oD/o']UG[;# +yKޮó*j;u$I$ I$6ONm6}GSn]WQ۫$y'JIn[8G=ڟUvI'CֆI$VO¯_M>w!M#IvWah~-G$I&-Zޥ^}zi=Rj?40}>cX}ȨgwCCjV}jZ7:5~|*kâ^TU,Cܪ}M+}Eݝw1 Z+j{WeU+1wD }ʴBj{W~:PGg l쮄; _kS=F+!]5 }6TUѨ5d/ ^֧-5_يW~ ]ó1BQUЄ$4E׀_kQ+Y1MEVbHx+G{w~ vVB8ûTiVCкH4v į}v=Z**jJGf N֜EXE{wV^/֬1Z**D=(-BOfdpbČHČHČHČHČJ2QUIUWb37F/z ɱ&ċr & 0L&~7!xKpǩt*WbȤVzQT]_˨aѻ|z,vB$d}EݕiWeWBQ=ئTUK03* U_&U.[iVOZ2I$D遢#GʊJY$Hʴ] ^e]QlvBBo$NGRITT;R+V$q{ p~BZQlvBFI'TvI=#KQVDH$2l![dIפֿv؛ww6=o$MڛMJIc*+ЅY2z2I:I&I$ڞ Tr>0EBT$*s(7ZQntӢm$;"nNTU- BR:p:N iљOc10>%(\J^nzu; kTtQQV-sm7B$I$I$J{c^V⪞K6hD/ VBwDAd;=u!ԛ΄+q>=I =TмF*WZ JA9 h "ϡ=+q>S.R`B.NLfDiwTOEߏln$I$tI #[I$I:(1*xLcF4f#1јjUvf;t;I$I$I$I#$M]YI$c@"E&+qYy$I$J?%NTJbF:LtG]"v^ I.$I$I$nMejM #B!||"]].;f˽ݬ'G/|>Uu]c:M]y$Ew*6aFB![cccd&@LսZEn֫$=Ϡ(39b>>ϠϠ3;fAAAAAAIhƌhƌhČDI$ccDx1U֛I6BNۍ`B'.^,ߌmI&Hb1F#bd,f"I׷  Z :vI ߫pE]mWnI$I$o$$ۍ=hc؋jې@nHdt#~1w~pg+Ȓu=-j-ReSe/&&pBQvOEVPZh9Z>NVh9j>N^9z~NZ()i>\]թP>2dRdRr'/Ir4?&E#5?')Grt%GȿIG/OKC9J>NR9jZh9J>NRh9Z>m$I$nVb1F#b1DJ z>+rg)rg)rg'O9?rOG%K9?r9O9_9_9_9o2>̏#2̿,`FF$b1f63}2I$I=noI$iVz+U֑C+>7IO&’ ϥH\I$II$I$i$I$I$I$I$I$I$I$I$I$IČh|Tf,^.%=W^Nm$I6DI?I(m:6kM&$Q#plmgp(pvwBDuUTj.&l$dI.޶u|Y7h٩'%J, CwzSԓId|gB%YPIb :paFaDY N]PcPT?&cwm)s鎍5z:?B]NMɨUR?u?BONhߠR#c*\C4fs3w3f.$fk1fs3.#]foٙf}fgٙf}fgٙf}fgٙf}fgٙf}U3>ϳ3rfk3Yy3Yfq 0bfeEU6&'Ԙ$'׮%4:q#N RE}:E6CAYrI$I$I$I$I$I$? [wH  UUen;SوBZXuIK:܏"F#豈Gb: a#AAF  [AAAA`Hބ*JZdF !uI$хU |6el&U ؜z[~(Œ(Œ(ˤAU]? (0P`ˤA (0P`A (0P`A (0P`ˤA-tttt(2220Pee`A. (2222їI DE;U@1$AD4a}-F4c3 f1uvVGcsm6"5 Z-$F6f31S1a1$iƌf3' V43838383838383g39fs3g3::9Ψfs383838383838303cىɲBnK14c1`gšTtvb;2e~̽{-N׿{k{˲{+f^ԽC+W !"123A4Qaqr #0@BPt5DRbs$6CcS`%pd?捗ସԬ|R#e^%a<LCqAfbrJ+3Vf'$NIYOlVฏ+fi~PoqeSwtqE v PM.n5v~J5( h hr4a27t.u~ j{N,h؎%>6-"#dZm ~ ;-cLlm䧲yL+I横&/y)mdK' ]4ABːCPqQ7իdX?;Wc&;]I"8#㧴ް![G?!VS8 s̕ #G{nQ?seZVC-lVÃb=!JFkr/!!&133cV6?ES)#\C:ݔXa{J FnT g As1qmܨj~&ibXM/{X-S~-;!I'n4\xGaI婕MW;D둢Fɮj5Yr]cVvmvҨ;Hȓ!Oe`Bj-fݛWKcAPɰƢn\#<;-ҴOUO<^87aA|]<ŗu,cg#RFJ5R* ǠXlα61 ;7 ! Ώ1vO T80]2 'lGwG2i7 bƬ[ mjM..c}hX41-#t{ӈXcdT?;}(b xo1DI 4o+[E2ŠyM/an{Eȴo0X/{ˊĬv\~.3SỹO-'@ɵʹE9D[pP!P+D:Fja2 {$nNq@VFK{LC`܅Vƍɭ%:3|F,H?3cТonBrH 2܁Jn8p@Z -2*m Y_ҿ]jiG!F#˥rP*.H}3T.<hnb`Ob_,eD%7ܢs@PX+ܥ,K#a0,Jnܤ}"~'\9 }U`۹J#Zv]ı(;M_=.C@rC.DVHF[G;ZVz.S?'E? &a'>iW)bz}7 @ڧt!v,msSSCqdFyk%'ɔc3g ͯ`ѷumktiVzjYGfqc9go{r\s(c|k3G=k5#ֳP8Z@=i".Aa(v\o \%\vnInDO`JߡrznR?/;7T\1 \&/!ň{!gmvW:B ͇X'Qb6j4^Nv^1-A-P7Lє+YT(>*0xMfءcn: \`Xbl ZvIc>ӓXBS77"0؛/}r 0t}M8Z }0Ͷ>)w06N&1S^E>Fֆ" &4%8Ӷ';Hu[,kUGórhVzW]ennO>r|=7)K8ىk?",?|.ϰBz3۷ dFWrTv}|jfU=gO꩞TB`CB3abȌ?/`Am%8ɸ)kid+N:C"^R9SR*TqNwH׶yRZ> $jk[y}-iN [5JkqͽW9-k5Zt;`kzߟVyܺ]vFH{0Vhw/~wc:?c_*O -gRֶ&Žԓjsx%bX.ı,KkbX%bXLKıwKibX%b1vؼmı,Kı]ıya7J3,xqg)gYmk 85g)gƳY8uk:5gγgYƳYq8uk:Rγ,xqk:5gγgYƳYq8uk:5gγYq8uk:5gγgYƬR3,9K:5g)gYYrγ,9K:RxvISjCZYQ{Qu"0>-y7XVJX%ʓn!y-$C]JsZ ҋJ$3>AAћݓc OJ)x]&xaԻf2ݩ yShdž"8<;U|'n46 ; =͸٧ ȴ2»`.kVnj-Y?VE"jȣq5dQ(MYn&7VE"ՑFjȣq5dQ(MYn&7VE"ՑFjȣq5dQ(MYn&7VE"ՑFjȣq5dQ(MYn&7%"jȣ5dQ(MY4n&7VE"ՑFjȣq5dQ(M@ #~́AGG=6Nż015+:A2(NٽbTSׁ咢v3u:mV` ?ꍅ[DS[a2uD;$.͟ojDLl|u*2]Pb> hpY# `s 2K_bPp̜Z[mf04+B Bg+eiҘAh/mtIE # a,cF4\!LmnM @kb &&'kC`.`Z1 _huaW֭PB&;fV:)!32W09ҝmuV+j٢@a,- QLF.I$ڍ Nxg>UN)}:kS l>){Vc%}`;qMMD6d6e X{32WʍnZx,IuFC*5:VJ O-"]w?+_:I"D8 F,WZIM{KvCpqLI.^"lӴ/qEuΣVr Z $6cUkچV5F"6ss2{|}z^Y߀=X]õW΢zm4*hi3tqluٶu?KofޥI)'ZXil^KG[$QcȚSAP##')ąKlg`60=M$ QJ,lPfWe1aK)4_&e6Nq)7co!dl)2yU%u$?hٷ~K&ĺ6Vu7-$28)(lGժ #Alb9{Q(BŠ&0tbMWw`&ɘ-TgaBFz'm46ImEm*)h&kzGmJgΡJ \*T Fe%Pbѩpm6>Wa;gBh{퉖?[BKmrP{sa9Q(եP 9cBdMՉulK|<;U|'nCpk2񂤊 k 4XU՘7B|O&{wVKlvn-+ۛ}uQ5&M Th8^2afRXpQͥQ tϮEf{> D3n5 _Ea9VL?,%F|J!bbQLD Xq(q wG&jU*&:vXt @?fV:89EEcۍZ,5#F [`B /$~b]w?+_:얐Osmu{[CgF(ڧQҭS4NXj[i,sZ76f.o13zRߜJ?#Xl9>ƊtJIni>e rRI2ʦ26qU7T_G;Z4׳RD I]c:s_L|;!-Lc)Qc\$Ʃs Mlb|=H9%9Җ%UEp;AHt΍:8O4S[>I&ĺ6Vu7JS*RǶTQe_#=.U:}N+2Cgjի0_&ɷSjnV¢UK L[֙]J̶{vƝ6#ˌTn;l-zS)vR0; 8TVJH2az} !\Mi;JSӦ|<`ŲDz-e3eiOo2},F;[nڅ1 hn'duNc%~b]w?+_:rjx˵*,WK8ǺCʑ=Os"XN-p76dPA*F[V(uu32q>(p*+#8v e/w, v󰨦&x3ЉpDU"JS~ 8)ǰ{$}lV3Vo΅'j]IJ{%g k%i#$L6^١oKg[aګQ=cp\sI3~ݻ(4R_f,uE\ڮ3L-&$ì!gT`Ec]q]͜| i<(*x Nژj4FkI4hцPkKeGF֒+ 1\eaS#A3(lqR,` ^pESi _3VdEp=xƻcOKe+XxvOX;lOy %Zu2UjxgQ"u_0ea^o\rZyG|5gd"*ʮ֜jV=KGI-LCdXv'5qѶj슦Ϟ 4;S 8OqRgKd_"6ѩLVuƒZ61QێϞ9{[sq„' mJf0=SdhTMb[Km& /=0#XxvOX̱҇&,ȬY9^;)7i3YsQb6יhjcAz5Y5hƱcc/7V%y-U󘞱q-b]w+_9bX%=X]õWbzz|X+z.͝oj 5c=X_õWbzz|OՉulK|<;U<'np\W7ՋulK|<;U|'np\W7ՉulK|<;U<'n4JMkI֨dqM F:bĤB%zM E=&c6JYdJW/}^Xƥ4}حJ)7'wZ]秉O/_[QԾK:ֿWྵ/~}kGRꎥ/~}oGRꎥK:Tu/_[QԾ}oGRꎥK:Tu/_[QԾ}oGRꎥK:ֿTu/~}oGRꎥK:ֿWྵ/~}k~ __Z_՞j;_[]n͟ojýHk!!O)6u/ A8%k3M8}k1M8}k1NCD^6dCYwYGӹ iؽRSN-oLg4F{[Sy hlo)M?yYYV1f(cFLqA(NOs"K2Q4}c)/k)^[&.GMFY[v-mM3Zڛg7ykjo!C=孩{[Sy -mM3Zڛg7ykjo!C=孩{[Sy -mM3ZڛgM'xyK3Zޛg7yYF-oL7Zޙo3ykzg!C=霆[9 r*M)aѡ:%ں7wVs7|(ȁj8'Ev,@Xغ7wVs7|+& kd%&ʳVCL rUPB[8ы،s*V}meBbmaq4xrh>Ň`Dv# 'b8H #aVEU A;[ۖwn.w[aک1=cpnpwl_$ڽh bL]̼B&ԟ F?5 ΆCw7z‡'aBޢ ФΨJ'ퟥ6\N@[c-p20' Ri~N0jXK 2"O6wVs7|+C/1kd$lŻ̠lvYLW E= 4>Ņ)}a3kΕ@t8 e(Apx ؛:E)n(BdaR)myN_< 4fϭ7 ,(QOCi`Lj69I)apKԃ lˁڝE؞lK|<;U<'nQC6 :%P+uB)m/;ܹ™XAkm#U >(6='+O9{ߝЛѣeC32i?YDd!7gگfGpTY)m,OC]#/,e?شwd;ͨ {cogġcL N l6CN6!"Of%c{O7wVs7VM;4]ͅ Z-֧\^-^*םa !6 9ӶnSeV<2XP[,"T*Ō{PsX1~vP>C̄)ڝE-T󘞱w|~rX 2qSѰ@:,6VDZ%JJp]Zǥ1bl;(Ȍ6:Zq;H’NUWLi{C|T'pn/R<޳|p%k(y蝓{V[gk;X5ObzػHgzxNؚ]D@Cyv]͆&ޅ;B/8r[!pڋ$qjַ$l]YG)K=I7g,#ޥԳԮS}՟r8;4 `|.C=ڦ]'p9HE1u`0:ܚCZvOʉ:TN1Բqu,ceK./YqxRˍK9:r7YceHaJ<8XZ)b䆾 B:v?(u,~PYԳCg#R:r?YԳCgcRrR9MYG(u,~PYԳRFK./YqxRˋ:\N1ԭ|^1ԳCY7YqxRˋ:\^1Բ񎥗u,ceK./YqxRˋ:\^1Բquw&hi.nz;|=*W;rZ*Xִς֟Z> Z~kO-gsൟ|ςZ> Yk?-gsൟ|ςZ> Yk?-gsൟ|ςZ> Yk?-g?s൧|ς֟Z> Zk_-ks൷O൷O൷OൿOൿOൿO?tc5,IfK5Yo|7Y( PuߦoGxtP݌?B p<# 4G8?n3z;Btq? 51!Ѭnϭ9y7~v>iǬbB2fdne_Ae_AehqʩkcZ?!kcZ?!kcZ7%kcZ7%kcZ7%kcZ7%kcZ7%kcZ7%kcZ7%kܕcZ7!kܕcrZ7%k(ܕrVU_$ŗYKݹ XȟVI{Uc7UXT7"Wl\M\^y5-[W.-J+=T@+l&…Mx}Jp ϕfM3b=ACROf^D&†?c\db` 09½R#14d#.&PiI?ո:c ,& >Lf ( \ j"6-seD;T6cCp^aTwj#خf>vSQ<&ΘDhlPLgCPFak!2N L>6 Xmv(bBFo2 ~lh;&! 0v6!Ez|{ 1[%u=,]w-oȔy꜈CI2F}ocU.xvs!8VϹB&nQFA7C`[DCso,2%vs,8B,'K Cw;ʭmp XQ5:M00@clǥ[IdDLH jF(6g  Gƾ մKj?u<@+ jpsE\x A0)9,l>OyWg:j'cd6B {e\+aEƏ(FfÔV!;B Ҳ\ Y!b YK(ƱCv;q4l{f|du:pXdmk]sJ{)ViPCF6!h\ h۶bŎiN!1'Ĉ\^YJN~>8p/8'=7>2JĤil67ax9X/qqx'cf"M=Ό ZzK[xhvO_(n JOb3LE1ԸpFq6LbvjX*2tcD*0^lڡfRRgl* :+ GHQ/zi®!mc 5x&3´4ѪhM69(R*Ͷ *хaiTsG|0PY=L1CodW&lQPĤ`T5mbĝ% DDۋ١AEaøiTF@3Gs4ikSb2vuAa+/b6*;APP1g %gJTV荤CYDlh^*:4!I{*$OjSQȑ#`9ʼnD!QٔӖ U. fT-mJKDhZv~œ!t& B\Ed7٧N0ݛMI;;8;HpLKaXwƱ5hY\84XaFK4dzim3U T F;q0lYuIo*;c[[itfDsSԱT:G}G_ 崝V;/-'$fU[J{C0(Ш,K&mr2yS)ѩhj8-MBEk5;wҩТGt}b61XĽptCś ͭ3!2jGbkDŽee¥^kdӺee_"ԊFsH ZeeY}2-*;4b镗eʉTU:rDm/ 4oÄ񇰨Z ^ZZBevC.k/ X ] v5=kaA}.<1¥Z}bذW Pa$OBsSXZւmli'Sݪԧ@ P&AĵΨt:(8`Fs)#4U ҩoB5@;@)x {Lo5nǍ*Р П7UT)ЄfT.isTx̒B%}!Ň;H/te^M Ս)ԞllmQ^+І*/_۳}BݽK_EPgR!juABHQ V RZlo /_${ Jq+{\/qq+=_Ԯ!/qq}\/5+=_Ԯ!/qq}|C_@jWR=_Ծ!/5+{\C_@jWRQ`P/_Rla Jԋ4T&$bE$GU v/_۳}BݽJ/uYlI}BݝK_EPgRk٩6=à.d563.tWT/ԾnΥU vu(mGb4 _EпgRShc RGxpf2&]!. p{'0FCdXКH$!hsNFamǏjk@sEiQX[OV䬁ֿk(h=k C?~)oZ+R]f,'|KjTGDHd2(F#fF>9'^:D}'P!`Z4x$Lގ;j.뽝nݏ xN`Pe+fH-NNDC+pڬ#R[m V[]֟HXp?vGwJm +bu!5Gėv@iBϡ?b<\>q9cEbNy!@:?j%ad9X mp+\B!HN+=7z;C4V3k؏ln@v3- а!ֆ,2ޱ,^? s'Xf->bxڼЩѨՄHfń*\vsԿ;?jK[5\-v!Բ້a2O̭q=M4"G^32x3{Z884X çG5B)1=DmՏk*(ZV!:Cq$!]UuR݆AмϡxmFLV0 ś搬5g)g[ƳY ޴e XZ޵ch}z|b߱CasD_]nV.68e#Jבx̵ֽNebs-{kȋ^DZ\-re̵̵Ne"s-ykȜ^DZ^?kȜ^?k-xe̵2׏Z^?k-yk-ve̵2׏Z]k]Z]k-xe̵Ne̵2׏Z^?k-yk-xe̵2׏Z'2׏Z'2ב9̵Nes-ve̵2oZ'2ב9̵Ne"s-ykMJ#b&gı,Kĭ`*,?fZ9Օ X1y\RZNZ(Q:J!gi T_j8[Ypq,*<7nOaQ8iS1 `+6%V!Ub Yg,*+0>J!V߸,*tVk]Ef+5YtVk]Ef+5YtVk]Ef+5YtVk]Ef+5YJtVkC]Ef+5YtVk]Ef+5YtVk]Ef+5YtVk]Ef+5YtVk]Ef+3YtVk=EYEvE8- CeKı,uβ9G:+7+5+5Vhs8ֶhpVحR[K!dX 8e 7-U#w )3b]$؄uoVk+e,e̲_2tV_EeV_Eg:+9Gⳝ,Eg:+9YΊtVsEg:+9YΊtV_Eg:+9YΊtVskVSSSSS7x^2񗌬ZY1tdUrjEtn A1T'B BD' $Ap{"zdh3$I?M\VT".*U**bWK*鐺@YtTT4MI$ڑؒI}Y$ @{uڦ( Hu 11 U%P+; W$D+2RTqd#`VB"JU "*y꠪TB 111112II65"E_kHESI] ]bwI"bviz/&H"t I4UTYR)J8Dt7q12DL H!@Ebd1 N>\1B DVńИ$$$ E HxbBYtdKh&*@EB$A0^)mKQ;2am|9)W'q7$tDơT'D$KfLIQb+$ !BCk7a}}/{Qa$Z[A VuC؆+mfv{_Bᦟ(Ut<$!UKeET!nq"1]2B: TNI$@b'0Ym B*KW# z,D$`(@(-~ Jl[ШZ}LL5DHHB2*.5! Bh4Y(IQIٹc:YB; 'b6Vc#) 4\D腁 H XJIDHypl?DJɢy- &xvxQϞX3ܰȿ*H ɒjoV>J)gMyZc- R"( $ޑ>A6 !G$+*@n+ \^߱D | ѷo.VSњ7eTʜjI h d6簔^<? XB .mC5OqK5U4BR=*D5;r/)pBl?0I,ڞiĠozt}zs+Xi#qЍS@B; K%_y,v$zL-"y<)ooA(T.,,}`,ddcO~ cooe;?q^[ѪїlݿubRZU]N#l;8\|C$1zfD8HK]Z[!$Hp7*^.,hZat&dOp ו Hh[KTR^؝-cR5ۯP'h-G2Iv얢LJo٢i 7{5_5_Saot QT{TDR:Aƌ JJ"}T T8RMcx1 1,-뗬sgR,-XI3vCCX J;Qu`ݗ _t`>-h҉d$Q!.>4Qimkrz{_\FP;$o<1}‰QJCx|',*qJJӈ:B-'el=6JcbζYB !ֻ8Ja%#jPYt6? aп;,ycy7,M9[_}R%C{pjN7CQQfwt'*J Sf=Q%Ғ8´EP2.;v5:G$y?f)=U24 (,b сKK )UYTAOVξsIJԀB~ QS!9DOsF9:~cQsQjDE/eIk~+p;}!ZF~^>AWCi"UGk fMIJ jT/W~ ěAuOC( *(z*l-F~@TfMZkA(0-5A g|k} r BHn(F)k2O y! lTZq>4Qrk>,;0);5x `{>\4&Y;\ƅH}.hRgrc?&u^>Ǣ!$Xa7RjQȄy=``eUIM9"B*i[•Ai #I>ǕRʰn<裢?BM}=K~} WeoQ"lGN3aT(2P TSqD&EBN{!(O݀8~iQ5$Β ark$] ܚ= xzzq x6j NP\{dxco5 Mɸ URRyYmH[ y 7{PBB[4 73ہPɒ\6Wur &(ښ<\.Z{p%O>CZTm*zkwckW{ 5xF*,WSlz@CW{9EZ@'M't9=+ߣ2\MT (Z4VZbpRF1Д"[mm+|?TZ[!$lw8٤& s IO;텃H$ #u!u{>D^SEP)pǰ#M<5sȱFM2 viXhlc./=2S'<)h[){߲۾*:ne^tb=ϰkD9(Pkgݑj>`IX[+:4H&W|ޒ TqRA#wͱ|,H0m6Yؕx^)ДfhG!nŗ;G4Besz%DѤz9nxi1M?OWp& #_DN_ \ \3rat [mabh r'9S_&}yuh?\r߈ԃQ&4},՚nGQ$? manzKFH:K߹X/0GZӯ#'ـ=wHhN\ k4$|Im YFS{Qcx#@5סǻ] C?A^ƯHx;M@,@NEԮq\?&E e :BD.1FT"CMHJ YX-0.Vf):DN[ - 9`#@BhAc$aDC( ++A!X`H6"R$dR%vT,agS l)58 Lj N"n 1 D   RR6hE%RJJDh H@4; h$D6b&(nJXE  ١+ 5h& X4tFѢ BB% Hh[#D5"J҄F@J!V$!!KAkAPTA60oitE@@$$%$$ DQ*ҺTC*,G-&\OJ%tdkZ'.(3 n=Qqe(!X)u@A JP$@%гUԨ~c#*.nyOI$IdI&#V$BZpL:螐ECq RIҥCkS?"GbO?u{u͟1E||_OOOOOOOGDcg( 3_ʟʟʟʟʟʟŸŸŸΟϟƟƏRf׀Oh82N?HI)R&#! &&I$^IzfhĮ$@AT W J! QTEбV[hZO)jszwyRqh'^Gk_r/A1!lB؅ bԆȆȅ dA bpA]ذ5ðl۬shx@ps;gS H\0iN&"hbV= bB.֓@=PfwUlc7LLk$2hTI$zV(%""( R(&'D&HB}RNҎصL0,"@pVWWusԼ O5 >|ݣRn5M=q۳E֙CC͡7dւ'"b1-ܹ+v3n4q٘{fBFXf5(0.VNlw4Q+dL%ƕ9bM(y1Ԟ (tW>t,hSIԮ'8s 4HmզYE Bs:kc6Q3k%7hS5p3r,sm)^[a Cyi0 ִk1*lL RεN+:#d$іƸ=':e_^}Ē+t$Lbc}27$I$ QJIJAP+[5&IP)T"('R \6,akknGs5XbD.,-@X)՝b6Fu|&H/mNI̫1й--rwV>ߟA)i !HJV6JVXK%M"#]քm&Jy&.ٲ[j +̫_e8#Eن<o!G32}.D$NCd B M !;Q!h$%F ABkQ,2i˸n%9{uJaEK RJBj.,[w;NX)ĮuQQg;&X_rWieq-䶍Diܽ n6]aZP|hi٧PqtI؞r촛[PEwz RLnЕ2&"b`H6ZճMSĐo(p2v?>E @ @A@̱K]CtOH@n$nH$Ȣ*4LT"aDTRh !Q:*s`3 }dHDQŅkgَvMVտ\{nd!<'lS %;,> 15 d[!Ibi y],nT6-)!p5&I MgOe)lY $cJpsYd iՒQY򦔵]nĽcdL2dɓ$H"D$H"D$H"DI5 "-3Rų \{~j[T)w^R"ey-e|'*lD1r_5%aauN "@$I0İ NQZ+TAAA@LG@MT/1EB3 #HH Ie) Dĉ j~] (7 HytzﺢC?eXt5=xYZı6Fڃ9ƒjlijFI'yCJD4*юdU[f{zܢ;d%Vvjer3k/\0>m!Ύ.O(p$FyN8^Ė-%|D,PVI'PnRut2Y]R#7bу^h;EPBw"*Рa%&=wQM9 O8x}׷f[8p5WV,^Z΄.F r9kB6\޷9]AsQ 3gМd$l]XLA*VvC$$MȦ-"u*6sT K_~$(JPo Wxvo] !6O)j?΋K&&4 \3h㉉NJg$Ʌ(nF=wRAcf(QԒ;iѷ.S+X~8 6 hR MC͡)a=f"!,iXy&yma jL8Fi6Poi A'+L %=ߊL%Uo[jDuXv\2oQ10&vL%k19sƲmAd^M{a8/舿'еjo qfLYIpfFQY (E\W1 ՉE;$!Qo% "F3n@QݧYsb %e+,=$w%w!E9x#-2.& F7l;? kTI.#:*,1qu$oy%ߩ141.qD ;va2rJ;iq̝KfFDAGF*KsujgVq.8}L3Z%D ]Ņ1L%D̨s@j,F=6ĚQwB3',~6,a+h%Fā?\ѹgW% "xhӊ&!zM@t- *1O(n *3SAA 1`RxD#r Q~ʄiD sBR9d2$NB!Lk \z5&3#2ǑG!P@StOccH$/KI PA   ~\ӞVp[ ș9P9b!3* bq8OKc#j,ZʃHbeQLXfRb:j!W1U>ˑ&wRO"鱏ghb17EuNUDꘘX?F5J='-(F5d!&" t,R8~T2q: CQ)c@eFCLh4eHN"IILFQt @m n# K45#Cl&hh!Б0+JJӱKߡe>,GY2ۮ} kh]с6HI$x X5ȲY4 8k"l`d"~,,H tnxLaƶ{uLb>tt-1| xN24xԌd:9Kh} =,ҕ2 /y׃ gm^5B3tI"b–蘘:-"UFGK5,1 :Zh ⍑t|W^3X => 0g(s*#|y_I|jo{CXCʳeOQ#+e<IM^V$#6J1f" B5$}}{ԢÍz$V BFZp$:PcCvlE\rT7B&\IG511BZZ뻸E:Ms|z F{q_t7dfooXfCZK6C \' jsN W0O)a-]O ^:pK-R&/ Sc~q0d )~,RK̙=1PƆCI%)c_ 2DX A'0bm %hZ\/1,Qa5Kh=_$H|4K2lUFe)^aViLk\FN^]+5XMhKg#5SkK Paq>dAfc XBnV6&G ?gaѷׂ=  RnKv6ͣ驒cz5r{˘O 4uT:AHĵV:h]vbK')I?B3MÅZȄI)Пѡ؛T'6$)$z[<#WoaA\{nҽ cF\r˗.\:S>ILaQ/Hm#ь%)GR.!*R;P2;ZZNnAO^$61Ԃt 쥕bR‘>r}/tbMq0P~ј]PdN Y?Qq^1$1A>k?P@-a07OUT,O]Tly">2qY^J9[P#ԯq+Nַg8jO&oO/2yy/2yy̞^d<~d#G?fsyg?޲[Wɺ(:rĎ7rgi\dk;)#xȰSĥ*8v>bA@JJu;&q>C>Gx娹d\ Cc M̆!R3b`Z4v 6w0,yQeKKXhF7V}fz级cW (B hЉ)! #J6l4iPJk 6Ic61ܚ<:A92O.A'I:}FWFM ܑ1\'a2HlP--QapMpJW>cO1t_$9vafa+cD (w~EDnKI2jIVKмv! 41z7Hs~`<;TDp.m0}+ġh@J"7X˹xDM{ ;Z'%EM t5sG3^&יΈ/#?Cßw}?~|f\ _)>VLGLdLL3%s:ֿb! Bq1!qgB#A4} !bI$ItJ6=rS/P'صnS40D l 2kѡSphArD$bLnjMgI$I'I$LK&"I'JӪ~='E,0DQrΠOY߭;!a }WwPtg83OA/@Wd_G_y!k׎no Ph*! jd^oҤ,X-IeFtzȳt&hNAN]╴#O+N}0ȵoq7_s9/>G]cgXFvXxHfIa??.~pBXr/O???????????݉ =ߛPr؟NSp~͈SH`h}DZŌ3P''$ЄX~^ >R'zxi b+hHY-is&MLZHB{7d.w>5\G7TҔ($q*:[c&u1Vl"E#ݙ*]vSXRs Ffgc*隫95,8Y *ִ <%G)y,HKPz_o>ZճCMzwEgqUx6WœbJT-G'*0Gr6H]|E6LؓE ELV6MVn,jMLvϏ f.e-!"B{BM\1 ֗~-amtUeWzJ5K8]|U2v)YjmqS:< 62N[v8 rs26Q4.ނ6WR ,n%d ¤r gGa3j `ˌ8{/"̓{64 ƋUb]?U ۨٝ>Is]Dz9x 6|F61Ap&V$nE t's+r/im*,yvgk?x}Ըn| uMAT6"@lbưs vܶ[U>0M2mFNP'сe"K9%pIȖJSD*Ҙ9_X-)#Vlm]1 -5O..)XR8+L45) vx L{ J%(g`LqH1,h$2vb&=(͞aF&IK Ov/]\o*n?ʒ[e51""|Qf-ᥤv[efzr)΋lbM&7&LdFm[>"J!Qٻ(Hcؼx$.n݅p}d,ޔ4;̀{/"knjnG7>f՚' bЅhOu՝2{i\:b1qx2;i.ȓK0ЬM+gf$L4`$-luC;d>Xه)WRIARlO;gD4M)1eoOe)DǗXFfc0M4}"]#NF1\&^].y/1vd}dBJR ~"˴]܆>nZKDBQ6dM U$Rrxj q&S L~\ $,]r+<'1/ͅB8RXyi˘+4 OyۓvM:!dHPVnkg7ɯ#dD)Iov 3k+6C,_܆a= *w34M}W;6zc!k;r'fIKpX;\[\L^f5*>S.iKd~`00ӃXoa^@BQm&鍕jݵ3$ J$HiDlY"4{-[ ye%pd E@y'f6=ؘ|\9Cg~J5[ٞZȦH'*zneXy+mzcHVz$TD>61dJ."$%Tenǐk1氺I[4~xd?٠od>s #je29dp(%%ZI2 s 69[3I$'&F*RRfXNS:~=ܟ~̓e؄!Rqw(ЬNu+"1- e,jIĥKpjI>U B#J Q3,4dhݶ m@l0hZ|Ԅ&Elyg$EhLNtrŰ6/-\D "w" e%PTR;%DTTTL2:~W/8{2Xjd8A<Ň2+:%> $"u$/UCd4#9h2d2rJ$ød!!!!2iC!&LC$;brNI&2f$(NLoFcl1" R_ʤ')Nh  %wjG#`׫&'ۏ!Ϙeǃ/ 6<_TuM{ o? | q__??'''7/?~Ǔ>/_?_ݻ||_5oK?_|>8I~//'M|||??'ly?+!g)~A}K,<˽GYywb;ؒHҁ$1Zd6,=Hh{Au^],y d'IϊL@yKz7 s/t6RBI&SI2x_._"=i/!!Ɋx= ~#>Dv$9{7D12H,a4{=SSL/qMx:SJ=9Rs.(7x<)֏rzi |,Iߪ8xVAvSu GC4W}M0w76y->eC#% k4ܟGG߳Ok[M1AI; j0fSzy kc[g;X>A?D3 e|?Я(| 2~"s(vʍuHcԓ3]?m$߱7jO~tN/s8?Հ\{Kw-ş|g$q_BIG_O'_󯃓ξ L~O7|im'iȵ$_'q?З'9}>}?Ϳ>>}?~?w"_ww>I~3}0A|<?Bh`ԴEQ^ {A]Cvo6}E43ڢJ˨H'I6$̍4 K#t(.b bI5,Ƅ/++*8xA0 w̄0d@Wf:245Rc;*0F C  RBug V_MJubiE JW"Gzj15V"u uAQfy'I\&66:<2h !)"AGC H"u<JHW}ȂmX J(K4kYiz$D"T&g/D5FPEȚ@QdB} PGZ 毩#z"j4tyCZ JTB&iI#tb2?Vi%BTBч.!ա !2n:7WV# 4TB)$BOAQtI7u%O$^x# $YץݎmM]:I&? 4T5R'*HE[c# "w$Oެ2=UTD>\՘] B ] i5V2ŚJ.EkFDҪ)z*,U&ë̸P: u^I,Є-*KMMhx45 m$H$$iml@ $I$I$I$I$I?dIw}_6I4I&i6m.mlI Ii$I$H4I$K"A5mi&M$=PMI4MoI%Kmm-mDdoݤM=$ S?mI&m-]Klele$&ٵfi%I -trI[dOͤmW_I&I$I&IM&K,&M$Ԛ@$HO=mfIkkk%MmY Ț&!!5_mjcm-]_lԐOnm$Z@iIM% HOm [~} 9M-m'%fvEHH@!68M6ݿ`` 4_} f~dJD6RA$m&ƻm4g"OWH$?m;"-$ $@i,i:g}I2i&3I ]3$u%OZoI$nmɧ?+$)A.lP/OuI-WBItFHIi&m.M?_y ^P֊^o,ɴT K=EOOo}Gmq.A]w{{kd漽H6.mZ_w~wh#wCkMFdό~#II T6F͠zN_iܯ5̰(MI)Vm$!2v< zI/ )[mOPPԬQ_~dr6OK`@X@O/$}x>S鶐Y=9@N2iNNFld7`*(RIpgrj84xCD3&_0ĒIܣ8ؼUD&O _$mMr#>l=M!1pIo4 7m2GM6U\::vYA*LVNqlh/}虿'A$mM&lօ92thpu㇓[V>WIa{9tjZ8"&t ۤXao<$o`LQP'Yq5PoZtzWS]Joi m_D];X3fH!';yL܃"1>I_YMRq*KCmz,Y'>zQI \-YdH̤V6XY'dgMIhIlԃr$ }Ke[ez-M$˯YoY}i7}e]z[m[em$ZAa-m$_w5-pRדg>OKfoI'l m|X[mӉoB;daߦ$b̽a_M)&lR[t6(H&m O6i?m}v\!TvRI`8ڈI[il4 o6/IBJ;A Hh$9[iz#6-$t7jۿI6hR_8˲j@A,2oH<$4# 6 KX>I~f>&PKkC@o{dǽoΰB)_~QXhkd!@LdI$I)^mk!3[mi^;*t/7sdM{ a!Iemmmwfv"C؛J)Ugo 1&$cu!\(Mel6E4}}_˲#_ o}m]HODZYkܧ)p]6]7d:ݲllcWH(Y&}&)nmSRB ZP! ıKA.lEO{$rv mkۄ:|Zd_oft?]?խ J3Orȭ<&b4gA͍Z[ZHv :C^f[-d4bhͽ6M9hmYm)$I[! 6t’Mm0PIe>MOguOm$d;⧌4IjY"ɀ).BE}mI5R[}MJo Gi$yŗ _l>ɱMk^@oK}ld=Av8 iRѴ&-_n8Lʨ3)߰.g_IA,@)"ҿA_!,罌/vNI$&;/=(0RlX F4~ׅ~ZQo? Yl O}8I8Hsz[}M^$K3B[-eCm+] qV-7e郒AN[e[9 ZZeֺewom}- l6@@&,l'mm=mm˷+]Eol 1l,g[f_M*%6޳ۢ}BK-۶ӄm^ҧ@n2`HlXQ ۊpe8 i"M"x?ʃ5i5A ! !I -H)?߻I,F6@$m1.9^t {_>=ݯ]u?F . Ile-IiomoM{kmM?i1IOnmY|HM&ڛ&m]im6iIm~{|m[I$M>kMo6}SlMI$IIMi}Mm4i$hSm6Iui5$,l[m6I$mm$I_~l6I@$M4D im[mۭݵ&I6Mij&i&miImfI}7I,I$i$Im6[{馒m&mM i&M8oɻI>V_}846I$M$iI6"|mM>]$IMY'-7VzmIm6m4M@ti6i}E/fݴm5YL5Kemi$)oA&iލl+1 !0AQa@Pq𱑡`?} cיk~?-ga{A \-cnb}aB"2>^򼥗q~u!E+psxC=} D\v"T{WK_!,Yb=ƈ<>/=/ '""!l_QBdYr)yEs VV!}p}RBe/٫+[tZ7þ ZR?Mt_a?=)~^56VV')JR YYY_(ΉkR)JR)JR _ ѠV/++ ²&R6Ήeeeb ;\<+CBpDCwD RDDCS謬N26VVVQJRQEx] U;*[(( ?pN yyX~k0M3PCwDRܫТR,W;Z Q)*=Cs ;x+px7BƜMn iY^^ Qe*A FRxN7ƴ=زJL?$&}8?!wCFO-†Cf>3Yf 8lJ(%BHjpԣAp[-&!QQW 7B ²;PsV&?=/+5tbtNWva*# ;;,A8G9 H%kͬ2_ Rlɔ ܧCTjb4'r¿? 0k('p%H$Da [*JXZ:W#PNsf[7ya)_pN$. y;9 Q)6Cu%B1¤%1bvttG 4v=*.YvW#S cgijLm]䗡#:c8tL-/xKL䵅 Ǭ-~=ӂaX'#W]L-]vb`ޙN^BP\Y^.xx{ƄKX[=alzm!BЂPJJrN ܤKtv:K oOTPj 'i ^>oxЄ6Ƃׄ-lmi52N!6= SK Y8_[^.J%SX[vN+ ^/x;cAYNX\0ao ׅll0 \MtzW$BHW eXlf0xaC4*Θ\WؙkB`B ~BO(!jeL4mp !.%BBWj BP|xW"+&a9%&Z!0!gB:B! +JpjQBSΟM_]s5x/%P PlEV5>b׊PJSzJIEb2ĺ'd!85H((>^TJ QjCO=&'+&}'LaXŠH]k $nL QYJRBDAD@@ՍJR)JR)(" M2'܂Fo^!Eb<ʼn'O#TđSlDn,;kLN+TjejFsihdlJr\dxd|!<B qx? ̻*І8>\S ;GG!o'x_ ͑KqQQQVΊ:dDDDDCQ#DtTttTDDDDDDTAaBs |c)'RTU>mdFFO j iҴ2%V/H)]LLQBwZ"r CB! hz%lCmQ16쯯%McϜNy6} M2? vLV5H<MA Y|a2##dk######:a[KοYبJ;^ v*I@KD!l"ZGOQU6]UWdO$4Mk'B=>!HۍCwkZ|#K2i"G#8FFLFo HcQX&>tЭoog4j[(Fn$xQLddbLiFFF4DdddddlgdG!v5G%N[gl=eodd|FGFGH'XU2HG茌z:9rpg[EQzpƅ[h,,,,,,,N{=9m򌌌'FF-exIJtw:hIk/dxiy*eh{ǣNj4cZ𽞜ӂ/|m!81XF-|DGA=g+,z4CC#O-x^L=\x+cмl-b1kX\űc/Y,ogx,N-Lk \gcak;p| b/C(ō=>xCƄm)ub†-- ~}񰵅y\vx{BUb74|^,mo Qk#nƚUgwjm[KXZsZ񱰆l?!pPz~&"GL+bZO|EbhD؇lm-Z伯c64acAo~7GCٶ6\X[ikZQD.y <=calBͱ?#>Olm 0aָ=lJ#viC}zc>6z}a-s-yB 6,,JaC'?=}aeako++GZЇ fb˹M4zhz(ZQyͰ<,s-sm2oƔy,mɈ{ŮEdƢ6li|e0wl>ǡ= VV& =<?z6IQmo5+{l.[gMvvvvvvwk8K^%VW35n1hm&tbbF37T4Z'b/;o""=Ƈtrԛ>d?q">DOm2>dPJ#NZqqZ6׉e>Lc{,++9Xߨ7B:y!hU0C_Q}!Bk|v_f[!ᣉUD=""",EPIL'+.t}[ бz++z'?>,enlԠ؍AwB_BPDWN~&D"CSѨۊ dDCJes$Ŭ!%HDDDEЙ E7fCbtQa 2J!.DB(":b%eYe-x[$D5ejS)q;of1PUX$w JaDAh.z7 4DRCAccCXDYmv{2Ot"D4H_HAXz-l[>5K?-clAl6Pe.n4\\^0F q: Qt.Tw0ZN'!P4=b $<0jf۱ipm.ʒ?Qvze&6##zdNYYE@J1-aPy:M E. n ܦfVEva2" Lh1FcG1F A/$K2j}QGl&Cx!.lAwZƓlF!N$)p` B^TjxKYND)-tgA 7O"v3 S Q'= ]%[bQvBěBpv!Mx#DLF1|a*" s)A{Ί+DBCPjN5%;>7B0Y7 Q)虄! u=L!2/7Ƅ顩R!q.ƞ i j} ĢTjTECPh! ™vQ à%PAt%DkV-64w*zNagA{^xTI|ҡIi(%1ߠhz)?ĪyjB=^AWm Š(((N%R55FA <%;;J^=%Mط!솟Q=4޶%10CYBN-_L泥shN) 'Bԅx/A5 I1_W>>!ƶ&RS Q5DT}<=R%>vW͉jѓBŨڇI迩/|kQ;i WiGƿ/mSG>|(Q/|hQ#Gƿ|kƿ YԂ5&ZFO\5DF/:0BBf5kTh&"=蒱*XN1#긪1LAo.-S ;CUD{!E<+ℯdO'D"}>ȟdO"#GPޑA+cl> k PO\%D9ȼIĺn 8FfTj>6!*R$Am ļ.W:whjAQ\)B!Bʲ^6yZBN':_9xkBa52܏qSc'v%(M!;cz͠tB =ννɏ87 (QEfr56':(JʊQQQ׹::)׸chM&׸PȨ#G֑є*c%cG=qIG>1>1|C>|(śЮRTApoJ'b)#CڥCjQAk>1mB$|hGď>4|HG>1GƏ>|(u>4|h G†D|h>+V-cN  51EQEFLѲR?Lg,,/*]w? OOd?'  B?OG?G_$D#~?O~?G??OX?k?,kdؖ_]##(##((22(2(22((LjPɄƜQ=`>ĻdTJy`uX{-gN( оU222222222222Ġ#gѱ!)ڈ=.8'yUTIQ$TTTRrᴊRubUg(hJ$kl)v=Z7zK] -f1 $I5#$==zzM~g~X0ܟr=?3mc~G/FL_AuDeYdZQ>RĊ 7Bb z! 0!HBf,21&FFN6UB6 I> c͠&{*B1xaD${KYbcK;#p1&]RgeUb<4YEW)tFzӎ[h- CQV)QQV"Z**7fʱqQV*h=ʇN ~i@z;zIt Q~C5NV5>DHJ \thĝ222222TAI"Q jI$ dFFFFFFFFW^e{{8%$Бcpsv I}?$t[NŮ >W$G3Q!@#h$ q~q?ӼJt!$I$AbLv I=I"SQc}fvٮ44Z41I[**/O: bcؚQ@~]{O5+]:TAr!p pzEmp'GtpYe 71e+^ .\, ʔIܽaz E"%QVco*(LvFTBKs||ϜϘϔO?ϗϋ>|9>?>/e Ņ>XB>Wv+A: / )/Xt엢cܒ3. xg",E!VV.EI&1<'ߒ }^F'+1 !0AQa@Pq`?_! _ZxZ3=kʇ<_z/bמu4O'-"'FXҜ1$E^H$0D4QӊTבrmJ=EmnT,> ebtNоa)b""""""!A f?4؄!<)R"J٪DD^HA 2"dk|>Zq a7FnJa5h"XCKDY!2b(-cl/"TJp"""3E*x>+OyCS&ÛHD47s1\#44btl/TJeiBD-'Hr?bеBwʗq jmTj | 폌%( (QXul4Vވ ]h-Cn'cJpJBadd&FVGc#N1 qiKŲ-pn{4eLF HAh!+(NؐBp:Â#b;p14|kRaFn<'غ}!ǰt1N JR.ega<ϒlRP HL*sSgxa6кFbi5M剨aZ%Q|7lxO^=P =Ah{qm "wbwxk2'q|@wBv b,]1ƍ =o7P9OgfYq^lA8D}p'hbs/#D0ndNBЂhB/$QA͉Q t{|(\%T"$l(Yun`pNR7D;DSlDAy?d7pN )J\җ"v'FD)qDCQےsR4(\e^*⼗ Ra78F v(hQw87| 8JRb)JQ<4:8'rp@EН茐AaGsq8{_#EԂ(Ae)J^);r1͇N@pA(eH]/n Kx[AQ>4|JRU¢ NE22YdDq4?G YN,,,((C!EQEZ(')DUt^;?EXM MapNY[ฤ=5vvV}^???*eKGEe(JN:d"::::L֍il(VixR7)KŸ's35V. |#j,fE4\URwaQPw0Z6J%9,%D$ B!B!LvB!B!Bg4.^}yT&.*E^Tlp22&cd|eWEY\l\?TQp_(u;J;ڟ2㥴aaGPIĘ#^ 2"bgEPʕ 8[BddeBNOQV.QQVSW.6ŊFV|]&+{-_kn BН7ElLBw*|Kجڮ}ІYȃ^Пh8G'F!(662EX`c(͸ ###&&SxK[YĚKTtIC$~cП[)>0?eiB'ŦLlI1 ЉgXnaFFFF"}xi`4]EXEE\*12<฿"TT&QmQQYun1Vr=,dd|t}b7p1b𨨨d6,TTT=,UxcJ ****P{>05 D Z x[UϨf{˒x\***iኋ JI,wigHMpZ!fϥk-vFFG͸ Uʹ2***plYiuhn=TT^Kx\VŬvKV:ԗy{cд- =aq#LB'+Cj~(=p[k-e1Z,&Dӱ{5 yδj-|=fLC׃1wEn/\űo Y{z0h1ޛ%kDlIV}浿Z7^#י3D=f#גѦ;|Kglio y[B̓p?;p'A?Vd=BWk+^m̵c,:.ȫTgNE1al[ⶅ/?d3v,ǰ=̴l6uN%𭋆Z׈͇eϼۄ73L6 pbطd-puZo:gLhj/XXZ5#!Q6W[ygAzf?xD=F1n͊!Nm!pub:9-attΛx˞",{&5DT50\X=a-~. zcaa^寉fY|Z=.0{64tR,́k4 OxeebE=7 X퇡eexna{>!A=Flm: vPPD$CS Y|1;pRiYX7X)D'Reee)JR+eJwmexcwpō BHAu"ƦsQl*.2 Ho)ex[\jF2 E~-]E6#H[{Š((((БQ6Ɗe'={Ś; зβ^,=lFBHT BFJ50C+9ɲ-c- t6BPOk0!B!Bi3LCUGp U1(ۅebR5 6ŬVm{ଈi=,B*jJDvb"!teݙ6Gu~5Ⲳ)F#`Tz7Pa)݆e|~3WbS3bw1eclxee.+++++t!DZJ`謯--1DDCQG4":n4 d\5{g׮+)JR)Mlmee=7]YN{@bVV&xV\#++ecՍF)M! |vm|롻)J}vT4E6(vYìVVQB%&V Q#lnlhJF45! ! Ric4ee&e)"!;:QB>v#!l.Ц˄eeQEc$QRChgV{ }q~z'/T;Σv7؄'gN1:@X(”2cq6}e\7( (;aE)E!+/ R(˕++(+;KPltM G`njҴ%l,ȣ,4pNQ Bz1ؒ-(B Q&+±b6x/ †p{ ƪ?fKxlJR)J;s-A& O54؍i$2nxJ Fll%Б&!j5ViGCv\7^ Ob Q ; „ ˎhWEpPMuϳ!Ж2.n6mSCV˸y<1ՂP^.j1%WD QفlA*45%ؐTj :ƣTikt MKؚJoto=" +)rIѠ݋.::::/ rUԂȔƜiqKhx@7sm*# jp!tNEtn (vn!~|&)qZ:L.I8!c;g`ף Xj 7ظro}oY7t_.?jcD Xx{t{ya9bveH¡ţab9җ 1.}'!ˌ/v^:FQ~QJcpn>)JR~H*ӳbJ$B}mdCKvh- :pj5Fx)qN(7V=Z]N'ZƄ8e'4Dt}k p)KAx- Ź [З|<>Q fГ>?UI EaG8'pl-.!LSw1xl-`%'<n'bD5;h{5M |>c|Ph&B;J\^72!.QE{+ூ+0N&bL'-1Q~bxEz6Jt7\`KD: a.].MrN Q%FcF) M7@b#Pph-En8G:'2'qEE&_r'صѶ'5xZ7:72| ,>Ӡ}  TjeMЯ|(o#1bxJ^iNvoak XXZ^n#^ԣfIIwGGw"$J ]#:BF5{5X[bŽ}xK>O>}Kh)h{i2aQ4Ti]24)D*)~2-aahZj Q"6əlYgϱk>}3ʟh=}xLOϱc>_m>}f&m|Ppn{ǘO,MUi /Di\GS J_%}8mck+k#eO***2J(lАBlB:iP} N NFtT;ТU}51ӥ?'67؟B ?B#gMPψ)[^:^0!Bbx)IŊϨx**Bm#T>6ԧ#r +> G=bКz+)f%t6ѽ崶'FbhuQiY^YHn|ThO n aiű 9.ddk~ddcAOv1,"?4v#zGggb6;;#vvvvFvvG]BH~ dkB"u*ѽGH"CMKQ4{QQEF񌌌 X: 3A6_2L5'[a54Rg#_>Qa Ƥvϰ_0Ƀ>- `(Ax9FlN|q`6Kԥ+俑UjtϰۍOv˅:,ikGeţfa͉O>E6QVdž=lhi|Ef·IlP,YeYEYqR=vOT^0AA!CG&c#'-(W͍cиyTU5q{#EEECVT7X6PƐtpFFG.j'LkڎBdd;8./3XNgЌZ\i'\dfLvF26udd|OS|J>liIe \ BF."6O>$NDqq*!>cogD)hm|nݾiE4Ϭϯ}g}8Q )ht2>>>>>>>>>>>>4||Hx}\QQM"[G}gWY+ڏȟH٬0QԏHz5xE\*)xva葯GMAu>!X0=7,kDm!zƯXCߑxbQ߰hvU:{gͼM76v+BEP_{ [D˾_\>Q|?x>j淿X?pOF~'GI5(,o_ccOtx>͍?B̸-yz1h{alz!r[aۀX[eo\ ^-b/sz_^Ss.l_-b]bם4g߈\Z QeYJVVVV/ 7R興{DDCCػͼRR$>C""~W%^jVW+C^ C DD=tDD=}kd¼!)sOOE~TCօȏ*!1AQaq 0@P?gPCzVeeÚezO_={"9<,AWw) ;U/Lϓ<nS%JçѺns)x 3xEO.?S4y?B7"yݱzA~Wm­'e娇0afZ~Yx}9=§XQ=Es;y8㹖zVyv ]=rħ+4گA@ߧA<'6ekz?ȗ,_6O"vܨ'fLbe:`@;ݰyHPٯiaVyamWdvi3(Fe =&P20\ʢ3awPu "!ap3<ެUԬ CR^$R)c20e^`̜.s ?kT`,]L%.u ùܚN 1LxfC9NnXš.`!'<^e3m|_B Rch}g\B zw]a?u-~_02Vs)'baG7 K-zWpOHkp4d+q0̂ ĸGG.!ֈ_2lg-M8$$SBTHfOlϦ#01HYupIJAZ=gU̴@elš9Gv{Mg3WJ? G_\f»XƬWgfX9̧az=ECymHlV4ơJ7}fL؉53[r*/3`eĹiF.M:wk2S5Dqc̷Y&DXvPH> C[RԪ,8ظlw+Ҡf_4g֙U?n+qfwTnAyf+hT=,8(&\`j*s+aMç?hden5]`BbeOj9wDZs\hZ&*R Uaf:T(su\iku_ C;6bAp/d d{"q0/2*6-5m)5Yģx%Y:}B9)w>;eyh1e*ľ:8n &6pBj&*K1"jt2UJxR]>0cW8 ڃC+@ "p+Sܟe@rSnÜ03.!zs[{Ih:EHUjɝK-+]`]ALBTNXus,TM ezX# n%C%:- 0昃f WEK;MN!Ms+Tɳ y*Y3q ʼn=* Q&lBjWܼ%Ha1@bgZkEpBP{&&q. ;7ce0egScya/Fv t~;@BScPc M׉W \n^3(u1,=+ s*f%̹aW f:~*ರz3xݙfL&Y$:}`cA)#6c}4 wyfPEff* EpsBWBhc} Vyo*>ћ}X|č.{g9 OhxhN龘ޥAUs %̕RP;q,JRܑ2! 3 @ IcZS0K]6If!}S<(fـk/`p-} 6X˺(&̟Hf1:x`1L{3݀`%=ƺÛl3XtҜc^%}ݙIAGR%֟a~_۵įUMRhzܺf_B(zpX~P/_Ѕ 9`;t'O 60QߤͨV+ġ|A@njuJi;MDj['܁ Gة~}j1Ym;tQAʾ576)L aiSy Qc y>vrj(aހ!hi3͑G!8%J$ yM}73< Pœ2Z ZQS\wS zcok/+˿B )Oy3*^yw+@PلrMF ? u*jy?1`fOm9_g }nҘe9ƶˆL@T" f9̲iR26ӕ=!l4qSҏ#RiΤ< 9|C?gѝiHNĜgS^4]zT`OڎB(`sWwiq0bl; <6.F~x7'EK*U[xEA=ܬd̵xmmB{*$gRtJQ"KB0k~HjE &0t}DR ѻrJ@b 1hq *cxA"*Ƽ3/4(N *u!V\~38aJFrh.-b6U [rs86^]ԱN JKgmUGw0WNr!4ly0j"}šA0~Lwn`[G͊=(92X͜N*|nZFT&~njvxq\m(tgj <ij]G1C'C>َ>@R4XMxyI\׿_b],?_. AUaMC.%+EjeNs Br]OM?CW3+Q;垕OݿyfuHG|J8LtvGW3\Wc*3 5MfYɍPz|QMD >j`\,€XYU}F&)7ASOLaj\"@i%A4jUu hNk8o)7zX_h+Ɨ^;]5c):JF*VUVAG Āg\Q؉Wʗ+oLy*a.$>m}4۴u;[;Ejwj/nD"Snӂ։W*E'K+p5WJ:#M$A\Y9e8^SMv:2|_FYyoz 0c} e@{6@OGlťgsEWʮ,sŚzLu,9psJ?h=j9g+zң2jx8Z+PtUd ivK'fe!9xAs+ގӖۃfVlKqDi˜yE/s"FJZ߳ LOIBIЉlhg:Ffu cYiVc%xyUNE|G%xfu|6Ժt ]53GOS=9bS !籾l<t/t̐N@iN;7G@O^Nı`_ڇd_d9>2۶ y006.+ *>W}S@Y*g~1Pjtt3Н5bN qIG@ZwDlfceMtMƒ)'6| iঢXM;4\b?_Қ =W]P sk] RjliUuȬ9_ uA0s$ʁ+/ I&SQkP1y@Pt(Œ* oG{"6=vJk;w2YfB29 Czf=o᭕k#pCa4_YCޣUx?BbM&uʍ73uA"jAɁjT>Un;+E䊉 C( Z%*k Y-TWqp*a1erRmpV_M|+-Z=\S2Y~K|AzBR$PBuoLl}2Ud6{EmDLT].-M}l]^nV%-VKqvgpPZ7.b!oc0jK3*( bUr 9,Ńש/Ѫ&GeYRrCvzMZqR%#j:ph'7O"KoHrKSOAٶJrv=>! uL2Rڹ<=ro ]p9Dv$|n->iw⠾8½OU8+E?j:m; +U ~hQXdô˘:T[e)x2&3#zSяu\V3`O$^8_ϥ<_i&Pvg7zՏb=?z8>mbVbgXhJ˖:iS5@~9y^\v ZHS)BIw;Z{IByH-!ܟ9~Mu ^(Ġ©UFT[N!1NhJnZWX7DMD z/|X4JMD[K3Pk4,]Ac2'2s 93-( ˖[)$p -7_p ,!bNSeKx2 {5ޠia/%sS1.(s`C* mĜ](,\*d*@RC2f lgpu*8XW PIR( saH! JcPpIIr[1T -QicԃK8rlRn(3?jj򌠘9 IIeJژh@JT}6J2xgpO ,e˔J%,sv]f": 1l&PRs[S jPYV͗^&Ɲb TfRuU1Qqm U [4bV*a'0t,OK1eDOQRUWMLi:b0N"drVPUJSP-n;Iĭaaq7. :iA q.\Sev pq J qq}E-!d !% B9&v#/k"_8RfA**R {˛n,~jTt}`śX"de@U(>`u@[Pwڔt^M(M0MT}ɛGHz  :Ġ -7S͔7x0 u;-}סn\Ox72NUe,K3&UrE -,B$Q% *1rFY#Ļ+[]>!0:Wp1V.ϘA% wK٩fqP(Vah5zT!lGhSoOvo`z=dz s:8<nYd/0ҍX*EV;}_ ~ b-z$a~AB6_ÙoVnm+,K%Uw(gX% B|ThBAZy:I*K0rlOCQ\i5ޱ(m,2?/cA^ Sn_G{ċb[!ng_K_3+}j2Bϼ|(-]Oiz+*[b|޿3|߿3?RԿ3_K?ZK?bܿ3/YǠGU`KZ ??K rX'g쿘?m>R8ʳ.-Ln32U ʱ5u(ݲ -ܯx^& /B2ެYu)1[бA}f)d pMkx5"o} p;73\weܡ0yn nV#O+`Lʃc+}pdcRٮG8c0S/Ỵ8'=NħCS)|Jxǥ:n>'a;|NPi |JS;|J<>%NħCd> :I+~ ܢ'_GlFBDŽAG]{h2wL0 $Ei9GlU,xF$̷-B dY7275(p0Kp-Ũ1etL+.ۘIf3=҇x؋b!٩u \nX9! RZоe8Ku0jXa @| :7Ta_܆`y+mEqe?&m5=E_'}S7 ^ޥ[smT p`%D٣Y!k orxkP} l[.so_XO}Vkq_J0uF]MTSa [SpX%W13WlInkWA<3"Xħ)^eȨǙCpa3{yGS#K,iuR/&#.i;mԼS S^GRb%Byb/:È W_B~9b1QVS -SR'9A|`Ƴ_w8.*S]%/:P @d )@=&%_s^yAj6-´VJlH D\)(hU7V:Θz+3x51HD0_GU2bPS~'?~'?~'?~'?~'~ '_~~'~`?K?_;~~!aJeCBSN9N߄4ء-R kVr\glXY9Ќ071ae)U3u, QVu@:N_0T6|dM(; S(-iܠ+hieL_Mb, J ZUxzi k|- kb@`eb  ڒ]:H7C%;jI A1ˁZbP!& , T@nEbΉ)J9KZlK[RI[ķo}}GC{,r޼JnM̱+DTro[m@`E2eӰawX^n"p 5ATî`ls:Y^[`ƶxy͉ѩq}A_.EqE~n r[ͳ(g_3Sr?xm LndSxT L9cj02Rr!N(cjJfJesyzY))xDme"լQ4@J6/C^eUV,XӕBgIb-m vwF`]+=j"m}+T 8dUJM-gko<ܗ,e<[C0-6!/}t2=}&[(:PqAsU_Vxckn#;л;:Jj@7=AT&9UʻU^E1uw[ַ\J>g!DlgeՖ(ئ=w-2q`HdM`mvv"͹llH6#qryunsrWw2`WUY,#6F K8XXW(pKuy%F˗I1W+YYxJQ\%Y"LX#![Y_"Z,&-4k`uݰ`q"S.oS 7(H[Xa2И`.kA܊N"藃0UY$c+.kT! ij '|66t w`1 1EM "[\hEml*3Ҹ[VҀGK'*3p@Pb@SE  ,U^Dm#! 9֌oH?.ikMYbp U@Nk\Qup%=NoIQj-m6u.AU>{क.Ql[!҂j@P,]Zt­7Ib]S;ُ֙oXEVAQ@Q`1 贷4V -N  3{ln87w4eX5b2h!jTʩPAKpt$Q)ш"eB1mHXք.jl‡fqKm(PEP_F(ȵ {Mzpe͜2bR*H#Ȍ eu6WBB\Bx8I`P 0P}גx.`( w/////-*m\\egqwgqwgqwgq9===(:z{}0SfdM dœ')x7w,:EJen+>=%ħ=NFx>e:p]E^ۉzqҧ ʘ..GbxkTt! ,`y4pAYt|R*U S1Ӽ 574!ƣ FX[AnGQ, 0P) *!2Pb@b*R9N]XPDVڱwM2-A%g=:$"iZRӂO85"@Ո"P R6YP , خe% ikUJ@%ti`WH rTt"@ ( :X]J̲B@^; ө:h "\ Z !ہYjfCN,r-DZXbX~Bh۪1"k0)mbl5 eK-EKShkȃ\@ ۉy~6Hju>޸|%:K¬y^f7k)8^)Ac;c.j;ŜVWƅ3pC+B a;qr؀RaVNuԻ),XDP3J*bPu+We7OB" \"HF L^NB=-:H?d\ Z1[-rD(G/-.5d. ~k "I% L*6iC4M7n*2F$AR_"X4@7KX`1Yݕʶ?DVl0 }oI_S^`x=*<ģ]纃ps.4B/[3ohV:L*%cI55ulRfz(y-cAsYFw#p#q,3ǓM &&R '3>1,]Qh\jcĬ` y\_CbfUW7HvJdn fOn4a[E5j*URU`h292rK>kĨf_I6\N4ߦssqye{7l|ߥY9j<#<^̱B%#2/ܧ=a&1sr]6Rb+(XhZ4a ]^  'G?uEhU.*z޽ۖHб[~)SH! |GN^hm6> Y"߯.;eay@k",jJ q e̤[J\zUP.Y]PWGI^x (n]s#Fe$Jz=eaiWc9#HL`jPF.`0j g o4a(:b6Lȍ:ѓ'EJEH޳٫! `' sX8PTo4|c &A2`~畅n^!e[CȊ +9J?\ (PB (PB #l[ܿ(T !HٿB ]&HE=nZu؂ 4SreZn.-=L sƐyd!;HZ&HØMU iŬFyH:7tPo-,xxE;sas& KBY5Q^*`']^$*iH,k+%4߬gS0- C/NQ<TcR&dCMTqkۊGH#ыt &ϳ Y1҅#Qbd9%E^ߠJЫKX~8(ve\q bq/Q-cRKI ;U+LJ4re pw4-Embo* Dgl-,A )ҝb(k+ts. ^7[P, ţAxM4DtRWͼp+0AbG8>л1`ݧJgϟ>|ϟ>| rBF_ROqkliN#63!d8P暈c`&Z8.n\/=b^%]-11=e:n0msS*f# !b#l *Ŀ{͢n҄SQs̥\Wl"*niC%|Nfy`f* SA+sB\H߉*m)H|ʏx@ ʢȉN,DFoَnydqQ-4!yhsN/|qb$luJ؞%WUT*Mp*:Pj S&qB j6Z@kr[P(j\l$.-7iL-YG6A0:Ƶ0ӈSk8=ws-q9&bd&$8<%|ƳܗDˆ+@2i}[*sN1(ε:%8;U e̫$uL>l6amLcV|EN~%}#BSTOA6j+ [2%d:ƅeG!CO aij^\*q a?3tbn [ǥ}"a7^Q]%V>Z`#,K zXmDPIӶEYKB1Ȋn"m ubn-taNka]a-nYFaAHcy]Qz^ѹEVziwmAA-ނC'8y .TAճxLb x)g0(X?+qD5}:mDyd[Jɘ_s[`3/.A1K"Byf:Q1Tc{1 >W2_T(>f w&=(U.#jf*é0f,Yj8Z.'qKu{5K@9g9 !]8Lg/w5p]J+oF@AġĴqoVKKdqTp*t$eƧf\=yٜ[SKָ*ɭ(8%J\ CxB+%UjeMH8I:MWSU{IA(8ږzvS9xZʋt:\@A90]VbU* M9rgrg7?JJ3zxƯ.Iy \-*LASR]3Yqz. ,T՜JBwqm ʣ *{@&"h1?߬ dCu7,ۘDR5yj]\j%hb7rgQ$b.ǿh B*7)Sue5SWbOKA̸mA`ٸ3lT\(Q(f,p"*D:$Uːd880fo8̤jd-M2/'F* J4K9NRVj<*t+ƺBI(,H"#0N)\STg m}<@D,A APE XP=t%;xj L]X憈OU9S;R] 8 ~;ΐ&L&:F_8fi;7P_Wo9:2L2=c~o S3Ć*q21ft%gS29&y.fY"1)p}b2#V:KVwzYVaـ9c%2#>DS\ TJ3ck&#O יHp@n39e~(GF `x({wghj K^g (ʫ,W6|k+ -gtN:`rVhLQVyPjRfb|A*NF0 Mcyԧާ ms,M)//6(zƼP P9AϾI|=`B-#H)(Bǃ\lW*LNpA kٸf^Ѭ<[b9np6UVܤo)0юJVP9}.w2`DV&YeE8fDG."`+,,KQS@mdz-c%iu/82xFna.PYG({Z-솟y*N8WbJ+t$S\و,47Eq3> A}f$q|*g-/3_*4 }dVTiCMXd2 j@C4Fڗfg#Q.vfCiTdӖ0[HkY!M. }IyD =-i`ZSڴf7Hk+e+Vt0_ޞq0QeҎNyo`BsT{D`6.xSS7 +HUp膆@6@ֽcWJc\th8OblPAWwPo9Q9Ђ ӽk5vy%Y$TʰJRAq*m7`Zd4F>@^E&^mT1-Z\72Ȃ8eRm+7Wb^keȚ j< o_Ȓn:q|b> TՌ36Zq#Ӭ4zƥt1Ϲ̩mAP;!fjN%j\h2 V._TfnVfRbs{&Z&If5ϼ˖ Xa,`Vw(8Ki/;Em:]k+H@9`fsD AZs1feSGu^~ѹHAUcN]:]ԡmX[},`/%nZuT#lSDp X #C(hm-tudLskx瘔S[k\^ D=rWTH֯1jQ7<ҷ F}sS%F+ J "T%-`*CYZ|&X}c@vJ[ai zaѫvtsu6}Tٸs\ P0Gguaq5!#(w Ks.ɩa72B9ɇb/$v[79o3yU_{75I`O L+e7/U'n٠&f#.Yg2Ntej%cx*%[zSC6LzM-I[bSGI^?cvĆǷg"L w͙ `),܍:!%zOd8Gm x3@MhjV#EaGd )3p9T@Z+Ap$VpMzXS"/a Jl]3DR<#!]h6ŏx|_ :OSV:{D(jm4xGbmY>Ia|@԰:̤4ryfje|éex4z1΢d r,nnu_(7wTS+RzT"-KtK{_2 4S+3[=0%Dqm03!ZDy/OMQnL9oYߨ8Eq-]3;o 83DVPul]41Uܩ23a- vf hQoqQ+mK[Ϣ(4ĭ)~҅;ݨ5|)8֡Wq,n@UYO*FX$ &ʛ3 ؍lzJoȪ9Kg X(ܯTt5 c{ZcS,abꁻ4'V-L;\2\7,ZPPF ʨ4sM^.BFN* @2ʌZl,YF@Sx0 .[ `9jb$> T/Lo6dzaE5-`sXWwyw14acu 2cs0$F!}ⰈYُ֬! foxfz *Zl:;QN+.&+E3r\+xEƢx.\VHKH.CnrQWM&h!k5%-s9d0>.Si= k;{0U} O2]3[ZݗtZZ))h++HyTT$ͥDz0q LS%E"EB(Z5ep*ݪ,S[()9/" #E8M¹I, *Hl'8JmTK*z,Nnv6*d͚. x:O:EmK1fho=1n3]V⠋ـ7/ 1p5ps6cLffe Y99P 0fg0C"%jRWWEeI{90Yj!m/ C-E(⢠x B 9DM7@h\Ӭ y=)]~"T}yobXDC ,‚taDP!4M/2& *PiNcXl^+9qynX%"gXpLAU3kϢΉ--wYd]&| 'aDVUsp{2b6PXwC40uUjjp=i-H+P]q0b1[ (1U{VWPϢ% Ԧ7./QIBZTwLm.%4E6&pǭT 8")TC*l}qeTRTp*u8IV4 Z3ҋ^53:m Ȓ>>>>>>>>>>zhG9£ -/ZOo@'_FY>"M= A]%h-p ڎޠ 400'cӭCdX]QuS1lqsiY%!=w[*ėU,i(uvS7w&+nx zP@_zl=RuяS! U0KB uȁ?r5t9O 7qB)hC2G?XE5  UwX= Vzʊ2citJZ k CPX~G@#czZJnoOnr-6qX5CX,KZ—C=u2JiCg |ɝg)״|~XN:;4^Z~ODR:c?DoOsxY!!F 5ΩK;xR<}CZ62El*3Z8Iai6Lo6<cӧI ] `K S[@)*@֒tJtTMne 0֓]cAEKWp5k-KᖣUxLxޜŔe4Iш9Rf^ZP ~0 W x3_Y}v;ƇSL(r~% WȯF>1uп3q&*!\U\@SIBJN`o\r&GF{"Ս,M_,V[7yb[Ֆv҉[D1"D6./*Ғv khe6o-u7K`/[:Yp= W+ۙ]*:θjܱPg/P7 >v}0,%ڈavy̸c.Sw}^:͍=:K^h-*W(Wba|5YwTvfUAXNrOK כY6t0w+˹OP#y\*(V-&cb5bv> #0=}Cz(m}iiJȸ;ܴD%D˘`ǵowl^{qQ[r3kg]ba~sZTյD n -.Pgs9j 6ZrZs X"[*K"Q@b < :k_i}S8-ᤙâˮ, Eb# X-<F ` ijQTZRDK58m+Dj.MM! 0#YIs-ۙiP\Cˣw+]RR2Q.LYmY-z˯ѨrŽoҥnX0VeN!CW.-֢R7n Q;FZ2>S,'s34bew w.8["JH Ee%vnY.]anc2極Rd }݇:ί<93~gaqy)*ݝaԣ,W&̯JO>.r2޿,v_4/='JW'̯_ _-A9+c~gW-'쯼*?0Y?|{3`>y6HW.b-uK[-{ߪȷu-Ed6_|^\AAdV^ Q#%u|\^)e(P~1A,yUWLy:V˨נ`TjƦXK/k_wnh,g-`UŐ/-:M JG)sGG21Fg!05ut'{Az߆h)<Li2Ij`?^n!}'?{L<$O!8FکqEDC~Z5{B}D!I)[ߤGqXXh_ OGV?,8ᰱ8_ IЁ5w)tT?vBJ͑ u*BC+_̯A}: ̷_T-r\csSADn樗nR6'LvOJ@n"+gTݯtyKLj YVWf1@a]Ba)s="VeCA2>D0.L3 Nt]jkc8:DW@ЅM7@T;Ո(AN>eQVi\W 0 ޠ$VZVimHii1S G|w<!Ņ A$b-P0-§C,VW?G"PQH;"嘤(HRX VՍ#ْQ8YZly@8 ޼ۨd lhJa@%7)Y2M)r .WZ2м}VE Kxָ7mf 22ms=.<&΢Br06PPr;@h]-`E,! pi{=cf*CKl [&"0@.C#vn,iI̍ѠlbګXY; [V&hdbUG ԣXJ م+Ų%9_dAm4Z҄GeUf8؂PɮR f^n(+> HP$Bݶkm@* :PkĠcӚnxri- e-„qD(i*P/Yw%k{]Us- LNFiE[ba TAt "m7`^ׇ8b Ps ^#X A>+zY[-nWŭi~^Լ=fEV+ V@BdA}$r<~u v_"ӉkA>i,y.'_Hmҳ"vߴ+*9=.!m7)=o:fP@B :!uDF50qsH7e~Q,o +RY,(g:HAn9y  l "^4 $p4сoR7|@ 6*䦒NJ]F9Q+siSd0a",$2+U^rP(] q_wDYFeJ\jV5ASX)F{aӢ5|u @J$!kb'mV9QEA쀀:D#a(K.d霡 rʳRLX]kNvHIL9胍:WĥA%ߥRޕ[3]Np%"б{y0l/䃟l\jW^#nc>"Ki$ؔ0rz=pCd ۻ=a`ž-}x!ؔ^%XFx\a|3cC1ޥ8(.n/oo2щhfs5pjhUVѦPI@?ق]\g$ ثcCm^D "J+ c)SВ͜c?VŢ 9bD,K 23P҂vIJsF XPZT<[Eڰ/K}RHDg'|BR5D*KKf^G/mX_Q J(m20i(:{aа@=~":U(-nR,+lz5CfpI v3JTL ].6<KHثkO#2=`wYYgk)!* PCQc (T) A Pk9ijX~Bx.tnb#0xĎʜd F@Z'JEqFU (_Hfj_ Lӆ%mq4(Ah, Y VQXQw()EW@GP ]Zqǘ.Vd*] waAtځdFۡ P#ɼ*fL*c) i:@f+DsYĸk:~F4AT3@X n)̼Rz1.Rq (a JOtRB*9K.[;`.ak[h._*U',0ٓ(itd>9b0Qm5Qq`I^+iT5Z˯K2mU0!s`2l=95uy3/hUz"O4`QH@P+GC1Q!)ACIyXnG A`]-h7.q ץ^iu5`bS)ܰh `x_i%uJCS9MUt|30s]^ ݽf-Ʊ̠'n|jWّR$i"_Pv:jz /Mneb |hPniU--gs j:QҦ q7.ӌ5+Ê{K>Kئ3?b"/3> yQL -WYXai-y > W1iXu ChubDSļ tG!N xcmuRr(CV٭mg# gmz–f3`cL酛Y-=tܡܽ!݅UnzK[]!q0>B,u[vxZU(%\]ba[b\HvH-9:lYo6M5R I7zÖ| N!%M3&f v_rm&/Z(,A iҨi6o .t|s7p 2S;yla/gE 8>_XAHߏ c{39\GbPDd+4hn`HQ 6D0KL-ʝYWh0d"m"b W؁AF_ -ġƮ;drc lu#J dG={`h1(ٸ^u.Ju:1`%BmkHs[[.86aqy M ?2>6p|@ CU6Mg_2T .oIgKDTHIDmkrDt$f")v-A\^jV~[wR~PNbnAhtOmÇp0j*-=8d*^)*fUkQnh /ؖ12n#^>E@,:K-QdHbŶhj e 'ƒCvs550AB!l֋.!ˏP[9Ulg4_S7d^-pgZ%Wȟ HX-/\џ%".9|(sdq:M *֯a\X[6 hlZ=gp\H9?1uC4:{ YO3^˘cQ̴EmX_3"ps8~ERVY=7іN?Eª?2~.} c8JE[7!t!D aWT˔*+]YYTb̺Ez3P#aU v6XA\:}''*:aqNž{ޟyzaCcD=YT `Y8"v-i|b><ͮ;RՌ*a9n2 C?+=u9xqdpI}9nD]tde]#[o1% a w EK:mf1iڠD-20~ڨHRJGma #N"[䙼3L^x!*tHfmb]GFaCI׆wW}!JC"'gXBwhѫ<-33Qg[KS|T0kIxKY^?>"ⷝ1iWDJsё|W.vt]!4BCwk,.[ŋZ9nRPhj7O:16WiƸ? v?Dch>umCe\o3p"~?A{_@qfw4'Gf3???IO͑S{?'bx?Auo3?ܫ?;#ڧjpR{ɗ7?~fs|Œc~Ϭq+G4U}0|ҷjqs?wךx,{*xS\_?[ENկǴ+߻?rSi?ÁG`n0?o~`:at~x]G 28kE H狃 -2!˰՟l@O̤_2ZcC"1UH'l`hEf?$&A w8c-U[ؽkC@=!q}cL.%_+Xr'[]PQtB;_ yi]F>_huȖ˝j~ #'-U}j8:յ,.337#*c2xmczE.T@j (V&C, U1_>1j1g!պ)36j3~욨2ڹ_v.̅K+W^-`IۡHWTRaw} )٩79BHg+~U`|w^׾$CRjak<%д+FZtǸo1]ǧǘrF*CpY( 4qŗ[R )"VSI7S)&#  r웊ݠA:o  ۃ?Sn,-5QWKu?ߧ|YU;?9C>SIteڨ :#g?6%=k+u,qT "F&pE0`JpAQ9ek^:q0oX0CP+=g1XU8,%8Y37t9 h %zOT^pKRL2 +ipsVZ01hZ*6 P?xZ0J  *O[ rb/<x D#+0(ϢYL ș<̼MDG8:+s}k/>M JRzygL,+f%2P=⸔s7|TEtYqx|G,%"o M5@ y Ass"j]ѶV TKOOQ*/rxYӊKQ^Y[pOjBS":ǣpP9NfNIRP4M j9Eky2=+^w$ĥFĢ?>0Lj Ϡw&%A,* KSn8lebSJ=i2f."0:2Hǧ 5.ܰw&m/PFfP!quYJk ~f0_xZ@&w KP^[ˉMf3ؓl8F>ԯK_Q f] f-؃sX&cF=tT>j[u/5ܼj !L:z2QUK.1  !ԗq.UzUuz%z*S}} @-^R*"5n{ w J]8N%lUG mDl*d^eR{_gxeKXp1r Tw|D%/Pw2 op1]3uFk,[c8RtF90_h5g|e =-0׋K=Ϊ<]=F52zy6Ɯ>DYl[ pK /ZqjoPs;fx.:}E|GRmc+2eM4axSieaץŢ 9zz6%ޠzq%F}\0QKAt U/53^cQln̠޻FYe+,N] QP\ƈS تoiJj:Laj.mijms?o$1g 1ڥ:Uߘg7L@uXɆ} }үҏ_h*/k9deq6ܱ0hpn-E--w^Rn^ZSPxK /,AǣW}aC/ßCP]:[۴nN=7Mj+N%X7ZMĶ=C1.V ǯ/OGO,ZFP+#Pmxp0\Kw 8guake-3.6.3/guake/data/pixmaps/intro-small.jpg000066400000000000000000002124621346623310400212610ustar00rootroot00000000000000JFIFHHlExifII*nv(1 ~2iHHGIMP 2.8.202018:04:14 19:37:33peshkov - Fotolia02210100@H(PHHJFIFC    $.' ",#(7),01444'9=82<.342C  2!!22222222222222222222222222222222222222222222222222{" }!1AQa"q2#BR$3br %&'()*456789:CDEFGHIJSTUVWXYZcdefghijstuvwxyz w!1AQaq"2B #3Rbr $4%&'()*56789:CDEFGHIJSTUVWXYZcdefghijstuvwxyz ?h/5nO99R#OާOWՔzavge3U%zi.g`{Մz䡹zXj\tb5(zB 5qn l zOXKvƦ[U#hK%d9C}"]VVj"bgzb`.f58UqX}4PQ@(qzUe"TՔf;`9MXrҺ<[iz ηsjr, h8s{Cf\^ H&.QII6R^K{RҤktBz翧ҫR; g)9p:׊k.i--ݝr/\Vowx(VE$:F:SxCs{E(OpNOZMmgri Rێ&mV7Gk)4j;=G6'M`fx{}hkmU^I%|``mV-bheOvژɦkM?IwZhR!a\lG4IOf[ƹ_.ẅvQd"HYc9Ԗ& Ձs‰ d̑'v{-lP`sP+1«'ffP{˻˸XkoT*T'8*w֯ )!Y}Ol+y ĎVz%{$Eɍmor:sګAZo.=@BN:k 43RZ(-1P:[k6)l}J4k=qU'YvI>JG^6Я+bSmTLXđ\Ww@t xLɄH7[Gl.^hF39-`7NR? 屶[#"yu${ſ(Vw [pjf3̷[v\ȋ+.K9Ŭ H ~eu> ؎RI=1ESbhvxVD:*C i$ڭ$C YjM\9K[‡+Y*wr-RdN!$*'q3|Y-8-qַW6kuv>[W6:m7j=đf"<^˅?8@1G >4ɝtci=Z*hGGq}hH~6$\c_+憺X#T;ZC|*f>|  G菃R'ƿ!] > 6qꏵ>'> {p3N]>4x!g>_4go7/Pl7C\l|h1\}|z}·7 xqHo?fѧg9݇W* 4 "Ao+8ϗ lpяJTHv)_B)$.mmIQP 8aXx7UHԦ X7[ \rܢuٹqZ0ǵ@4 =&=Ulp&uv G")F]$UɫdrNs0m̲hih_3'r3[F?W̹e*H>goƻ(;$~4/_3RZNwq\ߘoΑI2Nk̳zeyeC}Ni((hh=+~|KzIK^g^ɶG@߻r`G5N\Rrs_R&T'WHEIs).23PG/QȬVَ3ET*(IUfH=[5[ Wve [6蓿?QxaA8E@iiA ֨^GU.74بfCSׁMIZgmL#𶮘c8m^M.SVf¶xk=əw}֚ o6犐\mkl⹿/#p>.o*D{(JWеV6AqxSZ6趯n` UZM#gUJOWU҂d1kZtѥ [,vf55S, v#T9ҁQw|/J|uay~F]vխBy(v:Ы &?Ʈ#]?T$ Uk*)|?3Glb6#QxVzAy~kt_ST?av `}\LmfYavٵ) OؿHn5VO?HGֱŦ[*Qo"nRNVkv95u| ȑIUM`XgH?Z zAu=J|lGK| sSqڸHS`Y`-!MSJ5RKK &t1[^bH9)?k3 +`xv ̟Ȣa>1{{E@s(`WRX="s42d {Wo*8 pJ~KV:-@ G=\];<YL5c IuEIE>7 B5jiFHV\vН GVtۣ_-ؤTH Jʹ/;iÜvܸMz-Nj&ԗ#5ZķVª*Q-KɉRQ*q3>v`?`1^ } z?/oUOU>bb'%8NӵFAݠ2T2>&8W_zyձ m :MUS48xt6 irG)߮? KG_ j?0oUOG49:GX&zi?s=LJ<+&]@l9#=FzlSF=8KnsU鏺_K[a Kze'עgC$Ӯ +eN?V?0sTM5wh>0T45cӔғc㏗:k]\^G3mDɌJJsyS2z^[x_S_K,zǘP8M mǑE~wQ"NseU'I#AfU`Kg!lg^ww?/44:5`HiwقP 42358DBD1D9C4D7F011E65E9B4B77CC8 xmp.iid:ae118c27-94de-5a47-854d-39d3cc2e6a03 42358DBD1D9C4D7F011E65E9B4B77CC8 xmp.iid:ae118c27-94de-5a47-854d-39d3cc2e6a03 Adobe Photoshop CC Windows 2015-05-21T09:10:41+02:00 2015-05-25T20:27:27+02:00 2015-05-25T20:27:27+02:00 image/jpeg x-default x-default B18E65B96DE294972CDE5D0C574F5B47 3 C     C     `$(%BIIV$@a$"[I$@ IY@P FC@( v$c#,YYFhaV'&q[PYI$I$h@/ I@% bIjehbaaaXaذa*uU$j k&IAqԒhP@@ QbIha}YaqVa!u6Ĕt,GGk$jl \<\l $PYf@!@$H%P$9a3^,rG+|r٫bŷ+RL̫ M0#Zv!RMI) MIH 'X&wُY<ڶ <_5~-YTٯkӝڌH 0hS8Ksߛ$:HI EJjȮO+ 9ýŒ<8l+#:-]5~unVCk:]vì0d>S x9H4I( P@ 5lXY.od5nVft:9̬̈db٫ɫ!JsNf^+ bɧu83tz׎}cuw薾oD<s&g/Ou.Z{N<78t`Ҟq:NO7񭽛#5㡳ڨPt9v{v[Jc].ɚ楮J+/;YƲ: >UǙՇ["^ν:ON|i_]?|=SӃ_} y7;}L;;O-#Lnk{g&6u}5;-fo}sѺNg-jkrjy=u53\x5s^De]R,QϦOn`DA U&d[+}z/{Y&>wUYk~pUͭ}Ͼ}Ǖsmn7|ssb+09~[Yh%Lz}-w\y#i[-{̶[S{>''}g1 ^u"/.|VEaEfOogrimE]qLՈa)b 219tHR Oز,,\lL6ųNk+[dt9rP>δjoYdistqdyZO=Kyه/_Uhκ\8jikjMietY/~my«2i5DX?  +rز,,\L̽lYAXz]IAu=\-Wia&˽秛YaeTEdE9٩u6V[SAUMXAhfticHwaf+RdmadmFG-ѫW?IY ɦ$ FIPK'b"ƣ:rGlѵ$Lg.nK`3`t?{[-z-,tq马{)4qw/BZKR*& "B,@rYߜh5oSU.-͛\SEHjz9*` :[|^*r}_bt_^235+~4Ig:f&x +S6*2΀ :닸sjmf,t&\WOU F[meȕ3vWt#r]eeXY/GϞg>4L'=/.@P@yuqEsUQ,r>M=y-p{_-]-a΢#(ͶIԱ-Ll,Rڲ6>n2/̽;C3ּLȳ3?=1^@,QD_|w1f՝,5Ȳ RKcUK)f=~nFwլlqȗ/f]Kt,fԲ>ףK-NuLxk0y:냺eZ䕖TY2yo|)5e5!I׏Ưƭʹ鍷.6FAtek-U*{979:~}?'OU-Y#M\]fWp녝AE`zo;Y}8e^t(J!9nF}勍QK fğ;=Ml9\maz<6٬Ur5$Nzf3ן7,?7꼿_guiK:HYkqb L|/yՖ*`ɀRI.f4^oNZ*\|G?7gy6yzgdcXeswuś1ןgϕq|OOW71ZI-3|`P̤@ MvYyxv|Ք D50ŵt=pC6/?}-bُfUktsN1jZLLrܶ;v9kuo- C2A$M`A阞sݟ?_•[M&D5M@9`AxhH,'ޝoչ岵Uv>Nϛ?]cngey5%RSNnwk KO?^wgH 21(DEKBf'GyϩnM&DdC xX\uR|};=lEFk=ӺUNo4}}ϓӼ]1 kM`:|~oۯ]WHQ@9z^[ew[D5 X.\׋Atf0 $|mw=[;]'~k.u_;.9VyVz3k7T;{?LQ&}u?UGm@d,D͚F@WSepս=囱f ~>/=ӕFJS/ſNu~O^K#Ƴ5?&X潼.ZsvF=3۝޸:`롞A8';3FI t_YY]~A|v5wFGchJYR@Ւ[bf>//=V5YJSw8vosn:|Ӟgp9Λ3כ{a;=\nA.;62Ŋ-]?F1yw9<}4ˎ./NxYptzR^Z"jxwo8܎'UsKw\ԕ2bԺʱyo~:6)Ʊ&r#:gz+ws?CACtzqQvpK垟AN;wZb$"&m)MѴ]IDSSV@)k-ޏ%Y^39?7ױܮzΤ@*bKÔ<1yZXC/y7:\aUv;~q{׍ě7M{؛oK˦=Tv|"TXI~ov`)QUYUgfXMZQs\>WeY]u>)O;NjfVEWO߆.5ϥ2XL[eLvc[<We^]|C7,1tɟnݏwK:**B*3~kϥvM;8HQe-t\ZvW?㬾ٿ%W539nz +^K~ YJOI؝v.Lcw%-zMdee9%LɟNV:,C*A{1.t3!r?6t\zTm?'n'm%k9^zʼn.I߬1 n.fmS]7չus8"\>BffbW dN_'q{v@$$f };c)Iž) 4Y۠꫚G/?kOasWͺYb^us7=+nX\^vxQn*̢CJdL]ёY۞nr>lͿ,7HS?Jڮ1ȥlL] a0z߰J*һ_?p?^Yvab]W՚|ϥ9՜|o~o>x۸4^L)SNx=qFqsmrMe!~YfPԫFf1G#ۿk]p2*B ejVCCAB@I`HdcnVjWf|~?y}tdY|˭\-XWn1]}W,JӖxO-.-W\my=^uCX,v;O6|}rmIߤGm[0IFQbHģ+jZhWU[թFzS:zFUs^Y|~W j52թB,dfN7?kqDh/e iZHIP &I$ S̰:mMRyzgAnyB"E6Gn]m wiɋӮ5ffUjt#3M|mY:IRTczgq$$$x14:!\ͥL;·w).ɕ _-qn)uYW%BdUٺ6cFqUm6inlR1 }mcql'uۤi"IDI<* dg7 sʖ%lo:O'$2sYBH1TO=bF%Z*җ;`EVUbP[wYmfִìaQbK tqQ(v lcǜd-0vەn1pڳk1󙕫`ߞ1u$HQɹ KHtȚ Aj]-aNٲنj=As72Ÿ~acgɰT=69\sVc~o\,8@A6ZjhĎxƗyfH@ %@I >FhPHք鷝lSXUIގz)0%m {c5R\6f<Ţ~5dOͮ/3QG BAh J$*SI1%VKdųO.FowݲWj:g,FNe-淜*Z_-IkZ II^kfl)pEX( 0Dl9WJ *5(41cYQ\ccUBJ̤kf%WSSsi94Øsa9yo7qn772dɞy9<C)$4Ӛsi94Øsa90o78n772dɓ&L3sggL3sNi Csa90y7Ho7x7;qɓ&LL2dɓ&L⾙O<Øsa9<Ao7o7pGqo-p7qn7q&L|}3yo7wGyn78GqEDpdn7_7yo7qɓ&LUELi'DQE2dɸd5L2g`O=?O1?R+VnNbvD_(dɓ"VVlD!"S՝BSd27o 1J}iWyWF1ZGJ?w8B"+b-׶CoTCCi܈gqA 0\!O6#DiQTGL_(Ԗ%M UZz'OTIoLs>T.wQ>N SpA8i:$vmJ\vè6TWAďMVKu=B!Ej WʖSV56mRQ)%[|ے8_:ꏵJ^xOKIlM%%VfҒ6+SbZjĉ5:EPD!*ҞEI#":9Y45 SN#ҦjɬϤ($򺙌HPeW:O=8trgBô0` P" ZJ4eDR 6g) ASEw 3}}l(i_jRی%\V.z*jt0)16K~ZDp[@m8Hb_578+ӠZeE~z :5RBeF5 Ɖ"h:97ͨXT9yQ{㍛穩j{XMI/&՟iO_m6i y-49z: TOr3e$dsrއ:&|=8]f#mGpi?(bMSs@m@˝$Z.!J9qŘy_J٨Yik465:ӎh[}ҎbZĴʏ\9ΆԎņZ9e%(/w;tګfK;춋fԖ9wVV̴vo.Յtի? 螿#im6Hs|4F|bR\(YdNukg* il4.E*,vzWR])2>٫-dptى=Nsv#[F^ҳi]G]/1IA,iC:5f$}m8wG5.Va Z{h}5ܷj̴I-kQv}UNVfoéO2/&4I<6o7GӿV+O;Ѿ#!D0`b{ʞiO ONUdm/ zQ@d6_&c(iK}>nZjl uϭ14ȕ{+nM#VbOnt4zM-x/_zm0t "6*hZIQlMM[ wDj̔?fT&e6(usuRiV6(> n,ΑMsU7uL;U7u0ލF 0`Al=HF'\ޚO-ʹ)-;H)QJnRhk+Jz O+KII-< |Ol5CBͪU,#*"*!ҎԭZx'{AD6SF5$ 9H$h`V"B9H$hr{$2RCh5Dhؑ )$1cE:3Dc'-N7-F'5=9iZ$hӔ9H"`QX#p`X)$(r؇)Lpw>mǾCqA>rpExr|}(=>j ( 0gу %8TTEI,rws;ܹ]qrti wv;⻝]|ws+zwv;⻝|w;wx;ờn|u;ع ~wv;߻݊OlUMk{vDQɞ O}^^qwC[-XˍAE2g?$V#!q4rH꘣ 0`;HQEH? &L7 Wkc9b0FȪn=IgGO6EU*vf|:aͯ+OsU) >~QTnM7 qp#_yG` Q89ÞsHݑ4AOh߷~A+nQ#f$R]T*I$|bJo1YO5"9WOqBOU2dQT#d ~] EQhpzH<18{E|H6ɓ&~z|S&DhI@Tz\4UU:zd{O3`|9!To7пlWxOsѫ+&pp81HSWyK?27j>Jy| f!(_EGdo/;};~;~;~;~;};~;~;~;;;~;~;~;~;~;~;~;~;~;~;~;~;~;~;~;~;~;~;~;~;~;~;~5% EFCq' +w⢌\:O&J"NOSc$thB4Ru$ :u!5ݱmkSGkc5ݱb?+Vjjiڝzvwhڝ+NЂT"i;մNm'z[IޭVwi;մPʫNVwk;͵ڎ-Gz6>ԴƐ`A< A|*(3C[VUIXV'?XOE# " yU ݓmH'ʚFߓO|ܞErex NN9ɑ8(&LJU))I +5<NOj[H؊ښ6oiM]l&uy}PU7#S]A<0`Qnz+f'6"mulN=]*s:Ey:㪤:C:Cfvim/_f'' =&8IĜIΐt*֠bϸ xו.0// )PFi*)}*ĝ5uBAj5T5;_:D6h{ě&]~o8`GFC!tfNӣ!њtfGirXXPXX 8(n?`ɶIS8:Kp.:KΤr)w\dȼ2"7"Įcsֲ;u؏mH('ߦDGEq q5ζ[El0!S 0`DžEࢊ(x~i_O *0Dq;+dȮ2nxuEgX,ǹ]QHKꣅ)>7Dq6蔧B:!Bڨkrgǫˊښ]",t":D'H"#!:D'H&tN a:L'IZZYxŚ1fa`49FZ(4ggggggggmfg-g%Q!tbh܉`5z#h:#Ϋ7)L*QS0Q”~/Y~Tɓ&L2F?i,z 㢢u>ɓ&L2dɓ&|2dɞ2gPSpߦoߐ_ifVB\PY`oDssLt9·1:CsctI9:Cst91:CcL2Gyԕtfhګ1G]Z;7CF ;J?MmsNc&3Fte9&KNE/-XejoyM[{I;cyBSxJJ=K}tq}_ydk+թSU^KK/ ]kyUKMMiwO{U^MKΥlMSz$շSY^A39mS_ N$rVݥH<껿*Y^TѫOG9_53F M*vMOjFεQ Ȳܢ)G!v&6zʋmY2siJzQT2ةeXmnU,5uIBRh* {5NeZ*Z璳tj +R\Eڪ 4iSM-zQѭ h璙R K6Fy%geE7"(`RZF= =LUSKqv)QtQ”~q&LAd&T9 Ex= =2v) /vvn'zDZpjtOݷg>+uƓw/֝ߡ5_gS;iHIcM[^}գvI\*U'vnF[ zZP Vg>bM0m0cEC)bԚ¡]mZ 4qQo]g6"?LjU~r&Fs k0[RWSWG1ʹtV[k6M vt<U(/9z[\0') +(qTS*TE&aXmaXm`6k 6k 0kM60k #k 6k 615H`j:#oh+D/zk=5} ]17&k_Fjȵ37Z}kKSnۚ n꛻\ʽڂӽZ,qE˘ˊQTVGݖAGʌmF\%WI5K(XNXNXNHNXNXNHNXNXNXNXNhXNXNHNXNHHNHNHNhNK]:.ҭ{iG(%VY>lA9EJ>$J=NA@^ӱA>a4tBn./1'W6$D29)dXƨ阢0LEhz:cN:C);=Hvv3ghэHu 4'PPEBu T'QP{=Dvzv3gghѝ;9FvrCgR;?L&dhfcEO/iF-bí08u1 ckF8'AM?⠂O1 0Q1@!32AP"`aBRp?݂#΋AF#y_~B'E#$-h)*ܒINI?LIMl(Q$ʂ'mѭj 0dC$z$3y$KhAvZ#L²Y/-A^Cgi&CևWCX=#E^EݠOab!j J"Ayһ ^NKf+{KSٍ(zbA"AZ?6#H[PF=0Am/ѶK%$tI,z'[K}GQbpov[#XmrƟ"GfΆ" IC!{|5-=+k=7I<Ġ}'[/h//hY:Dt:CﱄؒI$I$I$I$I'RЬl E؂Ws{iN>Bm0Eؑp@UݞϾʏǛCCe#SBF諻=/M{C?O췐ƚz۷c$B!YCLZH*c* CtU=f-u5"wCei Vzl!_ϻB[T@IPوEfu~z_UERu>)T^I$c:{=/MB=NOr}S}S}S}Su:oVx z>'9G9GWu:5toڤWQwvUiHo|>\biJݑOAm0ERkZdM贌veWHHhwG[g}o˩Wz˶k-ZtP=,1g>zv - %h 7YZQZAU#E'WgZ4˹RvrMyC{+Q}գZ䣰cE{=NϯJu'Os!iEޥtRɴVv"OT_חI!iEԯO{.IŹ =;?>k.i.E+.wenGIAEV =l%KɊLu/ T쳩UvQIB]nh a0H m@Ƅ1h}=;5QM]ѕOUTpeSOU<TdOUTpeQGUTpeQOUTpeSOU:jm7j.>v&Hc}u>zOumU{pAozۣljgWɝYYN1:::>::>>>e=/IN1ɎLtcO&:y1SɊLTbZҿ?!B2 1!0Q23@APa"q#BSpr?޶I$OO$Nɴl|2I$I>)$Ogk$|MI'to$uN^)O{S1,~ ^zv͕-h /Z-S& Ř3cx7~vTSwzi<}NE-A;~ETQwnٽlLt4i9(.j6idFF;c&6JLLH"Lh#lF#{ vPT䓧YE3ى*TJN PԑtR;R&"I"ۂn+I; z8*5AEcgKQ[;>mLgNؘw#*2I;;I$ڢ7rbVpuGPjԩvehY#$RUzJOVR?wI2HӴ#ԐӯrBDB 1GejoEJ*Rp'6@읢̤ڒJ8*)e#ڞ!&i$GL[5c8p:l6Iٓ*}_c"Ďڙ7"o7R6I$o$I$b$vI$ 䧍|22{b$M>oIDuh#`*EE&RaI&“ LII&bQ1F(iRbLQ1F&#[.g{QO6:gsw;sw;s܆w;rY~Q;gdA;Q*`uRӑԢp)%zYwFK^J6U/Ck+Кd/Cs;;?ً$]QCtݿ(ז6$ڭ#b}>Wi(ƫS۷4UV_tW7v^'O;fI$:L$I$E_:|-mv6|i$M'dl"+ʥnoυ_;tGH6]*fd#4d%2I'~~'$v;cؓ0f 2b y]Aۦ+#;#_JxanKulLm_$#"Iƈ"Z'ؒD&I[o4Wvq[zGv[f/$J$zAK$H,I$q*LH'eo}F$+I$Jo3GPv^Go}4u>/Ix&*WſnbȳVvAR飩vI'KGBB17[ݓMQRb*H ?:ًH~[ddI$ݎL z&:H"$M? G)ߋj:GI2FfFFC$!/H H1?х/iC:F~A GGAAA_ oR+O#%"DM)b*:Ifٛ3fl͙6fٛ2fLɊI$mul 11 c| ĊPǵ4u>,dN[koex0ƒ Gz4:^G]3K SJH8芽ƯF5z1~jcWƯF5z1э^jcWW +$wخjtt}3OiPhhѠҠӣѧAA/W4:^G4:~~~O~*1~P$۶I$IDi&J$I$I2D$gO)UBI6II&I$OGjR!Ul4P|]rwg>ZZ)0ANjlCPgᦺGեդդF&Γ*L2ʓ*L2ʓ*L2˹&T&#z5i5)5QH"Iߑ; ,ğSI4Ugdm$y>EFHց#>m< wك000! bY1f,ŘC!d2 ŘbY1f Y0f,Řbd2 i1"TUȡA#mf&TPeA:^bS܂&ѪjF5Dju)2Do33fLO $Qf5*2jUv&fFj?2;`/[WY~ۋY!1"234@AQaq 05BRrs#bc$PCS`td%6D?x#7H$J[. f*FQkkPCv'9wAl?[sѿQh1ZN PCZ/8BI@}Zef}PK#kK\ ]Sj$F~Od20acihNmf[;q+ [pPT7i4'"-;'P= Pd; ?z&7pc+vN^dD66ۭ׵¸'_aM:#VJN,7\:۬H@ދ)#9XKM4-2}E~E|AhR6׍c(-D䍺"q+@oCOr4 &7\_U׎$K@V.Ǎe V0i,wr^})Z**…]vРĬ,rsr9AU})IȬ}.Cq;䟗v>⸹J|΄\E̶w< K{T%m:eaw$8JtKl{8_%)\,} pgB0cmގ(SmV#hNfǖ]MxMj-C%Sr-09U$mʱQx NPnɽTdhsɤoVvL#%|pkUiUWnL(8sw;aS:+CPl=2< :Fƌ-ia7 Ʋ&א7o qRrgrAՂⴹJ|nx6QJ^h4V>%nB?(ϔI*fi&eG;5ѺO't%҅4+ &n(Y>?"I9c4+y\:^qКjoOϸMߨhiY̎OyB{t 7CMqȤp{#'Ǽp{h S= _+IaFs!FCqҞQyڢq$X|VZqKӏn"r;lyuDž\A:!l9ZbO3vuψ2Z)ҀAȩ9q P/"o2f΅v{TaeC"#o+|;dtdt7NILy*:'pSN@JUDN0Q.ēRNkPᐅUQij)o4UM9MJdt?Gq:GB7js M$G%j*>i<$FZdh{#Hq %IFZ=C4 2Y$mkG8P#'&(n7F\s,WZ)W\~KkX_[^ǘv>*]pnj^8͕.qFPR~k255JqT\5U*y`4=PV6?&S*kDMehk^֍m;lS SAo?'B$_Jڃy75i {hKJ_wAubU-UƇh3w˕KpEv췸kNV'Dn ziz=y@]#!ݚ%L*ڶ_ES:1(8=k G.iqpq-8)+q ΀3HZ\+N.{ҍyV_z#xVCvc}piYy&RžhIvYow2MQEE0Nיࣸczx%r)nn)P.[B\XwwV*t;G;n+W$@Q]=ZeT:C/y/]V?`hM'4i¾NE[Ƽ#!jnvrCon|G#jS4550vIjF ʜ"2V=(#ɫ=HԺyCpkg}p]D}M5ojX!t_(q8dO*0?PS#**k<%.zu{kiO,Cpd,'CZ/ay,,1GՌ*iQ 1x1ÌoHBZ*_#>:kƀ)uGVsi+cdU4N SOlcU{cQ&їVpxVe-L<->sжHB#= d->sа||9Jv? "i Ϗ/t< ^QZα'C~bY)^t?.kg{"ɸǝb-'8|~!TH{tWZ)|ޭ|iYd^Yn؃бz&yڟJڟJڿJ/s%_{9ְe*Wk݄B?+bJ~#Ҷ+`Ҷ7t!ҭ`EϠ(l"Fae9l[+3岳8-l efrYVg-efp[+3p[,yl[,yl8-efrF󭑼dnrεZ{yֽ^u\9ָ-pBK471oo5|n[GPTY[n[n[n[zVEq}ca?Y>8cضPW;)SHiO`viկ*IUzVp5vltGܼ@nT)▆ [CU zR 8L}KOeɉhc7Hyf oq^˥ܧW6sU,>P@,8Uf$շJStiW# lǀNalvT8 8jxTAawigCgm^$p%VXmޱfE8[^7*ଳ82YF5-?z߫iL7ʛe 1P+<6A'`<ѠSsiy%C82(Z"׫LUM/D:S(66kAS6 [g$dRp̥ŧ*d_d+& 8dR2Kv'CO5d&=2$C\w} _(2V~X&9GbLai|}oaw1dˆ4My/x:S^V;SWCu4؁w!cl(ndvk%eFhS51Ukׅic̖yE> x*?/ /ح̋InWHod&_bY"&bz^4 [##L(_8;TxGObY4;WYxQß^_=eGYxU^9eWYcGYxU^ >$Xeֱ/QO-DLa6\% epaA}j{% )Vٝ$k\lsIc.$yxZ&2^G#ZHoĢ?LP(2t;Rp;ݮP( ccx8o^V W^&hNlra|Zr/;{6+1<֍mrzi t'^9< [?j?L. ]Swod4܀ yM}|hp>ZAFض^MRjOĉyfhe4YsjY?vSr=+DP\9Nz2۶& ;+˧^ crƀ'ocu-SAq(Z?,$a^uo:׷kβuo:׷kεZsyֽ\uo:t5CkεZxZεZ{yֽ^uo:׷kεZ v9wֽ^uo:׷kεZ{yֽ\uo:׷kζF󭑙Wh J<]U~Kҋ5 #u{Zƻ عޕmc+x+l&-5iԇ7 UPSOM5\6)&vdO5]5dsX~mZ=tFZ"uwj 'R,gXZ!+LC3ұ>ꮵ.EbR4Ms;5S+wH8>/X[^lŵ[^lŵ[ً`1myכ1myכ1myכ1my6b&[ً`1my6b&[ًk͘ 6b&[ً`1myכ1myח1myח1myכ1my6bf-6bf-6bf-lŵ[Zlŵ[Z|Hlǥ$Oa+*ʲծbgο٬n"KZqja x֥a,-6 yYE,o|n+\yJ-;!osʗor/x/x^2G/x#G-)[VElsrVZViY G,^2u,Ye/x/ܼor^RzVo в- r׽cyܧX)!1AQaq 0@?!9z9rd\~jy(VbN|@h|2dI$'^zysQqaU% GAmxI:$I$I$n¸X9S} "(  W"+ $I$F NI>VII &I5$GvEEW"e".!EQTUvRAQEJ(*rFēD/.1o*J**Qx*~ ^AxUEƵ'INb(HgQExRQAAU&&^k K?!SY!*« '<12*LLB!!A!!!!KR$%*.oR#{s=1Qlj<^ڴ4C٧P&HE_Gv%9mNhHAN*H{Nw8"v7~&a+Z'EPT}fHEa-Y^WĘF9(JљAD;iK{Fк?@ߑ>RO7l\Є*ta‚v5q(?09BI숤Kg5A.D, QPe=bġv-C6HzWnz 㐂 ˘I  2HkHBsoCRW_51'1t!d.WmX-ǦdG!J0*RpP0츲%П y2E&e{ m8#$jբp9΋g䖭){$>oFK[jrarzK1i6AKzzbJ!=p@Hy艢ٴ^ W?e7D8*lu(~*%2\Ĝr3z o;=:5KvW"eEFF,"]"[?m!xGez҇x4Gmc . ̀JY ĶCS1)V$ZZ2t o[ T瀒)m3\94wys3)^toK6j hFNa4ջN,PoΊJ#ԉPAސM\LP;s̈́\UeKx\DjΣƋ+Q#j'/SAcA-Anܯ9՚}6'dX찦nݞ⭪r;s,D+[ YCٶlPc .YY#KL =,wiǗGfTVaavl] /" FsQd7 MBD}*푲 X o%mH!CyBkWxH6喎6-S'ŘZ/l1**#ׂ(&%b7RRwyz0f^O$#+#- R!Ȇ.Y8dX:oR%&qVV[jӅ~ymlFa؞KylHǕ,K l dH݈h9`y6E!3:>{8$p: R.%$+Z d{<$BAI ),EO0L^cͱкFL1!IgG$S]d{srsJ=@ )q4yl #2V<Md*D***TÁ!xІb9TMBlqŊ} `љH3hmƤ%JJD2E0DRD՜`'%QdGA'Be'Agǚ+EB% BB!Bb,U!Q)j$I#dqL DơU8d,Q*H)h %Bb ),悬H Ta1V*n7Fx"ȯ: f K-g;-7C.gueca|m ׈ˇ0]ùnPzG55VFc lPYyrq >r=8sRA &mPe{"wyppQ>Y;uƭR/ɭ\Kzk~>ˣ^WRg# 3 \>mmdG*T&=YYĉ7':lc.UH4oms[*VKԱhiCլniGXUb$'ڡ]Gw.ϫC_J]ND|)Wy&8L'쒰iyX<.Wk|`(TKWʿSn]m=3&&&*&8zlI#d & @uV3NDq*q(&B׾<.Su9V1 {730n3.v"Sx9UkgrJ%J%f6卲'긎B,QN0(q]/e~"I6zA.ӈJt9s r-[!nB܂ `O@bCLO/Zh:#41 ' Up"B![{8# [8)l Pf=q~Z\`aԒ۳w%8ttjDas@a"rm:G&6d=ÄWVB 6gv896dpD$AAA*#6S=&k|ȼ0+1PBIRn$$48AB Ne'Egゥ("IB\p0s}Y~!蜠MۼA_Չ9ԃͶvD0HLN{쵄Z#+xx-/0\*: !;v/,Ln'=e̿Mo^Mc GD8**Ub?}IE^#m0h:-趍瘼ޒ(3ДU#V7z'>9ꮎ'+HBgdil9$HՂ.ȵdҧ}[h6wpGkaJli;K,8v2I!~"F&zgjW(aؖ L"Գ`hZ0@Ȧ0䪃i^Խim3 BոsMHEO~TY5XZ/#t?kFxVO /VZĒ=134MXɎEE"D xXDyh~؃xD I9sE]7nLN Ncڃ ^0-$'X b. Sz YX,J?_5~HÅ2i&p!L!D=Dta2 *&Q;6*Qǩ 8!#<3/XD7}&I$1Zs%Y#I3{f/HCYB$,H!Zǽ(́ B+GKso2(I$I$I$I$I"'e(Jhݷbt$ŒPiƈSX^'\-X-!0؎X:ˊ:Iq"%5w+wK )1t[Vz eӆ1YXb`σ&mݏiʞF)=C$R$H"D$_p/Ěhʕ,Opj)=!,CvZ:ZLFɡ1qoU' :r,$j)@sH&#Xfs7{2v&+P}Mƅͯ?g&K/M518Z[r&5< mz!2IĹa2"R $K  >A'U661"cP7{8RNdz"H ,%NE}dzԲ]`؅%j(b.LBGk_Ut /pO+f(D-Ɣ8m  q|K)̿&!u55U.K;GI!zΝ\$"]eZcTYtqR)T%EER:Zȉ(H; Bf5K/ h+ a.䒉+(mzrhXb ЏV! gQ8qD*45Pv,^eqFFQb6g:Mb)I#6h P&hK{*b2͵T;lJW5 6m.bK9[{\_@ټQJQ l\P m%6XP S)]3aFCIȑ|B" Bq\GX-UmIPMw̄l.J.ɮ *P"+bW%b!Mvb'qZ DFfGdc"Х[4.oeF֬%hkZ$-gi&\ kiPKaLDxR=%G țhM7 4Łh[bszӿlX1,O;I}ݏ3"lh$/1| ;NA5Nղ]YzJes;\Wܵ;ۊKV O}ؒKe/>r7"[ P $; D>1qas֟qIB߁:EtH%injnԷB"u"YӱX4] c moɉ^I6`a s첒&)ulZ&_3c8"HRI$Ym6`]&I:yrbGF&&C4!s1*Ђi)d@Y] 4IV8J%m(R14l4ޱ$xڤQf:2{,`2ML)56V~)Bޮ eBeҋaLՃ]GN$QgvfT헚N/ v pr 1 _(pj: h{ ՎnԖKwJ ӹ2y49Q CUS [Zk=GN6erlMY 7! 79rvψǘY&zLӲnr זU.`I & G#sYP!n!G4!}Sh P[L,Mjn!V6Ҟzqi%[zd?]lMmrns,z)IresoK|Υ.^wfdG4Rc%#֝fHix{e"ݒ]rGɹ%!@`%+#A @~)rtb.F)IȫZF89v. qh'йA;B+6YmФ8Dx3v^M2PO .#Fv!ccu2AL(b9"qp$%֒Z+1 <beq$bqi'ad61w$'[ 8)šSvDZKtH*i b3 9ԷgHLI&NQTdF,-ϲc8nbI=h"b\`9)) 'T,D!- 2SMdE F=T'T/g98BN#t8t?Wd;Ͱ&v3ػDj7mn$EM^lvvId^Pz Q2Cm-GAb-6ɪ.YjɘIKr㔝QTḦ́Jj0ܔb< x5Ia9$ν!s Ran^SDSɐ}? ~'ؕ~};'>w}r?~C>~cؿ}|%ŏ8ש=+5H%l/?J7=Χ6_S,Oؒ8iPǹ; hsPʝ9]lTn=4mbꯣ-l =XD{.H511!X1u5X knlg>_G}^M}-Gж_G/8}k~2߰K=N;x;vi-_G_G/k_G/_G}:A#}σ CZ(R"DlJ!<~F<{OCA>4 ڎIIM%&&.\hOI~ Q!"-&hc$t87CCVaB  BTUlt""A1؛F@!BْI?|HAP**:&|TX4IY3P!xXUobF?'GWVzґÄQOG$I$I$HǦIs]Nf}^I$I$?Owh:P%"LA$I$E]m'UbfȖ=I$I0 =Ltw$w9Ṁ9ovv I$I$1IId"H $I$zs:Cfi(S;J[im%.ߏ4"QZHSA$ FdI$pQoIobZ OadI$V *Gy߱7I$JM{z! H0I8sF "ӱl喤l{gZu#KYݪ|hP扉q;@+j)}ݲp *6-˚hrYaʚQ7`hۏ-ذ}H;1u{:>Vw?I6ͤM0Z]M[f!l]i"KKfa|l70m2ma޸Pܮo_3xDHl o7Sͻo徤 [ ~ | @Bf-۞dU0])9}Og{t{U_`=!YoaDPXCdlĈ(-bx-D}%ZXKL1b~p ?#~ X?I.pN tTN/s +wtJ}D!@':=t'S'l~YDf yZӦQ(50,]' lacCcLaYi.IZBPia,-Qͳ|,- |*ބBA"!""!)vl!eb[4`t×vHHK46 ƩQR| 6Zob]гK,!464k!q^6[42221([(i`F5GӇF}Tc^ID%f"&!8 k iBTA46RE:.YK###jQEA+mҔo A=R^Z! NL%D$BCHkNƺБL)w9w=JReeEx)J&┥h yhJtl·ln5EV'z%:| \ΝB2 z(k,T%ط{甄^=/SBhDΕSmJTS(CD e|&p'_9B>0%6'?"B jyKhB $-rܗ,0ޭtt8xkf8J!JbJApB: bW䄟[.ou*Mo'+gBW&FWbQ$WD !.Fx`!d;o$6jiy;eM/FOOOOOOON\umib### 1,%k)lWeB#CXxja+jy1i>>OfDt@:À F4L5,qs~7;4S \D$B"!6'|yhhGd&y_#-4*Ksx*& E2&"͍#""&pbT,&_8%%Y?+f*L7sNW $i %؝JZc5K/x%BNJ!JBJ E2hJ{^!8} W?oA6p6[A:f52R,(7pK<>stL,|5Y glR j#CCl-|k CK - y k6L쀘@0|>IWD=& !aE+جM ɨFƂ:CA| :$Po4f>_ᐃ^0h"KK}d6Ft4#k&TTBt$x D"  'p$CJ"J ph3ǿ_5F&qɨtXQE4$`3)s f X,A)LB٩s D Hp53>_ =4MLƚ\茢22?Io Kk ̵D1JBSF SDƹ8tJa:1/ň5h_/ K86Y_6FTi5΅)ׂ1yh'{]a874-iأ.@hJI B&Lj_$&4>{DWm>ަZ!^ȃJK pKhj26,Cz] r1I# ,JH1F%bXA5!r ȔHb%D" I^\@NVVmPm5iAI!A.HAr%XxJ,TĎ3.[!|k4{/{Ovx߿>?~Gie ]}a!_cBEn Q5E#P[jbC"\$wǸ^?UDh| q"""""!!45 x <ыI D.< Qr 64cjp\tNn'c==#?c=IW =t{?~t{=oG[gߺ=ƞߺ=qoC~}t=G}2i&H#$~ܑ?REԑ?RGH-%#$~ܑ?rGHJ J r6%IJeB'>/~Tj Q.}TEʎ1Nb%?y8<->Ft@NSn!3<HhhģR DI"RI !Hjěա߂6T$ (7eKJqѬEqD]1LdcyJ(|3x[ϯaQQQ| M4R9KoZX^[YELA n'%eg%eeg'"mb! g!iSdklnͽ.|E'pvmДb$]&AĈB  D!B/\TD'$cPFA"nMAr@w ̍++++QF=Dpp>2%C$C3$y#>IK8qIDaH Y*#4}G}Dy8}B Mb.?aI,L!{E䈨NғzXJ6'{=TnaC_%y/^J_%/^J_%y+^JW͉%y'{=##VW1W܇q7-xZB,T)%{BEW[n c\/ EP Yo(港'tyrkxI$I"Pӡ8>E;ВqD<$67.MtDDDDDDDDDF$D- y!!LDDDDo'D伍J2_w-\5J}[wlk7=砜E%I 禰z4sn='}o-\zT-\LSpyR)֕YjEt'z3'zۂw 7*!1 AQa0@qP?j]-8eFGJ┥(<7pJR*8'sH [_MCF&VV[qJTTTTTV\ 6'0V'䨨┽ UVVVVVVVVVW>iz)J>=J4'pN)׷FR LB(h# iJQ87ekB\3^qJ\\6W2xXFD&V'lO wRYYQWM[N7p.7aOl@4+~9T9ۡ>C :FF$DbkW#S b^Ga| NEmD蒉F4ADr%‰$!:R8X̏K] 5DWLk? wZn7nr@bX\ \jcRW'J2B'T4}*>si0h&iPoыJ?~%3tj8v9A[#G{ 5 np [Wʡy!-ȍ %X -a&FH.z8n ܼJ>0q +'>M\ ,qRad; r"`cA$$CdxBThyZ!,p7 Pn ܗ#s1p<_=n┎DnȅrQBQ{C ĄCD1nf1 r=2"8c<JRmQ#C̐ጫlRT4bHH8,"Co(І&6 CmJ1*4kĤ"D88#tKdKeq\p=M̠iT',. QEҍzb~~LgY^J:/ T4WٰNmt= eܡF܏Ĺ&6boQQ^p[ ݡA+e7JReP.+EZ+(N≔8r(NЯPt'z >XO ܼ]#sX )J7~4ee+B9=PF1|o7XN@ 7\T'.r!Oo:) ų$#v#;n`<"揭 jtvN ޕV8JW65G:'iqObNb!ARO +!F7? DC0A 0$C1a ' (O'NOBtM yp7 bp: 3j]+.+pȃ'xSf" E6T<-UnP'P5ՉXlZExx\.DDjnbebs  ފ|;z'p2 ˜BMg_%_!oZ$@jɉt+Oj~)d&W"gGٜ!K}|90x,C9 -cV#zCBk@dĤ=x+f(5ؙż':C{JvTkUdL\5X9a;8,O(4 Q@Qȫx 6QMAs!g/a]T|ecb)JRkD(ݲd&\8-HP `Lj 45Dɳ`-a-v((n.Sc;|\H mDt."v04kE'CTI߃( J.)K}0ݻCt]7Z8q">N C?PQȔ˄>&@gF#;  %cyb}}?lAPs\[Ў!`sn8qXW_uaxB h3Х$,k./Cpa3ct)J'eQC|QOM([hQEQEP֦uމ.p8,K lgM_Ct݆Z-h٢Y_rr5ҐCB|s#}SIS*&?:~tK;A~DDa;.S< >r ܹ} 4莚4,KUk5FL(HkGrdL&6؊&!?XN_7ҶL5MzŒRy^a!#ȴ,+zW%П~ď?gz>i+n?>}{G}{G33331yF{F{G ]G>^wщG ыb}I^b' ~ w'=_s}OM=_v56*bGq_?glMY\tKFEC}~>o+NF| B$y EOQR_"''$y*G<i$y#hgcww+_V%jasC_ 7؟B;"HBpv)U°۱Ȫ]V_BF_!XV tib4#L|TwፖT.T""""%#t7p 8cѳdoXTqv*um[XM~Mpo>µEoY7?tW )FI"4"5#X>_Q(8ǡ8\fW z> Z Nħ>ǢRbzsKָ+lM(E6ٱ2p[|CC; (^İI!+"Q]B<1/"[" g:DCDLW>v(v~ vg~w ,f-gQKRRVW-@¸R:}nAlR$0zKa t&WŔlRfH?es1:\cj nݥ(;Y,6fXs-YnLi Rnr3 v-y94xN! pxst ./ l9Ŝ@-ab{ܿ τslN'1|;W +CpPo3,0®篦B !x+C~ecxJy"z4!Y<'ٽT[D-cxO cd-aĽbhs=s9&]`u3S^w;b̻yA nɧ3Ro2p11͛%2?VfMҕ`\:[-L YޖZ`s )Q>rGd=FhQߢPbܼz Grbq*)k[ڊ,0es6ȦnjVr2s s~.(y`]f_[fM`-w(nbd e}, -ޡ;/ [5 ,>%qϡ1̯x7/ܢ3veyrC=f̯u\ĭޙ;2Ϣ OxTg0.g@ߧG1NRBwLs8np̡͹3q%b^Ig!1W7GjK=-_?CoqZr(:)*oH9wPO2 A+N7YDUIqCabuԽm_!c\|F2b,bÈ!p+ӑ#L Jl1 xfm0IR Af7> &bCUV`Xlݪ%cMVKdng:$=!" K&G&8 ˗`i74S\DNשRџO GlBu @7 ŎfnLIinKH3ꛤeGբ_0z>H oOA ,Q/bhg%F'NFਔbjڨT`w;9Թb˕`,^k;A(QJ-ڂ`)EX ʶUzPMtIUT*;BB YԻIJ/igN~C '[PK䈓z ^,{Ϣ),Zv87F1PA9b9gX0C.iZ"Zls֎b"%_0=XK/~ey_V]?Xڅߦ#q6` Rϯ$yE ݶqP .Zm6ю]o(酬 H}V[tC>(t@Y< "r <1jSd}Tˋw5s2\ ]'TEd(TXdjIF.]bY}1)B+k/K:m= z8[-s%OjG/5;6uZN(1`mffrɍo6˗F pcmP>C$ n)[.UhaXoل:d.ĺRw{ =eJewxImBsN/c6kfPZoWK8 R^)*٬$nEXqYQyֹFE>aJ}e`4GP QaljeL\t`%MLMcԨt;4MؖyQaP{Hs5}"*?-EtԎ(ku8.70GkoB(/ό( gsE6n%&tE| 7~M" l $t ~.SR&埃r۪%SUzk1ʮ9_wH; **X'瓴m%)!yBбOic=ZN 5 k &q+5j "#(j:(+t6 mk/lyӚ Ȋ=pVT8JY?+|0h^z+<*XQ(imx5&QYVeP P\:/^ ĶeLPr!0 XkHW. ^Xq武v\ B k^J+4 \wenab᳒w*n[/*1L0XfU` Se곋qWзŲDsyHJ`WoZ1'u0\+*=.Ɨ cG8ۻ Qx/uIݻ؄l&J.`O {B/WĠ~%Qཡp^OT܋#uS4PG*qafzhW pyA(,%09J~MU1 +%1Ye# #@,U[A/[O`)yKSD? v a{7fN,v( oiCK6peF%v \ѐv} jߨY]iRd՗{KI}ؖ*JP6,Ju45NU5R= R !4$V$ڗjq㽐-Am"~!(rWNܯX *Z!`;3M"8`@]]9YTF =ieo+*%jv(iwRn]a1϶@C{sUޮX@ĦQ[CGm4M5.ҀUA{1qU5emS]P0͊2#HJX Ú ds++GN:V&pr)vI@j0_N' 7|Xf kS0={M)Ta(2.ʾ| e&dz,ڰuTr4ǡleof`m'Bs"\ZYFאo)3g<=n>RZOs0vE LR酕_3#N~>k>n,vhG%q5eteGp @wCgvuvӚ &Z}wQvWzKt)ض^0C^0K2jlVW5Dfy(#.?x%? ).^b "Tb6׽l{v*"A.l.4tyDЊv:2z{u5K˩~3ݰ}"bT8fcE6`R=]Ё#4jB6(NH}RGarVZ\06 Rڽ[KjH3wVa|86~?R*p+4]pq;@ Q9UU]}Um \$Hvd{!ur(u JhШ(RRXq/VbJ,]G^(Ǝ-**%%G[c:pćUe0qwE-pc2خ!&l؁L]U6Xr޹Y.]&!&LEo\Q#WFJ@oD0R6S- ģ\b\Pbkd66 3U"!ȘHhk-l;* 4tj Ap]iKLkVAd, )}يMOgaُXf59g܂k}eyҒtZ6& {}!@EhJIt 41} T@0 J4K7L@p H> TMߤk*L ]~&wLxWRE.%s/!MsKX ԄZD&K sh*I~bsz^p GKVd`nZREY~%ԡf|̦&=YD(UX&ߢlN2@ Qry"n!l?4z7?'$Y~l,3Ew4SH2ξtv;KoqeI[r]e \1.y_ e^`(F$j:7u"`YfP9ڠf8d#}E-&76 gb#9\@B9%:&`2@P b"L``(g+@)  JX E"" *揢za1YԻR[MNk?2Tm)}PksAi -sUC2'U1Y}b8̄Nd97j]B w)h@u~į5dFۨڤzp8`LB ,8} %H[f}e_Ɇa=p, [0qyjႻuĦkiKzBŀWNĸz*jY! YPP + !` 2C+*Z!TΊ[X4Ze)mZ҆T-~%yhNi@e]^gO;;;;;WݝJB~f4" n_^sO?~HZ4ՃboAP-ൔUeόviT ku]Қ_6=\ h#h@&CUhjf1E>xL_^%,(qe:L?0H˖=pTݾb]r2R; /,@HƁKwA9`;+kS暘 Dvb-fbUpwRnڃ"*1c04FjkJ *+de۪,Q޾5B,BK[7 "6  ,[\DjVUQg*¶wڸN..!d 0b܋@Qͮڮ6:%0@ks/V` IKct mD-ʨi !!~hPvA ّQ Mpv @ q{`T+Iþ,Amoi!j nt47J F- N%LߐHB"޾PyNe'$N%b>*M+57O⡛$ r7QSgHw#-\}3k0qtXu}%/HF ABa{ȼ}V 5 GvQID[6`c;K!E-B,Ԫ\(TԖFŎT#s ?E6izRlAx!հXġʃGu5h>5ͥB\B.z]F{Ӛ{"3{Z09v4=1J8F^ dCH" ̚Q㸼ƩfPҏ-ahJB.ac p)-kMVFƅV*qEcFiyBepfJ*,5 K Ġ dmL!Cb Ԫߞi 6w;ыyDخԗu<<@yk2I$<.*.`ߡ9Wy.!&K>%p!p>{5M)auspUDx1-;BT{h5;QD:+PjT 4iNb<0_iSKs:ހ(=* G(XRDŽhFJUh[eD.2&YM¢j`#!i3ib;ôZ;RqQe"-6zR-jN92TKAZ3fޓd7Hdi~ޅϬ_i~K/_ıfF+8qGڤҬK1P ?mLqGJ7ؐnP[ɤe9z5(+F| C}&efŸ><@5s*pRbe( t^leW ,L6b/&w-j^L'Q T $cY}%Šgum)h"cn1 ~Sր߈^⠩A[A19!/z:/,Zt/w[ i/1Xk 4W+gR/ KUv!V#NIT/BCc/Lq5šZ %Kfw1l2]Lr#GS>̣㪔5dH29#ȆjbZ0KM\P)f  nxX>p6[3A0v̦U#k"Uj jJYB8=LlԧYf]P&p F8{p H.0O bPjqsq^kS./_Y9m[Vܬ;SDjeN#L_%C5=%SCB`;!l\s5,­ #xo`jqQ3>mL&tTrL R}|wf%`b ȰMNNA(AB/%S>Yy`E0B/i1I(r}Hڶ!k[J\% F*$J-YF?KH=vZJ䌃Bg,ec2qh~a, =Ѵiۤs7\􅹗j|4 Jً{iW}YrV`˟3>2"΅ɪ]V)q ]\\cmoVg`.fSQc(xF㊜BjolB!`K Ʋ@UXҀr-+X5w$2V7-XUh}_@N ·eu.-eu C eRh$H PפȀ,)VwtRJJeE;jJ8"Zj/H+L˯3|:KS_,[/sA⚸_j1f ^嫙[U=̣[DBOԵdF@BA3⬖kJ.lvF[9ўb++V1 NYfb!!k+DlTZ[p2X GKd.\Dm#W('a)G#8x.4"[(ȷ>4>ԭ'ew3=v?t7;ܦ=F`gSe"HSۤSpAQPWiq_I]SPlBB|Q#8/ƛo < |4>&(k򡢦E>j-:S{9@]/Ē>JZi9yi0oz8Fa, _G :}v-'P-ka, ^AZ(va R'1%#@÷dBLU+i+kU+$te.,@ɎUB*sK(LYRuЬ^+Tݩ׾A[%BXb +pc AR()`E}b ֲƋ-V٘}X0CJ5N ng"blUqbu$:}%P+1Z0b'P"GPZ+Z\K{ĜG+>F*LCʴy Xs:_2ΙkL6*Y: HE]xաD B~r Q~`9_xnu|;_}#.{U~Q)0Wrc0<(w /29K0)-W0 ی *F'/(B[(myM-tTsźb_өGfc lT+ϴ "ћM"xN3[Jo00JZvBaϴVE"+yUY\»XRg=2vEYT j\#v,E`}a3q=Vnb%QU30Vz_Qʅis.{M M`ʵID$uW݁jk< Zj6l)~m~{'Jyg| |}b~Ux^fşx/ɃO? ^we}.~yKg`~w>eә~a*?a/yz"CLZOx9v8 A>"k(@߼֞g@ W ZM`A宮ZP&)*^j?VK%Oak6dyӜK>=%M7-%Yl  O.% *k:hxx~4Yq3KetƲ/ӤC5)~r ?|K+iXXS?PHz0Z@/Mᠹ_?]At?~m0ad5(|!߼;DP[J!m[FTuV,qJ. Y\LޠQ* G[-[Zf`nâWh;J^G˕n{̩ɿz6vXbL-Vy 6ۈH?|n} ^M7.g.Jf KŠ/E 0}$0Q ]pFi3e3tvkiL+abn7t7@x{M6 ,7xU*=+9g982҈&7kV9seVeM`KbW {5,Ȱ[jTX[>"5ŲqWjm`EC¡W4b2$h%twp- }`p U1%[j}ShAAK$uُ?:""tM=aQ#>Jg.˖vۚBpVLh iSGQT F|(e32sS k/w&ۚDaF:Ekזqg于 E  Z,Tpq d(H@r,FRa V[T+ȥb RH2hwTk]* =IUQ q zG-[.ZA" 6+08-m1 ͍ʣQ5|hY9Nt$lMܑNҊKic*zn]?0Ut&"oThh_3 ?җo7C-@*^Nu78-1 vәo3 Ms<:`}B_I4|̯Mڗ_YUReYKoiMdvޮ"V͵ VΥ/^2MƵPv8(Ң-oHPYr;NWn1t5 (ʂ'BXE Yj>ЯoBUJ*6N>d5p JF6]0t`F [%L땚j pj"^-& '\*]3%oƠ5&2ac8gr5bad6Z 2[ d%*aakI( ΅Y)1tXߣj\X > yY^O''`JWgToERer$Ud1<'X@}0?kkS4͋;˕5dyjaqm9}ܯ/#e _Hx1|e@q{6\?ՓuSȢoPH=d!+$7O'2~H_!8[ Rdސ}xKLB3bm楻Y_ GajN $p,(*Bre~HaD EZ-~GޮeZN C상7V 4?`/jj#y`͟y11/,(=SNvEb &j9MT1k%ÎOC1Ac^!Q剜os.h ? ID%+sh$)Yę$<|G!϶Lɺ4€݃آkvs?KE%Y0uBN U@ż-7/JU<*9+cj]gid★^ z5<'Dd)zX"fnb;I!h# xf//}#̷=`K+U;Ke[3GmJo: AXf"]o8b1n^%QGxKE iZxSlVes:%%PMeV7 vzeͲv[nj EooYo_o +qndZ|A[j+Պ`}czԷ0u%@To-f05+&'#n ˿iWqRWoYX.󸕸4136fW 蕦/)h-:ˁvV V a @JJ{enYYpM^Q/XңkΔ%ia?oXb^Ly@ Cy-+cMo׿b[2keb߉y[>]u_ؼHo0QL%Jsh]s1nn:\wQYew0^~[2kRP5W"KB4wSG0SDm->q؛-1=9ץfش@V}fU訛;J]5YڡjndGU<-L^t>b25P^bFi1SK6Mq}^  r\w7>1P0_\N=ᰆOBqDB=8z@\CVA?guake-3.6.3/guake/data/pixmaps/quick-open-python-exception.png000066400000000000000000002140021346623310400244020ustar00rootroot00000000000000PNG  IHDR3NbKGD pHYs+tIME66E qiTXtCommentCreated with GIMPd.e IDATxwxTE?sݚHBR E{bWĊ *bTP ]z ! u{n >>/ٝ9sΙ3gΙ9#b%QDEQDE(( "("3EQDEQDuf"("(̿Oy (78aGx#EQHΌFuK:Kr>xI zepxqFIA.;P8fw$Km_~/sYgR:%A ;bw"i[38rjMخrqdQ*޹Kk2b6T fkZkalTH?U*=A_:`w2$_/'q3 OK}ԁt0q7j`zh=FYHt&V3hm"']9CdŊdPf5Y#= ~G:;ӡysU:?!BB *`qʉuO3).S)E_:P5M$ hfGgt//kեy5V>ΒQk?x㍳ա; !:'-Xi6Z-xܼ%=lv|{y4?Ͳwp>=*+K${18aL;aң$8gtAUy<ϿȡLZ Wu]d+?>`W%1 S UAaӉͪk`,B!>E{ >AAϬ\ - 'rzk8~sheA<%H&T):3,TU#pmjuz˵̴-[H`K@uNTIERUOP A%P*??7 Z~&n 7W=\Ne;5xyvm f7Тɻo{i+R>ʋjxCr}; iFj hR,Wa@9*YS^/f{3>`kFxmWJ@;Τ_BgZ[,`V1w$l+ ,8͵ 8vZb~1S*=}Wi06zS\~Qd tθ 3zq=,/'i4EfHۚƦyp GL[Y=pGe t uS:a`5T{0a,5D<tos-C3zjCՔzYUr#E' g<٫B}㸭]dcyj9k~Dbo?db|K{< LFp7frSHNXo$d,sfJnA<*,2V'z-ILF?΃y9sQITRcL@&*@Hj#)~*ȷcU4 g1{[=Yj "IȒXLIRϘ,C S㘿ۘB+GN%vۗBժ~UQ [WF:)HA;Ɖ@C#Ai O3iGUS9N>aexnK2#M!nBjodS&戰Md=,f[o)?(Gz"L8m5dɓjmAww$Pkz] o^Wy |n͍*2A2ۚV̸?|iez-:Ûu١ S&Zy;[!peݑvl=>bЪdE"a=}{_Q:3ɇ TOr=%.Q@y d +(d й.;/" H1]H kI^PU0JV3zwfh֛Q>(0P$T_i&']; ? s_KFV\ WǸj88 %Hќۤo>Ù߸|&-D"OǻR5(PLb%!z:[y+]]eLuN,lh5:M)y|3%^?BK&`)ZC']: eyoi]OPZѳk,W#΄Z#p-rJ(vd"a]G @i cjgӓFjtvANAb4~ >Q,GD(J sG+xjA(E(^[|U;Y  Z.Uy 8/Jٶ7Y,lފ¼[ XY m3ճ**D*cvdzƕBzڂRe007ypϔԓ j5At\ޭzwtNq=uU 5<9n Qdu9 XSVPsNIFNV3lE["70oFQN.gO4フ[T:k.ojRR"mE5Z*;HIsD+glYCnܻKl-t7m=>r  ѵq)j¤jIu 0F :k$#1 WĐެSFAPE(#Un0ShK$n"ԘMĔ2d (BAQe1ؠ!i*a4%H]`d+> 0kDY,5LZfY?r\7A,>МVX5߃||$3vpw̞$0M@qv똜oyIPB/oV ߕL)1DX^.EAS2Sk *[j.Y4\u2j3+cUZ/pޙw8"D 1t)z] zueLU ,hSEAt`e;.}r4:º379LsrJ+\ +Vl2DJ|h 2(]_*VgDԶPDIEc0Zw&I0 Kת08HW={?nX+W4ҤpD)`V;pSrZ=9,;R#lsBQƦWy9oSy^J' X]]HL;e6f$AJ ]qN"(vUgy6~VGeC+͟Uxiwg<nt%,.hym>,qrKԞT|AER9x3(l׊^$<,HjɹكpbW;+le}h=təv?o3 g06d n,AFk%ơAޯ*/Y Տ +)fg˟mI4A(.Q&hڱ)ddxj"aq"VkcE׽TWn:sao75Xj̦|.Qhv@ZL2BEQp&štSZ mn60%EW0{ W]m zR<16 uƢkxڧ T| V $fœP3+q(ơUd81cDD Ό@LAT,'UwFBLNMUH!֚8pQTD"HJj7M nRT 3(jM24DB41 ~w-՞ Rq^&|IZJł*Ĺ4@M#v`)}(|O5O?l`kWi*ĤelW0`M"1ցUSJΌTBaHcdV~W;Ѧ l jv4в9cUtjHfox׏cOiBs$}5?,.MOy,풱rn~lFdqNDW%(*s|OI9@GnCkB*Ivixt!LBtb#.%L D٨6PWo-A~zSXC&j;9l։' >flC'VMVƣnP^-4IPѠ:fºp{ΞE4+XnGJJ|HQtg23P_2HMUW9~)TeQF{.K=l <2PkCi&D&!ݛ3[N ee9FldsP~etF hbˉbk|Q=_;p+,W)(i.x(ycp7ߋ:(q3IġH8 L)+ e%SlvuL HxcX J𹩜yR~Jbd%%-sǨ1ؠ}I~I3jt>[fRI6(!?.€+|,4))R8\A$17@$]kwAQh_"J9w۠X4GA\6'dQ6Dl*v1a  !l+VQ7BzJr7HK 5f80Y?/_qNUrU|RߟCmĘXRH RSZe6MTu$Ex((j[#|+nؙ66WvOj6r[(5 JTZY+k%A=u&,k$`Ck|3k Y$ t$RȰYq"0pWT qnݽ1uWYD~o8{IA}x$XdRSU^fJeb4^,&Pݠ(lª\չ2Gaqn\BV>`\%:dj)m`Q,xas+e>SCƕ3t~B6?NyixnVqflHwAMr):734Q"v".9Ϲo/n& os:w,},,. ;wp^֭.gsVIsvۙ<1F0r+5F#ots%3,x{;~(YM~PGQHg;o3yƅRUT*,F׬m.ei#13z#af LfJjtrT|-Nqc73j*1Τ6i)d`EzN>,dG 4w<תQ| DH=VSFqB{U[laâ;'#7_}:gܞZRS(5Y31wKδVdC^L0?̺LPTI\i&SF =NDm(Eޏbw& %,XNML8aqxyj&ȲY:1|DcvqJ˽mR]vrf8 ?.*=+O 2[f6Fe:Ϗb5p[O:hUC;v"?})^'l[y[ڇT,e5rEfŽIg13֌j yHF/炌 6#P[ɏ53%%X<.::K`!%0L/7}OR3E(F Eo{YnJg)XqnL,m$PQ|i2wYx-?NeѫfK2vV0kd7/_ ŜehLÍ+U^N">,~Y>.xX=l&Ήo#N$ڰ[YqZM ~V8"?Dq>o1ظLm6M :J4$/9|Yq0AND/}Ӡm[I7ld4 *ݪph;#Wg&hJp5L#f㿐(.I8ɺvƥc ^љh\H:KRd (GVn)f1=q:[ji! ^2}Bk] SpZhu 2n1Hk[$/(yCAW}¥N*=ީFuSXċ')%4-ù~?8yU/ѳIbffIk(^D!35dS5M0-[;]69Z\F-LJ  +F1lDdY`bp$S U"܆J>_0-^B; LV,Dkb>h )_Kڱ0 IDAT0ѭD¶{fPxR(fwuZ9|į,l 6T ΄%Uˤ u5MXY]nz)Cicݸ^s}X*~Bylκ7_m%.͋T<@9|%pߖРhY=_v>#U\9uٟ&NKDڿy*G6(;~=MU].OPjB'z!GsNRzN]2O*x_簩SCg]Ui|f0A(IAR51džf`M$=ՉÆ<&Bkh]QJ;QTE}ڒmTC鋌d;饲 /YujJ1JrJfaz,VN5D*J LZ[J*}Ha%&ށP"Et:4B.)ǽI!5%{$Vj b#13V3x[5 -)Vq*JL VURXF+bk-.+!>X@(.`Zbw*<bKI~!PXmAr [q 6|{/Fg`WmçDH]„Amg~Y~R/4[!=.gpڭjλ硕ig̡(->Cޟ+D4!0;y;$WEQK7eT l"No8 ΔL%RVZO ?&bKJ"+@K1(.%4 sm7{`u82Ob#)Ɂ*u\UKjJ,Drw gr:D)ݷQmA蚹p4jw㒍L,B) Rn1M !FaoN@q{tB󶨚N/n_ V3%3Tj=>bM$&A`buzG~\c8w'fZXm $)\;:3?v_'3V"= pC^ڿuE7zB=Y2vMw*=Ãq*'؜(z뷾ȸr~A<J9)iHmX?0Ok|Nk(Ƣ:[w֚stb6l\笉 8VU#BHb6^dXTlMTM F;8ͷWUNKL{B"N o-D a%!I‹aQ4ѥ@mu_کUSﭥq\ui 86,4ܵР WnStӉDEQ,R`O$BUP0ֺ#HN#*1 FRx/DEQDGmq )TE"P뮡g~ j(}q͙2$97[{KK4EtO$soq6Kږ(_>9?^weON:9#=hKOGX_:I6 N:#R$;-1|D"UڠlKBTO_Ak̀e dgc13(}PGV:$$өsƿg`I| 7?Lj6enV]k?ymT_"vϟYLô(o4;"(UqD&\`37F+}M1l^ҒC/o17oN$1hd>8=G_#9*]GޙLr욨abxK&MʏG;(!I9awd795'w+n8<42lf+=!(Vv.Ӯ 5z6R?|gpm9٬Y pN"Aأdu̸DKva '%eң7ty!@$3I m#wJn;&&z_\̚M٬?7o8:ZD29Y>ܜ ,!#NlN2Q ȟ~3mizŁ =1s3_2{Fri2M{IEHeټxJҞ "|X—O@0Oi$'yN'Rײ8l,/@vZN{2m4lm dTÒґQH0EvK,_*}2s5N:p˃sqiuٌ88|q^WVI>&1'pŘI~w2rQ׌`78b͍p\›g=`YpU$FMapd`}y{FIȠc;}iA ܅t@Yƒмm # ~!opѳ rD" "8<2 ]AIL&KXF?10 ((@2޺x>;ƿޏw]͘F4Vr5`8_BI%> 5g2jV2)th$ORzo#<KXS;Wn}\|MRxt'9+&c\0nispF 6+A( uEH4q E|pW7.D(8p9l)h:rAnA{[ڧf԰ms (Jwk喑g<~Ns꽗ߛGth cG`C -+fB L LmxnX.gxCN]wŘ_Q:{nd0۪a{jr =f"f/D}&^ne)-/[H" TmdӦ~=FJZj .`Y ͒Ud-bG27~yoDD5In>.vټv[,@"..#O$:1;.o3t4n?7O $H92EC4~yL&HMl@swx8 RÂ9j]}>Gg-+㖑g<Nn[eG}_]37b~[~zK{)r"1t"/!"tͣן ?;.Ø'`3r xQG&(\gFpA?^~8{qgwFOodl:):Me's'y-`Mns"9sq=n򃏤#Wr5+J^2o*,%ϭ;)ʽ.=^~Qi> ~ԯ7SGeLKKC1wdY<ϟ鏺^%{#kOݼ- :gB!=82"}"+1EdJݕs;mRn5I)wt@I%M]fR)%23,{c:yzI;$ƖNJˢ GM)CQTc ".8ΪdwK)G3TuN3EQoΌ!b{/RqbǃZ %G%6V8;&^ܼ5)Vn +U@ؤdeb3)*;wtЋ" c _y 7* tvr0@٣.Hٓ~ϼ7;,%zyYdzŹS׏'ijhe/N<.^*9(WθҎ>}Z#ׯaefѻMWw_?>K|܎n=2go?A>yxh&Ǯj*)}昴;glofG9G9N^d"rcym'g:olXΊ`ӾvivktC؅#+bJMڡ¦I Xv +bk~òuea_`[vEvcYlgҙǴ\5GO}_ſqOi\$F J"a"feV:q病!\;vz,'n+}T O0QB9ɴ>SLZEbBBY1zޜMgrLUGp-qQxi!.-T)q .b?ݕ?cAqAl^ GGy=Sã1)Nꞌ3@M̱='GMl=nA~KZۃ9r)͵Էs{~c(lvϣ|Wev~'S:*l+SH|4'w7Y3zpg0+ >?3d;|Y_KOzN@uZDUC&QsU/2`5 s̓WqC$yR-ϮtޕMA9|t)<}˙4bm \n:eWe}_o"G]5S; :C=HǥWjX~lpI+9Wr2;$qiY'^";,ӹKEjC=XJ&N] IުӪ.,Î,O}ζ2u`(s[`[" b4^s->cyo7Yv0nk׆ͤB۶wqcӌe>ۆUQq>3r-:} X|IW7qvMs 9WʯcOa]Ti<<}?WE෇/֊ǹ{8ITnwʋ1'p qe޼|;VFϬe_ȅse8ZJޢP/<F\͋߉gjze'-~W>uY Q]o̓V4I˾ͼ9|_l5q04.8O?>|_#[ ]ʽ٥λXPň^c\I_{h^ّv4J O8Zƅh^5ј]Ҳ8VƵ/~ʈ ʢSw n朲~˅XcL qawm<{iHyx~) =,^/ 7c3_1׮~wx.=ٖ1jc:cdd%(د6HKۆr\gO^ӕSIM%6XIqu`?=>8\4҆貛9$eͿQ7rߝ#wpf͉DEQԙI脬bgsͰ l )^3ʑڮc818lkJ ZHmہ0hLcoO`q8*;ʬwhcT&(5iaH^4jRYv,/}qc߰Brŝ65ٹ굅An4}ju[wU3UMw19E7 `eVϝGjjNMH =HWMiq6Ze`w. bb3ۓaRWg{B8ڧWлh!&);VDy(+kbZTCDC3QG|)%F bPBk&R4I*%)H3tO(%JLodIP"y"AE;-60=@>)5lGs}Ny!_Ⱃr h &UN/@ e5[. Rn3nLW?K5(1jP]VE̖-nrN|v5 FxnJ ?T>gmbGFJVJS(hVEKIEEk(),6;6ΎI@:`KJt 41\^ ,8X$c((HLH& &a>@ p@94Ԝ!^`uuc M'Ewߐ >Qk⫅6m[ىmUq&kǢ)A/23۹ 4bSIcQ0TI,iC|o}KB%gkU kڜwI17; pQw T4ڝfƮHL!9>Ԇ qUQ =65dMUBb*K)uMO-É3։v7gjg<1pjGMa_+)mm#4\BؖB۶RmLؒ[h5V@I*9]xikZMG G8.)E|zڝ8M7`b,[g\fƴ Ԡ@]X0iR2K\p˦_SF4-~)譔+ͦpDXl8:R5<agR ^ Ds<۞gy&ęSAS2Ɉ*J(  )j_HUp^lǂrb%!;޽[i*wE >D (b ( "E"(5PBM$ cٙsΜ9sΙ[jiԻ#a2 ; kKĨe!MGC춴T +XEIƻ݆ "v ,iYdjvX6,{BŞMVDM 4⯼Xsf }je i6ljǮ*mX݆E)7aK d- FFOCrm4*M=CFJ8 R'  E$29t?aQVR"k=4X*ߓRAsرZУDժ)A4"+Vm.ҬjeĢBa-Pv6 Ky@DřjePHC5*&>C ͊5#CfTJ#RK)ur:@bsЄQ/!CZ]fFh8L(CZpe8G&&^I G-x@IeYIVp.v{Cv6\Zւ]:sGr0)7i"],VZ/iDD"D"b_dsȩ+an/1Gw؟v-3HKNUdWG!tz0v\k+,?Ivg;A>/h<}d%]!=;) Y/,K0 %rMaǝVYf$/O&FOHj8:Md9P`StPXD߱\;=27~Rs Хsӹ5.TMm`;۶pU\th:E͆&thcvN:p:vHW`Q!6oaQK9gVv4!؟.]:1s޿GtΎ[jtK8ٱ*:!BluV}  D{]1:(jOHbw%.ߋߨze%VͥaѸ!a@z)xx}AbRB$*ߋ1x[1^O DYZsRdE$EaA$&ziMe2r~5r]/bnٰT2TW!+˺S{Jp ~'5@ &)tE@$&㖪!&˚ \{_FIZkڵ!'-hoT_ .1m@/\W|-Y-1A71❳;~-wj^ ,,HV4ҭen0V tb:N KFӁ;(@)ĈwΩ{$G͊BM#&eոJпpKsWm[:ftiZ2A4` n%_܋z;&XQ-֠Dyc GgCh v-݉M@4oB@5͉M5VDYϦ_V ,58Vt#EH@u,Iw݉æV$'q#DTM!eE.Lr2"D"V4݆#cK!Z/A,"DdTHHM"TT:0QC'~K(?AQ^q#KnfY45hF*o^C8]HRyO߭ y{$Dpc'NICQŚ"ድŕ"8PB%>QPV,(hTˆ.2KESZIseiSmIrU\i^ʶ8dصm cR/`})(Q98:c<6JOՍu|v3[eкu 2]8.7٭2(@i)Fpԍwpnto݄Ldtb:1߭`|;yyCY˺Sx{{2+zճ;{ ֱQ=ˋ %&FeA&*D=D WZ PحXDԌn*-ɛ@YmU1GEDQ:),X5)^^&!P(#D"xq9D(1Yg cl¿Zsd-kj\'aDA-D:$Z} }a!G 2 + Љ-)icчŚCyyjW/_pcCϳaOkNg26oKt>aJ?'s˹K?Պj kҳ \ZBNA<Yt+?ylsϡπ]q'=[cxƿ4xx#Gpε~g<4 m  Qb,x.<@X,k٤#T]J~n]bZrDW;GeI#w ZRssR-OWrgWǚ%>c |%hb xҍ۝AmHbed:)d0zqC1w6?މ׫9:"ц?ɠ'# /y3}d 7V}g;u:#{ v$'݂`H7l?a }wk,.ZGW1kL޸hWт9{Vf}/'m5-;TTl9 wĢ3jMBeYRdfFqYWAS ug ˬ挐D!,.;P9Ұ9 ud܃B-Nl,.^jEQlܶ*ψdEP%[_ M2b:TQT{CG%4 G-#J(jť)X.D$#˚Ҋ0,C #I 4Ez+|WՕ_fn`q#.3f ʶo1ӿ67URr/A$ӷaXOG."{w[*yI<<4^ӯkPgKl#F("{iF^b9uOMGO^neի~wqҥ8lz"8su6tb>O_Ɲ|Ζ/; Zpp-fM~a6b*`}^%SgwD++!ܦ/w^?G#7ŏ1of$v8u| O),_/ 7(k a /_ļ5JqA>U~bϖZ ~L!קgKxX֓pϹ}苖0O[|]~anXv .e dpG9LFl*Fps.EYeDd-榘aSXO~'֢?}i3[j ǶEY-`כd(N_žF7pW&h>6(˶a(eE(2_Y>?y PKqV)lr7/gZŊ*~ *zѥQ§,Q(2Jg`YZ])2{uz BBQ4H֙Xnװ({aom}IIV[d=& mT5"ut=yEբOs!tvkdPc=^GsDF',dp(nIe*6 щECzEӱ`c7ۋuX PLN8[5'{m^|Dο z~(3lvmX| a8QtZM/'PX :XfntЩcG@-,]RrBJI}`Wv(gFO7uSAiO35O-mrq_nq\,2_đ7njEr4GjbJbY`;^~Y&3dG||9_L6U3#I;>8ΖqPw aliOjDůpLV& M୶>WNI}]e"KzB%TΆM7Y͵wSBǦM)?1!ةjy(JeQW}^\l.'H(Hɶa% GnA8yoCCij B x(It's!Ѫ5uƓbcpkasO2ap i'EE*QI:?Z[V-lD~L; Rdm[Z!dǎφJycC:}KC1w5l}? (H!)EQj؄ LFo}KAB0@-[EC(JCґޣ1 Vzg1Az5X7qrkܿ-*(ew:dԏ/9;)KE#~òWIE5WT(}Ys%r{qU$˻<=ƺJk#> Х-[}MG*U$nD]UUscxEUeR_WV5; `I<_JH7ͩб޽{1)]`7uᤤ߆WճV(_+DFM&VIWBv?y ,[~vmeÛכ0mk]X[㚋.)ԲEeU'aeWkT~r⣈xNjq)0Vd.أl|kfl',Y[5G^V=;Lٿ7OXҸK ޠpG{*T~'Eyp!q (7h +YɿN~z*!Fz"&Qa1vd*}*nTO62SC֋@V_TJTPw=uLڏ:gmڄ}=`؏Xdw2aD3=u\seq "܇^/◟ɋ-+M.~>0qz Nr)ǬPf C3/aHeK/>gJzIYB oSZF .Xzrnw|^R H*7 *I;&8-^g ]~}vCNI߷Rqخ^COvbv}WQhi应,CW#isFx>JU=S zd)3g!tW̭'2)zI}cip{cۙ{IЎOq{G+]+9_`&L4L0"76H`Ps6?Fis-\\؏AۆDK m|13aW߂xWNˮxgĂ oO#ނM/coyZد7pُ PSβ^31dafΦI2߳ s .hXU)GAAẹq(.Lz՚ſ}F5,y+O}V͛ɋ|@wǹN~>x7cLCƄ jZm%7Īy%g/Y"b?M߅a?vu/]&L4 rQnXT4fL0a„f#_~{_hL0a„̿)͊ݤ,v0a„ vu6 QþnݥD[[Zp9bE #0MҼd0a„ &, CÕ&@è$ .bbGZAfF:iNk P.gvٱV֑Nۉ"19qoI7ZOw#%/@s:qYiIwFUtLXp?"Q,Vl6+VzpDGX츜0$pefU őoáP|NȍnAI 󑊜jc̄%07dy J%~.V[cojcl(F)-.CJoRMnʡ\tAxf?P6 ?u%+Vj6 s~^Ϧ<63 =9U.b[x~Dަ\~_2n>8kńodz6瓻f)nWT,9jٸ +?eSZ3Syb6~ٟmm oV~V*=zR^]΢eZtśq F{Cm5W:N8L_,:wֺ^ͩ}sMmZйmN+xkf?pX.鯬fd:NSȧ<;Z v6W]Y{LD߫krsʧ#)ح `xɺ`U˼:]ǫ7 IDATc/?p|bk~Nwz)xDZs-3y:6m\#xrtB~/C?U"~7TI8u[X =V-PhHēfA(bt^`ho= {Xs:e,Ts'xX[mpǟorQk垱hb\rF^qΘWO⧻Gu#|Rj+~Oj&=:/ƌτ(?,=K^"~OfƩAf [8{yÏɹ. u3x;̥H>3hԫoOvSOkhT_ǥQ`!k}5| k>~E4\bpqIS <%e'e+YNpjJrSjS#'}9Ҟ+~Bglr'vcRX|ދzozGnd֢WYu{E +7ߧM?LJ&;tm<#OMnװF=XG&CQ@3u}*B۳1s.gΎy 8)Lbʜ)M hÂHv `Q* R}"cF4rrrؽ{O˜6\k"xxk+ÎP $kU]V{ٲ'e'ĠZyy4mHΣ ѐ ^LlRJ(%?Dqh(eŬ(2]pϹ}?fk<5d4%9{",9}wу7n(#YeDdl̕5Ԩ!ROmГ _pԄFD~Bzc]<{H睹ω[*R[ԧlswnφWfyĀy s`Oؙm)'_ɉS2y;/~S(仯~|m6n8VfJ{m2l8OFs·.ɿ(\ΒM*w^ӟS;u:έƽij.H;L.fT:0m\;{$B"0vr%l ˗gޅ"Wlٛ#|~lis7_zpGŸ]˗}QtĈ56Hi˞ !] Ȟ=OCʾ7p_2гc0vrc#uzCD26l$CFFF˜932Yw>a8ʑN!$&-V-iHNYz1=:`e-?ƔEtL)SÛhDntkWgO|Zaڧ쎤"ÆJM>Sc}[wpV^y$!֎'˰;7T{jm5W͑6/\Pmd(=r6* W薕B zA7SvO:##yOKGQ5}2"AC9.(> _#zk]JA::a=t#w}[tgܵlFQiU!!%kH$ =ߡ|1ohX.gl=pW lvPУH)sdcs@ PC㺑O{dj([ բS+2O^iO׋nȢz. 8G fCGR6E M`cyGBw.vS>@I(9Wa'~5'pHf2!jLBO|Iy)6RG:rȧ8u\=kDGR*AMG_8XL҅SNnfk) _|ƖWs8`9ނz&ҍBlp[8dMþLcS)$YŖ3yHo>}`Nz]<_$f}„l-i q!pp3$27V.ۡ,\ZN:>wD"w%bra[P`$.I:usl cǮihy*փ잙G %  ֑czU?gC2G4(N4"5='xI7tt%$@ifQPQ~XJPoM6ftHXEiHk={UQ&_ .kds|ͦ2~f.]S |zGLHŘSuӥo?dζ}0'iq𧹽Ui8e/5E-]B֛_k١88'9;= ~FINcb{q/WgʘCy{B6FQZщf#Fݰ,ٯ =z'}clV,PGmUr=JM>)RNO|0RE{^޶3qߣcg2y3xRFi s*#g]o3<<)|0eµild9 _ceMkn⇹jTR75f>k=L\{:`t"&P:p>B[ش3lm搎|tu Y[Uɾɧ>P$z8/aĒaјuÀycT)cH)|x~k]ͤow8SG?gmJ^|r gO ~B)-"Ey|X[ vcd~ PRZ!JYv'޽ԫO_Gl V6W޽ɷh(>"I 0g}#DhGD&myQM 4BN38&ǍpRTtLy^6|| MCWo0rWrC`?` n 7CT[TpoS"%МnaHPDV'c$^Z2DAMlETnD`3WS˸XDQ gGyK1=/Pwr/3n2Tʮ :Qn+߼=Mo3d[)1tּz qU| #gϩ%aV5=^NqYϲ4j?JRAs8!mĢDBaºlJǟ ՊU{@aCy|5a=.h3֘ )ٙ#pA\6~k!ct>7G2e,3  A4't:&`(GkcQί!s)ڋh!%rLYY4EϔK}.?Rf2a„ &L73L0a„ 1c„ &L0a34ɶ[a_vr п[:” &L0O7fTrNQ3~b<6^NCdV6t2=YUJK<2 CN2 &L0amd]w <~\u=_Ur QNƮ)lbt1oܧ &L04{/Iv*Cbč_l`;|uK8 ϝLEVRFngMmeD67/[uyYymyU9VMÒ5ymd9|ta k}iq;eyp͜[JNfɄ &Lh*3lm^ĠQQ|ޕ/y_?{~h!ز1֍οK}.[g{9O!$e0;՚Qy;13a„ &@c \.Wū͇ E7RUJDF(ݲܦol[ʬ~$,XɉS3y;i=[A8l|^5C6|{z(GdՄR!,U.8 ,i&L0a>0fvΝ;ea>[ ݲ2Q(Aoۍnm {Yͅb-vm NE&L0aIZ*,x]Ek`$^H!%ğo@T64["aBFfFjUܸ]yM]lvնIwϏ22?N7nj̄ cFXIoنĽ+ ݎ֓kH֩3 WVvWߜ*,phJńVf&W࣏JzNƿ"]Cf&j..ϒO{|Y-O͕SSf}ḡ G ~Wdڪ}It]3#qRO wG_t_vlwqrQ2B(i }04l9t8Ңɱ Ԭt DŠ;yq\דyI3.ܴU&?3s)ܟW'!jEc万&wuM~9}极2ej~4_m@>$+x v;pkF`uQpSe-2Ae^b(+D`Yy4W&ZR£&a_Rr1a2jtS饺T-q Ho=TO4^^q;mh 2hSˆ;tU"5+һ=XMٸ+c  V{)}>^3gEz>ܜD: []JڄVCE* kȬ>I왭%/u6w7̦MdW FU2hFpe:ԩ8hnCU1rݝabQR'TVHqlilh*H=oDݲ%nEG #oK`hI [hWGF&nUQP"|A#+I]Q^e[XkFv4"D 2)4gDوSЛu۟eH ͡aQ4У!^ &RQ;l )fOQ)FFv:vobO&˥RT\7lDqԷգr'/iSm8Oxr?1-2L $GՎ] Zpꓑ$ -VV)YUhοRKFiN  PVRL"}1,2JEhv;OIQE|a#N-bR K('d,Ai'#k_LCMjE()*G"3ÆPR\Li@bK]g(?%gǾ -oD%-ʯiR6BT|#lQ?Ex J-qkfV 0gѶ]/b^$n-\*"< ALڍ&di.+iSrD{('*inĈF \uGT{kjWysIi-$spBgsQ~Q4E"Dqc !bbia*Didg%+ψ+vTȈF#I*;ii=byF4L0NDWt`H3?+ (HIbǞ#@llV"uXe]Şg*wLm!?@p $e";𨪭9'z/"bĂW*,k"(~XU) $CL;#B2)@yysߵkx=x}臂OY:p{d# Lq}M`F:-:4կ]63ۅ*ZYEU/G/ l6-.F b6W3adٌءI~ {H S.= L]Fi4lzc6vB"9s)nU뭙TįE IDAT>tѢ* S"4هOc6:ͲDQD@iw`vbFsV뒹~dÆ.bV= G&bÎ,j/ v h޺eFRc]n ϭp>GM"W- !{J( < N>LddY?Sn0 2nEqia!PDWA$BiEfR>7%253a|vkvo)>$DՍ5ť2A8z7~p$q:,ŹȀv!; d  m^E@4`1hm=iÆj?ꦸT!BŔ4pμzg$x[Nc 4@GQN> d*H*zyw=qMlAjjɡAXX80|i{^yqG_&_E(/${ҡYHbJXpY9WE@sױZ8r\*yqz<$q2m7p }j+ZEJhp&Ean~df>0rn4K aᄷ=/uc54YUs gd|5& ږ~d#f\E%'pi"fG0a8L E̎M#--t1PiG"'wN$N7{"9QGûl=kLW:tH,Ek+x8\(wQd~Jr3|8v|\'=N)3eۀ r\DnOiJ)9~"G๴4T(8~oo8Cײ'W;*0:{e|׵U3nqs)K8g Kf dXrU87 :iRxqrkiC|]u=S'WZPmSQyiwm-D;5eW=Wa.:-&Xq3r"p{ie|W]XQ}0w gr۹x5ez1ǟ|VCn֌ň,i'^ɋ oL1eBǩfYrSӜi61h}=kbۣ N) PN+9 +bN4͊GAAI>H=Ʈ8WOc댍LEo~ZZR81}-]9[8z.&WΝJQoŶaMasXSmQJ9%I8*>9^\GiB:i/ly_vrH<-cܾLVF*iY(J)dkڲ=M SWf퟇I<đu LD׿XD9c Y}ϰisYvuGWt(kB(Yª-{KH&_lf\^_؟i;H]9..YY6OU8U?߲ ѷ$y2l~B轾7NSC NJ퇈e9L,J^!O}v`"I㗏|Mtæ W|p(6Jr[${Sgv t:]qaN"ȡqp'~iEZ>EʪnߧE?mSYJydzI0œ$;ԅS xإ ~>ˑ,z^)sJb,qQL+>6;s&tYūW?T9>b yoH~M(A c;7 .2];aG̛:Gr:R3B#Űx*/~c2FG$RRZ3,t{YG >'?]L䰛|};O޹{T@Cq;U?zCjv).O݃k*CWջe5NS>OY8d۝O' FZZ.sK0 8L.y|?*U2:q# `Ey+q:AasCo⢷44C?&=9p[11HGES8]3O{O:Ne0cw ݊x劻$# b)MF eh6?s S+ _."s,fqzM7M7#lԤ;,"7Ɵ*]5Дn}_Lrqc-8eTݬۼ mK<>n0s/"hv/+y9r7@\:D eܰ~J&| lvc_y只;e&\`9I WVmkI\ml'SeMN9ի1Ԇglj (ȏ_AЅS9]kk?7>WYͫyrլ?OH$!!=dEnC\x.vrqb[/pm0N8}.F㇕̷7u3zC/s~/~K Ȕ^8bcݿ/;p$FF]t;>T~zL9-[{IrH.  n:^*9?}߹ 5"w3luO99r| ,x'wãfK> uFyT m=zSS?2 䮕̌jڡ}zH8 Jo|_z,tOhGuYQŦn\^yj|8t]~NσߞeCaKNjqx+}^zW}݃[FSi*RWMf:Nٌjd2!VGBń9"Qd֦S!A2a Kt9՞QKnÀ CxogrE"$=7{hKep ֒EITGO?͛Oѿpקy(Zs-z3m^MIRJx8 BtTjg1 Ʉb!:*CǘOQx+ADgܐOV/UVC^<~˕FRBQD&f9 /sF-ĂWr(@C~:(i%bAC\qy{ )"Z8Q(8DGEU;!j@@{w?k'V'S:Xcx}jR^VF]Ϛ0$6QQ4$?0A <,D*p֝fj !짟o.ZTURrԿMlv;AA6$3$t[bL3nC(嫵RZ! xoJXSFt} rw|NϼY(>"n\O.j kSiо+!}zmpS*QǷ/^f;Yr7y -.{g=ƶT0NeSkHH`0 dKfǗQ_z_G;K;ƾ„L\Wfyv]Lހ6t~^}7[L~z]~Gh^^bb5ɍ ~߸NNc5$5fp]~!OqmYjC tuELסc'qY(i4#Z%fu쉁Lp4~e8'= ],Yؓ^槟_-(bXX,(Bnn.IS4 qa) fA "<'ԙO|:s=ˈIoq/^d庣VjG|I~{3IEVmHP+QzGn{o v/rasK班)P֝>WM"^>PKG-ؐ"wD;0( ?ȬUʳ W>Έ~æ ܣįL )7s#Atnimě^ 5oKa~DΔHi3k?婯,_qpƦochy˛gَ曪S;-&y{Y!2G6ķS>_5߳$oة>7Ԏy\F.?;mb;{4߼tʅyoTq/^݇WэˮZbɊƒ`r8l*?7Td̄[փF4wٔҐ??_.F@$ɱc(rB ӹs?-(FwZ-WJRYxy04˕#qE͜ϔy٩7ZCM>V= K.Ȝ̌lG2ڹ7pma֭NDF[Ώig{3=v]sWqøw:]z'sɐ$Ʉ[WmMd51 hjFku}V;j}c8B5Leܛ;nObK>tu46[e0<[ueIN1СC:x*ǎM5uҵY23umz C:t8 4[0cN-Сyܸ|N:ZN0#I ǹpF",3,豌:ZJ0S"RS$5?_6?G֥{A!O}̂gG 51Ș/СCMEY.k'2jLx~.6oNCb'4AqiN5a,!V};@o.6<3k|/I~ S^;đOEСC ˍdP>#+ >fE9%Ӎd6BV>uzkb'zl4r>Ƒ.v ۦ4J5b(F񢻘~\ SX |<2?NBgQG)( l$)](&vSyW}xlv,>7{ E$Y=)x\.Xn׃ǧ JLf&Iu8S0X%2|nПGBn ܵ(Eͽ}ƣ {q_$#?e_޿s:k,I>zgڢ$\uL" [p6n:nd} $*qP ɈjD4Ň-ٱqTn7^L,aq ,,^7nv3=ѡ@$lV .7V2K?|{ 1X}/CewxrbFK8!'o'WhE;W^GX""b}<RH;Ҳn[ d,8DV"\|Y[-/>ٸ5i $ 4)#&֊̋6A$`K)*ţLT&]4OC2[1G.ń\ŧ1tС@hhh3 5"/l~8~rم6>JqŰs2w<)o'_;x~~9i՜;;zIXq?ry?-:``0PUM 5>[^<^YvT3<4ljq$h [EQjL3U%dgFBCC֋'["RJ%:"Fn՗s"=h ~F#;oS{dnP))*AN{~SƇ F3VX>tµ<bV̔Y*F2:t)xV/Vׇz{F2P4Q4b(;EMC4`Lf?6|\o1>G`ĊlbNte|2lFUQ0 $QkAшjy)uYE QPղ]5>z,CY$b*d%,,r, C^M;"vV<}9fz uG33GyxNzmч|C&:?L=Cҡh1 ]IQyj \^YQAQDB땑EQ9XA4`/.Z|z,)E:t fZWN+ɲLnnnߧqؤ}^.,@IL/^f;Yr7y -fdLto֐(kMb쿿d5Ԉ,}genz 3"Fcx))-Y1'F3}@oE鸀d`UC?\n7 DDDe۱sssk\c I"QQ0c`8I?8$߳ ;sGN`Q~ƌU e\4׋W3b:Lz,kP/*28,$V༩1$1\0C/L3=⠡*2RJ^ͪ2:thi.;3sc3Gp~qydĢs}A53f :tMVCj׵34:tС>i&:tСC=ѡC:tѬLsluСCg,3c?Ne儳β@H>&MXO) m"]^x)/Ka&#tYx:+-֖swdI9ezmGݛ(wj&I[ WLbޚ]OK!)iW|`FI.21~4!Y]JnQ'6μy\qm4d{4/^/ĝFL~ ٞpk{iNgF_oݛ({~ɳڞ\5ᙖBLx~saO_؟u"<>-YΤ3<> R_R 䭞5|KUz4Uބţ@ԃQz @,䂒ӰyY+-DL8> ܤ ҍŸyy>h۶fo?ֲx2xLx:Di3v(E[ +|e[N }ie}ʛAԅ3ȸ:q 33mIz\,q*>qL+*sY9 IDAT_˶yMB8o,ܴ^/ 32i)d($yi!n/mF!l~[6L"9'Ĥ}4:?d"vM%X2o䳇{WEp+rќtwNeo,2 %#m+U,y-" ~#{9"*dYՋ \:N 1\WIG<&\]%ʀOI!X"7~”c6^!wQj:[_SmfʹHN7/ t}p&_^agZ ?.֍Qni׮ztͺGo4V<ScJ<~׍Uٰb?󸠇#3Sg;&]90>f0Dh3J}w)_ s{S~{WpՉ1tOBHx랻9rh1dݲW1}oǼ18ٓ㗄bh:uPZ_F2^0W9|̍)#AGS*o."s#-zi9V`tD &=.AqݔxVrmt?sḡpO_ALZ ]sӥ|~xֱØ_4t|~~*ާ?{J?5<մFBD )9d';yBV|.wO<\?cC嶗_èrL:n}$A%Wg^FzX'ާy˯ z\\.~% xtԯ `L?vՂu+Huk0 XԮK:JC8.͸ _ x>u؅X~l~㟟|jأpȉ$$mNq0# FbK{kƳb!so<G ]ZQDV#Tu0#8"hk |=g֟LZdl0rxH+wqjI//?!Cړlsפ;<2!'4k$!b:q`Օ6Yӆ){Umv}-8G88rfZ۰uc,گ?!m 4G-y)H>̑C (<2Ԍ< Ri*{w8)H!lk_iNWjzu^qù{齊7ncwq1]5JIRU{4MC4P4MӐ${U|ۭ_ho3|ֳ3wU2?#HhPs#5R[Y/Mc{ugTqViۈ-J26=g^ 7eOO-_YWol>EL|Ӡ靺q״0w.Brw ISQNa%Y_'<Ӓ0|S^/aKWqX_%t33!xi,X$+NCUP}EN*KΣ- `0!&!Jj9Ir\f s ;dӄ333b me`dܖls絖 RDctK8 , 䏟;Dt=S@0hF^ZI[GEW"jzOS3Wr?{'v:6x9LVVW^s=kmuV >* nK7TmN=lٜt94~Af-qHr94[[U^ g0oqwI&&Ga9v@S%Ozo};8s?'44'YqU멄ЎDVцbHs4U$Yn0ӱ_?v8)G"lA@P: A.DkD3ӱo[嫃Լ$WO9 6ibd2 OM%[LѭbAK)HK&k{ˍX;N5|tE\pe ~Fo%OCk@@zvM*_k$RbϪ О; ]BafٮJ@ cȌ'1jj֪Ql ax\{$;] 󮾅[oʿ˸s5KLN?h &h]qR_Dl#UYFgnq[@\!#]AKbq[ sK+Km۶F'&-!瓺Q0ܱ J-bv89)D#[٥=#5@޶+M]ش` i9TM3dp4+~`gm#`C !|/{ʫ]qQ4rzQb$7 T Xãiݡ#+b2kAEc@RZ RIZtJ=z`JMbJxܸ:/p`GIjn>~|_>|^% }*^FVj,I􊘃‰lULHΡY(# ""Dqמsg17Ϭ엷3ba>340butܽK/"M"gf:٥]ƀ%!jpa؉ G(Ү6VyKPn!2H; ^J8'2r%>U%ww';siVH Uq* X<&9]#!ZT~,Xc':zhsh\9d'[`,; ]Mwrh-xҳul[⭨mg:D3- r9E/^YC.K=hA:fc+O29djtD.-b\BI3Bԭt?֐.`HSl1J8Ed*ݧp$m24~ Osew yxL{CșKyk,) >fu|6bZcVUq+ yJ(,,]Jώ01K\9 o\E9_WH@XlF(Tx(X/0-LOw3|FۛdBd?gHƬl|HM|mZմ"c_3е- tHT靖6H9I/?厹&ף^ŢwxL^mdj8Ehj%df_ɄQBϼߟh;q o|W:?WR 9GqL?Y?p[.٥jTT=!/=JSXVGy}D6zNX<<_\ XYԑ1~}`F Yd S&OAI%X4C<͘&2@lj)XV8MGX>MVd;F/ʈ]{>M2 ~7 W=#a}IhN/1g/m'&gʺ 6;޵|Nbˬ/J'eJ ̽h*^ji1O2i,s`5swzMV6,B. dzua^} i{Œ+wy!^V'xjx ?6;VG~ _7sI$5jݍݳaN2OϝQ͏U遹OF9Uv'pcT0w;q^?i^OM3/Ͽ#^o)3+[Y_ڀ0%rcX|Nƽ`]~ZZJ[`dpc"g/|վisN'YqNw#gĒYQXWڮz!ÐǑ w弨mO:7DNxiΓ1֣;ddSHTh e2W+eI?hP-&/ۍ)'7ʖ _٩w O;ff233uFu-( 'N$&&ロK.B `(몷n%\ƍ0`|ͦಭb1z0-}7ׯ[3/ ыֆLĭ`kHIH=DvjCxIQBR'SHkbچb7KxqeL] FX"BEo17Y 9C@ҪMA QCzpd_]L8Z!*ҁ (LM"@.6A@S$Rs>}f!{7$OHhZEaQKIH$! n׆`xK$sV]i  GH+>\3޳'k]&s`n5鑮Za9UcGѾ3ZI_N:ѻwo kmH gp+f{[G`3D@tP5CTd V.&/5tE|J%3c u[%D4d,2ҫg{=Uo[-4(LX"42s\upuDLADFⰛ1Js8Z{ z|lY`F$治=J? #ܧ5r>4 n?$((]RPP@NNNt:ɡ]v|>RSSѣGy0cA5̜ 9CJ-m͌n:th>4z7h$<<_aDaXU7` RHSO/@UUV+lڴ M$vڱl2 111|7`洶DG0|fݖuфLxx8n"l@qN0U&;t *ԊQOq928n&~٤F?ɥg3j!4 (p4(aaa # 4ef${! #2a i-СţљSI{bI" {G$v_ɱ[IXt;/I(H'Dח^o ϬZ Exnw'SM (|>Ng~*!))JVzɉMN o[֡Cv0#2V2Zx|vLx1D@D`rNw*H̵x\qn['iayk [;<8y%y O]swc"}#4I -f֮][C_,[ ل,{tuС LPE\ |,9YȺnbӐy3yHDD6H47bywt\?z,wlJ= $Hbz @_zcc ]Z}{?Ve{m~s,[f̛{̛c^E/yRO6_#Ŷ?׾ G9~*tx MPPz!4M1[A"GFFFiJo'8PN^' Ma d_Ysnd˓gsޢ^ܶS_8$a˟OW6V.z~T~\ 8_7;dE~>NkK[G$d,e{q)`hx[ƌFxj>n=;^һ$-#nd,y!z-{jjsPZh۱+Bd6d,NiF"gFUGͯb!00pmU>gNW(Jaښqxi1#Z848}oq!_:\/=GÝnf$CR3_bnW6444H#4L*zH`ؤ:L{Æt׋{ rKحF=:Y ʹ9G+ !(f@Z%ϫ!ϐt*jNϢtz)vYh$"A=ƤO)`((iD'tHSs9?nȼWudsQc]ލ%L+й䫥I7AH#4N83mdeDzF`$z{$ !!hLRNUt6EU+i5YY3#qc;\ 2; B隣y+(.b%ujN*ڍՊYKXJBdd[5 z#$ih7s3|`t6 jdM,Pizi|Ed-@}TX Ɏ%T4NvQa+ 5@_@M)bJrʩwW{7"Ec-!Ig$t YUKyv2̈$زM>'%SKI-jQP/ct4H#3i.o #JNJ=wBlsuh$T Fd̦<׎5Ģ>#sa_DͮXD4KF.XiB4BD#hZ2ON,Kw9y<`)-Tl$!p'3O&,]~q':ZxwQF"q<|b03" > $1 yUntRjQãM!2/A~YdAMvv'#Pyl2Ch 񑢦M)U)˶c %3嚲[|# ;4N1H#4n83l"jh K&IFӘ+L#_ GwAp >UR9UYaӹ%8*vzr^y^+?L+0!XNW]tz#,&<|< /ܝw/5K9<ݼN>Bmf :P*B5d ,z82) #zI!JmvK? s0=% ,zs cL4H#4gMH9b4Eˈjl㦷mb?1L 9.p6 kSy"DFqN> =EyN.x>rg̢(1k'N/#lί% HA`ȨetMUPb! K\JAvuF*r8!Ww81 (~ HɶW&%la2fTl% (Gj"Jh;סSW̍kC~ 2Fi7]hrC g,4E'fn15t 3Fi7.2#4-~euo},}k!g3!Ja^[R6ʬj 5Ό4sw>~-?ڪ|;FiX"˸8}WdbOs͡WA|Ԩ$ܝ`g%BKT1.޸N^,_Bl -39rc]M߶+ =}*D]ta|f;ut鄙ƐiY4gGxg}_ՇI'멷╬a,<{F4 4io4YƊv:{i\W&QK] ]on/޽6vD߲m7it%khcǸG%2Gr`ͲWpjyZZCumI ``Κ~_YsndFm=xٜw|x$%gR 8_7;dErrQ¹^΃G_ɗC'yW'P]׳xY73yw!BnY$gӹ';p |T7Dr?@jޘOdXy(o|O<roÛ3l~n=[Gnh'\wG.~==H@ {G$ld,e{q)`hx[ _}>!Cvp9*rG-y5d+2Jkh{gsׯ=[헧sXofdZ<;:\y>sםF8spsVtɪ􃛡6'4ӀfF or@ƒ ;r3jjsPZh?̌N8%:oafSTjCL/A[tf@/;?~_iIx+K^oM>i|6~/VEHg+x߼I4/YʵGRmeƣb'z~$uv!O>B[b99} {o=ko[xh=7OhVO]K_ۆsٗ=PWlڽx~<^Ş+aμpr>_zI%^W9gk swydy=B%sma}g ukRAgdDM6yA 8xCy2}-_@O܇`̧ʯQ *(woMHFլG@tíUjQ-P; k[Ng'߲3*oӟd^rbeI\AL&p 5U UEEB]g{W/|K)5'@ތwD5Fp\z|f꟢n ~7}2P p;y9YH co~seZU z7jS̋@:hyY.ËWFGe:hm'А $ncG}6E%Gn6^|NRO_ B#1>B3`} Eqv`]CaYf7 %'[v[>rH'Cn4k"E^B&)#8u;͡jz aDP:xSxęGnNf-!ط 2X XOŜM\v(Lsnr1!1ӋCd{ Brb7OgZaPWxĹډ|#&UKI*0ʋ3hPbaOlPʙTMw@ m=b V,&R,Shw(Y*2iAnwc#4 ݨD #YXbԙQ}[EU|eϳ  J)Ej@_Vm4#:k!w9wypQ?ܧx!Ic95 hs$ӄlTGO}J!(BB/N1m6Q[X5C隆@[)SݤC"IL=k^ zDֳn BHO\'6%,:sB&fD!J'K'n(dTI42/I59v10ājhԣ L3*ct6ؽ~Tf Ѽ0VՐgHr1{>|,ي۹ ϣj^֑@:fz鰖VPm`}N)=@ #O,*vDUO3x$Ye`e#5~ܧ@g:On/YM\ttf *W9szn 4s#wBB3m3k GՃ%aEl c$W>O?KN^oa$N#`-`Z Fz} J Yaǒa@0R YeP}N}+*~,U*-7YUK}-EYA <@B/&Ěf# Q6Y?MsYQPHo3v3/춳?7y^N%IE1^:K{>!ÜWDÆ-S"P71\:[hotd$,%T ww*ʕRxWq idVU/}D* "IֻU:~q)~ !_=%vdnYHO = eۿlh nfؚK~E|u=T\wY~ Z\1j'3ˌ6瀒B302YgEe葁XCRܷ$n|""u GJk Ӌ_O[eD94RI3dV]_ ,&A(:2J">ڛ% 4LFQ a. < eS%&zq`gS0\%_ŏcN l7- a"^1xnh!+rG7-dސIv\=DI(BCd_@f BD̔I$mV3򩬱hi521-1»S)' 7kHBGVUF93ZA[u5T惯 g0u[r<>ʲ;荊Id#E5~T謥 H W+"鄵[qfg}a$Jbo0^ iV /pg nz}q32%4ѻ6ze(/1Gd|Ff)Q.y&6ۙT8_aA~Q6A%230`R[|> GzA $S VHY8ɩe*?f{]L\sl݈x Y q'Ql!s͠n}!ېŴZ2>dIoyWdjk <&PޡE #2fSkGr{C$ YN"iC,z3"9/jH!?ޭ#nx#O/k`Lj/4 8[E@a-c_ŝ< bÐM^v/+NY/o {]/?U86g:-߫H/B&x*evL=M @BC^~"R+uErGV^\/3`W_cuԙanal$U_GN?<̝ctR"T"%S?"9wp*\q3|;F֗!, pGFf~jG;d.:iT_ $!0$IY5TDkG߿ιMqs+荙q̜IN?'>yQnouQ"4a팓Q}87Ž0td D4S4 %!\.;VȜW&3J(acn;-|hzFΡI29;؁n9&6-+By:0j1!:mՙAqF?~:>=v=j؇%u$\j4Ȋ;NL鏜z| ӵ7nfHC`nI)y2jQyfL(jn`UN\g|G:@ IDATn2mшS8’E[4r-nz5)lΰQC>}_kcbDjX~Qg.]p7EoF${ قpz:d`us[5 $O;;!$g2[@1ذ^>zs+~}7"ږ2n'@JQ^gpt.<8~SɷbCzrb"{ŮwL/ ұj1wxw/ N9˄ٌIi"n+΍#aAϜc.ᨳ,hf3Wpߧ60ȇR?<@ I DS1=׊vx,Oep{󋫸c̋? ʓs|ݹ= $FXNJG_q6} Ea}mU'XweM#tc?.7]Yl#받 腋7qo亟Z1~\yxfDo,tS2{t}ɧ~x&P^=` 5`п'Z1bhItYF;uxfL";hE: Eѐd4&wGfCdD Oq-ݓx^̺L|-mjREUZmx̬ѻof93[ي'us~R6J 0슐GVD200ٝ =FDMFѯ>F#́9ZDBC6L2aɐ10qJuĴMCoutZ-Txq7$MҴRk NTYLK:2-s+lv6'nB&O4ܚ<"Qȳf$-L%h!kئ6ART蜺̧ K-IdVP ]"٘Z~M!Y#ꎦo3C̀3jad@ |Г׀JJ~]bM8.0ǒ UPZ0苣2Ћ1KFis yVߦk3ZjPַ2TbUdc1<띸u3e뺑d?[X&?OEY/'?q$]O \8W]q kn ˋx5E j|_Ӿ4& vaZl9ez:HK:=+C?&OqLj8h/:O{ڈ~P ;{ 33n僋hhQ AԸ8g`G|}Uϼ?\B5- go>OgGFQT? FnoBV`_v?3]cM9dgW)6"pywV.[>Ed4"__j!Ъ/`nj1OA8^fpҝ>}Fil3 :$ ۞& ^?vRuBVeg~=.|x/HeV^]Z5\~9Qa p~1z.状A9K |{4"F|ؙܪʝzD3^fR7hx?L#4-Aq "pX򚑅kL@\wSjXe yVǍ&e#yڰ×,߉+c6?cn޷dUT{V;qsy)T:4p ^zTKsf~} ccQ}= 8KsHz(8%yu>c~FW:nzOJl}:N)1#^/?>w[cLW31%ڽ'h/;h,{eOĔMK79f`NN(ݍ 94?+C׭5!\x1FZ~jagZ)W+5Z/;,9v`U>o61Te/M/}92HWu 8;BY#4 a97pĸTEwӝ}$']9g "'b5^h x^4>%sw~UW 518BG55Wpz~75\BΥOZ  Cskոts2<;HMf'Q)/#<$kd[ O?scˈ#3-a6 huh(AӢtQyyez)4Ҙbg&['h^#( P %`GЮiֱA*Tʨp >CUte— xl_^s3!Ky`\qem[&Ixk<#Pw!к^t?A͢cyG?8y{*'&WH:ZO%x;(A;f@D-{Xĺ-Bʢ8X~o:=/NDB[ގn`p'ޏW0 Q6Ij<+Xn8!e={&b?]\ LJ(P7}8 .z&ΉhCĻ^Cs,}6xG^3&VhRhQ|zX=t71R0b5# l#>+f'm0atrf{?ik/d7iFiL3#Ui,n#Lɒ劲1y,($&8fR+<`2i ujfcuQh2P Sdא5 Τ?x3BF%wǨqJ }=t+Ŷ83Ba?bh`f=Q=1O GWs#Zx™˼8C/{/qaU,~{~ҴR%!4IȜN4@CԻa.?Kʭġca G3Bb:s{w8K $ chچS$8Jk5N#4)7*7B H㯈sY=O:!qIM-rPYBoL, zI%#*ͽ%*^*am8_53Gl:xkq%Fj0YEI`3cP^Gռ2#!u}\uWv8kG;dZ#io uU?T{s1)4zP8'[ O`8*30B[7_3-q`Ua Kbήst7ӑXyO7V-mC7"`Υ6A,A"ݍ3nܪM-|ʜ9NV^%|I';>rfٴY bj!ZzUT@tX uX1"IY6c؝(ykr^\+B~72+'b/?\Z(/ =Y5!0Wm>ȧ: L !ӧ1( w̽'3<%rٿP~;XQܤY.-bYZWF[vQR#h95Q CCCIlXo:إN߹7XCowO?3b(k.6 W:Yt: ":YRi!j+&M0v9"N:4AfnE6-&A 2 ݇iB1`+W陟ގVZ4  f`*JAa0pd8ЄJB3BO ul> y%2ʔaoE<#MM<8}K>yufD%[q1u'l6읛Ihh ZJ@KiF^ȒUXpܑ̂GJ Y!Œa0b6.bK&J]os,/ dؑD-=1@j}_`Wa@ '#"FZ:jrvTJ[S&cN*F 3ͽd]4y:ngC#Od(Dz)}xs];~* 2%P'=ZmID|jKV`]7a1،3CA|,B5z/XzC5ui15_gCqXNA' $I`uO S\EF4! _N1 s +bװtA4BS ef'I$Xn਽(Ba4DzvFt* LNQ6-89 Wsq3^/MRA%KdBDipp;ޙFI3+ڷ^H$vK HA @2`}$[f0fFF3饪k}ϗw^VWMWcFč7 ʤѮ[͏|3o%aѴPܓ(`7hcE+ƃoJ FY]J 0 Q:k5/Z6C |zÆL0>?!e 퉷s3ejsT8+MUyp 㮟5o #hEꂗf^ϫ_NAԾEć_o?'#W85X&h3QNIfˠZj0˘y: !y7裏 ftMons`墌vPU}GW/U`%*ExbUb~Aۼe>2߁|1`FjG>x^Ő8eG9g zk76UR8[". eЬ_HfAn Zڐ]  T!WCn6I*+i{3ė͜%W; ::t*n] /b4ۭV;>}rK|G˽ܑipg-ʭ3|yv#APZN:?|9"iQA /ѣWx=VxQiߛxۃ^tLL̹ɼEb@gԸk?Ɖi Е%E:b?N^G JJ\S˼&=$#M  Lex c5itV{Ay?/_Ί0x7&?Ձ?/ˏ{L^'y 1|H~>cMӐZ2q/67)%3Vpc"3N1_'m IDAT>_?:t~'/3a?t%>†?i4(ѨůӴO|JO)7Kd|F`zN8D>qww9|*<@Qtlx%{[41mj8 ˓DJoSt=̳ǎ3>\A1|4X!Mx1K\9$$<;{<;:O:jQeyWn6O4?0Mԍ'eJaFw OO*gV?ΟeVD54Ʊչ91SXgxfiafp&EO<-g% "L8 ~ޟin[賗FROſ/0XWa]^_ޛ8}>{Kjgϲv&OHu ś8 ?_޷}Ǟ%'ƷΠ(xg/agFIFV)4'nQjw<6f{G{f#F ePhI̟WXy׏S2Ä:-dINm!6[tZ$ !@  4gzJ xb kMՁdcP*o9˽D;_$SyUKȨ^RSz/fx\)S*a(wgeG.qzIv~Y4MxaBP/'Rc"MAR}h#it'qEIX~Oͥ R1/ &3SL)[Ku :J$3H: %&eU;u5xLCRǙN2n+[vo裏-a+1445|>V `0H0DAvaC$Ieb4CRm38 fH'< *KݼG 3 UQBh&G9Zs*QA1hVw@ _jL fi VtzwYıdtydN 5DjjD؃ti嗘_a~?!tM s(z [^lqa}w3ɞ>GWK3s2Eioxv^'44`*Wv Uis|fc)2Ʊ#k?GHA!/*!P_ghހ/T?D.d^܍]B1<#Q61/p\ 0S#C:Ÿ}Gqt]'cY֕.X ]ׯ f8G}=3Ѵoe>裏>3Q {iG}G}>fHR(BX: m裏>裏CN<qrsMQe_G}G}<4M @ex^>裏>JBFUUu544S~>0Ɉš?9p:П}BσUt]n( xxu4t0}s>‘# z)>V?øn`{w{DRjD4 UUiw'at.G[})7QY-6SgS/9-=n"{E%P;[ðţ8>.?Nk؝h]%[SͷG7vJd1U7/lQ˭6AU%<;QqR4M<^gg4ccuX;[III Fݱߢٺ@ҜwzNWyUA-Hc!]4Ty*[C;i>бK(b GR# 2̮TO09.Ktn܁e+HS)iP9b!tǠ0Ze3 0r" v kyEB 2yWgܼ\ş" 5eWY]op'=`Cqvmt-5<1hL2w^.Là8]WQd:èG 1t4 }#ǥA{ϭ j! {*XxB!|NU,I#"53u"$w9J!s7=W+AWX]`IѠ209sL3 i&RP[Y"۴@ N*=3*iFV;z8N*W4+J1#P-_u5rgs򺒗Bpt񤠺z| #Өϳz9ջp]jmtP| V^Q&.t^:aɯT0eèN=5K#܍ݕn܈fsA+p{y]kG#@z;.ٮr,kFtj5 &9 Gqzu˟h\.l+6YPiqNI]na'ڍU Žxdhـ(m-`|PFj%^Rn[EI jϲZ|@ l|9} 7D2NXk޿m)Raf}ӤZ݈-=ÄB*vp:mlu3iӹv՝6 n] nJ6@*顳v˩jY!&)%Si-_d&[曎 2.ت[_ 7Jt$CWU 30ϱ\ed%L%|Iz0ZY;JCl73(>Mam54K>KھRJ] 튇 rCI& :4j&6}EGecD:u54(n[ vλ&-Tr5 ӫ߈f׺9ҮKq Z." +p2#LY.S)T;oܪӟp\.l+ז, SC|zAviafp&sAU$$Is׬"+1ژw|{gh~u5<;4ٹ_X|O7 렾/E*UWPĭFpѼu-*Dmم*`&xqA.tF>e %u$Ee:ͫϭ$ϟ:vϦ,4E<#ً? ^[#W26V1ɢ[g}.1>ȑYKK%PCqaF@{)G?$UAhvQAys\۸nf7<4[&Dcb+m 7GiCL.`23ŔX5ձ+,{TdibZRu>e=IDjzX>^lٓ Ҥ%ixeb@'7k:0 Rt JeRBflxaN#%iè[&K2buJuG I;[ EJG ]IiQ*owW>dbhNŐ&I:Η{J!JBujiud..헼FWغ蹩njWZ^$SD&&diLl!hC+[g(7iFm .BƎzqnJ^[ML< i2pllEs7-Lshdf1N/QlKdHR 'Udl&z^JV$_i3Α.CthV;bPun8LDU~U/3r4_\2?^N d#$'9]Z%*eQy,0ɑIb4b\R7C:9ؐ$lFu Qof7<yfIRɉ$ աUXR޶߾K, 3 ,N \Z%LJkGc_v[LZLon4UW9x3؋]=Py6$( 4VX+v{['0,h# F6.(4T;m򧻍ˍu#w7ڒEO]C5[7r7e.^g?nv9֛w|q'KNPwfwx̜Rكe9=S 9 /]=򒼤M5uqORP5 ueZQ4 TVxӦӵT/4~b?A*NQK 0(CN WW$ qC˰ ~_sX*|)K`83WMRK]k'4@*CS6n4*,[j3`6 Ǝ&*0Xց X]ںSd6yI`*N\W\]`hEuIENDB`guake-3.6.3/guake/data/pixmaps/quick-open-selection.png000066400000000000000000001152651346623310400230650ustar00rootroot00000000000000PNG  IHDR#ubKGD pHYs+tIME9i iTXtCommentCreated with GIMPd.e IDATxwxE߽- $@(HQޫtP`{(V(`CA@#) IH!HHB:rwwfwvwϜ9GإEAe58ZQQgDRbK+,*hWs䆔c%Xʕiqs\[@4|T撎m=t&Q`@gppÿ2(7afMۓ; 9TJ9&_KkwG,.XR1 ]\2).׃ 87ʓ62ʈgg.='};#uN xpe]A$?<嗵р?ز ԐoQ_r_kl2 4wů'.yĦW[{AA{;l4P s,TWnBVN1J *:^cQ.;bi)+f PRɅaֶr*d=z \}8qӰA[U9RImxu7Q-1 ֖F*uƆ%Ĝ7WKt شd=Ύ69\Kֈ@-VNA;Ԙ+nN]WEOV3~+-,G/+Pk0P\)7,{6[Π\WJb3zJKe HB-])7> :.,=iFyZˮF=7~ n[}e9%^YB#VfJ0h)N!!᮫eŹ4J2s* h8-\mj6&-7W;,U(0(%'<9ehDI.d䥤U)% 6޸`h@WYNaJ> :7[,̔H]E9 doq&+f.ێB4@ h>Sȋ}nwN bt;FH}*'%﷔cڣ=$Zν_{89;6S?HX'F1d৷dёFvsedcQBک8yE€A{bmpk*u6er1%ɧ7`nX,Yp{hԘ9t=^_]I|PQb1JΓ ]kD0\ί}ў]Bo7w`.{?K MGBol8>ߎ4h.l5Fb($kLo9FP8`cXT#bUz8'S8O<hׯIۿ#Gң9C9t?FVT<φVQ`Tx~=lPA8m7E Sk9_Nea&مz0 pǝ8;X#i )ˉ$c;kzސ}d=~eƌ(/|ۇg\Q}i߲%zI6,Gf#{&)@߈Wص''ODr:|۶º澪x%XʑUB`̧81&RM%/9Hw0ge3l,GMB$sZ"*,=Gujsr1|D;͕#p 67 2Ufo/|!4mS$NBTL~" 6wjFNF!*w1Zhj\- c>f*v"#)ɗ!Cp,0#`\л}DL( 6^ij:MV(qkRȽ0lPbJΧ89ʆ'0LzϠ(1YOB uE =auBQ}_'p}O=KIxnsdL'eu:uNC h叇DEJFڴ,Н$$):mq LHXK_$_Uu9s'H=;g%:2ҬxJO =i;Kۧ}zo.~fUSxa`Imv)=R#7?{%ƺ(<@YU$wp0~{M6f{J!#U>QXA1pPz  !$EӱRFiUj 1W; @WǠ1G0BK648J sȊgG1cSpXa~b,7V-T;z$>ͼ0SǝCP :١!kBH7T'q0HZʩ DBPCWӐ}TzT-͛uˋ+Pbe}oFXq2b4 h yo[B neTLym/hdrNaêdat c~!'1-t/'s˄Qbt'[uahДmȊHCvMi8CZ$I.jl/'VXic90m۶]P'W0!4>C¦x?)tig_%h4I22! E*VUM}IѵD|dQ.O h}ȸ4tqpRRF.9dw!O猝}D2D Mƪ}M*5K=6$;_ZSTWJ7#S)MKig)M3X&КHK.:O,}¹gMP6xuhu9bR%<ڷ&1ɥ&akTsI]5c3g)12RYRWقgv+VdTdɲ}'\)4|Q`c%QYVА{5]ra}C#Kˮ {u)YYe6(_}-Gg\\s"((ѡtl/F@ !F^䔀v]qc;- SC^$ ׬!S_B Ν'WwKLWS"R5*ЗJNIhtcttO@(Lȿ""$ YLnEr@ ~nY9s'2=׾K4.lWFFc81*#^N$ܐ'cL O7ܛ}#o/! ΢\ta#?(C.Tm@H1JJE<۵Tɮ8OX\C'vraOյ,y8|_sSVc49\ΥaFł=9xz)82ni|̰__4w{߳ؑ $I(b%%ڵ-Q(IJÀmqH#,f2NY07M.0b)\%>YneXukFȇ! )`X DnͣϠ6d'UOT 9N;FܲP'Sx}0p1'3rlӌ: хGɭ.kR[G~Jte_v{{W}uC!S3:C'ک/d:cmC2}G;м97`0L'>/;6'5buEYV<[MּLe67v;0Yi7{.獻 Xt>8P#{a%XuV({g~8}Κ!w=GM ˠ‹qj|y?~}!>?p#7SnZ[FZPe C  N~Y'\99:OHF/|F7ZT*|Nׄw"cn69F3WY!oq9\_}\\3S1v角+Y1/M|`[,/lZˇ$1xiHhOͤ7 o.~8948tÿ%' SsPG6M!id%)~oS] g?:aM*Ru=j i{)&;AI#6R Xud"}e񭝱S#V[F,~C '2啗v+ܤt'8SVHmp}ƅaoE'fK/O.NK:fU2ι?1}OWnj@o2_ ynF:v ϧ@P$%^*F-bXTHAGY $ rI1%FȏM}ܟh1wMKkAJ^2Ӿ_ɓACɲq[uqyDτ,v 2eWZF_N58EFɺU@ZTRd <ώmc \B}xm3t|v|ٟgA ^k"k@pQT}Meߺ :oqɅ !RQRQeo&r -`يmU_%%ƢRZoDŽaq<}/=1Of\<4(gu9q0|ZEm AjTޠ5+__2d+HRPQBq 6-xd g-JK;=:1ϺvҋQ 9:AVxsg_,6xbΝJK*4@T Ԉ8nwEjkʀK1w7g1Ln0-3;ИvQSXv8].Tb&4M5!D.b$yePvm5*] ۾abV??\f1rwG]jBdgg[l*UxRcϢ@4r4ؔx1jө]MaG [(L g5l*4-ҕ{y{RM5޺;O_h{&~r-ZԊ=(:uS?f6O s#e,b)<9IF++[b_}KsZĔgg3W8~{ ndChcϑ H ?[IMLwwU0CG !*,4 j_=d*c&!,\j92呡D6nF@38Vב0-&cǹqYD+ܷnu%]2aEXT#r<@@ %PzRDXDp %Grd~$j<#=Df NIYORA6|2 [p7HRg \ZjB2͚3_dbe V4!`"RUt5/cx\Jȱ6qH '<_Lg4}T[9]dsQ +!<._ab'CYrYZZ.z~KױaS=!;zZ;.gm0wcO+I$i">d)\ liOer":lX -Цe4ki_,}=Zaލgi@ph%_[G<9vNhJ20fsBF8?ug"Ң"e{EI FLFa,PqGQ^v ekb`ֵ\Nȟs,p&vEhR K}ZBؾ7G<9&uhFxsEhUq #3O݆37k.=ټ6~\,ٽ4C3ҧ&j{yl%s=\P%琣]B[-c⏍_"b(.kJhk 14 JTE0q.: qLlq ,Ďw }i ݫFv<.[(J gkؚdP[vtRSE3Hڿ&a2H? '~ʼnkr_|_ݫޢְHc.s,UCkʀ"qD5lzok 092w:;|ͫN0uo,WL6BVDl!* [LJ$\ڑK3H/,Cd= M=S~z˼ػ3mvV\h2zHw~O;,5*| .3po:/! =N >mEҳ|/Oh熱%Vy'O=KcےViG{Zrâ_y:AЬj^8PB>aVK¢磏q,yY/}0#̉/WstǴyGOm#QLtii̼$lp2H['?%J ֵ[G|Ɋg2)gPKֆ;' t"ϘYʧ(3z}Ҳ9f1PS̑8/#c*>ņ:'g$i?+"=vs>.q< *tqQEYJ,)U"kW˔9b$ٺ kbeC13H |9 zTӭ8I)᯽@PEQ`y<]G!]x5peBD-Ѳ%x _MٖJ@da# \1Mfxsެ]Jfa64Ml6F7n"'JN7d`CY+֊J ΰw4/4L>{c4_GЋ{,#f?-Ȍ\Z/mɏ$Bg{un*9&o3 l("=  Cc.չB.+\`mg~Kô:rßfdWŨB-\V! IDATJ8_O%l@W^BAxg,nU[9r)\6VRHIh(@ps# @2ǥE{<-ċ]vdYQJ\ND|im{|MXd+r'Obݢx!2OOw1Vuf }|cYYFHQ16}6~$~zhmbcfҏdW) #@wԄ]hDZ;H g/{rnI3{G*[&Һ v0,oA eV G2֭%=v|JI@5lZX:.Рj}|q8!c_Cځ}չYf5EU~G4ZZ Z[&i;VjgXd31We,"3[7 XAl\<IQ1f-apOiCqQ/M!T$s|}:A_͙?aܪi ZLt\ OhADq o{3l}  A#GG0?ZB!%J)iCYa@U( ҵd#__kc倹S;u<eZkU:p[\7z2$.|Mc+6 +@u"Iھ##S4}ǻuշ,Ϸ"h}b<9o.#B<&&F*ntv׻KOe '/<҅_Z{Eo. x%^Z;n2z~]ԋC7@<+h,o={+3&SVUػs\ot=WiNW횐TwWyF*#":$-|E,RSJȐ>- "+h$4T411q3xcg5sgZIi71z"c@QJv=394{8| yv~v4YI\NX Z sKCqrʚ^CU$5u߮@)KLډvhe̔L.xCADtdsoA;ĩF{T{1y,~Ph̑MLNH-NԸ_LB\+fe(HR$_OׄS bm(#}1\+)7A:V-Btg<@O$=զ*rG͉5eHEa"Aߟ͏_;0խxl' e+(./"+5ڄC`4$5~L5K8>VV{5K˯Q&TAoJ"[1NN|EDR 2fci<ψS v (mDn$zJ; S /zxc 5lmH]M]F*R?zFމ4J8׈piOV)hRJe@")UǠCp8bSvsCQVCq*S!L#ASVpa^&)aF.!2$0--9v)CX1a6=`1bL6L[OZcG.%:,{396HqZ3&7t"OD(eȀ֋C0PV.IkW8s c< K'j|U<ѽ&h ('?(iT%Erx姼v:#Qr?ao]C;^ &Y*n0ѻ9t=X-#鉑X(+BA@u#/yG=b͒1sS,>* gNUjmHiz $F"ң@ h (C~{JqkF.Dz ?ͼmnpZ),&#?pQX\aa9l?tӣ8KJu}u/ew̚4HKf󓾦W.99Hn/]Y@ hH (0D"=4m)c~ qU;$޶_#?=]o 뾝"hbw~2~X5ÁwywLf.HQl Hv&Z_|{8(n)t ] % nH7K Po&SG|!2XMùM|g%s2˄ n?Ho}uXYĤHk6EQxl ~#WEz\cZp ůewBFWEzܸ\u[sCGxCBuj;O`|BaJ8{׮a[TTD-2_{;#W?+x)V#3K;wPيiw\a&9s,'S–փ3_{|T'/oISu?֨Z)Dڮ]r)0'֘QI~r;VbW{X1֓ ?/|_\@V=dj=E/+ g dSE<_؟?:MQ$O>fy<7XM+*ɩ 芿W~]CYIRl4^ j\5G Nm\Ɵ )1V㒵%c)UX"g!{mlZ ,^NB1L~l<" - nK*}IKd`b|!ڳ})-3?d d _^5dUw׋f\m{{= {W˔kفafyɾٌYD+`Lf)NތfHug7>Ӭ!z3|yE]%Sҽ旵u^[^ '5֒x`bX#.)H1k~4k,!)!c2J% $R;SZusmxwvW^рI̋?΢ ng&u$ PҞD2` @v_RU)mLf32Hdyr1%uL_ς]Jy tiCZߵkaڿ 4{3xqC:ڳkox$wԎgЙe E)lz [to YRG<ƆlȦt>KؚiHf IwK ]Y!9$j%GZ ~ŗ㸧Ͻ̾G8Gs&)Eݦ첸IoQ.OOoI'sYohvvRWGURz4aX|u h&܇,0Xzihr<Ѐ?d6푏n{p51gN 打9ReiчXt qlI4]pxp‹+Z0:amcZ"8 ?đ0*/h&бkOm%*3NFwu61x9dQѩػ6c;$9O \#w{+A"yPݪ*_35UY #@ 0L# 87D HqcieBl9.-iqs('7) ,[` X6ZOIN:ob o+EE3>> sL+˩'r 2/G01jJRdәټ|=67SPgYc {= 5qW y7Bpk5 _6oߎZ2)C4#xM9MnH**GII :-볳sO.U/?ce>X !DcP09_7Ў ᷩuYܿТc7z=9'~nTVq8v}:3%8U"s60 M,"]Cv+~ն0WufG7bTvӑ0m+ ZJu29ڋ# nj-v?u =݈!,(s\lJ84S&vlSkqZxG1uL3YKOdR b+iD|3 dR=`en,< RN <g rE! gXsw {:XWPZCwU}!U.ڕ;("l}'j{]bԸUC9鲡U+,-S~\ϧ267ԱpD} kEg^ؾBfne=''fXWIsphþt8VC,n 3(]hVO{D5 }X^fVE8,R :3w;C=Ylo)_˒-кFߗ dboNفbkUST@3 G;8=Nܿ(=6(Yh/K 4rVM/^e#y絩8'_ xE+;]Ie՗>IEmٜLa01_%PXY#iu/#YGVיD a_ CdY4BD 4  !F@ H 1!FIrH({ʌ/ҭgﳏsNd[QRz4w.ޮLNxv; Q1.wΑ⁞ѴG>fj/!\oCcv};+V/j݄NـE*ո5}ªehG5Qw :#4'!{{ϪyzG,11%Yjs[ߍ>QA~EYf9Ik^Soz# 6gs<63ttm;q Ⱦx:"Qԏ۳S>OH33}iѶS+ycX }:RMp'ﱕyl;e؈aL5+DH( Z vkp%"hќ$2" #۫&̦G:qV_x3桏ӵvK(< Z1-yUHYe i[r|嘲+G(= CPnLp@B%|LK#/^I(\S0|wDO.߳7b&v?&>dzCv}"'|m[&MX)dN) אxS5u!#wKv6aL$R7g [[Ọlf_uDO_䙻=єCrL41h:k2=܁0%kE*ϝ,:&Ct P? vzzNBEiƐqeK\ m(4K^9g*й MHqSwρ0{R>-mKҐq?EfL2#xgKA\Ǽߐ?qxsQ*TBdwY62}'Ál_^:xm̟4_{ MG#V'S$hT!"K)S -M~!3_[KȬؓF7>=J¼j։VzU1U Kٻ=}˙17uHAD~N>;YسK 2rVV%}2h4wۑtGe uQjbqB@~h'~Z!;Wu8VRFYApuUL*T 24j =>]I*eć_O-e<m|Ċx H?g}^zw-;Rb%̸G&g!ׅ8?l8։AÈ,ŚC*-]0#;{|2_ʁnᖔx枙=\Lf.Yd+<\4Υ$O!" w}7OQLdoqe52'^W>fSǿꍧ)RK #w: 5ǎP*Pk y.t9ªUXP\軅8e}%…&q :@IYF'3b.qu)%+,6ޓIv&Oͣ>dSz0'ϖ_'3WJxiPь!2+w_B=[D2RXFf<%YUDe,=/!K 7cίhrnܞFD0UIQf⫐`#W!?YG ~fE뀫_$o3=y͕i`T)$Wr$S@QIual]3olK28o}ŜX7G6s椭"A)9_g O>ʆ~`S *3zLdfAc:S&xCRQ*GBRqy^I1 m9h7gx\reGokY)fPD  h[& | NL~#7T|GzRq[s>3oVO=ujT)$ w./}'ϽL %??_ %vs?A[q]h:`QQw2(g&d21*}!:V U%!3 ي=] M@ y>:*Cq\ CDDx#@MXj( []>ة4t33+b`R鿃2t nǬ.D?Gqv~8'3sc~DZG`tK=.[_E" nDpxnuZs?`)賄ZqqP0't moѹmNNhrʳC?Yt ;zG 8,xK%j[>PrɑqvhܐBA~!gPHEAn'$PuJU IE}\lgoFo/bsP!x?+1'D QqіVGMdؐf{,R((yIB:D޴ Zj' VujEx)uS\&]w?ʴ966hƑfM/-1wV@, oئ\8 k1f[ߥbL'Z`r$-/W(?&)$QTgK$7Z:5n жY?<ޞuQPa"?%L5 @M9λ=g8wrڊRUV&"*LJqLO_B}rCߪSJ!ZqINHˀƗ੫=0;曭Fsk_޹USYp-{DW3Gb+X]qoC+ʒtYӟ޳%- gw\O;61TjFM!BE)Dwrq&aMw:\NcEɔZp FPgW *v6e~7C(+DѺ$`["JjUhOz>V"N[ꋤTJ xZpÀVyQ:Thnb]'.W9d. 7Lsgx=R.~ɞNaiP$@i1_2  M*yUOQ_oK{gcN^*f snZ"'?JyjG*&]BTP,ǴDٯ>S*TH *T2RBJF*TP!#c=NWo5߶ J2(Ȧv5QE:%1>_h 0i|[*81fn*>11e{-OX*MjZwFO KZ!3Կ Umh_֗Lzs2؃^:|2OĬ[^fsq%ys,6nm=Q2W=^zg[nAd DGat-dz< aK+0Td㹛:ΚOʡM|,ړ'C=Gbx8+DYd̐fCF~O1{<{HGl/At sjtY><{GJg/Ӓ!ܶ$ zon䋁~v0iݧ?g6S {d_tDd'b_gI|f+MH̐DFopךF뉐PjNੇ5<<^h{e.D3{`Q,$LOP%0vr{p$ &Wzt'X\~K>ogYFQ2NBaqN Gw[q6s hidtg|O\翉}_Ͼ5+X2~Gq@tIW^%a^5KAGL_+Vˎ?3x(i%)#|EguU"  D޻8kE ƽS;zo+@p1h*dYDpy[>.3|xD`{"_$*y}G3>|c Sp2;oo,>n?ٕ Hxߝ|vX jd+VilGu᏿LjbJ]N+,#8c9"_삋PƉ,@r5PRɨ䏵[s8+Nw#ۭx匙tGe uѺrZhC!;Wu8ֆ[Sb=zEJM@/Cc=YĜ.`l0ă$ݘKڻ?`R 2̐JFGvĤ}dL[LЙIέ[2y,x#>m(Z5FpSž~viv1[;2=Tם<}Vn#]Y&S6D%Q}Rb2cw1ϢB:zle"ptS,_uBE&m#Lyo֣Ɉj$5cSu%g3O¦.w9?2/" MrfIhiD_ڵu\]G1ub;ߟ_١i>̐HF\⚇ˮ3 r9Yn[l}zR{ɿpQK`ۛwznwSKg_do{' ۼE#!m}%WdO9y[2xftW'M ͌ Jgwј'!)X4pRJ*'Go IDATi-;= tfZD.£d 1>ODvCfHYEkodO2VeT4. |TporfH 2Edov@&:±[)X&p{ E)}OM;z z$#Z[9,[$T!-bw9ӹH́BEREʩ,׊%VejPB%#*TPH *5ӣ jhOzh3KlW=la Gr ueM+acw>?^X,s&BNZ3 e%"FoLh1?"׿Qסө{@Uh272;Էlka W Y?cC[ W;xs\70Q O<2oW+2= w=rwkKL?=JBf )$f󛌈LW5hz`*T4ohݞӾ̘֛OdQ=-Nh E;D\B v(V 2,Fs JEg@s8 ^=*2=3=ƞLOB:OCij"qi(щP̙)$v}0'S9w *e4hzN}ᗃ z )}}୵iHd,IhOV'<>Mㆦ(Ӛ'";X} ҦAÈ,ŚCͳM='Ng|%Q-霱oweg]`Gv07t{i#}u3=/:[cc/MrDlNyWezO v%!Vip9v5r}Mzax9_)0Ծ=l,82d$Fw Q i~+=9҆QhHԥ}gzL7Oq'I/`ѝaT 1Uخ)g V0~(}p(Iv U(|}}&_<գdd1`Ջ.JO+d{O[Gਧyiϳ>dc՘Zx/S#3O-e# $LȨ#^a@YZ"I +}0)89 \仲8JkN.:S9&mN}JRK\[.VBVR*PBDJb(7j r*ӣ9 ?ܴ VS194MZ"[Ok:ul_NUW]KP*Q2PpׄRtΔT KAVn!/ȸ@q~u[#mqK]ŗ&auX&?8D DzFHH(\x. ] @CD2w'a'VЈ"ZWTM憹:#bY0=CkIApɘ.]%LEb+V֟3cQڨs!6!`)Eqk7j9ir9ɹˌJ)I皴DӪ\>UuLr?otMȞ?ٺm/'ndC_WuU0ȩ Y!hNiQFۿ[M%TCt Q5Uԡ<4'TsAyH%XC&Ɖs|o6Uu jTCjjڹg*83\́Th5ևn ~>[Gyx7VPC.&Wv|A)/LTN@N@/z9hb>[V ٞ`,궂#NN`/G;}#ψ>gĵޜ\DHl+9NX)%0eSVqf:ͣSq Vף*$UWQWQddl-k`^YHy2y1H $"̑ž[r񃜼}":Fi Mb+WNUu% ܌SuLTL7>/Dvhoə$a7jN67.UfD6H O'x#"gfsfd~EI9uN$X+ gj$zvu[OQSmcLT`p7{Nac>W Ybnj u[ln6wo֤mB0[,;ov6^^'XC?x|ٰn+8w7q `1[*+K8J;ll14Yru䶻Fop}ԉryMcC_b2UR<o=Jy! Ul˕W>U׋I-63NT_?p8q\}궗G;sESo/gŷ-{ؗ;5LZO?5Tݶh`ꀔ5iKO#@I#9a Wuű3{N JJėC]hP|pk-WҠz }sLPR*N*D7 )NA֏TEY*u* eG8t&wę4֐ ؐ5^d ދPم448!E`ԠV246(c2FryAPQRv*yEE1^ӣ$̫fh L)rEo׳o VQT]s%;C{b2fz7cdCB 11˅1w*|&udhlT:2F6^՚5x;fuTXF gT@ M{5y;ؠL Y^?nN5~s8UVu=bc#^=xAppR M=׿Ą/'rIe֝1{48էٳ ngE)*Ku_d;W'uDPDXqn_Y>#E]S9KF?}]FfjzT&++iWǿt~ƶkRT2]h:^F:5BRvz1u&8qH뿐'K JyؾN_'** ˊٔH(k!?lR)(jR%[j'5γ> ?11 C>IvhLCK!)%,N95g2mHr&DUA 'fr9g2Ix3'FK[⇴˸\Gܙd(i$29[l*! zlNV6r/,Ģw4EHdgPj"!!bp?Q[fSK Q@ؤ9:o N* ҇;8Y,&IA𤽯cE^Uq l lZ~W zŽ'94.5QodZFWJG@85r?3P:-̶Vz,e}(s%'¶3P(ʵ2% QҫFͤ"G2eO'O=5,@ R,gp/]);x ,pݻ 'Z'=JI"9>$qg +)ʹUy2\U_1'++ҹkmde<.ڕ-YdUjԱ 5:nY::Щ1~~hL%bz EFɿS òf.h}%bY8aC"LŃ>zw< :4F]U;{soűO~(RbpO|F5Ȳ !u+06q7)nd "U}edL;_v nіϑTʼd9N6u!ѕk(F'ҳ3$I|{߄BE}lYoT7ĺ+FPV#EB}~NJ[FDi™V=_,qV@~5&? |X~?Q{ \p{۳c u  Q얁-3g85~ҷv\GuNe9XwɸƔm&T:X2r08 +&@QhwӮaN)2ΞsUgg\WG\Z9g#|uAK կ z(BȬ݌:hpy'{񮷈lesJuܻ~9^m CQ5!O\A< YLIyX7EŘ%U\c ID4zY~9"D2\O_]R{j TCõ:-&ѡCضrߡdJʭHtT˨sx7s6nǾD-SVJ>_By|~Z ͯRl|o(#$7HPe3>רb$+OR|k%ǭѧYJQ2aC{c \m|?Y$WhG:LW(;])Se>fSl hq@1@U+3h0T\p *1ɫ( y(H)(o3dB.JVTZZW'AAr:Mˑon oT6 FC׮]Yi# Š?N:M\wc10ģjA;K<fq|s$%deV[)pZ=yQj|7%%% Zٹs'cFbV&Fbԉ͚v&)DzXAtzk#I)>(J踪N걆&6 V{+V0aX "Q+( I `7L1v}o]iLl7A/P,˪@UUŌ*]JB>|8#O^DHj̨ !e”ueut7X&$I`̘1,z{7zu8hAHeBE -ĉ)7xlC|4bh%=eVPn"Qڥ qqqUךxoF4JFƃ7KvUh^$s4 ڵロ3f+FA@@~,0`8"MPםN%3;W%t ͏sرc),,dر<{6Zo/4uAŦ dtZVj5t:;T4oVJJ &MBO={6?E-+7=jwBEKqӶ؃7/,JBB(Dx046Ti1ozǫBE˃N+n̛7vFaarl Thah*@jh4}x뭷6l(GAoC ;IThAE Үmӊ3 F=B+dU$%鎛 8"RH 笥 ZteIFż0&kTd|p`O;ZcXf1猜7 ~b@oɠ\u*"F'4qkXe<ٟ__ƱK\~hIށox8Il*j IDATrIg1Ĝp9 b`9vЁpSp 9;EE1pcHǟؚ`Bt"?Â$D{x?zMƘ΁z8cL~Q6M+GL`uQi0'q'Ae;:Vnݝ֞zlSUs&dJB(: .O,XzRшY3yOkNta =<%s!6!y|Mƿ$'QB"*5b*Ptëբֽ:IiҚSTJ E$G<'29$ AcYk=2Y7ܵ\]gCcJ,>_DҲ*iqU3Pb3L0HBԘĨA-ww?+77fk:(Jd]̬0q0%;ćq9,U$ɰ#K]C6ih8l'(D[NF||Br}kU+L 'JTe6Aq9%V;ʫaw;)P1@:pz: (I eWX2)%7>= M+[JO_+7/k:2MT|m}RIcl,c&\MEsukΞ`h-\Fs'9~\D <1M<`WrgEeFN/4I9xp 5f!Ӵ5Q%Vwi.<7^]`4#HEѽI#tK}Lh\>d(-QDTݵnP_”,ޟG ۄB &TkCN^3lR9u6\Ex{ct3Y ϥ.pbD\|:tjiyl!FGXGD›c xġ˕Sjk&2~tWIq5֭6 S- -'-:GFnH&4 M즉|F@@ b$B#@ b$ #@ H  !F{@2aXl.E HАbdF确ogNt1x̏BNLYZ_8 61 ]ŀ5R)f0s(8{E " N ijw\~-Ɓ[Iw^hk$?I}?қtq̤!OB{Nei3+8ҪygީȀd1%#6kA|)%\X/!F"*21ȏ" `87 F ts 9-G2a|_6U~.sn&H}9&5cOdm3i9 d #SpCuiZ#Ѣڅ쳧 +)9L{ e4שKss#^8+dO@.ss#Z=4$;I/]BI6'Z4$bݯkM5\B϶V PXZ?V@T4kM j:VϒY?2~ƒj)@o:}NFVّUB!F kF7lϯɘ/]|;N+t4 6d hc)CG Hт(* r%J`TBQ16^!FO]eSDWYVPȱ4T6iNJ4F$(@pfߘ/+ OV<ܟ`B !2t`HL.᷈4tMwPO-&$Ĩ>Уs/1:==Ƚ/wRb7h23F]3=JsR s-?QuTc=t7[#ɜh'̌ѣԫg8_JeA2AG}[Z N;v sy{\g,s;_TgWZOx;Ehϵ}Oe3X闐GTa%%5X Ab`Z~>袺l]BW2obUp&YwdCMe̘É{qOF1cLF|̶:!mώ8 (sG7^01޿}C%HZ"y΅ [Ԙ1)Fw+!HB5k*7)P1@mZV$ikO$4@ l>`Ge)L jnٓ\:q5pEx{mǽ) RYۢbi FunA0)+QhPٜݗnv:'t3"~4O]qz)cҥt5΁dLי൞To$rSܪ`!n ìtU*mJcc U+ZfrZzN]IaUw1 ̿ߖ*rhT)_gky>iX}5YLl7PXmTGb(ӂ'97@HBjֶ5qU{(r&ּ?.]Qm*&W'uR5$Q5jj׷ߎږQغܡ4f7c7jI5R2 #)jJQbޯ6IvG{/EVnmv/3l8^4_KQ*Qq6 2ȪKVl/T]H e۷_9Oue롛BCLq3Ѿ֨V/%J6*q|YB&)9}ٺkc%X'5.tmBG2/Ί:DU%C;8q/ͱSdR0Ģu{Zs5 ),(A9ZAnvHzFҷzhGm3)di%/\IdyANSo~E5Փ(DػeZ!MC+cQBRuZH:sZw+ de+pvP̒ߘZ{{Y{^M_4=f͆9ngBQel Bs|띊09ӟgqm |2" [ G6dGP$?1YjtLmTKCtKIbQb4NYF)z"eM$&Ϣ)dDžpໝ*ǾK;jeV3fOCe'_ݮ"}Wy0d 3D$p.&juk'3*z`],+=8P}T2gr ~J ƫ ĕknu _<|8[F fὦ?+4x}P mhsmWdԙI&vl󿙹*"'~Ʋ>emYт; F9B "a(**PeUI;[mdh34'ptC,q _ώoC .au NR\39x C3B#"jE\BVu"UwxzWF˜4$w/ '@ +ծ8vA's k"w{OC|u{Pt$2($@DhjƬp8ojԥnvswYe+^tKJd$c# %(tuV< gW^ے}*R$aTTe_2ܪwJKe$#%Q1άi̛©,3l f5I^l8$vȤ;֊pnjQQ {egIX}k9q}m.*ΐk}+[uo9DRЙ>'O)Vr(FR*\ x4(lzj=~dra"?/Ёky\e槼ϛ>`"tIQPxn)>='a}0h4V| )7ؿGŽbZJ금1bL^_V%5ᠧ$' bYO2I˃ 6uuuk'M R@垷kKb͞ݡ<Ω("@`Ӵ+nHI1 ?_e3ypB@@ xRH[<g6H@ċVbjnG]S|u)϶mA=fԎ4MVLZ"pIߚ^nD[K#ąp7rkp)I$ehzd?s\Vt޴t[~ǿf-Mdz&:׹ˎ3tK"|9=^_ɏNrF'CvrAo̪ΕX }N ?3SXE{<3KTW;6uBE@n89a|7fhɸ3Ag9#l}LP"p!A< g+gfl4|VmGFijQј>+=vV)G>^Go3'M⿾rSgZ(,ޓ0+>\ Oֳ29ڔW4>ݯL.@E"Sr#ssv< cɉ,-Z'E S[ͮqEVqz~0GT`ѡ%Yp*Fc< 6-gH-FǤkSś EI ]+أBMz-Xs*֣y.X*Nzc8aI~#Orf8ua08&"\U7YKӴ<;KyUr|ΆZϥ/1']ޘ;fZ`!y~=<~ a;2ޝȫ/H 5-+9u+-LJlX<ȉ#xU:~#. 3Fڥۛ@k!!{sq./.Ė\ֱ \ ,{{Ul&'J2:{ҋp{ӗבe12=7dbϰֳ=֦z(JsCϮRZ!~'1o">OȔi )TdH5رOg4!ϐuk-[|OL+|'mѶ}ȦVsc6dԗ$U½3l.;\|d%敽iS<ף˜`'O<!@7 itL/ؿbZS݇I6gB2)?+Ө~UQjԬRΚ5P➀5ǎr:89vU۾F/ao"?ůYo̘[8<ك3̮Q~b6cޱ;<@Y?zf3;~/yuGkʣ]W|!f^0E|Ouɻ2";G>:gެKZ5?X2~xRezF$vGLƵ胤TlMC?;Á,p"i4PSSˤRuy]K~aw>;y์,=g\Ɛ|(FvCs; uHξ0ڿ{i0D* a4Y83-|ך0: >G}ƐەtLHSkF573g`Wm'Lpg0$<*%КMF, S@eLSFM< L"!g5^r?@UK<X `%^a/#Z`$.𚟙[L>y3ٸ?3z]w˖XxJAŲN"*`$['s?%sV9bz[73#"7Nd|PWzOcܗǥ )(w,<YoћL `!qm?^&Zξ,Zū~vi_gd<ħ[s-^!Yt85gē7%N @oJr *F`QN'ab8'ƌ|. QͯGx6GrGetl*E;*Iq0OZJݿ7<WKkG8}5+Id5D+8 @/ R  a .gCJ\>+61Svcsg}oƩd&p4 hgĈkCA**A b^''^(L,86C#NE/DkAEJOơ!rcv k]Cg Isʫ?hmPc3+ǿɋrs5-~+SMI=m^]sMIߩBjQdIBZ X.r̙B]sq[~9W?L>3~ZOkX/*1Nhڜj%;U_z8%a9sXS8 ŬQyo4zcWU~X.N(15/Wb8Tٵ#⎜7'-;jսo3}u*lGϡ80WE j@fF+Z$' UB/SVXهB:|:*Ij7a4;#UN?,c'hK[bD RށrR.Ut;ZUB*)CBYj0TmHuԢ^4frأfrb#FʣwҠJtKKpeÇZ,$,KtLxAZTRv<3ܩDK,t+ꅇQ!XNs~1y+sFЮ=T՞aP\O?բj`?6}WJچٚ,A)Nkt{2uƔ̍7CD*#ͽEJT}}ݛTrLdϲ:"2jd4oӚ_ډ ,=:j/0T4g$IfSj]D{/+6}xgJ )3yɘL¯%CJ\CB?僩k'$qz`N^AUdQ٠G5@3,4 8 ] Q%:$~V@^l"k$F+\0a}]|.}OaHD_bN֟I|^_1^~UvDtİ㥴?9OFw~Agqxfoq$c Yq޼?Osh,Eϖ[TL\RDu|5 M#yӡ5m>{,gdr >)UƼ>CwGhӦMSq6t+#2iiiXȺ@hd@:Z.Jt2+GHOG@tJtZ$IBJay`Q qoo"R-:̚ۿRlGU T_ !G_غAZ(Vá`|-F?'Tz=NFNVL m8iEFvַ_@Y ͶdVʠ &$!t:q:cq8BJ#j`|DDBCEQtg!CĄ9offʭ~ۡj`3yo8oI`;y1b λadjZ*IC@@l6dE&ܜ*> "lvdJtzz(7r)%>{,\xLZ& EQPTP$Is3zu>lQ=a-, FVArG+ٜN'BJJ ϟB0"+EdGs?jiAa4Bp:I Blr l6h4y*$G~Z5eQPd53AEIk\G5-?z{q귑3ryT9fߝ;wtdY&!!˗/p8eVjjb< Ӊ%$iju: !hh4z>0n +M]gFtQt>¡C{ٱ+FޡAѸo *Ίfӻ}:mwc^8UwC@$tw fWoˎ3"O>$!P;pt FEzf[p+zqJPn-^u׮'.8X lDLb]qbvR#BK*Q^5K&b8?ށZŵKS+M n}nD~^Ni$X:.pp?,n{V~?:Hs1?35s85ϵJf; x7,u:[‰v,W/s\%4jX"bZf d£|yBnamc Ä~D2=o8 +0&qx< L 3nyo~r#\#.eS߲W99헑5gM`XC5Oc؛Oa jڐ;f-߾طX~ݡ%z.BzFKl5T7p!c$6STAzzmaPpۛet6x7RexSxҖvX-X%:$|OJ!LaZQ߂.CgEQ6k% HίÐdz Gvy(H?zr|ۙ:5\͒S1L >uCr$J"&~̊21!W8Yغa)cʼWVj}$ή9װq8[ Wjmy*VU7NᾉoRȒY Ji7ut㤫dJA)X.7jϻk3)"ѠoBS#jx o~tϕ҃%Tʈ15O9%7ˍ}BF Հס[9MѿU}GUURSRǠ7Pnl]~{.6jw s8%|Sw͛mUٛ s 9`EAU-։鄆On#QrO4͗/c[MQ'XKբ(r) Bj0 .q˿X!zny[Gtj.4`fCQ\W괛 }܋jOVVGHL 0 Ū/%5ٯn:֑QGЀMP;8۸ZѢy)ݞP YYbO&$8}oss'K\]v;Αs8gϝ#9%_ g, s3=Qu}*3Saɮ #61o~NpoعsgQX}ƨi'&rBBǒq44jQ9 CB0 @/_ҥYc;IJ }ԋ>b<<&=b(BPIOsBnS ;=vR/lǦ!rbvͮ{,|Mư9e_!AdF@z:08fFs4'Naǹ; V5,9uT@p2{ VKrJư"ŒhK>˼Y\{i|܌y 11ԃFf>>W5Џ{alz̧>j'R,'nea =&vG/hߊ_21:W!{zf [PSc.b"p7ܟ ?t1>]?sg!83 ԧH-iӦ Q/&^53엻ҡD5F!Dscg佞/u:|YQPuytJVN2;8U~4wLi<#?fޢ1}^U[?S^9߂& "UcgV8 ןAznd9*=T` e kɜ:} WŰeOLyIZyB2\̌*q&%.`ҷp<ԓVrK:AawAzz6=Wz=R<ԗ ;s='jaW̘z#D^7[őLճy~pN9gTG>L yNU-㼣= ksBPjQZ5EH;t՘\>Qkb4ɝDz, GE U*9g@ŋ۠*V EQ$Wĝ}ԝN{d*~0/dd(|Y2T ''rhph Way(Ɨxz dς_7N~> Qh7$$ x <8Љ*; )T$Dbj EFVi,߄\򖜒^'42AE 5aDq\P AV]Yn7ŁCKW=HIbpL\| Z@~.c%w^8r6Uஎ&3[` eVǽлݘbOzBYCѮ)δ4tZ bT8+tDQ3r i\̌5jl?4s#h\OHL$8$ATuQ:MlBz_h$#AQ5%OW)ġpoU( YxWoO!Zꡏ=>hKzW0׃^={ҫgOzgJikrO#سB؃QÅeWBe"¨ nj.'DUdeqezf@;i;_@_!)g?r xOAz"fgfj{H6ɐ!5n]ĞLsc2thMuEQIrm*ѻ0 8Nܕ,<>u5  !Qk_8x tu~:5?tN+뺥ӴQ}̧gO5ӻIۢtOY9~1ۤ6D*}Va by^vI/Dׯq{*Sm9ە|e?\Æm6\B5/1秕lX<Ϗ ̍,<2mN2Rb<<6,fiם"qOg|h+~zg q$˂*pqd (f^ilʺ~+lUgX܎Do=-w!39aQ6ͤh$BiT:ͨ͞y[J N̤ | 8z۟}};:u-fv-AȜ)Azzf#2>GC7S-OQ'aЉt]ں4YբۘܕV3nZ#lژz@H=nՊwDD@`ƚ1s:s N@N  H@@ 8Ңamj3hqQ,,g&-2+-+3miŏJ}?i!L}U% ̧%OM<̉aN ~Es!BҼLk!7 ځ/{ID+\0aR}* 7|>Cwg8o *S^0 2<'vff<6KFnC[ύg>93RiӦzcƼዸ|/gO9˭~4ƳV'π=78su9hŎlrۿrf*wr)# Uץan aB*7Bg *'nc1ӖB%%2Ohr Ŋ-jNUUe\BQl^(]Yؾ[`r]sh˄f@v c3;Sb lM+9 Dq 'qq?ы‰%I(#CY0ʿ5:I$Ow{6}H K$)]\EF8]ee63@Nu}BΛ\9OqGCC͡sJbwy̛…̻АB=s.IO: e%fW ?-к4RMO(mWwo̐zMVR1A9B(*iP I%'Za|3PZpW '4djGVi(~Hpm\"/uʟ8V/?8Zn8ez]8TUӂWcH.TP)Ul7A(~9)I20:Li|_Q|\Wce5j>-$ރji/nĨdQѽ ~- PUu2o*X)oĶ_}3ڸ$6&XoE4Z JXӓ1PdP}`=tӥOsv0J .Z~nW1 |Dեnwp8lˮ gܮd~cZq#klc?-ٷ'i[R@'zcPӈV3t{A4N;C̹q:d7n*Sżangn i5KNtX)qKD{ 2h9\6nMFwÙf)s9k3gݹSw0>ך_gTN=Q;敯bIQH?R|_̯y˧] vl-c*PΨʼJi7ut㤫䮅#+":Nk2 ֌dEp84"N hž\NKoDWZ}:}p>#i htF7΂|]+GTn? cX*1d"DkF2nux @ҀHFZb(Nha`J$RS3XmX,vt: ~LP_j*fO(3Kvˣ3f^K=uKO35Ƴe$7a&r. k5rGEٜՊ,s~j4Œs D䗇cBҙzv8<1jtg逪 KZvKbG6EQ= Z>Xmœֽ\Ɲ PTA29dCHdtk(rΖ8ưZ\= +5C0l4nG]햋&dP]iMܤ 妈X)0Gt)>mׄ&WjDcƮUr]M4摅_0]}:TRetQUEW}`}d$ Qq4 8>m7#Ԓ3 DPw cmip7o&lbiFFEբй?ZVաӹ~j<;|aD!iiMa)i$㴦";m +M|bxb,VtL|&/f3f ^zށJ0<0<=]7{_}_M"2tFB AUA,$(CkToD^wC_HR)eUh4,eFt*ޠN%jᐼgm Rxp@n5AAPؘn&:恐{Vsc6dԗz´Nłl11XѝiPj}z94?e1̚r͑1CDh={F+" yX#ײc+t uka~ůɮV6ϰ%i˼bS5"3ٛ ܩjjfh̛}d١{}僂c|2i\!K-:PX^ cjFod+%8(eS47z)|0~K* a4Y83-|ך0:` +u c!wzt FEzf[p+zBW~bZLx]2z9g^9!FSm=ӟ,tofn *ؙћoa5,yڇ]g>rhs_FkmTQOdEjd+]0q9.opt Lse⏯eK͢Y r:,L;ˌYSjiw|D&1zjA.fI$]:fK2w U 3TÀZ\% 5UܝeʿRZ+\}5&l8%N @IFcwYJP[~-wƬy/pn '6~gj,pN,)@]C̏0,ZPR%ƾ1wby1 B9(ߒؙn_?-rES} }(z񥳿_#L{wCHC8|?2rzdR/ض1}ǏaB?yzJ"98+(G3%NH̱$$$CVȽA"jfi8r& ȕgH1++VKie + |ihX#R $ v]HQcjPLE}"({~TVU)#)|+sj1b ^V=s`N\,}K(e +|y k_5sh;"cUNq^wC@ݓ=>?:oSc$6STAzzma975m}b-j$H=z'+f?U)|sjQUoNvտe h];^¶kRPUӠ! jPWVZ~G+>JhbY_J,[8Y@J]Ww5t=6ʯVj{/}&i%g&PXe+[~lYh%C?fE&6s2m>ϒsV{'!A)h]e3H9X,Μ9É'HOj .Yj_/ZŊC> ~țk,.ӧ0--Ff_((_.1E_=BǏEBB/SLaH TPɄ$I'O\xCbҥ +WgϞTVGf8rDP.qYO6N˳qRM[Ggf$^kvxQ=$\\2O=իWm۶ <ɓj;?DMݺԳ,3x`"""ѣm۶%%%k׮FZNعs'\mݺvȚ5kh޼9~~~7QQQ/$VN{DQΟ?ϢE]67&5503{MeG͚5 (DڶdR/\թFʕr iiiԨQ4\Bq8ѰarlК~+.Ncv'ObYμ*b %evoSUUEeF#l۶ UUYj+0ȲҥKٿapy?̮7bd+xt;܇)sP~ڔC׾ɵ!n̎Dq:h4TUQFȲ /޷o_޽{{kp䀣$8XRQn)l>jƳju//`I뚔+˶hոPZDdu6AZZZ{0bp|?adaR w{yIB8\Ȳb<ݻ]ˏ-8ϥd,6W*x?0SlȪ=A~!/sjn-yc1${:нi&J;w.~~4?-. KؕMTHY̤Łw獏Oѱئ;?aQoww_g0l?c?.eYIJ ЈA!ז3 ~C1|q.ѶC5Ln?e0x->곁3&e_n=v(LH|'.qr*bXy٠~ܶ=sw_fҾ R°H׹g~9QB\wʊ$DDDBL&σ7O.G67`[74ֵ+8=p2TyƆ@\tDWL ?22-&^C;G߃Y<! ] EM86!gR|p/6ŻS;s,O KęժFb9]gL PBQ_t1wfs'Ӥ:<C.xr7; UEAb&~BD:Ȝם |K' PIDAT8.|7'=G*+9[ŕD.5m=:ZwK?cGٓσ5>ůs^ZCVgls,x1i4m$|Ƈ bED__%^Թ!8ק+9)I| .aAџ0qiR9˜CxG-iT32| *%}l\0yM_r6G25Ko9:S7n!S2+r|,Zp&\ՁBA,bhTi™;}?@FԐ3H:9lEϗ@DOW_oAh`J!mi+yxZ$Sܻ[# DÃ.lQ:\%7fּ^pm$el9;_w~MaS|kᲱP6'ŝW7.LHJBTSW-ّ6H#y;?zȒwn"(x?IҠ _/!"2?=q^(AhDwzt!sXMΘ$_.l0O><$DvdITI!Y.$U vSBDUE9ǙKkP,*hKNOw9L`X%"xi$>3X ?^Țu?3ȥxc_^vWI6Z>6s}ޟvO_Q&$$,alnF`LL?d12D!`ˈeɆ 8F@ڵϺysmQI4O==ߑaRז(?s֯5fxʸ8,& "rZr3;Q;T#ܱ&$Ŝ|^GoW[7 ؘs{ko[׍|wYo[l5[cTdzħ8g|~A>67s͉߲/};D;Kwq+yp0ZO,ٸnxH;4ٞS~y3Fn :{eWGo ~w}vxzOGY̆"] ll=\_bnݴ;*?Gs|ϳme퓻'ye'^Ϟ䡷d{pзO'(փ>9DzE>0O5^:p_DHlڣOT]D@ŝmxSP[P XH!H$j˖Ӂibc<|*ۢWϘ^s1ӜF"fy6G&jG kl3 VS#5?!*bOy}{C KF`C!Rơ2J`FFUبE Z(%ɤ$z@&bJk;.tL#=xK<95::Z-.Xp۾BHyJTg[0t0i j\KE*hm,8@II&-91|b.CW)٪8TJ@hC bIzv> |&x=f(dxN!A` Dk#*R\!+y8q>vZhoAA|Ah:֬x6ѠEIAP*zEw)T9]R)䳴SX/z$prt ŜD*-FqŖe> _XK!1?4&4 4XZ()7|~l-?z[ö-։pLǝp89NlÉpbs8ܟpbs8p8]DnoFbٓ1>y |ߏEjI2CnBVlj;IENDB`guake-3.6.3/guake/data/pixmaps/screenshot-fullscreen.jpg000066400000000000000000003656701346623310400233470ustar00rootroot00000000000000JFIFC     C   8" p    !1AQaq"Rg 24BTWdt#36Srs5b78Gv$CUX%DcfF&'u<!1AQaq2R3"B#S$4b ?Z24wŕSNiR3.hj`6@ XH@rh 6\DXl*YP DɲSDR(1ٶJ xJvɸF*b\Yy19|NwVK $4z:Gs]ZgcīAM3¯Ifrc] jO3ĩ zI\+S>_/q緃(j#͞^<.޾W/[|~CV͝X[ [׫Z)4_L-nޞz3JʤjsGjmmKaqթR<2ϧ+E=(*xz7|ˇ7ѲlW J-e(Tk4 ohm 0'hGdJ' .>tx8Rv|-c;mN֖ވITeJYӜ=Z Ge²"]kOϰ^OAf${ p6/h^bbMm'y"omF{oh-c/ReQ Iƚ nUF~k6m=f֕ N_ߣVk&u\'[7ݭڞ;g{GxXlx|nЎԭF2(x7ct֮3C'n5qSP*FuVrh7$~)=OFVom`񛱰7[~Of&$ ux'iGTsꌣ}NCGipCp.ɫmxⰲ֯ x~՜Mq[֫%v~q( |D+a<:J48c(8?3 !'VZi>WX'o|7-e~pI(z};BNv-QM'94mWmIߘ8.\%H`+gFЩR :msH˶ϙanmx]BX^X a+(TQN\-ŴLP*J5"N\eZLpvn쭧8*p:Ube'M4&[7.W0JB/BJecŶߓVԟUv%{/ܯߝ||~߇YwiO S:QךOҏr,7qۥQ,^1G ] µ)4+ig_A67um}aaCy弍ӌjw(xm)J7nvM+#F]zVxoK_ >.>ҥim; VSʄ IIU-M;ӱ֧[ﶷ{v7C{qX%(Q*t(!1Wrmݶ'|I{ ߽\~w%Nh|NɯO *u-5YA\QuɿBu{j&:/ <.UU4rq5ծSl/l.[Ϲss6Nףq>1`N1tiʍi%TRᖚo7bohtl~JrKѭJ[E>M ' NK>Y4M4iM3pJo[KfljK ,vV W7gb]vӿaŞӳ۳ލVOn֫Oqt)T7FQny}Wkn^qGf:^'9*V.!&gbdt kr*̼&nʛsa:{Æfc|VSbn(wM-tf,XY7ibw⫳7~8<& gkbc6+K(F$r1ٕIj-WDv[Wl$vAqqZTV ''}ni^ ٛ߻[ze-i2*f*X)%9%$i5͉5嗳TMiG=?ϴ-}/Ch콃b(m4%RԣxQvy4lCͲd҂pLt[2(kNyﲴ2 \B6rSM]2M\7f7p`}"v- ٚrs8A6s#fAo<~$8ĞE;iċ8ξƣ^C4-i+4⹤q$iߑs"7].eA.AIgo \~&CMܱG%fA,25SU]Nf')]G]O7V^qxE&?:ccq|O$y~x\qvw jɽO ItF^?,p=^L.;̺]ǒ}>#.]Dxoqe칄y.DՌ<7gIoD.Oo~\y£&.LGѾH| lad?+GG~7ٞWN.|&3<.+Π?2w{ k;fvԶK鏍5dC'o!b6msm/ |Xu&Y-Xw^n~gwd>f~+,{Ng"9#~uWćŚv&cV\D]f|i}67G3cNG"\3f>enF@WC3SMqHzM)6ejm㻙<Թx-I;#v'έ(2 Mgt|mL6̣6Nt"ORK4wg?J/sŇ˜y>#.oG1ٻ24ifP? ^cum]ϬحSW SNo#8pxl8/uW.T{߿C~~e֚3bcFVJӋR+tv}u{Ǿ=lz_<6zѭ6t0$q;wS1O_UUjׯ7:&ܥ'vndօѐnB /C- fȥ$*Ӕnyo[gi ޭSim|lRYBWӄt"QY/+l NF;˯X͑+P)Qcgu\,<`& v?cތOB.gV}h`+ͫXҞJRXyAam*JSy3'H3p0*m|6å'up: jm*o+7l=r;u. xnV:p[k\(ՃJYYy cj̡w/,^&mnB[? Giх^K(ͧOΟqG?FWbn̶|:ogF)Igs^T>צV&}Iˌ<|\;{`ف7i-{*)m4fP"_s]ݒ{Q{ъ2UXmt%Jn!ө+q)NQ:[w1s:6K/wo}^.}7r7&.W4[oߚifs'w/y6gvvv#[7rvfέpJNhJ8sOC^,3}.5N>vN{} ^j0x:3m_)FRߧ;GWvf#j][6X^ًgΜ%W.9zOҾ72鯦}gO݀&;v Wuvemx岣-GJSj޶YoS{͏v?TzKlP{>iYO8RwRj?;{2hsvNؕ*́!Yjwu΍JuiUҝ9ŵ&Y{??lDCd};Cm/wpS`vx4,-'M'(sJ

m޾}?lc*{gkk:89ʌǪu$8F1HqzEWx 1>j Yæ%Vs)Iln9k,roі2̱}~}ۦ ؘۻshc^*^xJ5iI6w)+gv߳6eg{#h=J.M;I%$LuVB0Ig<{zn:Hv͵m͙<Ӟ`SQœw_r:^'Ynߚ-Kx|C'ZJ^RS iYt>3SŻCٮm6ϩfv_{GnaqgFjrJVZϪ]>?7msYC?W>=wݐ,ͷ&c=k#욦Ǝٯ^X`(ǂN[K)IUhnMGe;A=mci]ooO?1_ I׭:|Sro՟.z=O~nc ٕ6UJ{nZU)եUTԸ&Vo-,^]߳5b}C>vO{SCQ;==-<xb#ӯ O8ʔS^M}C>LqsL(m@I"#>G\\3n+X\q04X,h3Jf`6-6[[Paۑk]BL2IXiҏqЩ6ʍHF#Q#ɥC+1,q—q̩Ц"ԽH\c8p =.vd5$̜t-3mz zʺ'1:PK HA ҷrN|;.4]ѫ>f.4e1Ĉ 9ONMݷl84ۑ&@fڷ /<8KlN]tAq@;2eiH猺%fsw;J/)T4xV-[p OI]:G,cs4.ZQ#ʧ:&IVC%i)ܕ'mӏ=\3PܭK5&Sh\9GY]%VV=ha?g TY3|Roxmu#VE yVHOޅ=TJZr^Gh\{ٳ6jR`6tb<9BU#Y]E ַ}W/7govmC)a'V|6ײ_I#mt6x5fv3CgWUl NM^-F'g8L񘚕7)M xYzSs:Gw?TΓw13IA]#-pSahm+#RqRP4\z #G+W1$4\djڹbf̆5j䥇fdRl\ |F~gOx|F~>gldz.%?e i㵐h|N}csՔ>٦ItDyD}86a F]9>q̼L/t}/'1oX-?eqQa|Z]c

+?e<5\ iKG3=-p>/.`CUoOs\Iѿyu/|y4w>/|y<3./^s|4<ًvo/| ^>i-qϬ}g>>l}-q݋KG ^>yyo d2KK}g$G*iU8|}K}n>wΪwUν).qju85gLypYp;;jujڝ4qj=Nhk2.^;;GT˫u<^3t u28Cx3cyutx5-I[3U8qֶaqTy29e'2KG8^Lo׎OG7_XOu2b] ^{KGy-q~< |>'0 >| |y/}0O/e|x<}`߁^< l}&L~^{2|y<1̦}%6>&9^{͏Q}W<]<-K3{>ǛvkY}9< }^^{|{8f)|aW񓻖xgH!zx|xy}Y7wrZN xrg \'=2c}]9ijAQa|Z]ci(y/Ge疸Q`Y{(y Qa{U|r}_7Uo rQ`OsUo rQ`OsUK#'ijL<$}O`OsUI({xyn?OGħx܊({`FtikcePp7hf[JTh{>.U%Nx\a(\T#H>vmW[hZhmVp,9e=[mJnL6T\-;&;IW wG\7+{cjNbBDJ2kS&:%SYj́P0'*sM6g7̷; }H3Ĺ$U8:;-GoT0J⬣o$vy?]O(Q<,:[)î|w<>cwyT%8:q m.7.mStғvkY(lέVJ1_{fj{GjcpjsugNrnw+6r={N10USJ|Y+rݫvè¹}+rm,L0Z3^nф>x{Gpi(TiIEy4e[wx\u!JwW ~@>=&n􇷖5a>w]7YRT[ڴ|7nඎ&vkS+)֞Jy2UЖT%YĤky?]OX -\N#gN QsRϚ7#z.2Xe()Nzv<~ilcQN6n6[V fPTHf[v$Tx7n9FK,~ٖdv)*ң7.µ[}[⟂FoMrv_:JsennxE`eƥV.>1g88ݕ0phWj-%n+ Z]B$*Q\߭M*o`%:YF5X䮹CgBrU^oM ATzRZqmi`1;:N Ndk޹zzVR.҄ԓOCVce $bťk;'~h?̓ۛEFkEgROwn+cWJ_ M|UקB9VRJ0r] Zdvi7{bU㶝HEQ)<י%|G|.SVx:Vwi+[ ל+(<}l~^Kb=Cx\UjQ7(;GkSL^Ά&¤J.GWƶ3Ĝ'2|M$m%u97u7?\Wz; pGdY7pWB =*RUxσNq]7CwFx|RTit*(PN9ql5 =H>A8ԍ't_3=6]=|?"Q׭NDG\v4Xvg]wkg;E ҧ hT6ھ%}Zi[q^΀lɠi3@0[  0wZe=oq=-pќvv QSLBU'ĒJ[{[7wSa %\TMbUiEnxZS^7>}`Pp4R e}p|k]]ڍJ[04&4}ݣͦgӣWaqjuF1pd$~v}kbҞ hJLNFNN]fuf>mͬqԕZQ“ZWu|x)fWOoS./$^}}'[va_|F6|>~4]lcJ^ee(i3 ^ٞ2>__att|z~9#?qt F2%)7dfO+fWia+M U95I 7cb.ՕhKV~sڛǴ}lxZQu(7Ib+iOvz^pjʵiqwu؜&~6j֧K+5/=_ߴM8M)apN.\-m,]X*xjw&T-> Vs'ܵ^SiK S5i8Mrkc-ޚڔ#V$ɸQ~g_k1*6E)a+{_^]O-ٻChGhNeZPx {)^ٶ\l]OgU,<R)Jc-l ƽiUPv9hQŴ1g)PU.Jͯ!ԛ o'~|YپluՍiWDMpkgBqMjmT)Fٶѳ`nmI ~ômvtC~7wtvllaWt;8>rk%=oxAOr*TӂRo3,<ʱ51۷[UV.Ik)4:}l |%Zƣi6ux*Sr+YsN#v /]\v+)ՄԍJ|PZk)j{ѻOjҎ^"IISj>^']>v6n]Z2)Rjm3;Ok{ JWoz:8o-fp:xHJ9y֗1|waX|60wIvj;6譔UeJ)?e'"eyIcgS;yF՜ڊJYGv+T1+a<6"NBe)j]wj{;eʧIFR8~DH}(N|:6gޭH{Uؿ;hpU^HmӁ<U 8ʢz rϫi敎9Kk*^cr')y<_@]'A.]A. 0,e(it#kUTsU&,ߜs`rSVZIKU4j x~S_*dI'y''R_,r:1a rYlo UjNXq J+ӵ˩BqyX'lg,{n*{ ehwԼ"*TTN npq9M @3iV[3G`cÅVnPcEF1^HI~]O%h_4 yRϪC9nv=2RV72];\k>^L>gg{n>*TM Uc?.6lJ~y'RQTIZK+7>3vv<>FtRFQMʑm_Dl,u\}T+<5}­\%}о5~Cg?/\Yr׽י_hEChoqѥEI?c]躻CvЩ/U :]C*sR⥄wy{磟п'|w+\>kj}{utF}Qs:.G/|N?яw@ R]@ɥN (ݞ}gylThy0ZT*[xW*6rƒ9cMfӧ İa.PV-2U,;OBv<ʑG]]lfG#06qssWcOF=_%sG#'鮜Yo93lzqjV_%5}Z:qi򺹃UjNINmmݷthNiJ.M.S&J:M6Zvأ XX%(ΚGOE){pݣ/:#J<ޖ1aʃIFnݒ}/ZJxjBN2]vhf6"½*`*qYzV R[^Ruҳ_Cd-ApJ],>7g*o Pzxms`BxoSiEٻ(F5vt>έ\\AU%7fqb> O<5'𘧆s]Z]=olݙ׍N*cՔ5{>$I 闔38|M:mҥk+zܳ>du:xk>.'ury)үZoB_/5gxZ`zjkjΗ ];I۾Q-Wȍȏ;dWmJ||>}ӽ4G<SOȾx1;`5r-K-JV*G S7J^sև &39c%9rcX=k)PNRi;&#'雱vfW5ŅuiRw u/JZum`ܒ@j˝#Y̅y@@S&GꌦۮgWd%v{gݞoj{ׂٕvУJF+)?[f&?}lyHӿϷ,e\&n\U(ԡ5qS[r8ɥ^eFġc1{Fr Rs]1=~8ndۏ8[5)f|_'9W׭suTTx])]'>':qяoGv8U*NZRtIugLJ=8mmSxv^^'J(xS(K,Z_V;gڰ.{gal0x*pEJ_Hj8u^)o//X&t\z>9#'}?яw@P2xK#+S@ X^,+ Ɣ2<,:v#hȧ#':ܗ9⬏ 猅S,8>$eTg٪8',8޴)Ȳ8+j8# zG4QÊ')Èygi^U 8O91u': y^E CJ|7>Op7)7)Iݷ͑j^E;m.Еz*n BWi?!Եqwvꐫ*UcgjP~ JrOs<,џwKhhJK,Bj^?6Z9m} 'C8з 蝮ӯϻ{yv.pх^Ip,'5(Fj:$R|>tgc6?ha F!դvqwvx]&}賽/^P9 -U.OM)e:''^5eRg ^F8wmݠ`pWςo+'k_[,xoAw3@4G?k|(#;(Vzs3d.wr!4+V9A9$%n,f9K@[;E2$4/`#@7@${<vkئz+zmlDy RMW<~ovv6Wk))qRЌ+%V5M?amogOw*?[l<4]QqWa.z|Kek<=(i$$|_qx18؛Cb'e5V8aJ.RJg;g_:utԕܩ;F2ip%k{w~7W ۥNޭBN/])Im[?3<9re%+n;ܧk7O[gd SwFte[J2Ya8 3Rei%$Gh;5_h+Vf9#'8I$I+m<^-Gدrqb0ZjN1Wj:xW;d} ?='l_g!mRׂNՏJ1僣^GE?]$xGدv^)ITirI{e qS%rI?#>GدmSJU"rIZZi0:I#WYa;d} ?w vzNb>Gدr'l_g+,1܀:oI#WYa;d} ?w vzNb>Gدr'l_gPݏ:/x_w/kb_b ?=#_gzGؿa?H'Yct^/O> @},0~;Eb ?=#_gzGؿa?H'Yct^/O> @},0~;Eb ?=#_gzGؿa?H'Yct^/O> @},0~;Eb ?=#_gzGؿa?H'Yct^/O> @},0~;Eb ?=#_gzGؿa?H'Yct^/O> @},0~;Eb ?=#_gzGؿa?H'Yct^/O> @},0~;Eb ?=#_gzGؿa?H'Yct^/O> @},0~;Eb ?=#_gzGؿa?H'Yct^/O> @},0~;Eb ?=#_gzGؿa?H'Yct^/O> @},0~;Eb ?=#_gzGؿa?H'Yct^/O> @},0~;Eb ?=#_gzGؿa?H'Yct^/O> @},0~;Eb ?=#_gzGؿa?H'Yct^/O> @},0~;Eb ?=#_gzGؿa?H'Yct^/O> @},0~;Eb ?=#_gzGؿa?H'Yct^/O> @},0~;Eb ?=#_gzGؿa?H'Yct^/O> @},0~;Eb ?=#_gn5Q֌$ZmH[?#>);`W)UaP4mxUlSS%%+X1-ӗ-? 79.;Ymo{s3*x%/Tޠ@eo4ݐd`z( W9E=YRmy.HxYcLdsx?E~gGfޣ^c`Zï^J0S_JN+딸WҤ:S*S' ũFQvi}OeJ|/4~C318Z+)7m{n?eO==pz0T2V rg/,{>i_j<6Ρw}-:W|r^]߽&}Qs:>GyT`Ώw( ]mrZ ؀Y^Mu)&uP A<-NuvexB2VUh:<7o'?:ֆp1at' O:oEN(;RT¯([V/& ~_З<UIQP+_C:RZd/vIUs)ɵOϼGN/a#|͜\o[>Ɨ_>Ɨ_8=Q_?޳ɇx4*4;Dž'^},L沲x8a;54dzzm8읯.ެΫG(~+;2=2Ivx+SvVN5ieӋG(x8{eo]|{9~}=/y[7h֔&$u#sa?A(J.Us>^i9aQ܀:= mHƬk(ɮH㡵+M)q[7;UҔ4wvIE^˗/5ғ,9}=/>}=/x?K% ^ҊYIvMyݝQ燃w{<7-n~lqY<zӳvnU# g+=/kQSW5%Zr&y_>Ɨ_8=9Nּ0NɜΒ׶OϼGGϼGN nEuN*׃Q??z.gb匠5%'[/y']ۍIAe+.sK^.Ld`/]gl d0qm5lה=RGM[VدN >v$~ieӋG(%Ju%kQtㇳ4íڵq8өZW)Sp5O)(h+[z3,1o6"'.^{e8dieieӋG(x8{e?u<{9~}=/vjxZ0+yQ8{eΓ]nlV×f;=C?#>)Kj9?#>*]N}안:#\T MV@fh0Vܞd9)u%ZnƉf,C>A 㕎N,$[х9;5ZS8g%u@简f)ݭKpveyl5\F"VZQխI$~ᰙY>?亏qػ)^3#vb~k] }W/ezS=piF+j&#~_g/kNGOy@*\ Y[+TQ \fX:-g=\2]]x^hSbU"]sTG#ޤm78mrHvФlEnE\|Ozyݚ_?։9p[Q-&] uZԅ63K NgJX|WIErk8qxpU(ҩ,=>(4o@;>&.Jjp|uU{ji+SF5$kJ9dp3kb *Rk-m:m E%JIWT%<+GM59!J?? bvZu”^RsvYGj;5MS'I8|;uYիĸ> 87ES/pV/& ~_З<U?7qUO#>?>C_x;/{>/'9_c, :}K?7Ž/pKM+ˇh9x̚nMNS58]t<[ow.~~K$ǽnbV9EuN쩩ᜢNWO̎hl7ҔZ5-K1Ǎ)|Q!b?|x~v/w=ڱ8xbNExIYiQz5 SƗ&t?qd?GԫFXTӷ8{3{jrZKY?G'u+ͧ/ e3;FYFJ7t3C`c֫ <>Iq8yYUIqVHDžWﺳ=k?C`؟d:*ե)$%k5<'r*2dlY!b?|>v'=c:*A(eee|=G?C`س\#b{Ƿ~~؏?qd?G>Oxz??Q!b?|>v'=ہ??qd?G#'{q/kbzw쪒<)Q x2982Wf:<*yBR^0]Z#B&9Vz̤Vm!CpE+epxa!CstTz(_7O=,{9x~ǚ"0*U)V\-*(Te%~R[i|\] Ur>tg'' ͓({Κj0sx^Ey({퟉lj&7ZnpӣBMJq֫ŏ#9sk1{_);Et=cl^4IǏwn1KڇvY+vVG'l:jH\]/W{qfvrIᬢuPvg,e&6Yǒu N<2k(R뀖e+YF)o;3-q.cG<t? |LGocBOAF*HLDlEYIJRWمuSx_<6ۇ'-gG_T`i3wF?_Oc@tVHة&p R(y,V \ w>1n57뿇{<3JQxz+s= ê4noYa*0;tM3ڻO ۘ1RHs秾/lӕM09Υ7Vt줒y7|O)қ߃U_Kᥴ\4 )S_=2oxChS:GI5Bw3?YɭJ4ǸސVuDcv7X_|ol]HxS­t/-cY˫QΆʒS_Kl~ٸv%R8l\jKxU+բ;XZ*<x+:iwHSso[t;-TYJ*Y6<}Uj%uVY  rR QrqM71Ggp]ZXj4=g q#wmtgZ8}Z+ѩV4I$6 JaIu\t҅..FRr RzqPap%R*iB .^V2t/W_ {{j1k}k< Vuimr'N2¸on{_eUJL=jYԥ7hЦQ%$$[δXu >*zQʫs^֓]gnUp+  EY~SژHFY')U;$z$N JaOJ%uK81:xm*T(T 5$ջY:8zT79F*.RwrijIlƱEj:*N\)ul]jBTWR(^1+9I8ySYVeRP$*_+o[,2xLUOkV/YF;;(o^fݯSO . =~ yW Q/kŨ:8*6i7;:rOd•ZUg'(δY.G 7j:37_֨hn;B6źnn+elep:ҍwUl`\txUYZI8wK,`8(`0jGJI}4/+ZIGž}m\4mkpwg[f`|-\% rK.jBҔZzΏSIKGZ: :Zt#(b'(־,UQuB?a8Gg^ )xL%mYW ,<#*J5cYG},xt)ҫ^}O;-VJ8MÅ[&O뷓:=Z:jRVѵWdj|<|<7~->N QXUX)[p=kX\^ѩx~ QRN0%/?5&x>2L\#e&8Mi5^  Vbm& C )ыwjTS~c>b\p xJ4*xWU&J Eӛ\4ڶg{Kgh:7QZn0]Y0ta8SP%n(ƔRezp)WtŨJ[Rr'1^7acV)b])=]_Lc9:PnxdUYVa4NZpX J>D1418m,>'V3 NRVbV&Vל*K qFf.c )F#%Rj>qga*Fg(DŨy2lfVcVYל Y ,\>w,iUNR0JNZW9hڿ_3Vt8fxn;-3s8)FJ5tLaГVn8ſq y^cU6!ӆNв|K;뙭Rb4jUJ5'xEEtW2aXB*.5tiʪR)Mq$Wgh=bxڻO ъ9C֨+[Kɵ-YΎ*y֝Zx}MFUe$ |ca*4!.(EEZ2'ЩƧBڔZ7բquu|_xʰ8ChYJя>%̻kW*JrΜe'qݝ;5%gRaU Nҫ^}LLEUVZ֜R^vt;R^9=] _QG_wY5<,0jK Ю(?dĞY_{a]u ג6~XTA%ʜ\vN:J>-kς k[SF+`ZK)IނJ<1XE,j4:vy~s,MjrkՄ%4&wxC|f)׊u)$wy58lT# zUH)(}ui`Ex:54^xG]ңhm_*nsڿ v߼5C:PtmW [C0aҍ(PqjQQMf]L~b+bש/ݩYdws30ITP$$hPC;OOPN?#⓷ddpՎ@¢UnBف5d4'Bfs«#7+"^^767(89;*FW=gJU9)ekheQyjg$×[)c ` 0{rSm$-ġ wJ5+TXXM]A'g;um4%~ga~ 9&cbɶƴRԤM=7h 8J.xzv<+ ^ nJӌڕ9w6y~J.iŦz}.IɎ_x[/jw&t|z}gG_zq~<RR%lS, VKTD]5*0(2F{>`) 9J1T~$5=\+9%UlǷX;[ݏ0c_&>G9νXEk)J)|Ν?mN8()E⠚j'`vynnJISەSrԎ9RTe(jM.Ŷwx3~=,aK_k{=Jp\2#. JjԃVjNsSQM_ٿ?Wc ov?zX;[ݏ;hN*Qiū?uu0c/÷ɏ?uu0c/÷ɏ?uu0c/÷ɏ?uu0c/÷ɏ?uu0cIPJ[q'޶\(V/&d&Y s8aRugŦM[1ۨGC5Nz.yc6n]YҀvhJJrn+x=pοKrtWy@Tjݤca9KUR&O\H,U޺9@m zÎc{^2&dl5=5Լ\-q3.e@{W M?ї&?hUcZ p|Qz3EKpI*m]+7 85J|M+f<˾룘V ڇvYGS^?+#%"=E! 63yuKuDg.VSˣIֻ [- +2v.eL6W$qZf/ЛwֶM+@ &=qghaveL|Ti*b+JIIՔ}jJ'v|Ϻ Хnks3\]zҫZJtP`)>~{zm٥`"J *[%ܗw0O91KΏۥkgcn`T&®t#UxQNqQ~7 o8R޽ VPXKEGL6llF;%hEBs(}Zb*b|UjU$ɻ}sX;tN0?+⿽޼H\>`@`6@*W 6 Y("CEP٧Ch{f|WF_S`['5#.+Iw:1tVҿ8U0*֯*%O)SPqYP׫ERqɦYlwJKשJRUWJ pW~Rťm]RZuUiQN|in J¼U''MBqrvY>g맳UéSzrrwIm<+cGF2ۼoRZA 4&ڄTS} ~_ЗUKhmԕ(Nj_Kju8W\z?nT+CW,ovy+G ٺd[jnn\xe@Ínw^5=i/i~!Mg>%+_n>?_ <&뎺:S/?byg&Ɲz=qPyxԒ]byۣ^nn8yBNRm+:ݙ|vG6rOPz\sT'dgGcGR|=%Wدu%7[3J?+*VGIRd:5pX5r-B fC4.0VWzWǙXqL~/Ĭqו![1c5&e+M[uQC8ZMF=%<{\z X2y. KerB@` ^ؽWM3tk}Ҿދm\XJήwɦy{C]J<*VU8a;MxIZ8_nF|Cc{clm[B?Ѕ ^y;8aV5xZRs,vB5d/'ĵVG'Xy_qSWΕuZ8FIg+}-XxuMUPNuѫZ_62GM)J8SM]Q=4RJ2mIUy#B\Tܣ*NQZ{rqp[9Jue%ğ@<[K ^q*]}kI^ֿqcFu=]/:p9u~1 8V*RVƳQw7yWS2K3CiB<|6>+Xׂ#*xRRўէRRm$ktbatܚ^.? 9Og½7QTS,jIJKk |10o ZN?vYRX8RNi_r׻]^(9<O1*7?q'ɗ׹'<O1y{/{<=JtG(ֺS>ׇq^K=.`i/im rA(&|Wr=VL\`?ǀy<{;n{L?*7?qBMI%$q2/4˔wl?@: r<=T<O3 GsOSx cɗw=gmovx88aj?)3G[,s[W6)δ\a).d͞O-uVNPq\6[*K3^?+#&],FuJ diI0і ]Yr5NzU,;Nc,TH¸4x2vfY)b-&&vɞ#w9)Լ3݌kp͝~&bVG\ex@w0g+U 6{lglJRZӺ()?:^?86Q!Y+]MZI]i}O-,UьqU[9)+7]\nZ|l0e^ 8x=ge:%NьZvv;W;J=<FakIyGM;Gfӫq.*QREAW\#uTT=R(ƊkU[oe=w MuNC xU<{dU <\cgrz;rj}ߝхXmMv8ʔJ-^2vq;kl#j0]kNQprφ<]%W9\l՝?;F:>Gy_T`i3~3{?}?ъ~U N/}rNl)p]-3OF!V浌f@rcSNYBgsKJIUi&}6 xz~ H;_p |+OiRqE%f4´x5#2Mo Z7B_ @@m,KV3H^If3ǎكR҃RI|]T{G)I%nMX\.1T5*kQAK.X<mURInlݕv}.j[g <+J )ҒEq?p48Xb<2*ዌe)J]RyXhV"jA˂J./y6Uk/N!'RN)Y.{y6X.#M,E(m4ݣ)Z:ڡ_ziJ\3ӳiI;d=6NNϊ\.XRfc);Y])wnRJ*S Njv]jm h\⵳⧵iӡIBiSNlrycwiQ"4'JJI4ݸZrbwN ԛNuZ2⃳oۊin`v¸V(PUg E.vjgp\F*T2m;peTugNTԣ(8׽y6+C <$ۅLD)Μtyq%Tl [gnJ\mj}*hb)F$ǚ`6ƭpMy;B*iԧ:&I4n.7+Uxe EYy>~YI֊iJM웲_1^.%WCe¤􋕬ub12JrHP ֫7P߯ QsU}kst ;Aԓxz> dž-nYեƪ5(J.2z&m> J"2U,~w&KkWC_ ڧ8SWy+;٘pmDžЖn`uJf+BQR-xXxu{ZMkQ^.E6ޭm-B WUJu)JVyY<;S t<U?*vO(7y@!*JRUn/+l*W>UC;Oևn>~K?-d5p!th4jV4n8JẹMA]\0uiX_SR\0qwYvscry{EBVujY׃ =@^6Z# ڞfؗd۩!|-j8^aMQ%&lK7g{CqzM8<=ҋ|WjmO׬7<."oSr~|iw/N9>Y_'YS`]ԪQOY [<VᛵX G#/Oϓ,Kn0%]tS~z@OhjTj-}txSlkf6VϮD\d#-d߲k?0᝱~LtF:>Gy_T`i3~K{?zF(8:\NKkT 4Ub- S(%iwPZ'ٯChn=#3ژa#aVdݭg{릇QRmVѦەd ;·գNxj5"88wa>ţ8'RQ4JkI^m{= qPUp"ܛZN=iqxY`eFcY_;N׎; K<g RRQy][;0/VIme:ZWzьi7mygv\q1X|BO5{]h9ӣ)R%xÉG:,N( *BiR&$囍һpX^ Te:4 rܞiG*`q{J*J+Ņ)I[Iy'NZŪ|D|4hΕ Oeu$~f iN],,wk+׷3na6eZ4a9J9],z\%}ߔ)Ҕ*:44(Ooq:j¼CxHЩN3$m&k&w}fpL$pj+EC'~,O\'q87::|R\3qIfހiIFR :<&­\lS)ƟVn)ɍD"$Β n.,wwOXu=U:zR-$ӳNؕጆ>8`Sa 誑SRm;f]:c 'ĝݽǥjSե_ _FuXՆ) 9q.(q,{ 7}v:\.Gjލ l#Z5*Pwn-ވ17~jgGN44$qNw|4UK>ljCqp{tq𯴞*(QmFQ^zvLڋ XWQt刬8G)9q=\B1RR%MUbjM5í&?jʔi::уgJͦяC08~ΧbTa'h*<*7x6,f]|+С? Fri%ݖzZʕjS҄_.]狡Q^U"vy:6rjzU\Z0XZ8J JR_ ϡ,lזp**;5a )֥P9KV-kv٘dxU=r|&ba*hTV9FRbnki`icN ŧ&n; FLE(Fᔥ4ed0)BLMt/#o3=4W[ج6*QTj*#>_lQlDd$M]5@PC;Oևʝ'iՑZ!k%}i#V!eb- %r!nz#ˎ:^BRg{WgP58+uLc.>w' x;M GRp.+Zm;bdxJZdsswf@17a%s1eckpe+JP9K#sU5fCSy9OD#RTX@`eWq#O评]FnZ,;7 e;F1N a┰XL]yk[+&c'CĿ㊜8^t]Y۬E7^TTׅQRqt/heUAQf\9~'Juh Ek%e E9֝(:I=/tNJkl+M^*T#8yrZ(ӘZ kz+hN)Z.G%뗾y3tѫv|vUKቃx_%46+Ж*qSt䤭IEn=m캸? F5*|QjsmۼKfl)x V!yEuvz ٧GZXlD pQdݥCKG R"?QSwdytS:=].j;S :pnvmFIݩ>OxJʮ"X/R'5np'g@i6 5hJ #(䤥,uׅ*٥nDZ}:tz]&qJ q8Nvi;zܕS  W|$xwqTW oMg,$O FU`USG('iՑZS?#>+Z#!p֣KuI"܀*M,(9+n7QH5sirfp[QivPQnfz SZTof:ɗ/1gidɌրy(q GV|N\6m9,|U(]4g]]\WO4z\ֺ-u直kqhWù;%VG)|_g0ު;EKepƚvu_UO2GCfnȡMY,4'+-e%'ɟ=| &yuw\5 0iУhӧw$r&>n&}v?V;vފQ,<Figw+]]xj(U:B2cVvRJIJUtTܭ_U_jX*cdPT1T|=5hԊQ\\͟oܔM]<>o. ;x &"EIޱ%]ϝ86Y-GI֝}Q΋O޽ J;+P` M; S@R \U]OoOR=O'9[wȠab:u`bƞ~[Ӄiba)RJ2Riǎ)8[/p > ѥ9jsa1$eJgsʩJ|N2OU4Ե*F\%l V/& ~_З<%YSٸr(e *}csY~Ür< e {g/ju#Z pjQ]5fRں\:UYvv77kN~{aV_|?tsɗy`>{aV_塌TһVk*rcԱ[o*JwnW(mSO¯֚8=m|9`sY~¾nڼxjdUu/{aV_|9a_7ye^X1F1.(6\gJ `=T.|p.ڃ§snt|9a sϗy`>{aV_} D!Rz'g&Y)ǐ: 'iՑZS?#>+Z#%3}J RCVFrݛӍ+N#raf-Qx-W,ܾWiCcƤU6/VqC8R,_ս5%_7g}$Psd4%ff0OᚌEL7qcE^+ܭcsswg\riǃRn|̀y&>-ܹ&,`@ {CmOmn~ϔfJoeYϭ=swA֡jzUIM.kvg?k[ɽ7sv>̧tzjj8߆U8~IY-Wmı;f{RxzXY88Ū 4tޚ>+`mQ Ubw6yX;:Wj᝕iNOȣv~J̼L{{V{lmil}LfJREsb?G-ژcN2VV.)7o|.'X}y)e:{.ud~. ny>w?$gh7}ioZ|&tZ~{?{D J+gUH]dT@*ԀѰ7L:̫BkiwPZ'٧Ch{EgGSeG B>&t8}BG,_6l)mqvi:JO+j?-{Gj*VpˣjK5LV*UYY/[>6mINyjc)IF*NM,ݴ_*PW&y*9)JUvyۂ<||+4ܦ䛲~SƧ)jЦPZMW\(x/i;߃pjzTT)<7RᾶU"/N85 pWjϋ>,:μ(JQ|Fdլ>gW JJtrm{Ũ_ = @7B_ LV/ yU^`{ju8YYֻM~x*Uj$Y#M׷upxo&seIw.cRß[0v_} o6~sYPzi8y.xo;DuY_>~_߸_թx/F7{j׮n?MRbSmˉpk]ߟSQOK+ fRt۹ew /qpXD❲V8|W7/#w˯qnYnpCe[56y~4jԣ4N,< =+k}g:HFu?mǎۊo+p|]ۮM~י RnW؝n>_ ;#xkrx9UURWzý}K?7Ž>3+ptpoF~̈́b!U$nkOGs͍&Wz?A4=C?#>+Z*vVGkCdd)9r+cvb1m΄!iM&uG= BY6t2.|5:XrIwYƣkP:92KYLg+E?zD4[Gg?\tJM-7h=0|wqU8^\2ev,slnt{~:>w?i3~?}/:ec e @.}jB`46PXw4DPiwPZ'ٷCh{EgGƼ(8ugRqZ}c2RPӌd.k7xK? .mi^T|^ۋ[rxړTPte*J}r[<_<#q鸕nGgRٸKIV>+Myse%)_7BN)4X9i9ITMd~VpVC[5+Ej)(힣۸U^.iN& vwm_jb5Q)TqTxUNٽn;@xV:g:te(p8JFNCo Z7B_ @@T;cgZ;k<' c7ێɖ뮒n-'fLRJ+&ۿgs󶧲`SCΤfRo5l8vP_;j{({ yrl8xiamC>792rYrGKgZvIE4wvP_>W,&ǖ2j]c .d=MNѵMO;mOeu󶧲a}F-w>snϩ mM']2玻( _G6%N{2m||/{ }3YpIm󶧲`SCf,< sDCwnhT82Y_dRh H+c桪*23 u-cώq<|=NPĚÊ||L򗣭ዱVVbdt535tx{rg#+̍PH 0{ ЇFڻY:J*v)OGٸ]ZJ6Z&ЕGW6J٧tGO3?|&V{gOq7=clmcBxluEFM''Y;;u[{~q=8*R[\QvIusDf *ٻB^ c:K)$5kgzcO &JqҦyi47ܛ_3|g09kruGox-'zǧ]uQ۶*C 68LlЭrnI;khp>ʪ)F+F1KMNώ6u'r|7<<=$:=뿆:Nwnt?\_24Eo9Ry&lBrr.@`_8D4k=o'=HͿDV(~"xyERbcwJ%>Y;ڃ⧴pnê^ vɦaKhʧU8m4|Cx'%,)q4I&o9!GPRc'{lmL~Ν8Eҭ^[+3Mp 8b*as*J՗ ܃[7 Fyږ"8'8[u9[VFХRyʝ|BwoBӯG,.U.2(N0Vή ЭUSR՜m=tzm۪\9Br׿U5ܥ%|{~7^ Όꪷ ϩ6n/l*(BTc{]y,Azq-ӥ*Tej585'k%dv*1xά)OENZԬ9ziJ?36|[Oϊ[;ޚrvG,]@hzq8찘)i$^=:ή8ҺqU)E9F<P:%qÖ\޹ɗ͎gZg77vK[滯W ][vgg= JQp[jӻ#"8yrL;w˗}tM>ڽvtiXg1gVFr| Izۛ]F̍D&%ݙ2ig⶞&Xf"+;qU7);++%>VNjף\~# 5>#?9;g ݽno_O?Li_I'$;?_}@y P2@2$/5`ٷCh{of|OF}qy]x>1BtO.vBPRSrjNd{ˊQQko7B_ LV/ yWsIaܟyy`ilN0է8ԧ5.k6xXȼLƿT}jq \<];O`\\kb\8* (Zo7WaBxZQJYjht4%G&k. /ux)8TeENX&Δ)!ur丯0R^)9J6⺒}7~fvʭF(Лc~5OA;ꯚ]r9%_ |S'YAEGR^SIڸ-aeU:p}-WCG.Ң(GfhlSWOBj `ms56\V5*WqrTAZ+ f y9@vuM*UZԸ9Z%n|\.l]:<6x4)yӞ*JrO'%}<Ǎrhbq(J8ipIFI+ww:z;|u|L*xL;åJv.*Zica*rĤvVgpZ8Gr()FnVN7YdgIHԬb/xgu9,X@.=AUJJMMg#{n]Ǐ퇎kQU-~9)bes-durXՍ ?x8szn`f˖"ƥJ.J>+_>w;qx-zЩAɮ:|i[Kuu=\? Mݺp6L%vXʾ.V]\KdSux=!?Fkmq ÇKb^":R|:qm,m*G S9JiJ+>SC;Oև~>z] ݉vJHH`|:\J}+CiKH0һq\eO>;huz/ұVƝ+qecطr厵n{nw6@knK 3Ph de>@sͩޖ %~c1i'R'ge~M$H'&*T#JQIOYgԓ}ɗa7|77N^;zm\nT+ FQNGuݟ5NyһF`{pݺ%⧴#89%I.m4?|!wRڻ?f/g)FJTkRMI{ޝ-}g'9`UpO$=~tw|X[+O:e }t}lا;NRWNK%6xGwr8|?//$ֵE޼i3w?i3'Y 5`  2@Z&ٷCh{of|OF}q9ٕɥh]::Fm࠰(„:hVZu^8ԥJ3VOT{(=4҅(I(K(vFq*+m(ҧ$j9YI$wE1Xl\?e8:j.JE-SZxx ]sV_؊U%/X⹝ a!b[}&UKhPC;Oևʝ'iՑZ dKep<:77?<}Ӷ;{G Oq! ?M.WwOk,<9֧l<}m]&'{t;ξct?~Py@2Xd/04(D:ԫ@e{of|Oz??։ǻPtpc1Ҍ.)(0WI7ϕ7?gLT0JҥѨV<-οu6VE^q|Q؃JgN+G(]w3:q4XV'F)1T;ߘ<f"y(-by*BHVkՕWFRJsrsW^*ԧWB5*ێIf<ԖiGoփI7d]|amvݕެ0pi)TwAY,E\D JѴkKG5Iu㩏.9RjIWv`르jb|,c*ҕl|\.z!R7I& V0<x_%/kb;PN?#eW?#>*;FJCm%eJㄩXՈh GH F wr;0@M F~gev*+;e#KRӯR/)B2N12rVep疣/fN{_ʩJ?ԋJ{.z{u͟$QoǦx_xxyx㺮zΓS#I?!⿿޾\gPl@ 0P4Y] $*W YmUPmwPZ'ٷChj{EWG' KKւ/{]AݚIPNryw'KKV/k|ljˀٴ0KN)IykXK_/_viaҔhUSUiΏ$ͥ^8)JњZ_¶ͥ^8)JђZ_ǔaix9ÓVvqkF#;6*RU'Nk(mdy`̅7IʭZgJɭG.3 uQ+]g8>*ReMin1󺟁q㿮r<9s)*cINT\-{~]M7 Fk[@=L *ڭn%},=A4Tv9@x_%/kb;PN?#|ڇvY}sHGa6m)SY#ӆ>gqzJN<&v[;#Zfyy]J#v$R?(#2@k{.Vl{oؘ]>upJ-Ό'9ye)J^V~.0][gvhcc8Нq(>rֳ?+ōɕ|Y]og~}:N>Wzq~Py@` 0P:jhNF({6;ԏmHϵn="+:`~`pc0pR&IJ24tXUڣ,K\x׻?#R_J_Nj*RjH i֔x_un~1*+xM%$[GkեR4!)9(_.O6a'R8wBqzˇTf(ᔜRW4Z[>4eq-UܛՁGiΣ)RNڒ]1-8:)SSY6n;?(xO߇[yx'Q„98pg%{.'ԯ*x|xMo81 tcg|F'gN:u8֊|uFႝ,DS&o{+d8} (TZ{FS*t[#8\L+cZ2%ӊr)...󵯘UKቃx_%4vVGiXS?#>,Y#' w|K.+dz\62jgK,/'y 'r1? #v$G~cjw^lr! P>jG v%ۖwuqk*x%dRnHYd՜^izҒ,qSr]of?4߲ٴ ݻý4k=No⷇&wH+$~9jO~rܷ^zMt|bo?Wh V{Džq]*e+<Ǖ߮_>gay2|Vu;I?⿿޾g@T$hWQ (+'rv??։GmwPZ$r~(+׆՗ #v+`pO rJO<=,bQiI_'tŬu%dpHK)Ur7B_ LV/ y=C?#>+>TC;ON} ϸ P2hs0dRZJc"utgJvogZy"gsf,uB7$x;ͳ؛ ShmCiS(e)3|y[=7Oe_8wdݿG7Tpt~8)aJ:p~ǎqbw[ܼnKc1vJ" ?4Oc Ռq< vrMuFoTWҦ&9Tc._󬾒N8O|/?'ʖNޯn; ^Ŷ0jk`kKyP+$ϥgC-]7b qGYFVׅH[󫧓g6ٕT<+ ^xz3d?|k,yk~{Q||+ewǗm_g[L:s:N?8F(<P ]lS)PԀ%W  BͿD#{6;3[wȧ_8"dvN\Um+<[T[t< v_o[C;~xomܭcXS)9P^ ֌{068tRIXG8p$Վ=`QjOczΨ 49KS_]a-߯~OɷGzmapm['rn젥Z!$Ch7B_ LV/ y=C?#>)>VC;Oߏ2ZC@l-nhJG# 5Iff:MLF yp39j'r%JL󡄚ViO $2y~dۥJٞ+Vgi'Ǐ)4dC@З c,ͼ@@fe7ig=\&iUƚJJ\xTxN2R\UcQ3Rb[-~U<0yzʳ|j{1pbMeU%քrn+ҫ/?Ûy]ݟOW|/..Ly~7;{pa|T#]VJ1JThJYi'^8mS*Us[ҡ4&Jz%’{7 c7o+F{f`0aPx5Mp6nG_pz/a2ퟋb0t炯F1N]CўJ.:KY]+{lķ* fK Q^ (#{V JINnR'vճO|nrrMoÝwv]ߧo_?L:o:NW8F(<΀@ ( ʼMՆ ƌb0(??։id{gf|OF}qy]8e5: vo?7OF5iKgfvxvjBj&w3KJ?ڟށld/+jSȡZsbxAG[KAc1xpzՕ4:ʴiՎY;<<>"wNIhx6\& / Jt$kˣ^X;:SS)Meh΍97v/kb` |1=5DVGIX_ŻYԃ\}Ӊ& ;YqmaRJ|Fre J-j &;j2:[9e?3bjKfqc#eevx:K&!gm `ZV=a.;w]B=κURx8>$zyJ:l#nWv Kh&3&0 hP=Y9)Ÿ.fRhGeҾ7nOMTQڴJO FO'#Fh;_ **[/c&6Qy$ϯνHҥ T'hm$k^J5"~w?scqkx9r򼍵m*Gjc+ ugSKCO,ÿ0<0ǏRvYrIY:NwVi3? ⿿޾k( /)@ e n;-I@( {6;Ԓw=o'#>ԝ"+ڴW;Sr|TÂrm#x8aW(1qk"<8R |10o ZУDZ'VGƘjϓ<[+ $|aj>6#cɞ$G^d:/NHG5,،fI+x88kiz+6\G[d:,u>{f"q߅s騯 Ql83ΧOVj%}QuIt-ba,;#Dj;E *leIZw=n3'ty12[r(6u8i<ξxpM9N\e<~cwO 63kTЖH/} m e Ҷ ji% HlՊ܁0}"zcvZ7sveEf2J"WT)6NRinH~ qvaRͥ12K9֯VmvrOR~|9]{G{&vS)7Sw;b*( RUS}g׎ѶFm. :M(Ij>ڟUwa~HSNO.Kwq͎ss]M>6˺ /_ɹ*QRy𯮋fV_\t?Nzx=ZjpZMth=ݷۧU2j/Hyg^[/6+c'}7~~o_K'SGF8<- nv_*ߣ?+>dw_{wym^ ՝ 4BIB1rVG?;}6qqL37{o1ZNC, <EiΫme[i{sMvu y#g9i7̦?>]=Kb~*?Qc6Qu᪪0\)hYy^G!yu,\9OsU.B؟珲C?;8?lڸ:xlqZWg )GϺއ[r Y(J|;v(˛Kqx/~͟Q{kcpYL|?Q8{o~|zߣ_+?Ij?6}Gmѯ|P<{Xlwkcr_mџy<9?Ǩ۟?+?IycormџQ?F~V~ߨ|oH^UU|c>x-w>h,>z_~T=Kl?*>)_e~aP/0)_e~aP/0)_e~aP/0)_e~aP/0)_e~aP/0)_e~aP/0)_e~aP/0)_e~aP/0)_e~aP/0)_e~aP/0)_e~aQ3 S)W\m_tz@G=Ll)_G?xG=Ll)_G?xG=Ll)_G?xG=Ll)_G?xG=Ll)_G?xG=Ll)_G?xG=Ll)_G?xG=Ll)_G?xG=Ll)_G?xG=Ll)_G?xG=Ll)_G?xG=Ll)_G?xG=Ll)_G?xG=Ll)_G?xG=Ll)_G?xG=Ll)_G?xG=Ll)_G?xG=Ll)_G?xG=Ll)_G?xG=Ll)_G?xG=Ll)_G?xG=Ll)_G?xG=Ll)_G?xG=Ll)_G?xG=Ll)_G?xG=Ll)_G?xG=Ll)_G?xG=Ll)_G?xG=Ll)_G?xG=Ll)_G?xG=Ll)_G?xG=Ll)_G?xG=Ll)_G?xG=Ll)_G?xG=Ll)_G?xG=Ll)_G?xG=Ll)_G?xG=Ll)_G?xG=Ll)_G?xG=Ll)_G?xG=Ll)_G?xG=Ll)_G?xG=Ll)_G?xG=Ll)_G?xG=Ll)_G?xG=Ll)_G?xG=Ll)_G?xG=Ll)_G?xG=Ll)_G?xG=Ll)_G?xG=Ll)_G?xG=Ll)_G?xG=Ll)_G?xG=Ll)_G?xG=Ll)_G?xG=Ll)_G?xG=Ll)_G?xG=Ll)_G?xG=Ll)_G?xG=Ll)_G?xG=Ll)_G?xB̳{k N;T[%kx^cï7'Tɸw{6GmџpYL ,~lߣ_+58{n$ϗ=FVn1Ӂ~V~=/VypN ˵oߕ9$Ԯ9pq?;|UK<Q7VFV~+[c^oog$~d itY2?Zߗ~n[Va|%/>KIއvunzVFV~g&S՗ _ZvoYcw+ߣ?+?IA;}[1cwke_1592FV=GeYB o{g_+$c5 ɕo?6_qџQ}F~V~<7O͗wgdF~V~<7O͏QgcnYNF~V=Fmџn͏Qgd1{kg@_m_ge_13 7{o?3 7{oz?+?Io?+o?+?J_m_gcm_gg@_m_gcm_gg@_m_gcm_gg@0~kz(<~>(ЧJue6Ԕ ikMwdY]~szߣ?+w?+?H01,8ٹe)goاldhOF>o|7\ynϦ> gB'hxjS(TS5Tf6ėIE? ϱE?ͼX>M[ReSzo 줔Uӊk7q pPSgc_ pɜս|G/gS[lLO |-n/>ձ,5LF{^xҫ誒 [iq(It|-?&':ҽݾ=&lvf1)C˛9=㼜Xtۃ菎]{g`~qah6 $N23n-9)(n]W,ke[bͣY8K%%xSYoGolNT1 BfզMJ)%Kdrw7vj[3RRZ[2pVIF1c4(1J1I$V>-_iХSz7ِ)v 7|c-w*jy,Qry515-v7KЯ0PNrmtk mT(c%Jt&хj~/Jk).(/3Ig?K?[g}{>#jwgm\mT,tw;)W qx{_&rN_z#kb)m\6.pЄjJ05~7kJM>c6z[oKk(Axf rNYEżVlb<=BSBIJ+Dۺ8ꯉkTR|w?оӖn]GeKe8apJnEx*jz2i82FvV:0WC!QUjo7yݎlN63 qUYqldya.mL69J.5'J׉E%Zh^^"y$ۣ͇\Z FvvUژXQJKyYJ❥x>CK{'8c0basq"I'iT=-a0~uRTiΌ<a'<;^'p0_ 7߇yޱޟe:8pغb6 B(tݯo])4!lM ]-᚜)ʥ;EguYYhB΍ 2SN2 'u(nz[b㊯&6SJjZO1BNO/NYw=^ʥB:ڸ,D%:~ Y^ҥ^7<_P{_:fSTOFY˳v;ej(89IJZKVi;eFJ4hY~^cK$.K3wX_njzJrR.$(\^?%5q2ጫMͥ]pY;ˊwH,NކGгm16N8Ÿoľ_V3ڋe_t?rro}o7GMCh]7_o7le]-n+_+;?I=Xj?_V/ڏK.xNVLߤ^W7GKCuBOGQz~$?7^+|I͊z>$?7.&T~H}Xj?_Ո%!*WT>7?wGKCK_?I~H~nY?iysa/D_Ճ$!fϗ{Ղ_OՁ|VX|?Q97D$*oOj4M7S?IB7'd*}χ~?7?wwk {SM\]zx{_?w?w#){Y/;)goQGRQGS"J޸)ܞ?Uڟ͞G?[w%zZ 3V0zZV>|o/M|'Yq4˞Yk,~i]흷L1;`Gxc,#C y85{gۻǼx-Lj1xͰ .TԡB\oҵ+vvfGzpœQy?'hvy)o6m٫i:ra{>8Jq$wNػߧD߯0=m][ѥ)bm S-V<4)/Q]Nj{dmL~a^ {[$onQQܽv٧mFX\ǁ8TdiX Bxhal-}'Όg)Aq.$VwYNܳ߫ٝmݟ:Uʌ)YŒQEGk.oɟjv^ثhbq41XyQ;J[-O'ٶ#cwcl-ͩERtk8ei]La'ugt5"ԤiY7;O}Z6<^J׷ [[8O3u>P_xzO_{ '/IuK%Dz=o?~[_xzO_{ '/IuK%Dz=o?~[_xzO_{ '/IuK%Dz=o?~[_xzO_{ '/IuK%Dz=o?~[_xzO_{ '/IuK%Dz=o?~[_xzO_{ '/IuK%Dz=o?~[_xzO_{ '/IuK%Dz=o?~[_xzO_{ gq\uw*7Vkv|3ͪqPis}^yh{@'/IuK%Dz=o?~[_xzO_{ '/IuK%Dz=o?~[_xzO_{ '/IuK%Dz=o?~[_xzO_{ '/IuK%Dz=o?~[_xzO_{ '/IuK%Dz=o?~[_xzO_{ '/IuK%Dz=o?~[_xzO_{ '/IuK%Dz=o?~[_xzO_{ '/IuK%Dz=o?~^>ʰOtvox׉HTKۇ>-Ufk6j7?1'Do}9/.w$џUڛ5ڗ>}n\~n~яUڕOՀ$!,vM>*{FX/jOOj_Ow2x_^|ߣ{R~|ϫ IKCwYfLߣ/'/ {R~q ek =q[aO_Շ%!qWCQG/Dg=eՉ%!}XHI~H~o>F{-WGKBz^$?7= 'O5~?o#%!=Xj/_8g?V/ڏՋ%!y eog]&<>|/n?MB?K}pOiT_z :U6Zq.v>ͧٻ/WjlW+՛\Rhո+%ĭ&qx>kJj3SK&|[bn]nmV|;m{÷7ilMץhCeFjTR%RqQqnM>uOS*^X4IV3DžI%wG.vw6|}K*EWNUUQJ+(9;Sdݑ=#}hnlF֡)[7]q8%w},km&7{/kcB+m,dg^&h}_ݽv߃?ηxߥ݋>!~//ٴ|6"䕣'3l3fm}ݛ݅,DNTS\Tㆌnrrm6}|}ض/Ku!vfo촡T)RRM$Ɏ][ݵ6T٘;Z43'RJqHN'N羁'v [=Y\V8,vR0p Ӝ`$(Fw{^2qc,]I' URiG&Օ>Ew|k=3hկ .ڸF&II8url6bXLcgCblU 11mHxj1xH9jfƋͫ}/M[+j)Vٔ\ၩN %$jǙ맽-cKWg? WZ0RrRVc4{6]Y}t{gOSbBөNbRdԓ_Ҵv] nc1T,[ʯT*J1j\blֶv>Kv*[g- _KG猥N1J/6KT|q]m-C:6=M<`6deW ћUJ0rvW6| m5$v|H(b7Kll[uxu !BaV3tԔ=;߲Sؘ;;mJT1UcN%N}jo8ɵF>S݀f:uwh=3d-l{6[?oFJ6*BqڗjI,ۿ>ᶤ(0X{LcN.N=-1n8y#́OI-ٟ5mY+~២NnefrK3<і4GKy#+j$FTGAvd6frZ3OS.ș[f\'vn->bw* ٘r:\de|_[X٤-H%ӑ #{ ˼ob- !&M؍'̹{w\Zȹ[-I.A%z7"K)mT20sЛD^Q޴BߡFH6sD3+j̒dy󊌀 {c ?G^Z)4E&T!"ӸgO-c4+LrT"{ v@T.ǡ\U},^wD1/dUmY9SKweZf˕$WFi[F\M"mib$n&42*VveDVnSJ i%'ȝqQnd/-\#VdP .AA Y4-&.}w6}5%+k>Vh@ kE^R'r]\+ЊؙBj]&BR-ޤn#,1.Hw<_E@rhVlj"̩\cBlgpXQ5o???3;;Gtss/}?DX45k<ˣ"vW`B+]FCqZn ]$rw-qKWk{ki+-:]Z/lMcc)\%nFjVԹ\Z)j s^ݏA-W}&X(?{4o;pr?STP}_Uٿq?c_Uٿq?adT~xer3O7f<<J]YHQ+EvyM݈2#n T^akaueql"CDבZ|&vЛ|Ų!ÕɴK11vBO+!4VGԼ޶"8JLߜ!UEDJR5s5̞rjY[~H9e Y^{"٦d!=-G-Ja9[\ʗ&C5eʗQΕy?t4rw/agňLB tYZXW*$S cI呃Ib縥J*̦mֹ%B푘S+KF *[Xڻ)i;E+j:ط"ԫ2S[ҳFFZ#dET6idj(l:SL'{?TֹkOvh3vq?n8y#͂?I ckWf|$d2rG/!r:jYݳ7U"I4f= >jd>^چBaG2{( B5`mZw}q5v7K%+XeD/,ؿ&2&BO!B4<;gb- L+p&=V5lM]Eg@" P { \4q{d;Ս,2Y"u+OpY +{v3n̍si_ByHv*؏[=r=!UHi)/l*;3) =Kt~`Ο/r&,ŁSW6A(ߪ\FYf\\fSf+KKٙ䊛hXvCV]LEiu7ZMU4ygFZCIO/ˤ*}[ٱ7;&•(6*zrZ䓓Qhtoyz_~L.ݛ}Wٷ u94ʨ.He3]6an7۳o;|s=PVЫ~*{?{˷fl-wvm_xo~ ,:|2?=۳o;|q]6an7?7gOv텺n;[ o\,4So~dٷ u8.ݛ}W㟃+ ,e~2{?y˷fl-wvm_xo~ 4WDiac2??o.ݛ}Wٷ u9;⑶/<~៍vm_xo?˷fl-wB#^)l>Wlٷ u8.ݛ}W㟄>+d~;o]6an7۳o;|s`"/3|7~>{?v˷fl-w畻viCzh֩&ӤU-QM΋JvQyw>G,p/ܟg3CUO>~ʾٛ H ?(!*fnw'D?e_l}\<$ug+CUO>~ʾٛ }5P'g)CUO>~ʾٛ C^%HO{ec~ʾٛ W3sa>9 9~~c!*fnw'D?e_l}ܰPzl_ЏW3sa>8!*fnw'?A6_g8?f~>|qCUO>!%b'?2f~>|qCUO>% ɲ?2}7;㏢f~>|s(t#~M?2}7;㏢f~>|sXD(4gs}}7;㏢f~>|s<#Km>[יc~ʾٛ W3sa>9< :a|>C홹ߏ}}7;sAr#g~}ЗW3sa>8!*fnw'?yljA=>S0 }7;㏢f~>|s 7Y`ޙ2?of~>|qCUO=/dVT?( o }}7;㏢f~>|s(Z)rf~>|qCUO<)'q/k홹ߏ}}7;/àH>Cwf~>|qCUO<+ث~U~ʾٛ W3sa>9xzef~>|qCUO<)hOW Ϣf~>|qCUO<~)^"!>7~:~9CUO>~ʾٛ c4?}}7;㏢f~>|sXXk4o9~v?CD?e_l}홹ߏxilgϢf~>|qCUO< ,,R?CD?e_l}홹ߏx=e}}7;㏢f~>|sHkYV^CD?e_l}홹ߏxR<&Ug7CUO>~ʾٛ `HppZ?) ~>c홹ߏ}}7;Grǡ }7;㏢f~>|sX{W~:~9CUO>~ʾٛ }Y~v?CD?e_l}홹ߏxR/XHh//w홹ߏ}}7;"~Uc;CUO>~ʾٛ aU9%k4\FW/_пW3sa>8!*fnw'?Ia%i~7/~~ʾٛ W3sa>9m{!⑶~Scf~>|qCUO|sJ/H,8!+fn'? {-3x:Ri+TR~ˋ\ow;Yz?]>~ʾٛ W3sa>9_y1rm{yU sx,}t|?.xjoo{홹ߏ}}7;Aa>eV_z?D_D?e_l}홹ߏw|VyV_??k"!*fnw'D?e_l},x;vh Vr4߸u༜~uS>~ʾٛ W3sa>9ژom9 %IEyNhn}hʍY3ViwG|φ;XS;,_wW3sa>8!*fnw'?aceV|s1xLt'6Ovk㈯(Υ8]&|Y=c}uӢOqYrwg߹D?e_l}홹ߏ}C~v\. j9=B퇲պ8ielg^Nn_2_| WϏώ홹ߏ}}7;Ϋ+esW^>홹ߏ}}7;ϞŅV jL-+Grvn::uZd䵽^n<s;ɻcD?e_l}홹ߏu7CS V8%{湙.ȒtҎmY$x87p}7;㏢f~>|sOo6=MQ\g׷2x?+r<0!*fnw'D?e_l}$g۳7s>~ʾٛ W3sa>9:+*/xDFD?e_l}홹ߏqО̽y~ʾٛ W3sa>9C{?\~jj>\v`:a+ MHSTqsqQRUk.h',s;nWwK9-+Dy$y[Y|v=-EZ dR"l_7ӾGqWQ9;~_}c@ŀne΢mKlKBߩqǪNz 5|s&EuW-'̩#*&y^S+U?1gVn*ڕb'S6!U̦ͬyRڛM5wqllSZYgbc+^W*ꢹ8׺n6!:"YjO!{.g$','Dj5UuҺ5̗EkWɖt2Rio.EIWqMkEs+i6S{y\"]0ۺ{H5b&WB=V6z3VIߣ*בR\֦ɤiɴj-h5EI[UQZ 9{|7E]t]˼%˚D%~$uqa; G+9y j+AdYk5j.a,.V}',ېBˈXMMT*":m [$ l rV K6[4fѤỵM6+ $##.)47|̵3Mp̺U]JdjkJL˶=|Z2FYwKAy:S6Ih,iZ+ȶ0g~6IhiG9iϐ~`̮\ 8W!{1~K%Sa~f&2۸jK-#my̬" E&6i4,ܦ2sElW=Wr%~bc/XtŠfWCI"z"Segd`U"-lK5#{+\jȍkf"K\ ]M:܅9fʚVFB;Ȇw4'ܪI'2Vbdmޑ+#7FQQ͢Tc}6m1nS Wx*_fSlo=L/uo- ԖVf̗㖝WOqȱ x9Rs?p~#Ye1ksrybArOErɽlA%`܏y侪[EB65'sf=U^f".&%cU~=6.8L *XDqjugl-R<>2\cBbp [RjpQe?W|5ǎ~C# |.v'޾V=شyG^ZlxjKN5v δb*^ڴ}ْ[ŷp+PgVn*~__iKw6& imf=a>K:xo ˎZRqffKk8?˄;#yԢ8k]p;r3*Mݶb]]DvǗ95/Df x,G\Y>A5 ԯb(E/YgO,Z8'i'~?7;DŽN4q}too;{.ߟ# gu6+QʜM8++Fn֞ HUtj7.ӵi{6ubJ\|bI3f.;z+i3u'RnTϟrw>y"dL։dr)&٘GΝ߻ѪXQб%8(lɷWp}=o=MF<8=eyG>C2ʅzU6GL=m,jQrM$׼}@u%fߺa;s𳏽an)+y[OWjb׭9T6'l%FյgmRkOLghߙ5y9Dy%w#NڋI_2W-fRmȒyjY~C4z^g7qs-\|>r#v+ǩQ힦9dé,K4~[ yJ_eFzO"XM/;BJܙ4<;Yt'}ۑZy |B@c=܂t͍VQh@'qǘxqrM'J3)hFBp~NO4T֎!#T=GwP,: ntBZ[ĺzzq-j9C*GQAr_K{|ӽOr}c:tX:Af"\GԀeB&Ev.]dUd\19\5MGO1Kۣ*ߡݣ:2*[\4\_ek}lSW/+iemM5u|ЗM[S*4R+QҲ0KSqRk\Ѩ"OE3IhezEyةZOw1wfnllsɓ1lo\Fl-U9/SDw r+gcRij^R]_RݮFIhhhʲZ;ޢyJ/ԩjDֳyyԊiTV߸knMUeZ̑I,4֌%c&z*uu4#*2$[JݑcK]KH+)Yڥe-WkfYb2ΊK_8k sH-0i@˼; v½kt +U_WșݺmۚL 18C\Ҧ݉!۸jsF6u&zjmAܼ+7"eob]]/9$dKDWjtdM6wk`j"M7v}7{BM)􍏋6{C#8v]ݖlNԨⳋo[>w~'ɟ-r|L/!c7bgQ~KKhֳJn1z~Z+ 6PHp#TSjI>Wujo+%{g_VRLL] I$j~-ؾήjEN(_ܙ|+>ssg]aIJT+Ta,}%WoÛ͜czYZ,6 ''g/ v^bҖ3-R-7/{~hjDŽxxm .΄iK yսK{6lvIukIRoep?x,66ɩ뿭3ˆ7{$QO3L{#GrgojixIJș6.mBM8ay.vejz8aoə|Gu©]6rew*cӧf>wGo.yX꤭uc,}Tvv1si{e<˫\YP.v-ȜeG+eufSiiX!~fM'r,SJIRidMSZK+M%{Nmm]62FVE.f&hvS5Jz6hH/<͝Xn߸ejjsY4}M]Nk"m;h:5KK2+y y.[S*~y:W6_S=d5eMfb.y"lrX+  ^/%ǫ75'a[sdK$[!boK󷐷 욺[%"k5 P|ͽ*g*ϑ34qSR_I})Mܶ}L=J&[>bfSFk^oR5f+>,ܶiXL=4˩dddF+؍>O"j'lk2iL"*3\LͷsC2C.܍?|͙ GhcUa>g~R%ElM|]4#kf_-!.F v:k=2̊A^[ з6fɗE̶TF$Zc|Xsʢ_+ ="-vZfa݉K;o1["rl];;LCVtZL%pË_u9Y/~oWc=mH>5Nv~K*q\{\/F~-T6@Tnz^<>._ɟ{>O ̸u'ILξRsV~FSm+%'F.8G[zFVU8[7qR3Rm397IIrͶbRm܆e˞M#oFWtU9\[5F57|>(57N( (ʫ\WSOmc1;bu0QJ8e>g^𷏇 n6\q{::3N;+eBIhkn;Suu iI[СwzqZ;BNtⓂ>|͏EaviS եZN3w=|7qe%x_|]w,yW,vN)Z͛*rglܺFNdion:#v7sU5{uwD]bZ>5pEz|Fq?%̚vahj.#ש@SuȖjFȯ3/-[؜EvC-TeWnFms5ί26Ե95$ٷ.SJDZ콕6fv&vjk]٭JR^̻pԩVυfuA$ݑ9L_y~?f9MJLmn1ԼV|{4seRx9pI7Nb=Qld|~<̛3y3H_?:!Wx2onc-+ fMlKerK#cP3 EgpxjOBw2o馥vft3TTNBhq˶2|'5x@.y"fY`t34fQy87?3w;˖#gL_wOE%r2-s. 4.tBer.R͢_YΓ'c.B(/d.Z*weKFVՕj\-50l؅Yv3-ɕٕS5fVW*}\%k ]?)vȩ٧l͉[tjSWMwCJNƓUdzi,GBTb.][O~YdNƓ#[yJo&lҿBLy6BDVy,Wek;T͙Nr6M3ZG& \ٯSM]d[_̮YdUɿEYYS5 V4ɚ.U>EZ;9jeQ5^Nˡ0c֜9jʖZ47V0Rm vf]=ƕ2ʺ߱Q>EtXY[5 Me+sulKi˕ʙ_=F׬i|[QV~^eiYK̫("f59f|jڢpd̵ijtFdG{[+.☵lYQ=A)JRQiBVoyGeej|j~9gu|? r"i()p4|aKwkYy; tSu#J1Tú#j֍zqwM 燈r[4||OU=REFj:[3gU^1ۼ{t=g:t~[z*Lr:N Mdϱk|Fxx|?^k.;k96ɻةMG}O.|qEiio&#%u*TiKI,F"uJsmɻ9<#vw:rxɌ{I>1l7s'd8۲<%J>G +Q^Ie}~6eMtj#$u(y]VіU|3+wnvEm ˥wI212jI<)ZEΎ4SOS-ȸLg_R<ѷJe+wR5eꨄw? ȟ=513M2QReYYfSyFՌgrmͻNrѬ˻j #MX|B{(WVש>8uW~7ǖ6BX=Hk.itpUkvuϿ08y M%oO)tY\';N*J329v=})zn9˖xy2G3Dj~9b-Nb9D* }9/SWj??3^Sܿ~~ Bt>lq4J>+wUr;r r5yDym2\C| M2ߡtNY֙NlʓՕ^z- Էv"YO"cW2F^ %JMmd=LF^6wE覌]fig]cqvᘾz6u ]0n7Fț4s4+;͝!U3A+'VXwi5|͝ةѧ[ߐ &ukUn4w-B&ҽwNvZq>o"ݼȹӣ+wO<;^HD4Y1e{fNeDO=gNi܍hVϼj0K;W4VNgv˲ ;,ݦf۷qݭВ}ȝiJ/w{|wTis.Vdo;Y_;z;FugJϘ4e~5.wJZ56v,bk{vֆYk*Z#KS -f?)%'s2jv٪1)sns n/цѓ7ڨɠ"[zH&M5<н:;<"ٛ-pDH}qݫW@}C3>~WYJ܊i2BZ[Rwsn:!(8xM$>~+? 90cX̦d-iR"^ .M+>v|+kԛjɟA]f{.ʆ'kQ$g?gxe?? <ܸz.Gz&7z HBVɿslzG*9ɶoi}5otӶ}OqRG<^3|p.\Xk{wK |eT DJڜj{dHdmBwn[IѸ#u\|Ѩ3QFO+u'i{j{Gv(U*8*u=z= {sdl cf7gm5:~WoNJ2iw&}l| w%|%yTNU*Vo8.lxոӗ)Ipt.<^_s <ޏvؼM,lzG*4mY6fnپ =r$+#cv3E0:]#X>Z[6u,#UI_?[72RN#~Nv~|Y]8 Sv)R{.K)/]4> ''vG)nӞ&RIƞW/!´g+ug}L?K?V]u\1%ϋ5h}aw7a&ՉwspNWg%%y=ZyiTjC>]z=henILK|2ӑb7bk[ɝ ,yf2J;s%OU#g,;eS/-LflkSVcjIjW2N+*ۻwfE2gc4/hKBxײhyMi:N6hENZ43|eʝZN5\z1U.\ū#W7\i$UeDVy{ټDDֲ5{Ϙ+7f/֗5:TK2[f+omeO.gB*vFV`'NJ}4投5ZDNܵ-ѱ5U/~C*K;oKM7l*vOt5fuwtfRlڳDMrg4sVCefk2m2Oj렵/eK-fz.B{m*Uyg gAZȩK۰O1~5k++"+/+TnZmb/egÿ hagЗVEՍ%LKO#uLw/2]7%̗^j&K4vo2i'l򵌤5v2پߘsɤ3QxMs"|Wzhe4H}6ؖmhG}HEJˊFWɞ^y!UGf,,cvיRY=禥秔;3SK%*wv9RqyrmG_*\,lyU*2N-w9xgq&SUb|D8e7nRNq\ 1k$}QCUrB<*5dQ48.ެٸg5d[wȍ$sM,lJ3¶>4$0덫st\v܏m-FSRҽ֖>ü?GwM_-v&hm-vO8(Ly1gΥx<ڼZ]{ݏBv96;gNT|:hRmyޅhTm:i8ӭG)Éf~'.9u_m?\[tM{ϣl8|lQrw%ꛕUw(ЛϘ}{OlG4e J'sˑǤxP|erg5˓~~z= ]U{/hqT92ҼnӺg[ǡ~bqCev"qև4\ ͟P \aUpl'I:ŞSՓwٽS{#imlm]Kzr{gB>!xe[:n|>;ۻ3<~] wlυK3U]YlMknO!z̝hEFM3ǓrwfkQ,q{vF3n] vĻF_q_q5z\Tdv [,jeY2ٞYgWО푖Mufe58yZc=4|&WoZXÿ' 2-#L+Hey2QyuY=IڙC7WЖ$FGfF2C̖A"F"}a|K9|Qz}j4lqfK$BFn\ƈlB#"/`ddzjEL5]% 'EެR%_d^܌7pId-Ȏ܏V ELowl7fR#. '|J-6Gж] k"{RՊתi#dU7Պ%ԷL|elɕtFv2dy. hb; u3]P_.f̉,Fy̬,zzwcI]Ѝ7v r&w-dO!|3z+OB+\%fwJ-nǐV6:A[vk_ɎoZ+dkM[K;L2mf2#NdKОTf22K=;wdk,G%ȭk6ʋRy47mzU]7djn5{#f'Q/rΨ{rVIIϙ[b˙uFYvL"޺tKe02(癖jcQyZ;:OAnȬ+Z rv\3BjwXȉN֋/9 M i=,f=E25mPhr3Cfkj _Q{#iFɾa$Z+h6[Iwk.fIuL@6]õkvVLþ4~]:-89=bJor=F$fnVԚsu^^a+Y5kI 9r +=u=˳_yQ|bxis}y _y7v߽8I5:M\n/oݵL]YԩW SNMƝ7_Gļ^(VptܟQϺ.콑xJeN0.&Yfφۿ?lVHևqnIxN?^L^?-tw l;{>mK[_QEf8ڛ~\2LZ7r e5wzBv2tf-&m$ۓ7JY3-JTVwd8nEwjmmI& d\"jɽ]r̯2FoC64NztTF^f[OeȷVLwV733)wd#"eyqnyrV= r_xjwTa=HH2ɡofek}ȏiȍ3]vHRh3%@L62O vUj< [X,N.ܙ~ӝh#yfDhY;NԍOp+V $ ݐ˼_4FȮ׽8Ȋb5b!Mvzs|vyԀjۼ #B_O",D%||^R!´=5hGWb 'Cc+|?3N7OΙr?+ܾ﯇h+ܡ>@%sVw2i\@bir:J*W!n˂WNM,pj EkؿZ\F\._D*Nv,u:4yk;SW]ڽʭ2;*YY+6Tei<},)/9nUeDUH݌,EW|DՓ̺r2veZlHj:׾H+mM[k+٥齲4f՚Ys"}J"hczK^\*InoVXI+[CZjj}y?0-Dz-Z^dM<-F6w̷WZk[>.2htZg[C kLFάU,;]aScM5Y lM5n#$B{f&rEVMowqFUWHg.i9 Gf: ]k$rC+6*UuȊ˘wfb7FY!V* |͵_DYH[js DK0yuoscybB[][5r-IRg ryfB蚲FѠ"MK_;7)#uLܼ6ɚՍjtNӆV5&`wQk,7q,SS=$/}s!lܝب˽Ǘ"ȚA+lޖ 늛y]%-s39r^y6E'+2ΠӰKTEZdn%nKrb}YC:+КlZ4CF(.fHvn0$׼raE\|c%p[qn8*;Ry4Vi5OGqiBftE̗3l.̍k^ҹoKwY7 7bTJVns7dɻN{swv*85#:shZzuQ=gsIsgtog{'b8ٸͣt[Rd>{z{wob+Qc1KDUsmpwsg|7SqLr˽}>Ŕ][41WMqMq'|+v9'$VGѫ$GجThTon< Dkc}3}) v46 tu+Jڶ} <_OW>-{< {u}iڛ&EVΜ9Ey\Vx0hWِ-HFO[og=6<-~?y㬽۸kYw!TerjVkW$auԑ/#j܍Ƶi.㍶aRm\GюI[CfGkw+C-ؘ؍s3- y1M ni-NF2M'mq2>#2wW̵6D0kLّyr3#O,tl M頿;7c=(r+g ȋd"/C>̏S6sEFN\bpȢsd ۵3@ZB-zt-iC%l鲾gs>Κy2gL(Zy {.&y>g̙wrjW"RpU{+*,N]lU}Ѥe;-o^FGSc+KC%z+^&] j-حr]K;2Ǣ7ioVfmlI'{i]*Wc{Em]dʾ4UY[2+7k/حXy" ,EBʵ>+ ~IY*v7cW彳/CbZM.V]2f yՑY˟\5~w+w_ VHξi^O K,UgyUެm%MY%̋0BuBݶWgv*w͕li;0P}B^R5ܜ& 6a\ԵQ ȞO8Kg3|63FS= g~~ꌻ7'V^FmQNZ{;U#vɳ/4d:mQy"=w |v|̙&/<=KtdwƳnV%P˱.q"ݪA䈙^z'Ȋ"KC͋X5s(+wz\Vք"6F+sM vM 2djeYk^Y\˦L>ݱ253T-L(bK,rVLUj1zX5S  y0WFٶ/k272_dFKF﫰Ny܎n˩x[ȍwWfr[fQym,R+܍4/#VeMV2-]Vޱ^d˞hGaAvF06/ee+VdFZ,j,FG1dga2 k.X%ծ3ZV;FhWL;\I&g^"WcdoD#ZZ[wF2%w^IyKܚ+k0;r䏼V-b9NXܥg E".dWL-7wf}7;)4ϛ7wjUkJYE.gxw0Q֪Ryu}omZ?g^*).CqYɕ~#)n]5YA>5ngEN,*VQ6q~!Î3L}cY &sVq~v~_8_2>>QnWW.ڲFdgzYX,\DoݢF`iiauzDT$fcm< -/r;ޢӋؙqxyƭ*ݥ 't}t8ק\\VGK3PZNa mϓ>iSIۻZ^%{K^if³MFRy9$$ 8qD#wՕs/=]ܯ DŽRHV#ToCoSk%8JMq.BOy+>3}5#nRmstd㽵Fjwg<ͨ;$j]Iy eژHc1`.OIKVz88r溏7<~7%)ӽ#rWl+{ܵQ[NGOOB;{XݍhM{9RC??'X[--5,#ǓiZښ&q|{unߦjtwj fӽG܋&)5dyVg?#3w|}idmѻjFl&3lGbfj7U:';6;#&S2Oɗ˵.V G"4]%R{Fo~C=CkDFZKBd \_3dC9/| =.ї6CDۥC>- ݱzMQu#2rԎ#WgtGbənn>=.hL3!o1 ̆QRi;VjdJ+Y֍d@>&Oklքr}ye 7bs;u<}vBm {w|tTM˼lGf ޤvy@V}Cȉs)܅v _@&,Y:}ʾ?3sws:u~S}_"͖O"uUid [;pU-d.hP%MBXv"!e}L֌bb&thYu_3KGBFV֗fBTSZZOFmtW!55',fʕ]ƣe{+^o}ԯG6⮵*VZK\fJmY4t+byed/tt3ѻeU'*|пZ%*wwfVvHKi;,˚#}~S%MS4BE1>V/|ZNk^a>rȫC7܊DϘj7y[<ݷRiM1WDY;/фTנڱmȟqrFi ;[ͫ",sd^斷N똺ت;vKњU{gg{'a{eηb>Lomk4Ўm"}PMelW+Z.wuFSw+mfЪ6Xl؊NJ#-DeI\/ y2'DmI>k$N+Fϱ"KMtYԽ“TZ W &:X>i=:!WRi/5;їѬ83FoUJų/9#RvR{zYy3;Au4ݳzjwRtrߨcj3=6i[2;>EfvZi^zh5կ3m#{Yhe<%eֆww褳ÚTrF4tVGg&qƘP.Nz_dhԲ]Q}lZÖɱ޴.V#ON/6ӨJR;3PWfoeGBqm9eCSm~SUe|*&IܒVqm\tyjZi'ȖZ3tv䌓ٗ5ey~ѡ*O:<9b!J^]K6;-FrO3c} ԧVqP^Rrn2o_hOݝGsTq⎶kG>7O]<|)2~xl_j6;l#ӌ{q_4zkoee`V;b| qJ1J\)kh5aaJMSFo>ލ_hmLu|v2_Qr~Vz2_f~I1_߄qr$oj㥎V-e&߆ J\W]Qsrcy2.Dtk;w;쌻;:3+WY3ZCѫ+L4&M$Vۣ+R7} cV(y#v'{TF슝#1:6Gݓ12*DikmCrg^N6NC72)YTB^Ls/& nZ5f.ަ#/eF2qH.! v:I1>n)U%ks+8p<'eM,[w zVeG<*MQA9i)@c2]h\29>*BZr"Dez]H.kTǢry|r&w4DQ;nygTBsJo$Jqm]'cZIg(tZrlťIRVN^|k_t.d۾ΒIfs“|ddjƎWz-kqfZ[z*AW̷:ҡEfܼ6JX̝ \LMh#OYEDywP {+\2}qR].F2 e/J3A#'^2F[8^= ~fe 27r̶vTKwM2h<ԏ- -kldi- ~D0FdJ>PɦMWa]Y-Y3fF-:jM;冷I#|7lX_,sa(;J)!aVF+M BgYxk˔|[m5sd{c*1ǮIpY2T] ؗV*i.].V!o˂V}*˔T/ qxZ^:j:Vy+[՗:LYUihig k^KWfhVU6- ]TiuFRV^EN'%E,"ة']"tsMm>eyٙ]#Z2t}Ƭ<*򛩦Xm.fږ67{KVR2idVоU.ʵ7~i%N̩m'Օ7)Jjl A+Ri5ٸ4ɧcJWvԑWHm]hR-2*ϙ*KC +4f4ݳ[Y_3g-ɫDN^ĶCI\&e)+wkcZaW;Qw`Ch[hʝ#(X,E琋KRllk15Ѝ$di2l•hFv5ij3v|oҷf3+/hnO 'dKJNͥ|t*əjPz 5𑫢Csay"+^54YILnzژ2oN=KbDY 4AEI\o<;f-T\n"^yPeR[;Q[hfmdzj͗:@oq۲ܔ|ffԛ7)Z]NyM^Ys"mj"w ]yV+~R[g퓺V|J#b]jh;MJ̇rSDNz ꌒIl=/X؍ܼ#Wen^ͱ,TK#:o/} {ɵ&YqݙUAmLdw wwEm3dKepG0'~ܮ`үHZ1f+ ݐ6U0PW̏g^́WMHY\ٲ0_0}FQ2MF-E:ffrήa$g`+AY= ,Ǝ>YIyG̈́|nwA[:Mުt:tec_85]O\VVoNO*y3=~2gwXbjrG餘D] ߑ5kz.z {o-emu&2rsЋT48!@4 esUHQ M6y.j Vޟ?#w!lřʈ{r2UDɠx*󐫾I~ .}QsgJGuT`Εs/bk64t:B/טޅ%@(Yj ktf]S̹S'Ѕ-Wp.gko2K ܫBF܂w.Q yrS !WV\My\ݗfߙ#Yr6]ƓIWV*D6ʟUs6oS^^#Q|MdՑ%i5O;O豻dj/FVN!0sZ$ݙi;h.VJl*v֣I*v6T4Va;\͉^ XW^梌VYs424I9]4ʿ\[ňW'ff\Ms1vsqƓm[*2*ɵq:vKI=yY1flﱴy.W]Eз]Hz<Ъԩ[]L$Qݗ1V/=FW%ZzA%k!;9jF++YQZTޠ.K9`.ƺ-MWߑZ6I;!%dP~UغZfNFFBkY bZW2J"4eMiqk-k."wzygkna+37Pc.܍62N؏2-H˾ꅲW%ଌ%cY>y}֦ZNNVbrcY$7lm(g5'f_^F[&S+l4ٖIo ݐ)x|NM}ĶyyΠrSo4qKC/d/HFyo?)YQ&yhfO,ik2JJϐ)W$Gvnm})ع4NbgU̳Z67vn=Ͳnr#[k+ oUR+_AG7|EDiĵ+dTeFɒV63| '36$2٫2ݶ#kR= {.-%j5ˢ2q.moR2Z UDWȗ>;E2E+"y݊#-wʉ6e֦^2ߺ]`Kv"C1镇z3aK#SV=N)}Gra;˖N6<.wM'qST-s *cwpN)=sEli`nHp˕}o&]+k7R./3ϙkα4CO&ȭ,"H $Ak%Fe#hYXZh'`[k2зo.vЏ\PljJ9Z S7[z w5|lX {@VSIkf]20gJGuTΗ.o}|?L VydRܦl(w+%ȥD/bS\ʔRb NR++0J432"USMSJCꋖHma_-JՕU{auȚ.Tִф܅YfI^E2m3E3eMU_+g,ȭt's)ȱiZyH.5~eV2/:i64FK# T֓*ʳ^BOU23uJҎzdc"Rn]3tn:m5+dj2r󹳻4vY '%՟6T%QI3bjvW~̷i)*vqQZNƕ2Y/{Iv5DK,/՛uGudvԏM M4ŝ2bƷJ4̽ .-I0oJry z-ȗ̶y5eȍg'D"ieLŶ]3;beM"i\kD/2NG L˫At /^[[j6̫^J47ʣwv6N]D$fdIwX_>DfGA6ֺa|Hv31z_tZ7t!cS^<݊1߲ڌ.-Ypа㛻ϙmK2o"ak^0@VKmyQ|eFבZ͠"R~-FwTF.{-^ޤhz6#nHA魌pnmlP!ލEyXQ,3Ռzp 9푅Ng\VZ+IA>8kKc-ϴv5X^׸pՙiRgĝRI٤x~+ZW>#&/1qQkhxϑc$Ygi] \f\ET4푕uϙƒ_-~'D;ͫO3\^RkQ˙nfx^Y=Zf[o-u3'6n&܎h'CIҽ S)"4ܽR&h]3B]PނNKKνJ/[K\y'Z^RZb;JZ6jfyؙwY.DB5 .6^[$⾈+;E4Ȯt7?)M`wSV2+ح^ìdTdj^4|2Z6[Bv'll@lԿ0ʭ,ަI}WY dc5h˾MFmr5gtWч߰k,J;ܚݎOmQ+:j7lqeygLZJ㕓ԝiy롗ԷO$G3WN%Q|nb4Lek;f%]-9<`;6 󿔗.w&HkMھCW-[؏ v󃒜HIu^<_j6&i&~dih*We3M7 *;6eC^j^2'ݿ]oumwD 7覛V2z\)1{d8H QvI,N5.SIӨmݑ2'KkŁdnk+rfԍ~s7yuH˖vl[kMy j;lꈝա[F]ƴm5nG+kDmy̲CTFջ"5-j7r 9LV?!"o5NԤ^2eMUM+0BQV;;ڴVj[7pqT#:SSÒ꿓Pge xD{Pg Tdߧ;QJ7sL/MWznQ+Tj-=(:!G˻0t*(Nm=3q5$ԯc_Y>;9J&a&83v5`&nvM[+"#[>/-^flٙ}YZA&2/e Fм|"E";yM+h$6̵ dV2FSMs%ux 9V*MC|M20G!<ܘ60V``鷣;迌`3zr*p[- ay uBfTeh[K,|\vvy^/h@W @\IۙLSV*Q}n^%.{2L;$u-tKQղޚt4|ˌF˙R+*w6]7~w4},{M*Ίɕ6Vck,^# ߸FDz S*ZM4푏4Hl&OMWZ3{fXՍ;+*+ Yh[;5fWƸޓV9hєRmJOR{2ԩϑJ츚k MUҲ6"X ݧMkLS7i$S1jg`t79f/{dfZ1TlЗEwM]r]$U$fE"$e+7~M䆹hNo9jש[4_+FD2hf5;%K{dȵwfm Y _C;ѦւYs3k$n2m:9۩mwdOo|KuԷWԃ6h e-+y,6e^eCNdCI\z߼ҿ6ef$B8a\ekwdvFw'5΂8j̉wzy,f:ٱ-e!6ѓzXy6y8yf,Y[ߙ4"[\Yp%sVIXh$pflض*M22e$\-5NVv8eiҾ</r7ntIF&sF;(6.r~~Z|pgg9TwTC2ͪtk$džcj?6z.?3;3?#ܾaw&qZ! !4}IO@B^&\PP(, . ^2\,.!y<ސ\ք*cUg. [;f枥tr.VV'qrVb'bZ4хʝʑ4lWVݦƯЫBwvӿ|e2YOƞnKWF~swWlMrl2ydn 2ʘY˙靍Sz+{e3NDwȼ2从Jqrg\q]D[,4<>u=ptysAҎyԶuWE N|rugb9I٣ qv^{XQٌ&Kw4H.eVWO8MnK#5{%{+MK} &/nYVn4OR3V4߳&42y"woDѶ>LWжwұovDY, 4O%q|/\q:!ڵN&Z|ٶtٯuJL.A͓sbн].X7U+w2Yfi5q}i;wkkj^!7EW*D2'qFidK/t8i{ͲȎ;cQOBehS7饻WzY=l'sAJ[MVX%7M2zvqu t=ey.DmW̉FO5e#S4w8tDw|SVy+,3ڷ*ڣ3eo265veUEVȍ܏.BOEIl?kT 'Cv#5#l/}Q/Ĵjw#vYس\fߜ9>~c{NQJ7h̤Yg\S{udک tD+DKsCM 4Gԛ}B}h; !AQ 6&pL͟5WuXĜ ήXLr9eS7yn-=&Y=Ӣ!Ɗkcb1|i<ʝncQӕ7EMV52D֯g5E7~魧kMiI,EUNDy#i3;SvYYu0XxC;EsQ$JQW+}jmdN]nmִ rs |kqR >hm[\X̜6KFjWeM Ԟz]yj ḓ2O'0z\MdT k߰]y EQНV8NxW4]d<[OG>dZvhG+Ӻ6.HrȖd*V XMԵm뻎Ãvdg 4uVˎ+#|"Mx6x];e.dN&Le~.o@9E&Pf?)m";Lqlf-2.DKfNB;"FRvNl ޺DՇ#Gé:l,s`ets|NV\G, wO38҅HY:-QvNLl^Y/8fO3\[Zp6S\/,HcB͞Vgǫ]7yedk]O?uUfM_|MKt5v#+`*uWm\FK8iJrne^_kIܩ~jW,Zkak|ʝyy#yd"ٖiWo767t;6umli͗st TY*X\߹KrW єWԩS/6U5j; ]i#Թ&Ͳ] tnFn.WU ,5``՝r2S9ʝFԷY禄_M=P7q~kQ9CNyY\.#+qG=zx2f3֧Ҳdsв|2grߙG;Q˓V7k&eޗH˾k#-ul_2>IY%,7h+kBľhܯ2Yr|^񦩿dO.En롨[;\YK +k󲰽:ݏ)悋Yլ&Pm<ȯrI=՝ӽc|[ 7ag?ED"#{-ƛM7<@g]}x}S%T]ٛW|%3=In0]ލН'"wiy.۱;mPyy<'|զhmwN"60pv-f{#]1{. w:&Yfiy^n[4gfĻ2Tߣ2s.[v#je744&QgɫwD]fyp©GB-?A8 ,xrm<2:)+7svdGgc#3>zr4_+ 3۶S4F49<mhed#W"VGE.Vh2F͉ 3ZqgClFwY%ȵԀwVZREnvz3WlE#w@Lz~Q9?O)oG?3?ܾb]u2Vsh,E}. A^z!|.^T oov^١ynRyF}J% ./TtU{WjhTfYVloEJb:BjDTKЉغf<%AeȩPVbY1G'fkli<&|ʳyNzVoRbkzjX/pzM@YqKK6TV98i:Mg"k^#eEsS;%'9%cr{ 5gv}/ s<^#/&7*MUkԊP|-|wJZi;[[ۅ o\M4-TiE81>),yn^TSWj%-VJԷZlj|N?Y?9y=I%d/|l)g(uǥZ+_4jҕgfy9'[$FkB,޴̾kV|L%$rO!nc4\۰ś4 hGY%o1S2:d2yiݯPnŎoFRwJm'd7l,m\l'+5ɇ !EZW#Yۡa3vW[+nFs̕ŵ!wm[!wЛ M^1= 3"jp76E2 }pVN.m ynI2BV"m߸$R{E#m;{K2Ys#v#yf !܇^~m^S-xgS=[ݵ+6micnJGA_[t7Fvm J{K˻gvKfڍ>dՃ̖(2l.w3`s*m[wgj3Kd<+\yrI$vOQ~^> rY,׷ӿ;?tN<_wLd[+*olɤ(B{ F[H *Ps*T(YdΒ@*1v^؅WEyX|ɞ^eJ7?|i:J*EYb.ٔRؖ&b->YN̩ZvfxSwѫw&cYi&|jϡnuRq)5T쑔ȷ'MY6>.f:roڱEIX7lr$~?c%x|gOg~ʶLq8j52PQoimF#XsY_8uxZ`vNӸcMEGFj>]0ݺ࢝6F7M^[#]஼ >,G};ZjCJ*ϒuI{ыrIw?AWp'urvwˑE5Y3 wa1uѡkC<\/UH9YGnDtTgi̍&ȭ[C>µlFO8M K,r&!lב7չ-KRъVbOz58yBm۸eҾk37YhcAkcqvymiDwh̝fw;6Fvb;5s>.A: YYfKalڤl㓻oCibNHd얁 K[1bdgfVA{knIr2Էmla߸WV!D#Z7c7^#rI;#gJ|nݬY]y:Բ3TDQo"_u2UK/ɩ2vV6M61'ffd,JnMf`G22T.%R{*Mûfn4rG,2etאRWɫ%<7L=mF˝GOHՈ^"z9Zw Ǝ̌71[ r3g}%u=p ac\9F*gS= x&6X҃:g+ōv.܎ύ^+2"lW]J"I}JN/edeHH7yF̚6/ P95og;"s}c|ofhUe%3_`}g{q{VϩNܣ%$iۅ~?8xS%˖u'+U_p3ӷaOsі%UN(4n;2X兖n>;MĿw*?~'k8΅Uѷ[>=v-l** \1ZgxbKSg^5mޟ!|>[I6ӹޗ|Fi_z29*Wd<ߐ h"(VJ&Te\S*S9hX lq{2.*ElV 䬅r *v2vLT\tȗ^y.AtM3nLҕ2-lZ[Y"L2T42ݓ ft_;Hѩ6|;X]ԧR-)sfmJќweW0BfI^3\rˬmrr|ՍhU$ga݄V-R6i*AU]Ἰ/ɷcS\KGO{6˫6ԯfMЯƝT>;NQ滏&\8ǛxIn=vm9i{|UC;]hռc$ևbNz3>s¼\ux|>Z&2.^l_SNN.tf/w~s,KR N6_f5rK+vKCWC,2/m;=Ae|4ҽU+++=QTX2vqa>ߺ՚8nKT\]^a>b6[mIO2m3Mg64$^FS[n'Z^/;#C6]-2l#wͦ7ɣ4ԱwWDfI/[)tѪmqm :kbgwEnD՚Y軶@5FGvw2nϑM#oE*0V%m1Vq0'~%yMdن,!wЏ,2y̷i{.Vɞ H"b=y=G~SF;2n7FvT,L2ͪ gnDkRKlKs#s2X+}nԄh#.ܘq[̜2#Umf^yo3gfȚ;uY,ϳTYg,!>keqIJ\(q+4Ya\nm)d(q%o!m5| ʶ=<>'9+z G?3zy?ܾ"4(PpE^&Z\ebwlbr/. ܬH׺EN.rf`GQ@:bʷEZ h KIŋt6/z*w@ߣU--'b瑫@:Ady41s;a\WͅӎRe:e7nV;]> TO[ɰx?ɏsxw!;ZiNחrIүqu2&nN'&`0<; e"`hP9Yo.|hCȖifr%|2ۧN gU4i~w>8-a3@{xxP7t#v% @ PD吽sdFȀꁠ-ph\|8N([; D'~u v3ξo3|sFsn1kZѭJ3 Yh#9MXŵ@O S;@(}{<>/'`1ͮr͔ s~G7~}g:;k|Ͼpyu|{^\` sG߻t~wKqP!fi@b➞}'e ,%Np@rK3Zsr`8k9qtg5] e{\M~1"vVB3ߏ_;vUBZys}'kW:Pq{y8㎨!qPM(hr8t9+'9MCa JrtÏ ٿK~!vPXAjc]c983ç'Lo?[]G 97 {7l[֝G%8q34 7!vRER<6R4 swϳ/ߣ=7 7NkϛZsto:_;ѿO>~jhݒX$[}?|/'aE,"@N̿c\`4ht/``5lq!\h "ȽrA3`y./'j,"E$R("]YC/{Ͼe.q7n/K֊QjHԿa\!M sh1kZѫՊ#96:㛄˼N}D@w<ןf}T;R-ub4NpqGt#*0t]9L8<:nݏOO0ysw۝9bB=D@oؼ~;}hB*j_安)) Z8rqe뛨;k{=^>.),jGfQ:x# JveZϿ> s' qPd4ddp!h ;?@%@@?|o}Ηd+B)ٗyk$9J)??Ia D@=/e,"ES/r R sbȀR~|_azt}AN̿a\S&, D@K?ͿvQQDRC{sV&QJ@ c}/KFBh/rHC9CZ9u } vQZr8NM㋟HsN@B#ZQ Aٗyk)@8ܸZݞ_'ō\s\uK%D /x~IG~6kyD(B~yw}/\Mʵk]s[4/r6q=C3KqIr*7f (~]].Mk;;{>f= N*_2痏Led8ɒ3L gw/ǥ4]ZW;}gt|Og pWcL˖H LِNVfwt>Fwjm5lgt|O`6}'fk+3d&HFqY* n땒dk+fldJ*>}0q@?ItKu.wֳus-ѤJͲ*RPIs,.r5$ZlԂÓ}W|Gsg{_z~/a3N:E%嬮sӏ_lgL2d<'/~5ѥά;tՖ&6˖-KD* PԖD.f.fkս~ox;SIn_^/Ǎjf\Gߏ_d04{Z=N]kQKMnjVi5sY-Β٤jKeKe)R@Yd؉5 }g~>_E޾~^^"sYK5%YYD"f-5' L&ѵ4]Mo:Vi:MYfW6*jePEHwsk;j ˫DZ35}_x|c)djKrsreb̐f̮>]L&~t=N=].Kֳ5us5fՖYSW:*[*R K f3ghX)LM]so)>}͒\k2\d1s)2r,du8iv.RjY\ͳl՚ՖfչRPT,YHwqԒFq~owz\-f\dLjdS5 q.yP/㶍5ѥԺά:kY4%RARՄk2bȋ -!q^ϳgY.VFZ̹\es+fd2etNUs΀=x%tFKֳM35fuftYkIYi %)PkRŒ%̹KJ*as8娣}'>Y.V,+\ss+6K0B&,M`sEWGzz,mt.Rj\IlՖ\lՕ-)RM2"XIbܬ!LЋAy7>?Ys,\fqYƦH`5s:OWFFԚ].՛ZΒ;MYl6Yjhٴ"J-IdXId2Փ+Ww9YՎͲXIɬe}9~Bb)穐tj4]FKu4-;si-KsRٶVU s,YDY͍[3+0\̲Xr\MEnmzx>}"f̙4a1g+t,itKWKsVjVj35egV[4egvVJJ+R(P% .eTIE(¦&X.fr>S? lHDfL~tUhu].֦tΓW6YSVjfUZT9s,X"21 d.VK\w~!{qha%2K2dN?Cy4UmtRkSVkSIgIn٭Ml)l[)P[$ZeD.3b@DDY,Y.eMes5 ˙y+2 %6ss>ޞE]F]FKu5ά՚gVoy=~gC똵-Vl[*[(*P@E.ebh#- f\-Ir\˙dVlK0dL6fd=Gzz~nQcFRܺW:٫>|]O7KsJ[ BXPgY-LƄ$Qbr\R3(syz?/ϬdL&Lً2w&NFKKgUnuf?7|?]>)SHՒ(@Y2rr.VAs,X\+%dVU1r\v<:;z7P&,Ő|;~KKV*4U4[ݚi><_ ~[//{ՔTZ̲Y,$ԖY%U.fC+u%ԝW!So=Vj$L͙ /μ^~4USkЍ]Mo:gVo~|n? ,EFH#7H̹TE̩rbKr3ˬ{9ř2D $!,d0 01!2@P"3#6AB`%A(bNX5i Ӻ.pZYKOcE8Z)@M Ӡ3 \QqqP>!0WD`BPvn.."n@A eJ\w'2+2!o\\b!\%V\e d F}Q[g1EڃP'mj V-H=1cFaGo l Y k XXXXY!D,,,,-aaaaac i[^ZjS)j*+>̞a0ENiZ.tAÎO#.Xƛxv0xMR3MI48˴yirRk<)Ǟ*zsOjPk3A_gkl)"Pqe=w.EnlxMrgPZмJ;E}B;`b "iC))))))%lSf2[-Kc%ld2[-[C%ld2[D2Mld2[-[F2[-Kc%ld2[-elAN+[&SUWjG}U0k~N }{#۱Zڿhoݴ"=opڎ̎8g mzP@CZ2HnYJOvPH"l4D 8v- D{; aV%q:iߦlz`PCt:C$ej瓱ErD% d# YC$d#$!6(OHJp>KjNgspV"48 oGb0= ]pҬGrصa,Ѕbgb01Ӿna`HsW rInG~oF1#C~ݎ dabjS&opLBߧ] r׀c8@-VC97-VOJ+'yl3g!@#4xm ӫHJz.NbO~o خ-of Ջm"Q^N 0JK**3hD8$0H2#݌"j"q"c!r>B=W譈UӥTΜ=O~o 0+o_~ktX5~' gؒj2Mkĭ AnHrU1'N? +er n4+N!'d->ذ4ĕdTv{p< ,E oA m\d^>&$d tƽ]z%uj#'N7Rw/>*u#‘ߧA_f}' pľ'_СHӏ{E 6?>W5m9é\-Hߧ% &,^ƥbt\ Ϧ#N?YKZbNd}enHl۩$w"w#~8=<+sӦė2]jZ9#,9d&Y0rɃL`,9dey rH #A$h$42FH#C$hd 42FH#C$hd 42FH#C$hd 42FH#C$hd 42FH#C$hd 42FH#C$6r/-L~['*cL H8sL\&Y0rɃL`,9d&Y0rɃ:\~$y_NU?brHZ*3\5$)ifq?*i*SU5E5~N[Vd1pMcc͹cͩb2MJ%R Ll%gȶI dEuiiiiiiiiiiiiiiiiiiiiiihiiiiiiiiiiiiiiiiiiiiii.1!nYǛǛǛǛǛǛǛ~^ |+!Oy<4H)Q"o w G^*dwK #w;WֽU;WXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX<_WߦsiÚp泇49&i4sIOxӇ59gk8sYÚp59ͧm;)5'L(]BLİRCM>qԴHsMDec;::y.]MbX)P׸qMM%g{F5Ħ4jm2>auIT9Qf/֌Mi)G‘\4K)|)эEDܶw7#DHL:䯅#i岣| ᨸqQ2q.;d%F>>2 }МFu8U"6$wt(Z%BNӦrp+a=Ae=_$HErZLN{$@mղkFJe*o> h+h1 01!@PQ2A"`#RSaq?N!ZQb A^E54 5%TTĆXr{qD&!*u…j\h]@4;PT 4B (PB XUAT(  (1=ӄ#|Dn4vT۹!>kT>U>jg W)W!}0x09U*WڣS[߻f T˘X?JT(@w݂TTTJ PTd|H8V#q㣹Ώz;ecʦ ۸,,,,,,,"9 +u\UUЯ+ ¸gU]:(ήvZyTo*̩#\ߕs~UW7U ܐ#g \TEf {ihb"4cUͷP Siʦ Bo*S:”tYw}E4F Yb0= ;ya]r=ë&:v9;*|n : \wnɽ}.vS7GsN27I{1Xе%ɸYT¼yWWBt <+ΐgot6Xci&!q*|n*`^,eSpLJe6U"?5'S!Rp{a5xtSp{% 5LK#հ¥JHw{*48q=^aJg.iE<^XZKU>?7_T")ݦt;Blr 3?4A̓4,6,PhSU>:S)6;7{Sqw>5>7ϸ>5>7N^U^jf=4J79{XE|&fWy}>=CG=qx T֤|q񸣆wT*fSzcCϧdzEyMhhxeV= >=xX*:{, PkHޭTyqxcI0Sm1çZδ#mܬ;oO*=_ԞX{, )wPCZTjOU+miC-ħljYYP&7O%\dopMlj Ƙ(cM=tQ\vSG+T>D¸r6ec}a*t ժx+^ WԉVSXg6VsaV@@`rjkr{j3 vcJ&򅝀ʵow* h[ tj8eB'jߨunXɵ/͊\Ωt@ȜuՊ\`JMxl^LG\m8VRRJS2G-MB16'RhzF+LZyDv{Q\;*VjTLl+VCd u}Wuro:s^ Fk+1 +L%t'ӭGTν.VR-J(ySr)FZ(婴c\^35֐\!P; +VCE &4l cL8XMM`nR$Bΰ1 Jo yAԩ4*տP>v}: տPLi0Z [ʕE!%S o>#Len̫VC&~JJf{kߨ|{7VfZX,^Cz*!J ³ qeZ9ums!2qʶnAΘU5u]D*cD}S)1FMJVpfy_L9_L9_L9_L9_N9_N9XF, q]_vm7R49knԭ C5m7(寿RP毿P{ > 8X,` 8X ` 8X ` > 8X ` 8X,` 8X,` 8X,`8X4X,` 8XL`32Uf=8L6Q T¨Ƭ&m)=g ,pCL#Мշ{6 :QU(:YH+N=a=”]:xD= 9VJ~ehgaҢqğq*jjvrguU$|(&3ѿR4U hDBx$#$)k+F(c/-PPTUG$kmF &6rrՇ+hh*ѿ3)T`G47+SHT9 liTbn #Nyqܧ'9sC !124 "03@APQaq5#BR`$rs%Sb?j` 3/TiMxptw ~a~FRVT5“J戁 6I/)GaYCá CVi54O?I/ ̋h!&sG“nFJ7V =Jc'Rk\QhpmFa޾Ct&Q>8aLoD\&H|61^ʴCn&!h3VC&Ԯ.=I\(/\]2P IKmR |^]1sfZoFLK{9}wR F Cj=HCD5OJip͹ď$:F{[)z_G̬i=iJ,1{5jtHZd(57uK}.nhi;#=%qPƎt9ا H͍%e#Gᕔ+)VR? ~YX2ee#ᕕ)ƿ2w p]²w +/p]²w +/p]²w +/p]²w +/p]²w +/p]²w +/p]²w +/p]²w +/p]²w +/p]²w +/p]²w +/p]²w +/p]²w +/p<]²eecᕕ++VV? nYH2eecGᕔ+)VR? ~YH2ee#Gᕔ+nU>Hѹ~-,#.-H]+[v?Vod>:j|)[z豝(LMM:,&['> }jghMx^.7+T.3u`kâ)GoB:O] }:'{0 LYO=I9gioS4Q=]{⨝D*Nig2bEBD9fTHsRȳ96Gӓba5óv%v%R%"<)]{▵ʆIY5Q*U{mMEqHU3KRBo(9!Td'HRfu(4d"[ȨR3B.Sӿ;!c=M1˧.";ȥB4v}N)Sa2/!MYW^v%ڑU Q^*d`OS&Q8XS$*w#BF[8B[ևox*1!*hdS+a!f*(i4MNSWZ^J=kld%G+W^v®GVKg|vNNfNW ߸ŗs"dPԮ`H%C_GɁs*(*v=N:!FSUJM+" I JS]?Rt"#Kd?9998_8߃{Z8Ԧhp%.wǼ{Ǽ U9wx9wx9wx9wx9wx9wx9wx9wx9wx9wx9wx9wx9wx9wx9wx9wx9wx9wx9wx9wx9wx9wx9w_*Q9_}5t+rs#Iv*s_c899998BM*aܚ4IP졪M"F5)I]b%pDIvS"W"_cݍ I8I$I$I$]$I$I$I$I$HN,?E6{FWInݥ&7G [sA%GLFHrm)c9 !9;Ҝ6Ҫm$DEni- vY?.UBҢ[tJhURhM6꾣$FD4>l GQQvv>GydIeB'|&IL(ݤj6RD_UNRZBE)+sh9UhM E=gc6;x5x;gB,YЖ<+lX6 5fy](X!YExYUnR(BGC+) +;nB!1qXa= UD'؜@W c3{V^w!BbY̰gs<8+/D! ' ,'[*)g.DKQ;J. X! ;y4<aѫ2ti=8~ǨB`!a8. Mci)l䊄Y<-- -ɲaɭXz![m0HBS! ¾1ѡ#mI7I$I$I$I$I$I$G-6I4mD ܒA$I$I$I$I$I$<m&uBI$I$I$I$I$If[lJ'2\@lHg07mIe3I$%bI'I;I2HL$y׾Ool$I$y i#IH2KigN!!a d$a$ -}@khF$;RII.CDdU'̶I3i% I$:%>I#I RII [&I$ԂI$$$I$I$I H+~Im$oÐII$I$ $I$I$ mFv^lH$II>IEܒ&I$I'kkkhI$%rI$I8HI$NmMm% $$$$I$I$H3lmI$II$A$A$I$m6JoI$ $I$I$I$I$I$Ii;[[iI$I$I$I$I$I$ Y&mmmm$I$I$I$I$I$H'dm7$$I$I$I$I$I$I ϒmlt[I$I$I$I$I$I$I$۴IirOm$I$I$I$I$I$I$@o6Zi0@@I$I$I$I$I$IK%%$I$I$I$I$I$I$m(T6 &ĆisV$v;SPgV8k 7o쒧kZg<s^ .@_XV`oOj;x luQML~w y9^:}I6rӰ,y.8 X~Ґ7#y $ZͽMfOB8cX &2v38z{"lǛOze|[~OB[CAC~&I'-<^퀺+j5kw˙}G$mHI/,V~=}J<`7o$MOx*m>a-=SQԑ^XO_䐝Eymj\O^Խ^ܢSJI;~ӛ_|Lb `8-!JG+yi$> dhGgG* hh>XfUhkOt/ V>ڗ6*#ۈ@1͒O=]Ny}a"|ϗ.<j: Z_疇)hpo}PnrÃBmb 9@Y}_X65E2u?LS)d7CyLmJvB/h=:%J/U KfPwA-xFXh; C˗/KY8s9G}]Lc8>Ahz+Ctk1_Xyj4]dX1l{g>i쏒!_{ol /l<,aKgW2\Tj*~dی*62f{Zi;BTvϛ7E9Yy΃IU\c1LT%pagC6߈ھMݧ}*; ^%ܣ50`46h44,p&SA! z.#VJW*Rۿ9N{ʩp#N#'#|.@71pc;2BYRYCܲE+> Eax'x*ؗ8 IxűG˗ 10Ďk5V8eĀj ݕ/X*i[aA8q P! 0h2۠1KXbiq@3u [tK;M M$!C XV1beÔ9[7ɾ %؂Cc6 жn!KC:{ cwt>0ʆ^.4T/hIds̳9'1X6þT0`œz4liCFMb% g.$L8P˾Gd( Tr$LԩRV*ɂBT! #ghq]['鮆8rŇDQat& 0hk+!1 AQaq0P@`?X@lnr2($, C1;~Dn&$Xm18LܒJ)B`pa܆pwrn~E&ڱHMdY,M~Iy%dcO?# ={HvK/"i؇bNkcGg{y={a=ǰ^Oa4ٴb^IdK%vUobI*%BWKBBBD4J++"hMy DCȗ>Oq"@i䀑ؤHb!Hy ',OJC$< C%v$ M1/Rć5f%lMట Y1xc;V\hA o`hr!H|^\  OiA4a-"?Z E1xNܑRDRQW̬If'-ˮD>Lo#R XؙI$MF7C!0|h{$PJ$" R#ÒtDGCJ>1!c/5rvٌHZ_ df1? db{*+#C] WM-I&O3V>YɲBP*CPN_ GyTA^A=pYYhĉ,v$)#614dr\6Š[:6=θYNĖOpbXlYI%7*e$#_ c_4zPh\ɥĈs$$\Y X޿*7C& Wy{fZe_k "Ad.yOlZ03F8/̆i)p01>rI ٷm~~1bGU{GKpDT_J?8?Zn'_IYU^_ _,z1#hb քkL9:_4CC^ƟMD4zZJeT͢jG'HJ30bRFG! ha胳" xcD)c$<B\Ktd܍t<1 ub < OyGb#ɳ z;jƈ[-1C6!R$#MJ= Im'Ԏ'7 ./D\ tk6L:C:,m br""D!B(N(,EXTx6kDX)lȗCP'\vD =?ج֏lLۺ ݓ5?mlb| #7*3ɠ~B'18pZ"e YKHe;b;)e͈mWpdX}!L@ ƉcLQv&!1 UlЙdFKk"dy69䑗xJu"V֙t ȓDSkԋf/XCpzCB-L^Ez>b| BՉ ͉ѡ =5Ѣ{B!aZ3Ѭbh:'gfCc43s:B[hD‘NZ61hI 1a\^mcOvDDoF$6x$=ގtlJsДHx{ cnBb ٲEDʼn]lh>" 2lotl@E[tA% I ntLjCnI#dƇv+c,8di:n d i"E ~a B1 <'b=|I>3oRDVȪ#Q9< JX~HJȪ{fއ8nxr{=4X1Ě$5n_?!DLF,ВZŽ2xF݊UXD  ucxɌثGKE v IC(dxlc#cćXLLBb$LG4M I+IGe"h] ؙF$IƼHԍQ`pkQ٢ϧLA{ :5Xq􉉈B؍n2D愤UDM)!U؈-Д^ƄnD(/ (I8roxLEVso!2D&!1L@QxLO%!1.BfzǶ>(2 :lt14-ACdЊnDcxlC14&OB!<&',XDA`~E5д:=Y=2;g!RL[H%z=Xgbph`gpJ65Hg܅c~lcl:Yh64| BbxO(NX,l4ВRЬ,h^ȡ4K#lvTPSgc^H;$"\#"Baģ ojnZFXXB$+'Hū;=c7;5XlcnQc-Pn1'54YB,,$! xy54HtOhFơP*𵍸=41ldX aT c cdKc/)!1 AQaq0P?K\  od+$o[MY.) lE7*UP.#%uS:z:̾;¯pV\S(P!QŞaEd[lHf ]UzF}ؔX@h[fdX hUHqJW_uiN& XP/:j񺄦-~`*SbMB*UYL91hAZ m6+Ve[%>ڮ|68p^,HKhP@20ؤyȚH[J4T2u;,+qZU$MQ+@U@U-5AX9 u7v-9.[- -YX;öyѴZm[{"U_X__Eu{˶廾GoΝua;?Y>3-ݖ30mwe}{w[-ZeV|c)wb( KѸȤ{DI]UV˹mn e{or {;Pګa@q#8 Ղ V'_Z bmDz[^R-Lс gf?(Ţ/2y.EEٿttO;yǾt]%P.be>+Whoîql@^ a\۽~89IJַGV(nxCJ@-ܶݼ ]+k Y_ZG=9lۀeGf)7zIS;6b`!Y] % *=IRLJ-Ǐ̩*DBV{K@bUi HPdt 2h+)9֖e2g1dQCIJ7gR0TBzD? [)VῈoJܠ|R b1@k9xĩg˿(u(tQWt%.Un= )5!Pmc*LևB&-KWrCrAs BĹ{xȝkDF}/?dO?OOҧ1 e_bK3 qCTګEK[kmJ<]vL@F"R1?؛ 9Ѵ%4/O/M^?XF)VD`JU8")ѝ>9+=m>swϼ'NҢ(n}fE`h^럎?Bky ONWOnoM9:x'S]c*S1h7d} B\aCxoMM!>Cʼn63)PцC! -I<BGo9?i-4=,^'tE_b#UwkC7uS; q}%Y;Ra\sE6韈z.r:u[Z.׻Z1u{\}XKXÞJ΀kUbߘ6vOpw8PlO%=!`-4=v.iaYe7(r NӦaOz οƈ Y&X5P"\DY?nPa c̔.R׼p9~XT@PæahޔV@yJv9ؔvAT*k((EfW5;(E5y[uƅT7_out5LKb( m i~Bdc.% ޘXpq2glsZSccz :\Юm-/ gYC( r/V ~_p6STV:0 F6=NR V ;Mk1M!6}e0R[UhGeQtD%lQZ$ao='@7Օح %7_^Oy]|~?o;,a6C!EPUBa*J uP[b} gRH^N^:oXϴ & YmX$ö%GiyR hYsBEJ( )0wܩe m+Pf7f==h ?Ռ>qxŅ#nk: 1-EZO:ÈJ 8{x:Y6^>e 5~R"Ϝ'}B|Gtєy #j㡰mh˂ vWbbnr?y+ҦJԉ"u6Ҋs t99>;h{DQMjv؀0t;KDa^RA}/wRp7&,X qáFabaH(?eqѣ^eq$H"D$H"D$H"D$H"D$H"D$Hy DIt@E& gNPc"}XDN9@5F5}&Y66B,mp{C^SVj.&yON4% B..sQ`JPoU2کu Z _Ԏإ~v[--ݖwenv[-ݖweov[ݖeov[ݖeov[ݖeov[ݖeov[ݖeov[ݖeov[ݖeov[ݖeov[ݖeov[ݖeov[ݖenvXwenw[-ݖwenw[-ݖwc,~0ʫ E04!KB #UG)jfVXc_ 52wVlpcro˗Ճ@!'J@HPLdxn^ k58Qh;F }.E6Y ^*"|.@,i 1ꋦV1)$N%П' 0' 0' 0' 0' 0'a?Oa?Oa?Oa?Oa?Oa hYh% @NBoa<FHDw@xH<` q'Y~ a0LxOJW}ogCPPM%XUBS& Hpó"\W-CxC%+{(ޥ1b;l풯9?SuiP\}$"g!Y>f6ݼ4SC(V k@'{?a*z߿aFRׇIcA!Vx"S?t1b1xorPp ?w󽧝c0yb\:GcHNidƓ83&hޘzYt:_,`']$6ݰNAS|O.W+b E^7f;%P6tpR@p G4+z߉1w.%\^Bt}C 3TS"a -%c12C+b4DY|KA =07/K$0Xbv],/o):Vz+:euV/I"wVfGiQRU!I/,rpS 1ff co=osO r! Uecg`3wEiFi}x$ۑ61\QfofR*f(bXzn0pRu:AMĿ0o:"FF[-:ͱSa׼V_xb=`]qz$? R:mWC):'Wx4F<:Fj]<mȕ :NЃ4epTf *ap3 n N:Kw%Sh\>CϴEH^e}e&ei x 2G b<s#sF*8G1HŘY,NX-EF-P-+T`cщ71r0709f*يɔɝ פ*4t~ $.fYb,wu72ŏhijQwgb.'v9&ғL=gN,*S~!`1f(8pẙjbK^ !^%ޢf:- Lラj-Gj`qb\KE1ubvԢΆ><7X{ä8AB(]䈨la`0 AŐ y/2. 7r gV=#I}.jX`0*~q3r O.8$ܸ6E!.  |@PDlu_H8 s^\Au/1nB9f7QYc,c^ {E W.-ʑzJKeCQ3F\\(VKKǑ9wPzUTʿ  `C8 ˃^9]Y8v0hb AR*\J"H]Qg |Lzz#aڰBgSQ}ۘP !k)&ZҦ{}g}  IXGAUcYƆQ28a)`ԠԸp.%7bzZTf)v ,E7/'XVH:UԳʹFBDĮ+ՋQ{#}&/aü؃^. UPȌP Ups,nm EuE5aWqzE;lWgXnu-;IpLX!|[$.TX8a< _7guake-3.6.3/guake/data/prefs.glade000066400000000000000000006130151346623310400167510ustar00rootroot00000000000000 1000 1 10 10000000 5000 1000 100000 100 1 10 100 1 10 10000000 10 10 10000000 10 10 100 1 10 False Guake Preferences Guake Preferences center 450 pixmaps/guake.png True center Guake Preferences True False vertical 70 True False vertical True False 12 False False 0 True False 9 vertical True False start 6 <span size="18000"><b>Guake properties</b></span> True False False 0 True False start Customize behavior and appearance of Guake! True False False 1 False False 1 False True 0 False False 0 True False 12 12 12 vertical 10 True False left True False 6 vertical 6 True False 12 12 True False vertical 11 True False 0 none True False 12 True False Restore previous session (tabs) True True False True 0 0 Enable notification when restore tabs True True False True 0 1 Automatically save session when the tabs has been modified True True False True 0 2 True False Startup & Tabs (Experiment) False True 0 True False 0 none True False 12 12 True False 6 16 Enable popup notifications on startup True True False start center True True 0 0 _Play system alert sound on bell True True False start True True 0 2 Start Guake at login True True False start True True 0 3 True False 4 True False Prompt on close tab: False True 0 True False 0 Never With process running Always False True 1 1 0 Always prompt on quit True True False start True True 1 1 Show tray icon True True False start True True 0 1 _Flash terminal on bell True False True start True True 1 3 Use workspace-specific tab sets (requires restart, only work on X11) True True False start center True True 1 2 Show close buttons for tabs True True False start True True 0 4 True False <b>General</b> True False True 1 True False vertical 6 True False 12 True False Gtk Theme: False False 0 300 True False 0 False True 1 Prefer dark theme True True False True False True 2 False True 0 True False 12 True False Custom command file path: False False 0 True False Please select a json file True True 1 False True 1 False True 2 False True 0 True False 12 12 General False True False 12 12 12 12 vertical True False 12 12 True False vertical 4 True False 0 none True False 6 6 12 True False 6 12 Refocus if open True True False start True True True 1 0 Hide on lose focus True True False start True True True 0 1 Start fullscreen True True False start True True 1 1 Stay on top True True False False start True True True 0 0 Show tab bar True True False start True True 0 2 Use VTE titles for tab names True True False start True True True 1 2 Abbreviate directories in tab names True True False start True True True 0 3 True False 6 True False center Max tab name length: True False False 0 200 True True GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK 0 max_tab_name_length_adj 1 True True False True 1 0 4 2 Set window title to current tab name True True False start True True 1 3 True False <b>Main Window Options</b> True False True 0 True False 0 none True False 6 6 12 True False 6 Bottom align window instead of top align True True False start True True 0 0 Appear on mouse display True True False start True True 0 1 True False True True False start Appear on display: True True False False 0 True False True True 1 0 2 Place tabs on top True True False start True True 0 3 True False <b>Placement</b> True False True 1 True False 12 12 0 none True False 6 6 True False 8 12 True False start Horizontal Alignment: True 0 0 True False 13 True Left radiobutton_align_left True True False start True True True radiobutton_align_right True True 0 Center radiobutton_align_center True True False start True True True radiobutton_align_left True True 1 Right radiobutton_align_right True True False start True True True radiobutton_align_left True True 2 1 0 True False start Height: True 0 1 True False start Width: True 0 2 300 True True window_height_ajustment 100 False 1 1 300 True True window_width_adjustment False 1 2 True True window_vertical_displacement_adjustment True 2 1 True False Displacement in pixels 2 0 True True window_horizontal_displacement_adjustment True 2 2 True False <b>Geometry</b> True False True 2 False True 0 1 True False 12 12 Main Window label_main_window 1 False True False 12 12 6 vertical True False 0 none True False 12 True False vertical 6 True False start 4 160 True False start Default interpreter: True True False 0 200 True False True True 1 False False 0 True False start 4 4 vertical 6 _Run command as a login shell True True False start True True False False 0 True False start 25 This might not work on all shells, make sure that your shell supports the --login option False True True 1 _Open new tab in current directory True True False start True True False False 2 False False 1 False True 0 2 True False 12 12 Shell True 2 False True False vertical True False 12 12 12 12 True False vertical True False 0 none True False 12 12 True False vertical 6 Show scrollbar True True False start True True True True 0 True False 160 True False Scrollback lines: True False False 0 200 True True GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK scrollback_lines 1 True True False True 1 True True 1 Infinite scrolling True True False start True False True 2 True False <b>Scrollbar</b> True False True 0 False True 0 True False 12 True False 0 none True False 12 True False 12 vertical 6 On output True True False start True True True True 0 On key stroke True True False start True True True True 1 True False <b>Scroll to Bottom</b> True False True 1 3 True False 12 12 Scrolling 3 False True False 10 vertical 12 True False 0 none True False 12 True False 12 4 16 True Use the system fixed width font True True False start True True 0 0 True False 6 8 True True False start 12 Font: True 0 0 True True False False Sans 12 Choose some font 1 0 True False start 12 Cursor shape: True 0 0 1 True False 0 Block I-Beam Underline 1 1 True False 12 Cursor blink mode: True 0 2 True False 0 Follow GTK+ setting Blink on Blink off 1 2 0 1 Allow bold font True True False start True True 0 2 Bold text is also bright (VTE >=0.52) True True False start True True 0 3 True False <b>General</b> True False True 0 True False 0 none True False 12 True False 12 6 6 True False start 12 Built-in schemes: True 0 0 True False 1 0 True False start start 12 Color palette: True 0 1 True False start start 12 Demo: True 0 2 True False 16 True False 4 4 True True 28 True True False 0 0 28 True True False 0 1 28 True True False 1 0 28 True True False 1 1 28 True True False 2 0 28 True True False 2 1 28 True True False 3 0 28 True True False 3 1 28 True True False 4 0 28 True True False 4 1 28 True True False 5 0 28 True True False 5 1 28 True True False 6 0 28 True True False 7 0 28 True True False 6 1 28 True True False 7 1 False True 0 True False 4 28 True True False 0 0 28 True True False 0 1 False True 1 1 1 50 True False vertical 1 2 True False <b>Palette</b> True False True 1 True False vertical 6 True False start <b>Effects</b> True False False 0 True False 12 True False 8 True False start 12 Transparency: True False True 0 True True transparency 1 False True True 1 True True 1 False True 2 4 True False 12 12 Appearance True 4 False True False vertical 2 True False 12 12 12 12 True False vertical True False 10 10 To change a shortcut simply click on its name. To disable a shortcut, press the "Backspace" key. False True 0 True False True True GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK True True 1 True True 0 5 True False 12 12 Keyboard shortcuts 5 False True False 10 vertical True False vertical True False 0 none True False 5 12 True False vertical 4 True False 5 True False vertical 5 300 True False Quick open is a feature allowing you to open a file directly into your favorite text editor by clicking on its filename when it appears in your terminal. See the list of currently supported text patterns used to extract filename below. True False False 0 False False 0 250 True False gtk-missing-image True False 1 True True 0 Enable Quick Open when Ctrl+clicking on a filename in the terminal True True False start True True False False 1 True False 8 True False Editor command line: True False True 0 True False True subl %(file_path)s:%(line_number)s code -g %(file_path)s:%(line_number)s atom %(file_path)s:%(line_number)s True True True 1 False True 2 True False 16 16 4 <small><i>Use the following elements in the open editor command line: - <b>%(file_path)s</b>: path to the file that has been clicked - <b>%(line_number)s</b>: if your editor supports it, you can directly open the file to a given line number when found on the screen. For example, for sublime, use <b>subl %(file_path)s:%(line_number)s</b> </i></small> True True False True 3 True False 0 none True False 12 True True in 50 True True False 15 False False True True 4 Quick open in current terminal True True False start True True False True 5 True True 0 True True 0 6 True False 12 12 Quick Open 6 False True False 0 True False 12 12 12 12 True False 0 none True False 12 12 True False vertical 6 True True False vertical True False 12 12 <small>In this dialog you can attach your own command or script to various guake events</small> True False False 0 True False 4 4 True True False start 12 On show: 0 0 True False start On start: True 0 1 400 True True 1 0 True True 1 1 False True 1 True True 0 7 True False 12 12 Hooks 7 False True False 10 0 none True False 12 True False vertical 6 True False <small><i><b>Note:</b> These options may cause some applications to behave incorrectly. They are only here to allow you to work around certain applications and operating systems that expect different terminal behavior.</i></small> True True False True 0 True False 4 4 True False _Backspace key generates: True 0 0 0 True False _Delete key generates: True 0 0 1 True False 0 ASCII DEL Escape sequence Control-H 1 0 True False 0 ASCII DEL Escape sequence Control-H 1 1 False True 1 True False 0 0 0 _Reset Compatibility Options to Defaults True True False True False False 4 8 True False 12 12 Compatibility 8 False True True 0 True True 1 True False 1 True False True True 0 True False 12 gtk-close 80 True True False 12 12 True False True 2 False True 2 guake-3.6.3/guake/data/search.glade000066400000000000000000000241261346623310400170760ustar00rootroot00000000000000 False dialog False vertical 2 False end Close True True True True True 1 False False 0 True False 1 1 12 12 12 12 True False vertical 6 True False 400 True True edit-find-symbolic False False True True 0 True False False True 1 True False 6 6 gtk-go-back True True True True True False True 0 gtk-go-forward True True True True True False True 1 False True 2 False True 0 Search forward True True False start True False True 1 Match case True True False start True False True 2 True False True False True True 0 True False start Current search direction: Backward False True 1 False True 3 False True 1 guake-3.6.3/guake/dbusiface.py000077500000000000000000000121671346623310400162260ustar00rootroot00000000000000# -*- coding: utf-8; -*- """ Copyright (C) 2007-2013 Guake authors This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA """ import logging import dbus import dbus.glib import dbus.service log = logging.getLogger(__name__) dbus.glib.threads_init() DBUS_PATH = '/org/guake3/RemoteControl' DBUS_NAME = 'org.guake3.RemoteControl' class DbusManager(dbus.service.Object): def __init__(self, guakeinstance): self.guake = guakeinstance self.bus = dbus.SessionBus() bus_name = dbus.service.BusName(DBUS_NAME, bus=self.bus) super(DbusManager, self).__init__(bus_name, DBUS_PATH) @dbus.service.method(DBUS_NAME) def show_hide(self): self.guake.show_hide() @dbus.service.method(DBUS_NAME) def show(self): self.guake.show() self.guake.set_terminal_focus() @dbus.service.method(DBUS_NAME) def show_from_remote(self): self.guake.show_from_remote() self.guake.set_terminal_focus() @dbus.service.method(DBUS_NAME) def hide(self): self.guake.hide() @dbus.service.method(DBUS_NAME) def hide_from_remote(self): self.guake.hide_from_remote() @dbus.service.method(DBUS_NAME) def fullscreen(self): self.guake.fullscreen() @dbus.service.method(DBUS_NAME, in_signature='s') def add_tab(self, directory=''): return self.guake.add_tab(directory) @dbus.service.method(DBUS_NAME, in_signature='i') def select_tab(self, tab_index=0): return self.guake.get_notebook().set_current_page(int(tab_index)) @dbus.service.method(DBUS_NAME, out_signature='i') def get_selected_tab(self): return self.guake.get_notebook().get_current_page() @dbus.service.method(DBUS_NAME, out_signature='s') def get_selected_tablabel(self): return self.guake.get_notebook( ).get_tab_text_index(self.guake.get_notebook().get_current_page()) @dbus.service.method(DBUS_NAME, out_signature='i') def get_tab_count(self): return len(self.guake.notebook_manager.get_terminals()) @dbus.service.method(DBUS_NAME, in_signature='s') def set_bgcolor(self, bgcolor): return self.guake.set_bgcolor(bgcolor) @dbus.service.method(DBUS_NAME, in_signature='s') def set_fgcolor(self, fgcolor): return self.guake.set_fgcolor(fgcolor) @dbus.service.method(DBUS_NAME, in_signature='s') def change_palette_name(self, palette_name): self.guake.change_palette_name(palette_name) @dbus.service.method(DBUS_NAME, in_signature='s') def execute_command(self, command): self.guake.execute_command(command) @dbus.service.method(DBUS_NAME, in_signature='i', out_signature='s') def get_tab_name(self, tab_index=0): return self.guake.get_notebook().get_tab_text_index(tab_index) @dbus.service.method(DBUS_NAME, in_signature='ss') def rename_tab_uuid(self, tab_uuid, new_text): self.guake.rename_tab_uuid(tab_uuid, new_text, True) @dbus.service.method(DBUS_NAME, in_signature='is') def rename_tab(self, tab_index, new_text): self.guake.get_notebook().rename_page(tab_index, new_text, True) @dbus.service.method(DBUS_NAME, in_signature='s') def rename_current_tab(self, new_text): self.guake.rename_current_tab(new_text, True) @dbus.service.method(DBUS_NAME) def show_about(self): self.guake.show_about() @dbus.service.method(DBUS_NAME) def show_prefs(self): self.guake.show_prefs() @dbus.service.method(DBUS_NAME) def quit(self): self.guake.quit() @dbus.service.method(DBUS_NAME, in_signature='i', out_signature='s') def get_gtktab_name(self, tab_index=0): return self.guake.get_notebook().get_tab_text_index(tab_index) @dbus.service.method(DBUS_NAME, out_signature='s') def get_selected_uuidtab(self): return self.guake.get_selected_uuidtab() @dbus.service.method(DBUS_NAME, in_signature='ss') def execute_command_by_uuid(self, tab_uuid, command): self.guake.execute_command_by_uuid(tab_uuid, command) @dbus.service.method(DBUS_NAME) def v_split_current_terminal(self): self.guake.get_notebook().get_current_terminal().get_parent().split_v() @dbus.service.method(DBUS_NAME) def h_split_current_terminal(self): self.guake.get_notebook().get_current_terminal().get_parent().split_h() @dbus.service.method(DBUS_NAME, in_signature='s') def execute_command_current_termbox(self, command): self.guake.get_notebook().get_current_terminal().execute_command(command) guake-3.6.3/guake/dialogs.py000066400000000000000000000101771346623310400157170ustar00rootroot00000000000000import gi gi.require_version('Gtk', '3.0') from gi.repository import Gtk from locale import gettext as _ class RenameDialog(Gtk.Dialog): def __init__(self, window, current_name): super().__init__( _("Rename tab"), window, Gtk.DialogFlags.MODAL | Gtk.DialogFlags.DESTROY_WITH_PARENT, (Gtk.STOCK_CANCEL, Gtk.ResponseType.REJECT, Gtk.STOCK_OK, Gtk.ResponseType.ACCEPT) ) self.entry = Gtk.Entry() self.entry.set_text(current_name) self.entry.set_property('can-default', True) self.entry.show() vbox = Gtk.VBox() vbox.set_border_width(6) vbox.show() self.set_size_request(300, -1) self.vbox.pack_start(vbox, True, True, 0) self.set_border_width(4) self.set_default_response(Gtk.ResponseType.ACCEPT) self.add_action_widget(self.entry, Gtk.ResponseType.ACCEPT) self.entry.reparent(vbox) def get_text(self): return self.entry.get_text() class PromptQuitDialog(Gtk.MessageDialog): """Prompts the user whether to quit/close a tab. """ def __init__(self, parent, procs, tabs, notebooks): super(PromptQuitDialog, self).__init__( parent, Gtk.DialogFlags.MODAL | Gtk.DialogFlags.DESTROY_WITH_PARENT, Gtk.MessageType.QUESTION, Gtk.ButtonsType.YES_NO ) if tabs == -1: primary_msg = _("Do you want to close the tab?") tab_str = '' notebooks_str = '' else: primary_msg = _("Do you really want to quit Guake?") if tabs == 1: tab_str = _(" and one tab open") else: tab_str = _(" and {0} tabs open").format(tabs) if notebooks > 1: notebooks_str = _(' on {0} workspaces').format(notebooks) else: notebooks_str = '' if procs == 0: proc_str = _("There are no processes running") elif procs == 1: proc_str = _("There is a process still running") else: proc_str = _("There are {0} processes still running").format(procs) self.set_markup(primary_msg) self.format_secondary_markup("{0}{1}{2}.".format(proc_str, tab_str, notebooks_str)) def quit(self): """Run the "are you sure" dialog for quitting Guake """ # Stop an open "close tab" dialog from obstructing a quit response = self.run() == Gtk.ResponseType.YES self.destroy() # Keep Guake focussed after dismissing tab-close prompt # if tab == -1: # self.window.present() return response def close_tab(self): response = self.run() == Gtk.ResponseType.YES self.destroy() # Keep Guake focussed after dismissing tab-close prompt # if tab == -1: # self.window.present() return response class SaveTerminalDialog(Gtk.FileChooserDialog): def __init__(self, terminal, window): super().__init__( _("Save to..."), window, Gtk.FileChooserAction.SAVE, (Gtk.STOCK_CANCEL, Gtk.ResponseType.CANCEL, Gtk.STOCK_SAVE, Gtk.ResponseType.OK) ) self.set_default_response(Gtk.ResponseType.OK) self.terminal = terminal self.parent_window = window def run(self): self.terminal.select_all() self.terminal.copy_clipboard() self.terminal.unselect_all() clipboard = Gtk.Clipboard.get_default(self.parent_window.get_display()) selection = clipboard.wait_for_text() if not selection: return selection = selection.rstrip() filter = Gtk.FileFilter() filter.set_name(_("All files")) filter.add_pattern("*") self.add_filter(filter) filter = Gtk.FileFilter() filter.set_name(_("Text and Logs")) filter.add_pattern("*.log") filter.add_pattern("*.txt") self.add_filter(filter) response = super().run() if response == Gtk.ResponseType.OK: filename = self.get_filename() with open(filename, "w") as f: f.write(selection) self.destroy() guake-3.6.3/guake/globals.py000066400000000000000000000065361346623310400157240ustar00rootroot00000000000000# -*- coding: utf-8; -*- """ Copyright (C) 2007-2013 Guake authors This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA """ import inspect import logging import os __all__ = [ 'ALIGN_BOTTOM', 'ALIGN_CENTER', 'ALIGN_LEFT', 'ALIGN_RIGHT', 'ALIGN_TOP', 'ALWAYS_ON_PRIMARY', 'NAME', ] log = logging.getLogger(__name__) def bindtextdomain(app_name, locale_dir=None): """ Bind the domain represented by app_name to the locale directory locale_dir. It has the effect of loading translations, enabling applications for different languages. app_name: a domain to look for translations, typically the name of an application. locale_dir: a directory with locales like locale_dir/lang_isocode/LC_MESSAGES/app_name.mo If omitted or None, then the current binding for app_name is used. """ import locale from locale import gettext as _ log.info("Local binding for app '%s', local dir: %s", app_name, locale_dir) locale.bindtextdomain(app_name, locale_dir) locale.textdomain(app_name) def is_run_from_git_workdir(): self_path = os.path.abspath(inspect.getfile(inspect.currentframe())) return os.path.exists('%s.in' % self_path) NAME = 'guake' ALIGN_CENTER, ALIGN_LEFT, ALIGN_RIGHT = range(3) ALIGN_TOP, ALIGN_BOTTOM = range(2) ALWAYS_ON_PRIMARY = -1 # TODO this is not as fancy as as it could be # pylint: disable=anomalous-backslash-in-string TERMINAL_MATCH_TAGS = ('schema', 'http', 'https', 'email', 'ftp') # Beware this is a PRCE (Perl) regular expression, not a Python one! # Edit: use regex101.com with PCRE syntax TERMINAL_MATCH_EXPRS = [ "(news:|telnet:|nntp:|file:\/|https?:|ftps?:|webcal:)\/\/([-[:alnum:]]+" "(:[-[:alnum:],?;.:\/!%$^\*&~\"#']+)?\@)?[-[:alnum:]]+(\.[-[:alnum:]]+)*" "(:[0-9]{1,5})?(\/[-[:alnum:]_$.+!*(),;:@&=?\/~#'%]*[^].> \t\r\n,\\\"])?", "(www|ftp)[-[:alnum:]]*\.[-[:alnum:]]+(\.[-[:alnum:]]+)*(:[0-9]{1,5})?" "(\/[-[:alnum:]_$.+!*(),;:@&=?\/~#%]*[^]'.>) \t\r\n,\\\"])?", "(mailto:)?[-[:alnum:]][-[:alnum:].]*@[-[:alnum:]]+\.[-[:alnum:]]+(\\.[-[:alnum:]]+)*" ] # tuple (title/quick matcher/filename and line number extractor) QUICK_OPEN_MATCHERS = [ ( "Python traceback", r"^\s*File\s\".*\",\sline\s[0-9]+", r"^\s*File\s\"(.*)\",\sline\s([0-9]+)", ), ( "Python pytest report", r"^\s.*\:\:[a-zA-Z0-9\_]+\s", r"^\s*(.*\:\:[a-zA-Z0-9\_]+)\s", ), ( "line starts by 'Filename:line' pattern (GCC/make). File path should exists.", r"^\s*[a-zA-Z0-9\/\_\-\.\ ]+\.?[a-zA-Z0-9]+\:[0-9]+", r"^\s*(.*)\:([0-9]+)", ) ] # Transparency max level (should be always 100) MAX_TRANSPARENCY = 100 # Tabs session schema version TABS_SESSION_SCHEMA_VERSION = 2 guake-3.6.3/guake/gsettings.py000066400000000000000000000341571346623310400163100ustar00rootroot00000000000000# -*- coding: utf-8; -*- """ Copyright (C) 2007-2013 Guake authors This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA """ import logging import subprocess from xml.sax.saxutils import escape as xml_escape import gi gi.require_version('Gtk', '3.0') gi.require_version('Vte', '2.91') # vte-0.38 from gi.repository import Gdk from gi.repository import Gio from gi.repository import Gtk from gi.repository import Pango from gi.repository import Vte from guake.utils import RectCalculator from guake.common import pixmapfile from locale import gettext as _ log = logging.getLogger(__name__) class GSettingHandler(): """Handles gconf changes, if any gconf variable is changed, a different method is called to handle this change. """ def __init__(self, guake_inst): """Constructor of GConfHandler, just add the guake dir to the gconf client and bind the keys to its handler methods. """ self.guake = guake_inst self.settings = guake_inst.settings settings = self.settings # Notification is not required for mouse_display/display-n because # set_final_window_rect polls gconf and is called whenever Guake is # shown or resized settings.general.onChangedValue('use-trayicon', self.trayicon_toggled) settings.general.onChangedValue('window-ontop', self.ontop_toggled) settings.general.onChangedValue('tab-ontop', self.tab_ontop_toggled) settings.general.onChangedValue('window-tabbar', self.tabbar_toggled) settings.general.onChangedValue('window-height', self.size_changed) settings.general.onChangedValue('window-width', self.size_changed) settings.general.onChangedValue('window-valignment', self.alignment_changed) settings.general.onChangedValue('window-halignment', self.alignment_changed) settings.general.onChangedValue('window-vertical-displacement', self.alignment_changed) settings.general.onChangedValue('window-horizontal-displacement', self.alignment_changed) settings.style.onChangedValue('cursor-blink-mode', self.cursor_blink_mode_changed) settings.style.onChangedValue('cursor-shape', self.cursor_shape_changed) settings.general.onChangedValue('use-scrollbar', self.scrollbar_toggled) settings.general.onChangedValue('history-size', self.history_size_changed) settings.general.onChangedValue('infinite-history', self.infinite_history_changed) settings.general.onChangedValue('scroll-output', self.keystroke_output) settings.general.onChangedValue('scroll-keystroke', self.keystroke_toggled) settings.general.onChangedValue('use-default-font', self.default_font_toggled) settings.styleFont.onChangedValue('style', self.fstyle_changed) settings.styleFont.onChangedValue('palette', self.fpalette_changed) settings.styleFont.onChangedValue('allow-bold', self.allow_bold_toggled) settings.styleFont.onChangedValue('bold-is-bright', self.bold_is_bright_toggled) settings.styleBackground.onChangedValue('transparency', self.bgtransparency_changed) settings.general.onChangedValue('compat-backspace', self.backspace_changed) settings.general.onChangedValue('compat-delete', self.delete_changed) settings.general.onChangedValue('custom-command_file', self.custom_command_file_changed) settings.general.onChangedValue('max-tab-name-length', self.max_tab_name_length_changed) settings.general.onChangedValue('abbreviate-tab-names', self.abbreviate_tab_names_changed) def custom_command_file_changed(self, settings, key, user_data): self.guake.load_custom_commands() def trayicon_toggled(self, settings, key, user_data): """If the gconf var use_trayicon be changed, this method will be called and will show/hide the trayicon. """ if hasattr(self.guake.tray_icon, 'set_status'): self.guake.tray_icon.set_status(settings.get_boolean(key)) else: self.guake.tray_icon.set_visible(settings.get_boolean(key)) def ontop_toggled(self, settings, key, user_data): """If the gconf var window_ontop be changed, this method will be called and will set the keep_above attribute in guake's main window. """ self.guake.window.set_keep_above(settings.get_boolean(key)) def tab_ontop_toggled(self, settings, key, user_data): """ tab_ontop changed """ self.guake.set_tab_position() def tabbar_toggled(self, settings, key, user_data): """If the gconf var use_tabbar be changed, this method will be called and will show/hide the tabbar. """ if settings.get_boolean(key): for n in self.guake.notebook_manager.iter_notebooks(): n.set_property("show-tabs", True) else: for n in self.guake.notebook_manager.iter_notebooks(): n.set_property("show-tabs", False) def alignment_changed(self, settings, key, user_data): """If the gconf var window_halignment be changed, this method will be called and will call the move function in guake. """ RectCalculator.set_final_window_rect(self.settings, self.guake.window) self.guake.set_tab_position() self.guake.force_move_if_shown() def size_changed(self, settings, key, user_data): """If the gconf var window_height or window_width are changed, this method will be called and will call the resize function in guake. """ RectCalculator.set_final_window_rect(self.settings, self.guake.window) def cursor_blink_mode_changed(self, settings, key, user_data): """Called when cursor blink mode settings has been changed """ for term in self.guake.notebook_manager.iter_terminals(): term.set_property("cursor-blink-mode", settings.get_int(key)) def cursor_shape_changed(self, settings, key, user_data): """Called when the cursor shape settings has been changed """ for term in self.guake.notebook_manager.iter_terminals(): term.set_property("cursor-shape", settings.get_int(key)) def scrollbar_toggled(self, settings, key, user_data): """If the gconf var use_scrollbar be changed, this method will be called and will show/hide scrollbars of all terminals open. """ for term in self.guake.notebook_manager.iter_terminals(): # There is an hbox in each tab of the main notebook and it # contains a Terminal and a Scrollbar. Since only have the # Terminal here, we're going to use this to get the # scrollbar and hide/show it. hbox = term.get_parent() if hbox is None: continue terminal, scrollbar = hbox.get_children() if settings.get_boolean(key): scrollbar.show() else: scrollbar.hide() def history_size_changed(self, settings, key, user_data): """If the gconf var history_size be changed, this method will be called and will set the scrollback_lines property of all terminals open. """ lines = settings.get_int(key) for i in self.guake.notebook_manager.iter_terminals(): i.set_scrollback_lines(lines) def infinite_history_changed(self, settings, key, user_data): if settings.get_boolean(key): lines = -1 else: lines = self.settings.general.get_int("history-size") for i in self.guake.notebook_manager.iter_terminals(): i.set_scrollback_lines(lines) def keystroke_output(self, settings, key, user_data): """If the gconf var scroll_output be changed, this method will be called and will set the scroll_on_output in all terminals open. """ for i in self.guake.notebook_manager.iter_terminals(): i.set_scroll_on_output(settings.get_boolean(key)) def keystroke_toggled(self, settings, key, user_data): """If the gconf var scroll_keystroke be changed, this method will be called and will set the scroll_on_keystroke in all terminals open. """ for i in self.guake.notebook_manager.iter_terminals(): i.set_scroll_on_keystroke(settings.get_boolean(key)) def default_font_toggled(self, settings, key, user_data): """If the gconf var use_default_font be changed, this method will be called and will change the font style to the gnome default or to the chosen font in style/font/style in all terminals open. """ font_name = None if settings.get_boolean(key): gio_settings = Gio.Settings('org.gnome.desktop.interface') font_name = gio_settings.get_string('monospace-font-name') else: font_name = self.settings.styleFont.get_string('style') if not font_name: log.error("Error: unable to find font name (%s)", font_name) return font = Pango.FontDescription(font_name) if not font: log.error("Error: unable to load font (%s)", font_name) return for i in self.guake.notebook_manager.iter_terminals(): i.set_font(font) def allow_bold_toggled(self, settings, key, user_data): """If the gconf var allow_bold is changed, this method will be called and will change the VTE terminal o. displaying characters in bold font. """ for term in self.guake.notebook_manager.iter_terminals(): term.set_allow_bold(settings.get_boolean(key)) def bold_is_bright_toggled(self, settings, key, user_data): """If the dconf var bold_is_bright is changed, this method will be called and will change the VTE terminal to toggle auto-brightened bold text. """ try: for term in self.guake.notebook_manager.iter_terminals(): term.set_bold_is_bright(settings.get_boolean(key)) except: # pylint: disable=bare-except log.error("set_bold_is_bright not supported by your version of VTE") def palette_font_and_background_color_toggled(self, settings, key, user_data): """If the gconf var use_palette_font_and_background_color be changed, this method will be called and will change the font color and the background color to the color defined in the palette. """ self.settings.styleFont.triggerOnChangedValue(self.settings.styleFont, 'palette') def fstyle_changed(self, settings, key, user_data): """If the gconf var style/font/style be changed, this method will be called and will change the font style in all terminals open. """ font = Pango.FontDescription(settings.get_string(key)) for i in self.guake.notebook_manager.iter_terminals(): i.set_font(font) def fpalette_changed(self, settings, key, user_data): """If the gconf var style/font/palette be changed, this method will be called and will change the color scheme in all terminals open. """ self.guake.set_colors_from_settings() def bgtransparency_changed(self, settings, key, user_data): """If the gconf var style/background/transparency be changed, this method will be called and will set the saturation and transparency properties in all terminals open. """ self.guake.set_background_color_from_settings() def getEraseBinding(self, str): if str == "auto": return Vte.EraseBinding(0) if str == "ascii-backspace": return Vte.EraseBinding(1) if str == "ascii-delete": return Vte.EraseBinding(2) if str == "delete-sequence": return Vte.EraseBinding(3) if str == "tty": return Vte.EraseBinding(4) def backspace_changed(self, settings, key, user_data): """If the gconf var compat_backspace be changed, this method will be called and will change the binding configuration in all terminals open. """ for i in self.guake.notebook_manager.iter_terminals(): i.set_backspace_binding(self.getEraseBinding(settings.get_string(key))) def delete_changed(self, settings, key, user_data): """If the gconf var compat_delete be changed, this method will be called and will change the binding configuration in all terminals open. """ for i in self.guake.notebook_manager.iter_terminals(): i.set_delete_binding(self.getEraseBinding(settings.get_string(key))) def max_tab_name_length_changed(self, settings, key, user_data): """If the gconf var max_tab_name_length be changed, this method will be called and will set the tab name length limit. """ # avoid get window title before terminal is ready if self.guake.notebook_manager.get_current_notebook().get_current_terminal() is None: return # avoid get window title before terminal is ready if self.guake.notebook_manager.get_current_notebook().get_current_terminal( ).get_window_title() is None: return self.guake.recompute_tabs_titles() def abbreviate_tab_names_changed(self, settings, key, user_data): """If the gconf var abbreviate_tab_names be changed, this method will be called and will update tab names. """ abbreviate_tab_names = settings.get_boolean('abbreviate-tab-names') self.guake.abbreviate = abbreviate_tab_names self.guake.recompute_tabs_titles() guake-3.6.3/guake/guake_app.py000066400000000000000000001461131346623310400162310ustar00rootroot00000000000000# -*- coding: utf-8; -*- """ Copyright (C) 2007-2012 Lincoln de Sousa Copyright (C) 2007 Gabriel Falcão This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA """ import json import logging import os import platform import shutil import subprocess import sys import time as pytime import traceback import uuid from pathlib import Path from urllib.parse import quote_plus from xml.sax.saxutils import escape as xml_escape import gi gi.require_version('Gtk', '3.0') gi.require_version('Gdk', '3.0') gi.require_version('Vte', '2.91') # vte-0.42 gi.require_version('Keybinder', '3.0') from gi.repository import GLib from gi.repository import GObject from gi.repository import Gdk from gi.repository import GdkX11 from gi.repository import Gio from gi.repository import Gtk from gi.repository import Keybinder from gi.repository import Vte import cairo from guake import gtk_version from guake import guake_version from guake import notifier from guake import vte_version from guake.about import AboutDialog from guake.common import gladefile from guake.common import pixmapfile from guake.dialogs import PromptQuitDialog from guake.globals import ALIGN_BOTTOM from guake.globals import ALIGN_CENTER from guake.globals import ALIGN_LEFT from guake.globals import ALIGN_RIGHT from guake.globals import ALIGN_TOP from guake.globals import ALWAYS_ON_PRIMARY from guake.globals import MAX_TRANSPARENCY from guake.globals import NAME from guake.globals import TABS_SESSION_SCHEMA_VERSION from guake.gsettings import GSettingHandler from guake.guake_logging import setupLogging from guake.keybindings import Keybindings from guake.notebook import NotebookManager from guake.notebook import TerminalNotebook from guake.palettes import PALETTES from guake.paths import LOCALE_DIR from guake.paths import SCHEMA_DIR from guake.paths import try_to_compile_glib_schemas from guake.prefs import PrefsDialog from guake.prefs import refresh_user_start from guake.settings import Settings from guake.simplegladeapp import SimpleGladeApp from guake.terminal import GuakeTerminal from guake.theme import patch_gtk_theme from guake.theme import select_gtk_theme from guake.utils import FullscreenManager from guake.utils import HidePrevention from guake.utils import RectCalculator from guake.utils import TabNameUtils from guake.utils import get_server_time from guake.utils import save_tabs_when_changed from locale import gettext as _ log = logging.getLogger(__name__) instance = None RESPONSE_FORWARD = 0 RESPONSE_BACKWARD = 1 # Disable find feature until python-vte hasn't been updated enable_find = False GObject.threads_init() # Setting gobject program name GObject.set_prgname(NAME) GDK_WINDOW_STATE_WITHDRAWN = 1 GDK_WINDOW_STATE_ICONIFIED = 2 GDK_WINDOW_STATE_STICKY = 8 GDK_WINDOW_STATE_ABOVE = 32 class Guake(SimpleGladeApp): """Guake main class. Handles specialy the main window. """ def __init__(self): def load_schema(): return Gio.SettingsSchemaSource.new_from_directory( SCHEMA_DIR, Gio.SettingsSchemaSource.get_default(), False ) try: schema_source = load_schema() except GLib.Error: # pylint: disable=catching-non-exception log.exception("Unable to load the GLib schema, try to compile it") try_to_compile_glib_schemas() schema_source = load_schema() self.settings = Settings(schema_source) super(Guake, self).__init__(gladefile('guake.glade')) select_gtk_theme(self.settings) patch_gtk_theme(self.get_widget("window-root").get_style_context(), self.settings) self.add_callbacks(self) log.info('Guake Terminal %s', guake_version()) log.info('VTE %s', vte_version()) log.info('Gtk %s', gtk_version()) self.hidden = True self.forceHide = False # trayicon! Using SVG handles better different OS trays # img = pixmapfile('guake-tray.svg') # trayicon! img = pixmapfile('guake-tray.png') try: import appindicator except ImportError: self.tray_icon = Gtk.StatusIcon() self.tray_icon.set_from_file(img) self.tray_icon.set_tooltip_text(_("Guake Terminal")) self.tray_icon.connect('popup-menu', self.show_menu) self.tray_icon.connect('activate', self.show_hide) else: # TODO PORT test this on a system with app indicator self.tray_icon = appindicator.Indicator( _("guake-indicator"), _("guake-tray"), appindicator.CATEGORY_OTHER ) self.tray_icon.set_icon(img) self.tray_icon.set_status(appindicator.STATUS_ACTIVE) menu = self.get_widget('tray-menu') show = Gtk.MenuItem(_('Show')) show.set_sensitive(True) show.connect('activate', self.show_hide) show.show() menu.prepend(show) self.tray_icon.set_menu(menu) # important widgets self.window = self.get_widget('window-root') self.window.set_keep_above(True) self.mainframe = self.get_widget('mainframe') self.mainframe.remove(self.get_widget('notebook-teminals')) # Pending restore for terminal split after show-up # [(RootTerminalBox, TerminaBox, panes), ...] self.pending_restore_page_split = [] self._failed_restore_page_split = [] # Workspace tracking self.notebook_manager = NotebookManager( self.window, self.mainframe, self.settings.general.get_boolean('workspace-specific-tab-sets'), self.terminal_spawned, self.page_deleted ) self.notebook_manager.connect('notebook-created', self.notebook_created) self.notebook_manager.set_workspace(0) self.set_tab_position() # check and set ARGB for real transparency color = self.window.get_style_context().get_background_color(Gtk.StateFlags.NORMAL) self.window.set_app_paintable(True) def draw_callback(widget, cr): if widget.transparency: cr.set_source_rgba(color.red, color.green, color.blue, 1) else: cr.set_source_rgb(0, 0, 0) cr.set_operator(cairo.OPERATOR_SOURCE) cr.paint() cr.set_operator(cairo.OPERATOR_OVER) screen = self.window.get_screen() visual = screen.get_rgba_visual() if visual and screen.is_composited(): self.window.set_visual(visual) self.window.transparency = True else: log.warn('System doesn\'t support transparency') self.window.transparency = False self.window.set_visual(screen.get_system_visual()) self.window.connect('draw', draw_callback) # Debounce accel_search_terminal self.prev_accel_search_terminal_time = 0.0 # holds the timestamp of the losefocus event self.losefocus_time = 0 # holds the timestamp of the previous show/hide action self.prev_showhide_time = 0 # Controls the transparency state needed for function accel_toggle_transparency self.transparency_toggled = False # store the default window title to reset it when update is not wanted self.default_window_title = self.window.get_title() self.abbreviate = False self.window.connect('focus-out-event', self.on_window_losefocus) # Handling the delete-event of the main window to avoid # problems when closing it. def destroy(*args): self.hide() return True def window_event(*args): return self.window_event(*args) self.window.connect('delete-event', destroy) self.window.connect('window-state-event', window_event) # this line is important to resize the main window and make it # smaller. # TODO PORT do we still need this? # self.window.set_geometry_hints(min_width=1, min_height=1) # special trick to avoid the "lost guake on Ubuntu 'Show Desktop'" problem. # DOCK makes the window foundable after having being "lost" after "Show # Desktop" self.window.set_type_hint(Gdk.WindowTypeHint.DOCK) # Restore back to normal behavior self.window.set_type_hint(Gdk.WindowTypeHint.NORMAL) # loading and setting up configuration stuff GSettingHandler(self) Keybinder.init() self.hotkeys = Keybinder Keybindings(self) self.load_config() if self.settings.general.get_boolean('start-fullscreen'): self.fullscreen() refresh_user_start(self.settings) # Restore tabs when startup if self.settings.general.get_boolean('restore-tabs-startup'): self.restore_tabs(suppress_notify=True) # Pop-up that shows that guake is working properly (if not # unset in the preferences windows) if self.settings.general.get_boolean('use-popup'): key = self.settings.keybindingsGlobal.get_string('show-hide') keyval, mask = Gtk.accelerator_parse(key) label = Gtk.accelerator_get_label(keyval, mask) filename = pixmapfile('guake-notification.png') notifier.showMessage( _("Guake Terminal"), _("Guake is now running,\n" "press {!s} to use it.").format(xml_escape(label)), filename ) log.info("Guake initialized") def get_notebook(self): return self.notebook_manager.get_current_notebook() def notebook_created(self, nm, notebook, key): notebook.attach_guake(self) # Tracking when reorder page notebook.connect('page-reordered', self.on_page_reorder) # new color methods should be moved to the GuakeTerminal class def _load_palette(self): colorRGBA = Gdk.RGBA(0, 0, 0, 0) paletteList = list() for color in self.settings.styleFont.get_string("palette").split(':'): colorRGBA.parse(color) paletteList.append(colorRGBA.copy()) return paletteList def _get_background_color(self, palette_list): if len(palette_list) > 16: bg_color = palette_list[17] else: bg_color = Gdk.RGBA(0, 0, 0, 0.9) return self._apply_transparency_to_color(bg_color) def _apply_transparency_to_color(self, bg_color): transparency = self.settings.styleBackground.get_int('transparency') if not self.transparency_toggled: bg_color.alpha = 1 / 100 * transparency else: bg_color.alpha = 1 return bg_color def set_background_color_from_settings(self): self.set_colors_from_settings() def get_bgcolor(self): palette_list = self._load_palette() return self._get_background_color(palette_list) def get_fgcolor(self): palette_list = self._load_palette() if len(palette_list) > 16: font_color = palette_list[16] else: font_color = Gdk.RGBA(0, 0, 0, 0) return font_color def set_colors_from_settings(self): bg_color = self.get_bgcolor() font_color = self.get_fgcolor() palette_list = self._load_palette() for i in self.get_notebook().iter_terminals(): i.set_color_foreground(font_color) i.set_color_bold(font_color) i.set_colors(font_color, bg_color, palette_list[:16]) def set_bgcolor(self, bgcolor): if isinstance(bgcolor, str): c = Gdk.RGBA(0, 0, 0, 0) log.debug("Building Gdk Color from: %r", bgcolor) c.parse("#" + bgcolor) bgcolor = c if not isinstance(bgcolor, Gdk.RGBA): raise TypeError("color should be Gdk.RGBA, is: {!r}".format(bgcolor)) bgcolor = self._apply_transparency_to_color(bgcolor) log.debug("setting background color to: %r", bgcolor) page_num = self.get_notebook().get_current_page() for terminal in self.get_notebook().get_nth_page(page_num).iter_terminals(): terminal.set_color_background(bgcolor) def set_fgcolor(self, fgcolor): if isinstance(fgcolor, str): c = Gdk.RGBA(0, 0, 0, 0) log.debug("Building Gdk Color from: %r", fgcolor) c.parse("#" + fgcolor) fgcolor = c if not isinstance(fgcolor, Gdk.RGBA): raise TypeError("color should be Gdk.RGBA, is: {!r}".format(fgcolor)) log.debug("setting background color to: %r", fgcolor) page_num = self.get_notebook().get_current_page() for terminal in self.get_notebook().get_nth_page(page_num).iter_terminals(): terminal.set_color_foreground(fgcolor) def change_palette_name(self, palette_name): if isinstance(palette_name, str): if palette_name not in PALETTES: log.info("Palette name %s not found", palette_name) return log.debug("Settings palette name to %s", palette_name) self.settings.styleFont.set_string('palette', PALETTES[palette_name]) self.settings.styleFont.set_string('palette-name', palette_name) self.set_colors_from_settings() def execute_command(self, command, tab=None): # TODO DBUS_ONLY """Execute the `command' in the `tab'. If tab is None, the command will be executed in the currently selected tab. Command should end with '\n', otherwise it will be appended to the string. """ # TODO CONTEXTMENU this has to be rewriten and only serves the # dbus interface, maybe this should be moved to dbusinterface.py if not self.get_notebook().has_page(): self.add_tab() if command[-1] != '\n': command += '\n' terminal = self.get_notebook().get_current_terminal() terminal.feed_child(command) def execute_command_by_uuid(self, tab_uuid, command): # TODO DBUS_ONLY """Execute the `command' in the tab whose terminal has the `tab_uuid' uuid """ if command[-1] != '\n': command += '\n' try: tab_uuid = uuid.UUID(tab_uuid) page_index, = ( index for index, t in enumerate(self.get_notebook().iter_terminals()) if t.get_uuid() == tab_uuid ) except ValueError: pass else: terminals = self.get_notebook().get_terminals_for_page(page_index) for current_vte in terminals: current_vte.feed_child(command) def on_window_losefocus(self, window, event): """Hides terminal main window when it loses the focus and if the window_losefocus gconf variable is True. """ if not HidePrevention(self.window).may_hide(): return value = self.settings.general.get_boolean('window-losefocus') visible = window.get_property('visible') self.losefocus_time = get_server_time(self.window) if visible and value: log.info("Hiding on focus lose") self.hide() def show_menu(self, status_icon, button, activate_time): """Show the tray icon menu. """ menu = self.get_widget('tray-menu') menu.popup(None, None, None, Gtk.StatusIcon.position_menu, button, activate_time) def show_about(self, *args): # TODO DBUS ONLY # TODO TRAY ONLY """Hides the main window and creates an instance of the About Dialog. """ self.hide() AboutDialog() def show_prefs(self, *args): # TODO DBUS ONLY # TODO TRAY ONLY """Hides the main window and creates an instance of the Preferences window. """ self.hide() PrefsDialog(self.settings).show() def is_iconified(self): # TODO this is "dead" code only gets called to log output or in out commented code if self.window: cur_state = int(self.window.get_state()) return bool(cur_state & GDK_WINDOW_STATE_ICONIFIED) return False def window_event(self, window, event): state = event.new_window_state log.debug("Received window state event: %s", state) def show_hide(self, *args): """Toggles the main window visibility """ log.debug("Show_hide called") if self.forceHide: self.forceHide = False return if not HidePrevention(self.window).may_hide(): return if not self.win_prepare(): return if not self.window.get_property('visible'): log.info("Showing the terminal") self.show() self.set_terminal_focus() return # Disable the focus_if_open feature # - if doesn't work seamlessly on all system # - self.window.window.get_state doesn't provides us the right information on all # systems, especially on MATE/XFCE # # if self.client.get_bool(KEY('/general/focus_if_open')): # restore_focus = False # if self.window.window: # state = int(self.window.window.get_state()) # if ((state & GDK_WINDOW_STATE_STICKY or # state & GDK_WINDOW_STATE_WITHDRAWN # )): # restore_focus = True # else: # restore_focus = True # if not self.hidden: # restore_focus = True # if restore_focus: # log.debug("DBG: Restoring the focus to the terminal") # self.hide() # self.show() # self.window.window.focus() # self.set_terminal_focus() # return log.info("Hiding the terminal") self.hide() def show_focus(self, *args): self.win_prepare() self.show() self.set_terminal_focus() def win_prepare(self, *args): event_time = self.hotkeys.get_current_event_time() if not self.settings.general.get_boolean('window-refocus') and \ self.window.get_window() and self.window.get_property('visible'): pass elif not self.settings.general.get_boolean('window-losefocus'): if self.losefocus_time and self.losefocus_time < event_time: if self.window.get_window() and self.window.get_property('visible') and \ not self.window.get_window().get_state() & Gdk.WindowState.FOCUSED: log.debug("DBG: Restoring the focus to the terminal") self.window.get_window().focus(event_time) self.set_terminal_focus() self.losefocus_time = 0 return False elif self.losefocus_time and self.settings.general.get_boolean('window-losefocus'): if self.losefocus_time >= event_time and \ (self.losefocus_time - event_time) < 10: self.losefocus_time = 0 return False # limit rate at which the visibility can be toggled. if self.prev_showhide_time and event_time and \ (event_time - self.prev_showhide_time) < 65: return False self.prev_showhide_time = event_time log.debug("") log.debug("=" * 80) log.debug("Window display") if self.window: cur_state = int(self.window.get_state()) is_sticky = bool(cur_state & GDK_WINDOW_STATE_STICKY) is_withdrawn = bool(cur_state & GDK_WINDOW_STATE_WITHDRAWN) is_above = bool(cur_state & GDK_WINDOW_STATE_ABOVE) is_iconified = self.is_iconified() log.debug("gtk.gdk.WindowState = %s", cur_state) log.debug("GDK_WINDOW_STATE_STICKY? %s", is_sticky) log.debug("GDK_WINDOW_STATE_WITHDRAWN? %s", is_withdrawn) log.debug("GDK_WINDOW_STATE_ABOVE? %s", is_above) log.debug("GDK_WINDOW_STATE_ICONIFIED? %s", is_iconified) return True return False def restore_pending_terminal_split(self): # Restore pending terminal split # XXX: Consider refactor how to handle failed restore page split self.pending_restore_page_split = self._failed_restore_page_split self._failed_restore_page_split = [] for root, box, panes in self.pending_restore_page_split: if ( self.window.get_property('visible') and root.get_notebook() == self.notebook_manager.get_current_notebook() ): root.restore_box_layout(box, panes) else: # Consider failed if the window is not visible self._failed_restore_page_split.append((root, box, panes)) def show(self): """Shows the main window and grabs the focus on it. """ self.hidden = False # setting window in all desktops window_rect = RectCalculator.set_final_window_rect(self.settings, self.window) self.window.stick() # add tab must be called before window.show to avoid a # blank screen before adding the tab. if not self.get_notebook().has_page(): self.add_tab() self.window.set_keep_below(False) if not FullscreenManager(self.settings, self.window).is_fullscreen(): self.window.show_all() # this is needed because self.window.show_all() results in showing every # thing which includes the scrollbar too self.settings.general.triggerOnChangedValue(self.settings.general, "use-scrollbar") # move the window even when in fullscreen-mode log.debug("Moving window to: %r", window_rect) self.window.move(window_rect.x, window_rect.y) # this works around an issue in fluxbox if not FullscreenManager(self.settings, self.window).is_fullscreen(): self.settings.general.triggerOnChangedValue(self.settings.general, 'window-height') time = get_server_time(self.window) # TODO PORT this # When minized, the window manager seems to refuse to resume # log.debug("self.window: %s. Dir=%s", type(self.window), dir(self.window)) # is_iconified = self.is_iconified() # if is_iconified: # log.debug("Is iconified. Ubuntu Trick => " # "removing skip_taskbar_hint and skip_pager_hint " # "so deiconify can work!") # self.get_widget('window-root').set_skip_taskbar_hint(False) # self.get_widget('window-root').set_skip_pager_hint(False) # self.get_widget('window-root').set_urgency_hint(False) # log.debug("get_skip_taskbar_hint: {}".format( # self.get_widget('window-root').get_skip_taskbar_hint())) # log.debug("get_skip_pager_hint: {}".format( # self.get_widget('window-root').get_skip_pager_hint())) # log.debug("get_urgency_hint: {}".format( # self.get_widget('window-root').get_urgency_hint())) # glib.timeout_add_seconds(1, lambda: self.timeout_restore(time)) # log.debug("order to present and deiconify") self.window.present() self.window.deiconify() self.window.show() self.window.get_window().focus(time) self.window.set_type_hint(Gdk.WindowTypeHint.DOCK) self.window.set_type_hint(Gdk.WindowTypeHint.NORMAL) # log.debug("Restoring skip_taskbar_hint and skip_pager_hint") # if is_iconified: # self.get_widget('window-root').set_skip_taskbar_hint(False) # self.get_widget('window-root').set_skip_pager_hint(False) # self.get_widget('window-root').set_urgency_hint(False) # This is here because vte color configuration works only after the # widget is shown. self.settings.styleFont.triggerOnChangedValue(self.settings.styleFont, 'color') self.settings.styleBackground.triggerOnChangedValue(self.settings.styleBackground, 'color') log.debug("Current window position: %r", self.window.get_position()) self.restore_pending_terminal_split() self.execute_hook('show') def hide_from_remote(self): """ Hides the main window of the terminal and sets the visible flag to False. """ log.debug("hide from remote") self.forceHide = True self.hide() def show_from_remote(self): """Show the main window of the terminal and sets the visible flag to False. """ log.debug("show from remote") self.forceHide = True self.show() def hide(self): """Hides the main window of the terminal and sets the visible flag to False. """ if not HidePrevention(self.window).may_hide(): return self.hidden = True self.get_widget('window-root').unstick() self.window.hide() # Don't use hide_all here! def force_move_if_shown(self): if not self.hidden: # when displayed, GTK might refuse to move the window (X or Y position). Just hide and # redisplay it so the final position is correct log.debug("FORCING HIDE") self.hide() log.debug("FORCING SHOW") self.show() # -- configuration -- def load_config(self): """"Just a proxy for all the configuration stuff. """ self.settings.general.triggerOnChangedValue(self.settings.general, 'use-trayicon') self.settings.general.triggerOnChangedValue(self.settings.general, 'prompt-on-quit') self.settings.general.triggerOnChangedValue(self.settings.general, 'prompt-on-close-tab') self.settings.general.triggerOnChangedValue(self.settings.general, 'window-tabbar') self.settings.general.triggerOnChangedValue(self.settings.general, 'mouse-display') self.settings.general.triggerOnChangedValue(self.settings.general, 'display-n') self.settings.general.triggerOnChangedValue(self.settings.general, 'window-ontop') if not FullscreenManager(self.settings, self.window).is_fullscreen(): self.settings.general.triggerOnChangedValue(self.settings.general, 'window-height') self.settings.general.triggerOnChangedValue(self.settings.general, 'window-width') self.settings.general.triggerOnChangedValue(self.settings.general, 'use-scrollbar') self.settings.general.triggerOnChangedValue(self.settings.general, 'history-size') self.settings.general.triggerOnChangedValue(self.settings.general, 'infinite-history') self.settings.general.triggerOnChangedValue(self.settings.general, 'use-vte-titles') self.settings.general.triggerOnChangedValue(self.settings.general, 'set-window-title') self.settings.general.triggerOnChangedValue(self.settings.general, 'abbreviate-tab-names') self.settings.general.triggerOnChangedValue(self.settings.general, 'max-tab-name-length') self.settings.general.triggerOnChangedValue(self.settings.general, 'quick-open-enable') self.settings.general.triggerOnChangedValue( self.settings.general, 'quick-open-command-line' ) self.settings.style.triggerOnChangedValue(self.settings.style, 'cursor-shape') self.settings.styleFont.triggerOnChangedValue(self.settings.styleFont, 'style') self.settings.styleFont.triggerOnChangedValue(self.settings.styleFont, 'palette') self.settings.styleFont.triggerOnChangedValue(self.settings.styleFont, 'palette-name') self.settings.styleFont.triggerOnChangedValue(self.settings.styleFont, 'allow-bold') self.settings.styleBackground.triggerOnChangedValue( self.settings.styleBackground, 'transparency' ) self.settings.general.triggerOnChangedValue(self.settings.general, 'use-default-font') self.settings.general.triggerOnChangedValue(self.settings.general, 'compat-backspace') self.settings.general.triggerOnChangedValue(self.settings.general, 'compat-delete') def accel_search_terminal(self, *args): nb = self.get_notebook() term = nb.get_current_terminal() box = nb.get_nth_page(nb.find_page_index_by_terminal(term)) # Debounce it current_time = pytime.time() if current_time - self.prev_accel_search_terminal_time < 0.3: return self.prev_accel_search_terminal_time = current_time if box.search_revealer.get_reveal_child(): if box.search_entry.has_focus(): box.hide_search_box() else: # The box was showed, but out of focus # Don't hide it, re-grab the focus to search entry box.search_entry.grab_focus() else: box.show_search_box() def accel_quit(self, *args): """Callback to prompt the user whether to quit Guake or not. """ procs = self.notebook_manager.get_running_fg_processes_count() tabs = self.notebook_manager.get_n_pages() notebooks = self.notebook_manager.get_n_notebooks() prompt_cfg = self.settings.general.get_boolean('prompt-on-quit') prompt_tab_cfg = self.settings.general.get_int('prompt-on-close-tab') # "Prompt on tab close" config overrides "prompt on quit" config if prompt_cfg or (prompt_tab_cfg == 1 and procs > 0) or (prompt_tab_cfg == 2): log.debug("Remaining procs=%r", procs) if PromptQuitDialog(self.window, procs, tabs, notebooks).quit(): log.info("Quitting Guake") Gtk.main_quit() else: log.info("Quitting Guake") Gtk.main_quit() def accel_reset_terminal(self, *args): # TODO KEYBINDINGS ONLY """Callback to reset and clean the terminal""" HidePrevention(self.window).prevent() current_term = self.get_notebook().get_current_terminal() current_term.reset(True, True) HidePrevention(self.window).allow() return True def accel_zoom_in(self, *args): """Callback to zoom in. """ for term in self.get_notebook().iter_terminals(): term.increase_font_size() return True def accel_zoom_out(self, *args): """Callback to zoom out. """ for term in self.get_notebook().iter_terminals(): term.decrease_font_size() return True def accel_increase_height(self, *args): """Callback to increase height. """ height = self.settings.general.get_int('window-height') self.settings.general.set_int('window-height', min(height + 2, 100)) return True def accel_decrease_height(self, *args): """Callback to decrease height. """ height = self.settings.general.get_int('window-height') self.settings.general.set_int('window-height', max(height - 2, 0)) return True def accel_increase_transparency(self, *args): """Callback to increase transparency. """ transparency = self.settings.styleBackground.get_int('transparency') if int(transparency) - 2 > 0: self.settings.styleBackground.set_int('transparency', int(transparency) - 2) return True def accel_decrease_transparency(self, *args): """Callback to decrease transparency. """ transparency = self.settings.styleBackground.get_int('transparency') if int(transparency) + 2 < MAX_TRANSPARENCY: self.settings.styleBackground.set_int('transparency', int(transparency) + 2) return True def accel_toggle_transparency(self, *args): """Callback to toggle transparency. """ self.transparency_toggled = not self.transparency_toggled self.settings.styleBackground.triggerOnChangedValue( self.settings.styleBackground, 'transparency' ) return True def accel_add(self, *args): """Callback to add a new tab. Called by the accel key. """ self.add_tab() return True def accel_add_home(self, *args): """Callback to add a new tab in home directory. Called by the accel key. """ self.add_tab(os.environ['HOME']) return True def accel_prev(self, *args): """Callback to go to the previous tab. Called by the accel key. """ if self.get_notebook().get_current_page() == 0: self.get_notebook().set_current_page(self.get_notebook().get_n_pages() - 1) else: self.get_notebook().prev_page() return True def accel_next(self, *args): """Callback to go to the next tab. Called by the accel key. """ if self.get_notebook().get_current_page() + 1 == self.get_notebook().get_n_pages(): self.get_notebook().set_current_page(0) else: self.get_notebook().next_page() return True def accel_move_tab_left(self, *args): # TODO KEYBINDINGS ONLY """ Callback to move a tab to the left """ pos = self.get_notebook().get_current_page() if pos != 0: self.move_tab(pos, pos - 1) return True def accel_move_tab_right(self, *args): # TODO KEYBINDINGS ONLY """ Callback to move a tab to the right """ pos = self.get_notebook().get_current_page() if pos != self.get_notebook().get_n_pages() - 1: self.move_tab(pos, pos + 1) return True def move_tab(self, old_tab_pos, new_tab_pos): self.get_notebook( ).reorder_child(self.get_notebook().get_nth_page(old_tab_pos), new_tab_pos) self.get_notebook().set_current_page(new_tab_pos) def gen_accel_switch_tabN(self, N): """Generates callback (which called by accel key) to go to the Nth tab. """ def callback(*args): if 0 <= N < self.get_notebook().get_n_pages(): self.get_notebook().set_current_page(N) return True return callback def accel_switch_tab_last(self, *args): last_tab = self.get_notebook().get_n_pages() - 1 self.get_notebook().set_current_page(last_tab) return True def accel_rename_current_tab(self, *args): """Callback to show the rename tab dialog. Called by the accel key. """ page_num = self.get_notebook().get_current_page() page = self.get_notebook().get_nth_page(page_num) self.get_notebook().get_tab_label(page).on_rename(None) return True def accel_copy_clipboard(self, *args): # TODO KEYBINDINGS ONLY """Callback to copy text in the shown terminal. Called by the accel key. """ self.get_notebook().get_current_terminal().copy_clipboard() return True def accel_paste_clipboard(self, *args): # TODO KEYBINDINGS ONLY """Callback to paste text in the shown terminal. Called by the accel key. """ self.get_notebook().get_current_terminal().paste_clipboard() return True def accel_toggle_hide_on_lose_focus(self, *args): """Callback toggle whether the window should hide when it loses focus. Called by the accel key. """ if self.settings.general.get_boolean('window-losefocus'): self.settings.general.set_boolean('window-losefocus', False) else: self.settings.general.set_boolean('window-losefocus', True) return True def accel_toggle_fullscreen(self, *args): FullscreenManager(self.settings, self.window).toggle() return True def fullscreen(self): FullscreenManager(self.settings, self.window).fullscreen() def unfullscreen(self): FullscreenManager(self.settings, self.window).unfullscreen() # -- callbacks -- def recompute_tabs_titles(self): """Updates labels on all tabs. This is required when `self.abbreviate` changes """ use_vte_titles = self.settings.general.get_boolean("use-vte-titles") if not use_vte_titles: return # TODO NOTEBOOK this code only works if there is only one terminal in a # page, this need to be rewritten for terminal in self.get_notebook().iter_terminals(): page_num = self.get_notebook().page_num(terminal.get_parent()) self.get_notebook().rename_page(page_num, self.compute_tab_title(terminal), False) def compute_tab_title(self, vte): """Abbreviate and cut vte terminal title when necessary """ vte_title = vte.get_window_title() or _("Terminal") try: current_directory = vte.get_current_directory() if self.abbreviate and vte_title.endswith(current_directory): parts = current_directory.split('/') parts = [s[:1] for s in parts[:-1]] + [parts[-1]] vte_title = vte_title[:len(vte_title) - len(current_directory)] + '/'.join(parts) except OSError: pass return TabNameUtils.shorten(vte_title, self.settings) @save_tabs_when_changed def on_terminal_title_changed(self, vte, term): # box must be a page if not term.get_parent(): return box = term.get_parent().get_root_box() use_vte_titles = self.settings.general.get_boolean('use-vte-titles') if not use_vte_titles: return # NOTE: Try our best to find the page_num inside all notebooks # this may return -1, should be checked ;) nb = self.get_notebook() page_num = nb.page_num(box) for nb in self.notebook_manager.iter_notebooks(): page_num = nb.page_num(box) if page_num != -1: break # if tab has been renamed by user, don't override. if not getattr(box, 'custom_label_set', False): title = self.compute_tab_title(vte) nb.rename_page(page_num, title, False) self.update_window_title(title) else: text = nb.get_tab_text_page(box) if text: self.update_window_title(text) def update_window_title(self, title): if self.settings.general.get_boolean('set-window-title') is True: self.window.set_title(title) else: self.window.set_title(self.default_window_title) # TODO PORT reimplement drag and drop text on terminal # -- tab related functions -- def close_tab(self, *args): """Closes the current tab. """ prompt_cfg = self.settings.general.get_int('prompt-on-close-tab') self.get_notebook().delete_page_current(prompt=prompt_cfg) def rename_tab_uuid(self, term_uuid, new_text, user_set=True): """Rename an already added tab by its UUID """ term_uuid = uuid.UUID(term_uuid) page_index, = ( index for index, t in enumerate(self.get_notebook().iter_terminals()) if t.get_uuid() == term_uuid ) self.get_notebook().rename_page(page_index, new_text, user_set) def rename_current_tab(self, new_text, user_set=False): page_num = self.get_notebook().get_current_page() self.get_notebook().rename_page(page_num, new_text, user_set) def terminal_spawned(self, notebook, terminal, pid): self.load_config() terminal.handler_ids.append( terminal.connect('window-title-changed', self.on_terminal_title_changed, terminal) ) @save_tabs_when_changed def add_tab(self, directory=None): """Adds a new tab to the terminal notebook. """ self.get_notebook().new_page_with_focus(directory) def find_tab(self, directory=None): log.debug("find") # TODO SEARCH HidePrevention(self.window).prevent() search_text = Gtk.TextView() dialog = Gtk.Dialog( _("Find"), self.window, Gtk.DialogFlags.DESTROY_WITH_PARENT, ( _("Forward"), RESPONSE_FORWARD, _("Backward"), RESPONSE_BACKWARD, Gtk.STOCK_CANCEL, Gtk.ResponseType.NONE ) ) dialog.vbox.pack_end(search_text, True, True, 0) dialog.buffer = search_text.get_buffer() dialog.connect("response", self._dialog_response_callback) search_text.show() search_text.grab_focus() dialog.show_all() # Note: beware to reset preventHide when closing the find dialog def _dialog_response_callback(self, dialog, response_id): if response_id not in (RESPONSE_FORWARD, RESPONSE_BACKWARD): dialog.destroy() HidePrevention(self.window).allow() return start, end = dialog.buffer.get_bounds() search_string = start.get_text(end) log.debug( "Searching for %r %s\n", search_string, "forward" if response_id == RESPONSE_FORWARD else "backward" ) current_term = self.get_notebook().get_current_terminal() log.debug("type: %r", type(current_term)) log.debug("dir: %r", dir(current_term)) current_term.search_set_gregex() current_term.search_get_gregex() # buffer = self.text_view.get_buffer() # if response_id == RESPONSE_FORWARD: # buffer.search_forward(search_string, self) # elif response_id == RESPONSE_BACKWARD: # buffer.search_backward(search_string, self) def page_deleted(self, *args): if not self.get_notebook().has_page(): self.hide() # avoiding the delay on next Guake show request self.add_tab() else: self.set_terminal_focus() self.was_deleted_tab = True abbreviate_tab_names = self.settings.general.get_boolean('abbreviate-tab-names') if abbreviate_tab_names: self.abbreviate = False self.recompute_tabs_titles() def set_terminal_focus(self): """Grabs the focus on the current tab. """ self.get_notebook().set_current_page(self.get_notebook().get_current_page()) def get_selected_uuidtab(self): # TODO DBUS ONLY """Returns the uuid of the current selected terminal """ page_num = self.get_notebook().get_current_page() terminals = self.get_notebook().get_terminals_for_page(page_num) return str(terminals[0].get_uuid()) def search_on_web(self, *args): """Search for the selected text on the web """ # TODO KEYBINDINGS ONLY current_term = self.get_notebook().get_current_terminal() if current_term.get_has_selection(): current_term.copy_clipboard() guake_clipboard = Gtk.Clipboard.get_default(self.window.get_display()) search_query = guake_clipboard.wait_for_text() search_query = quote_plus(search_query) if search_query: # TODO search provider should be selectable (someone might # prefer bing.com, the internet is a strange place ¯\_(ツ)_/¯ ) search_url = "https://www.google.com/#q={!s}&safe=off".format(search_query, ) Gtk.show_uri(self.window.get_screen(), search_url, get_server_time(self.window)) return True def set_tab_position(self, *args): if self.settings.general.get_boolean('tab-ontop'): self.get_notebook().set_tab_pos(Gtk.PositionType.TOP) else: self.get_notebook().set_tab_pos(Gtk.PositionType.BOTTOM) def execute_hook(self, event_name): """Execute shell commands related to current event_name""" hook = self.settings.hooks.get_string('{!s}'.format(event_name)) if hook is not None and hook != "": hook = hook.split() try: subprocess.Popen(hook) except OSError as oserr: if oserr.errno == 8: log.error("Hook execution failed! Check shebang at first line of %s!", hook) log.debug(traceback.format_exc()) else: log.error(str(oserr)) except Exception as e: log.error("hook execution failed! %s", e) log.debug(traceback.format_exc()) else: log.debug("hook on event %s has been executed", event_name) @save_tabs_when_changed def on_page_reorder(self, notebook, child, page_num): # Yep, just used for save tabs when changed pass def get_xdg_config_directory(self): xdg_config_home = os.environ.get('XDG_CONFIG_HOME', '~/.config') return Path(xdg_config_home, 'guake').expanduser() def save_tabs(self, filename='session.json'): config = { 'schema_version': TABS_SESSION_SCHEMA_VERSION, 'timestamp': int(pytime.time()), 'workspace': {} } for key, nb in self.notebook_manager.get_notebooks().items(): tabs = [] for index in range(nb.get_n_pages()): try: page = nb.get_nth_page(index) if page.child: panes = [] page.save_box_layout(page.child, panes) tabs.append({ 'panes': panes, 'label': nb.get_tab_text_index(index), 'custom_label_set': getattr(page, 'custom_label_set', False) }) except FileNotFoundError: # discard same broken tabs pass # NOTE: Maybe we will have frame inside the workspace in future # So lets use list to store the tabs (as for each frame) config['workspace'][key] = [tabs] if not self.get_xdg_config_directory().exists(): self.get_xdg_config_directory().mkdir(parents=True) session_file = self.get_xdg_config_directory() / filename with session_file.open('w') as f: json.dump(config, f, ensure_ascii=False, indent=4) log.info('Guake tabs saved to %s', session_file) def restore_tabs(self, filename='session.json', suppress_notify=False): session_file = self.get_xdg_config_directory() / filename if not session_file.exists(): log.info('Cannot found tabs session.json file') return with session_file.open() as f: try: config = json.load(f) except Exception: log.warning('%s is broken', session_file) shutil.copy( session_file, self.get_xdg_config_directory() / '{0}.bak'.format(filename) ) img_filename = pixmapfile('guake-notification.png') notifier.showMessage( _('Guake Terminal'), _('Your {session_filename} file is broken, backup to {session_filename}.bak' ).format(session_filename=filename), img_filename ) return # Check schema_version exist if 'schema_version' not in config: img_filename = pixmapfile('guake-notification.png') notifier.showMessage( _('Guake Terminal'), _( 'Tabs session restore abort.\n' 'Your session file ({session_filename}) missing schema_version as key' ).format(session_filename=session_file), img_filename ) return # Check schema version is not higher than current version if config['schema_version'] > TABS_SESSION_SCHEMA_VERSION: img_filename = pixmapfile('guake-notification.png') notifier.showMessage( _('Guake Terminal'), _( 'Tabs session restore abort.\n' 'Your session file schema version is higher than current version ' '({session_file_schema_version} > {current_schema_version}).' ).format( session_file_schema_version=config['schema_version'], current_schema_version=TABS_SESSION_SCHEMA_VERSION ), img_filename ) return # Disable auto save tabs v = self.settings.general.get_boolean('save-tabs-when-changed') self.settings.general.set_boolean('save-tabs-when-changed', False) # Restore all tabs for all workspaces self.pending_restore_page_split = [] self._failed_restore_page_split = [] try: for key, frames in config['workspace'].items(): nb = self.notebook_manager.get_notebook(int(key)) current_pages = nb.get_n_pages() # Restore each frames' tabs from config # NOTE: If frame implement in future, we will need to update this code for tabs in frames: for index, tab in enumerate(tabs): directory = tab['panes'][0]['directory'] if len( tab.get('panes', []) ) == 1 else tab.get('directory', None) box, page_num, term = nb.new_page_with_focus( directory, tab['label'], tab['custom_label_set'] ) if tab.get('panes', False): if directory: continue box.restore_box_layout(box.child, tab['panes']) # Remove original pages in notebook for i in range(current_pages): nb.delete_page(0) except KeyError: log.warning('%s schema is broken', session_file) shutil.copy(session_file, self.get_xdg_config_directory() / '{}.bak'.format(filename)) with (self.get_xdg_config_directory() / '{}.log.err'.format(filename)).open('w') as f: traceback.print_exc(file=f) img_filename = pixmapfile('guake-notification.png') notifier.showMessage( _('Guake Terminal'), _( 'Your {session_filename} schema is broken, backup to {session_filename}.bak, ' 'and error message has been saved to {session_filename}.log.err.'.format( session_filename=filename ) ), img_filename ) # Reset auto save tabs self.settings.general.set_boolean('save-tabs-when-changed', v) # Notify the user if (self.settings.general.get_boolean('restore-tabs-notify') and not suppress_notify): filename = pixmapfile('guake-notification.png') notifier.showMessage(_("Guake Terminal"), _("Your tabs has been restored!"), filename) log.info('Guake tabs restored from %s', session_file) guake-3.6.3/guake/guake_logging.py000066400000000000000000000045231346623310400170750ustar00rootroot00000000000000# -*- coding: utf-8; -*- """ Copyright (C) 2007-2013 Guake authors This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA """ import logging import logging.config try: from colorlog import ColoredFormatter except ImportError as ie: ColoredFormatter = None log = logging.getLogger(__name__) def setupLogging(debug_mode): if debug_mode: base_logging_level = logging.DEBUG else: base_logging_level = logging.INFO if ColoredFormatter: level_str = logging.getLevelName(base_logging_level) logging.config.dictConfig({ 'version': 1, 'disable_existing_loggers': False, 'loggers': { '': { 'handlers': ['default'], 'level': level_str, 'propagate': True }, }, 'handlers': { 'default': { 'level': level_str, 'class': 'logging.StreamHandler', 'formatter': "default", }, }, 'formatters': { 'default': { '()': 'colorlog.ColoredFormatter', 'format': "%(log_color)s%(levelname)-8s%(reset)s %(message)s", 'log_colors': { 'DEBUG': 'cyan', 'INFO': 'green', 'WARNING': 'yellow', 'ERROR': 'red', 'CRITICAL': 'red,bg_white', }, } }, }) else: logging.basicConfig(level=base_logging_level, format="%(message)s") log.setLevel(base_logging_level) log.debug("Logging configuration complete") guake-3.6.3/guake/guake_toggle.py000066400000000000000000000004701346623310400167250ustar00rootroot00000000000000def toggle_guake_by_dbus(): import dbus try: bus = dbus.SessionBus() remote_object = bus.get_object('org.guake3.RemoteControl', '/org/guake3/RemoteControl') print("Sending 'toggle' message to Guake3") remote_object.show_hide() except dbus.DBusException: pass guake-3.6.3/guake/keybindings.py000066400000000000000000000351341346623310400166030ustar00rootroot00000000000000# -*- coding: utf-8; -*- """ Copyright (C) 2007-2013 Guake authors This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA """ import logging import gi gi.require_version('Gtk', '3.0') from gi.repository import Gtk from guake import notifier from guake.common import pixmapfile from guake.split_utils import FocusMover from guake.split_utils import SplitMover from locale import gettext as _ log = logging.getLogger(__name__) class Keybindings(): """Handles changes in keyboard shortcuts. """ def __init__(self, guake): """Constructor of Keyboard, only receives the guake instance to be used in internal methods. """ self.guake = guake self.accel_group = None # see reload_accelerators # Setup global keys self.globalhotkeys = {} globalkeys = ['show-hide', 'show-focus'] for key in globalkeys: guake.settings.keybindingsGlobal.onChangedValue(key, self.reload_global) guake.settings.keybindingsGlobal.triggerOnChangedValue( guake.settings.keybindingsGlobal, key, None ) # Setup local keys keys = [ 'toggle-fullscreen', 'new-tab', 'new-tab-home', 'close-tab', 'rename-current-tab', 'previous-tab', 'next-tab', 'clipboard-copy', 'clipboard-paste', 'quit', 'zoom-in', 'zoom-out', 'increase-height', 'decrease-height', 'increase-transparency', 'decrease-transparency', 'toggle-transparency', "search-on-web", 'move-tab-left', 'move-tab-right', 'switch-tab1', 'switch-tab2', 'switch-tab3', 'switch-tab4', 'switch-tab5', 'switch-tab6', 'switch-tab7', 'switch-tab8', 'switch-tab9', 'switch-tab10', 'switch-tab-last', 'reset-terminal', 'split-tab-vertical', 'split-tab-horizontal', 'close-terminal', 'focus-terminal-up', 'focus-terminal-down', 'focus-terminal-right', 'focus-terminal-left', 'move-terminal-split-up', 'move-terminal-split-down', 'move-terminal-split-left', 'move-terminal-split-right', 'search-terminal' ] for key in keys: guake.settings.keybindingsLocal.onChangedValue(key, self.reload_accelerators) self.reload_accelerators() def reload_global(self, settings, key, user_data): value = settings.get_string(key) if value == 'disabled': return try: self.guake.hotkeys.unbind(self.globalhotkeys[key]) except Exception as e: pass self.globalhotkeys[key] = value if key == "show-hide": log.debug("reload_global: %r", value) if not self.guake.hotkeys.bind(value, self.guake.show_hide): keyval, mask = Gtk.accelerator_parse(value) label = Gtk.accelerator_get_label(keyval, mask) filename = pixmapfile('guake-notification.png') notifier.showMessage( _('Guake Terminal'), _( 'A problem happened when binding %s key.\n' 'Please use Guake Preferences dialog to choose another ' 'key' ) % label, filename ) elif key == "show-focus": if not self.guake.hotkeys.bind(value, self.guake.show_focus): log.warn("can't bind show-focus key") return def reload_accelerators(self, *args): """Reassign an accel_group to guake main window and guake context menu and calls the load_accelerators method. """ if self.accel_group: self.guake.window.remove_accel_group(self.accel_group) self.accel_group = Gtk.AccelGroup() self.guake.window.add_accel_group(self.accel_group) self.load_accelerators() def load_accelerators(self): """Reads all gconf paths under /apps/guake/keybindings/local and adds to the main accel_group. """ def getk(x): return self.guake.settings.keybindingsLocal.get_string(x) key, mask = Gtk.accelerator_parse(getk('reset-terminal')) if key > 0: self.accel_group.connect( key, mask, Gtk.AccelFlags.VISIBLE, self.guake.accel_reset_terminal ) key, mask = Gtk.accelerator_parse(getk('quit')) if key > 0: self.accel_group.connect(key, mask, Gtk.AccelFlags.VISIBLE, self.guake.accel_quit) key, mask = Gtk.accelerator_parse(getk('new-tab')) if key > 0: self.accel_group.connect(key, mask, Gtk.AccelFlags.VISIBLE, self.guake.accel_add) key, mask = Gtk.accelerator_parse(getk('new-tab-home')) if key > 0: self.accel_group.connect(key, mask, Gtk.AccelFlags.VISIBLE, self.guake.accel_add_home) key, mask = Gtk.accelerator_parse(getk('close-tab')) if key > 0: def x(*args): prompt_cfg = self.guake.settings.general.get_int('prompt-on-close-tab') self.guake.get_notebook().delete_page_current(prompt=prompt_cfg) self.accel_group.connect(key, mask, Gtk.AccelFlags.VISIBLE, x) key, mask = Gtk.accelerator_parse(getk('previous-tab')) if key > 0: self.accel_group.connect(key, mask, Gtk.AccelFlags.VISIBLE, self.guake.accel_prev) key, mask = Gtk.accelerator_parse(getk('next-tab')) if key > 0: self.accel_group.connect(key, mask, Gtk.AccelFlags.VISIBLE, self.guake.accel_next) key, mask = Gtk.accelerator_parse(getk('move-tab-left')) if key > 0: self.accel_group.connect( key, mask, Gtk.AccelFlags.VISIBLE, self.guake.accel_move_tab_left ) key, mask = Gtk.accelerator_parse(getk('move-tab-right')) if key > 0: self.accel_group.connect( key, mask, Gtk.AccelFlags.VISIBLE, self.guake.accel_move_tab_right ) key, mask = Gtk.accelerator_parse(getk('rename-current-tab')) if key > 0: self.accel_group.connect( key, mask, Gtk.AccelFlags.VISIBLE, self.guake.accel_rename_current_tab ) key, mask = Gtk.accelerator_parse(getk('clipboard-copy')) if key > 0: self.accel_group.connect( key, mask, Gtk.AccelFlags.VISIBLE, self.guake.accel_copy_clipboard ) key, mask = Gtk.accelerator_parse(getk('clipboard-paste')) if key > 0: self.accel_group.connect( key, mask, Gtk.AccelFlags.VISIBLE, self.guake.accel_paste_clipboard ) key, mask = Gtk.accelerator_parse(getk('toggle-fullscreen')) if key > 0: self.accel_group.connect( key, mask, Gtk.AccelFlags.VISIBLE, self.guake.accel_toggle_fullscreen ) key, mask = Gtk.accelerator_parse(getk('toggle-hide-on-lose-focus')) if key > 0: self.accel_group.connect( key, mask, Gtk.AccelFlags.VISIBLE, self.guake.accel_toggle_hide_on_lose_focus ) key, mask = Gtk.accelerator_parse(getk('zoom-in')) if key > 0: self.accel_group.connect(key, mask, Gtk.AccelFlags.VISIBLE, self.guake.accel_zoom_in) key, mask = Gtk.accelerator_parse(getk('zoom-in-alt')) if key > 0: self.accel_group.connect(key, mask, Gtk.AccelFlags.VISIBLE, self.guake.accel_zoom_in) key, mask = Gtk.accelerator_parse(getk('zoom-out')) if key > 0: self.accel_group.connect(key, mask, Gtk.AccelFlags.VISIBLE, self.guake.accel_zoom_out) key, mask = Gtk.accelerator_parse(getk('increase-height')) if key > 0: self.accel_group.connect( key, mask, Gtk.AccelFlags.VISIBLE, self.guake.accel_increase_height ) key, mask = Gtk.accelerator_parse(getk('decrease-height')) if key > 0: self.accel_group.connect( key, mask, Gtk.AccelFlags.VISIBLE, self.guake.accel_decrease_height ) key, mask = Gtk.accelerator_parse(getk('increase-transparency')) if key > 0: self.accel_group.connect( key, mask, Gtk.AccelFlags.VISIBLE, self.guake.accel_increase_transparency ) key, mask = Gtk.accelerator_parse(getk('decrease-transparency')) if key > 0: self.accel_group.connect( key, mask, Gtk.AccelFlags.VISIBLE, self.guake.accel_decrease_transparency ) key, mask = Gtk.accelerator_parse(getk('toggle-transparency')) if key > 0: self.accel_group.connect( key, mask, Gtk.AccelFlags.VISIBLE, self.guake.accel_toggle_transparency ) for tab in range(1, 11): key, mask = Gtk.accelerator_parse(getk('switch-tab%d' % tab)) if key > 0: self.accel_group.connect( key, mask, Gtk.AccelFlags.VISIBLE, self.guake.gen_accel_switch_tabN(tab - 1) ) key, mask = Gtk.accelerator_parse(getk('switch-tab-last')) if key > 0: self.accel_group.connect( key, mask, Gtk.AccelFlags.VISIBLE, self.guake.accel_switch_tab_last ) try: key, mask = Gtk.accelerator_parse(getk('search-on-web')) if key > 0: self.accel_group.connect( key, mask, Gtk.AccelFlags.VISIBLE, self.guake.search_on_web ) except Exception: log.exception("Exception occured") key, mask = Gtk.accelerator_parse(getk('split-tab-vertical')) if key > 0: self.accel_group.connect( key, mask, Gtk.AccelFlags.VISIBLE, ( lambda *args: # keep make style from concat this lines self.guake.get_notebook().get_current_terminal().get_parent().split_v() or True ) ) key, mask = Gtk.accelerator_parse(getk('split-tab-horizontal')) if key > 0: self.accel_group.connect( key, mask, Gtk.AccelFlags.VISIBLE, ( lambda *args: # keep make style from concat this lines self.guake.get_notebook().get_current_terminal().get_parent().split_h() or True ) ) key, mask = Gtk.accelerator_parse(getk('close-terminal')) if key > 0: self.accel_group.connect( key, mask, Gtk.AccelFlags.VISIBLE, (lambda *args: self.guake.get_notebook().get_current_terminal().kill() or True) ) key, mask = Gtk.accelerator_parse(getk('focus-terminal-up')) if key > 0: self.accel_group.connect( key, mask, Gtk.AccelFlags.VISIBLE, ( lambda *args: FocusMover(self.guake.window). move_up(self.guake.get_notebook().get_current_terminal()) or True ) ) key, mask = Gtk.accelerator_parse(getk('focus-terminal-down')) if key > 0: self.accel_group.connect( key, mask, Gtk.AccelFlags.VISIBLE, ( lambda *args: FocusMover(self.guake.window). move_down(self.guake.get_notebook().get_current_terminal()) or True ) ) key, mask = Gtk.accelerator_parse(getk('focus-terminal-right')) if key > 0: self.accel_group.connect( key, mask, Gtk.AccelFlags.VISIBLE, ( lambda *args: FocusMover(self.guake.window). move_right(self.guake.get_notebook().get_current_terminal()) or True ) ) key, mask = Gtk.accelerator_parse(getk('focus-terminal-left')) if key > 0: self.accel_group.connect( key, mask, Gtk.AccelFlags.VISIBLE, ( lambda *args: FocusMover(self.guake.window). move_left(self.guake.get_notebook().get_current_terminal()) or True ) ) key, mask = Gtk.accelerator_parse(getk('move-terminal-split-up')) if key > 0: self.accel_group.connect( key, mask, Gtk.AccelFlags.VISIBLE, ( lambda *args: # keep make style from concat this lines SplitMover.move_up(self.guake.get_notebook().get_current_terminal()) or True ) ) key, mask = Gtk.accelerator_parse(getk('move-terminal-split-down')) if key > 0: self.accel_group.connect( key, mask, Gtk.AccelFlags.VISIBLE, ( lambda *args: # keep make style from concat this lines SplitMover.move_down(self.guake.get_notebook().get_current_terminal()) or True ) ) key, mask = Gtk.accelerator_parse(getk('move-terminal-split-left')) if key > 0: self.accel_group.connect( key, mask, Gtk.AccelFlags.VISIBLE, ( lambda *args: # keep make style from concat this lines SplitMover.move_left(self.guake.get_notebook().get_current_terminal()) or True ) ) key, mask = Gtk.accelerator_parse(getk('move-terminal-split-right')) if key > 0: self.accel_group.connect( key, mask, Gtk.AccelFlags.VISIBLE, ( lambda *args: # keep make style from concat this lines SplitMover.move_right(self.guake.get_notebook().get_current_terminal()) or True ) ) key, mask = Gtk.accelerator_parse(getk('search-terminal')) if key > 0: self.accel_group.connect( key, mask, Gtk.AccelFlags.VISIBLE, self.guake.accel_search_terminal ) guake-3.6.3/guake/main.py000066400000000000000000000340031346623310400152130ustar00rootroot00000000000000# -*- coding: utf-8; -*- """ Copyright (C) 2007-2013 Guake authors This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA """ import inspect import time # You can put calls to p() everywhere in this page to inspect timing # g_start = time.time() # def p(): # print(time.time() - g_start, __file__, inspect.currentframe().f_back.f_lineno) import logging import os import signal import subprocess import sys import uuid from locale import gettext as _ from optparse import OptionParser log = logging.getLogger(__name__) from guake.globals import NAME from guake.globals import bindtextdomain from guake.support import print_support from guake.utils import restore_preferences from guake.utils import save_preferences # When we are in the document generation on readthedocs, we do not have paths.py generated try: from guake.paths import LOCALE_DIR bindtextdomain(NAME, LOCALE_DIR) except: # pylint: disable=bare-except pass def main(): """Parses the command line parameters and decide if dbus methods should be called or not. If there is already a guake instance running it will be used and a True value will be returned, otherwise, false will be returned. """ # Force to xterm-256 colors for compatibility with some old command line programs os.environ["TERM"] = "xterm-256color" # Force use X11 backend underwayland os.environ["GDK_BACKEND"] = "x11" # do not use version keywords here, pbr might be slow to find the version of Guake module parser = OptionParser() parser.add_option( '-V', '--version', dest='version', action='store_true', default=False, help=_('Show Guake version number and exit') ) parser.add_option( '-v', '--verbose', dest='verbose', action='store_true', default=False, help=_('Enable verbose logging') ) parser.add_option( '-f', '--fullscreen', dest='fullscreen', action='store_true', default=False, help=_('Put Guake in fullscreen mode') ) parser.add_option( '-t', '--toggle-visibility', dest='show_hide', action='store_true', default=False, help=_('Toggles the visibility of the terminal window') ) parser.add_option( '--show', dest="show", action='store_true', default=False, help=_('Shows Guake main window') ) parser.add_option( '--hide', dest='hide', action='store_true', default=False, help=_('Hides Guake main window') ) parser.add_option( '-p', '--preferences', dest='show_preferences', action='store_true', default=False, help=_('Shows Guake preference window') ) parser.add_option( '-a', '--about', dest='show_about', action='store_true', default=False, help=_('Shows Guake\'s about info') ) parser.add_option( '-n', '--new-tab', dest='new_tab', action='store', default='', help=_('Add a new tab (with current directory set to NEW_TAB)') ) parser.add_option( '-s', '--select-tab', dest='select_tab', action='store', default='', help=_('Select a tab (SELECT_TAB is the index of the tab)') ) parser.add_option( '-g', '--selected-tab', dest='selected_tab', action='store_true', default=False, help=_('Return the selected tab index.') ) parser.add_option( '-l', '--selected-tablabel', dest='selected_tablabel', action='store_true', default=False, help=_('Return the selected tab label.') ) parser.add_option( '--split-vertical', dest='split_vertical', action='store_true', default=False, help=_('Split the selected tab vertically.') ) parser.add_option( '--split-horizontal', dest='split_horizontal', action='store_true', default=False, help=_('Split the selected tab horizontally.') ) parser.add_option( '-e', '--execute-command', dest='command', action='store', default='', help=_('Execute an arbitrary command in the selected tab.') ) parser.add_option( '-i', '--tab-index', dest='tab_index', action='store', default='0', help=_('Specify the tab to rename. Default is 0. Can be used to select tab by UUID.') ) parser.add_option( '--bgcolor', dest='bgcolor', action='store', default='', help=_('Set the hexadecimal (#rrggbb) background color of ' 'the selected tab.') ) parser.add_option( '--fgcolor', dest='fgcolor', action='store', default='', help=_('Set the hexadecimal (#rrggbb) foreground color of the ' 'selected tab.') ) parser.add_option( '--change-palette', dest='palette_name', action='store', default='', help=_('Change Guake palette scheme') ) parser.add_option( '--rename-tab', dest='rename_tab', metavar='TITLE', action='store', default='', help=_( 'Rename the specified tab by --tab-index. Reset to default if TITLE is ' 'a single dash "-".' ) ) parser.add_option( '-r', '--rename-current-tab', dest='rename_current_tab', metavar='TITLE', action='store', default='', help=_('Rename the current tab. Reset to default if TITLE is a ' 'single dash "-".') ) parser.add_option( '-q', '--quit', dest='quit', action='store_true', default=False, help=_('Says to Guake go away =(') ) parser.add_option( '-u', '--no-startup-script', dest='execute_startup_script', action='store_false', default=True, help=_('Do not execute the start up script') ) parser.add_option( '--save-preferences', dest='save_preferences', action='store', default=None, help=_('Save Guake preferences to this filename') ) parser.add_option( '--restore-preferences', dest='restore_preferences', action='store', default=None, help=_('Restore Guake preferences from this file') ) parser.add_option( '--support', dest='support', action='store_true', default=False, help=_('Show support infomations') ) # checking mandatory dependencies import gi try: gi.require_version('Gtk', '3.0') gi.require_version('Gdk', '3.0') except ValueError: print("[ERROR] Unable to start Guake, missing mandatory dependency: GtK 3.0") sys.exit(1) try: gi.require_version('Vte', '2.91') # vte-0.42 except ValueError: print("[ERROR] Unable to start Guake, missing mandatory dependency: Vte >= 0.42") sys.exit(1) try: gi.require_version('Keybinder', '3.0') except ValueError: print("[ERROR] Unable to start Guake, missing mandatory dependency: Keybinder 3") sys.exit(1) options = parser.parse_args()[0] if options.version: from guake import gtk_version from guake import guake_version from guake import vte_version from guake import vte_runtime_version print('Guake Terminal: {}'.format(guake_version())) print('VTE: {}'.format(vte_version())) print('VTE runtime: {}'.format(vte_runtime_version())) print('Gtk: {}'.format(gtk_version())) sys.exit(0) if options.save_preferences and options.restore_preferences: parser.error('options --save-preferences and --restore-preferences are mutually exclusive') if options.save_preferences: save_preferences(options.save_preferences) sys.exit(0) elif options.restore_preferences: restore_preferences(options.restore_preferences) sys.exit(0) if options.support: print_support() sys.exit(0) import dbus from guake.dbusiface import DBUS_NAME from guake.dbusiface import DBUS_PATH from guake.dbusiface import DbusManager from guake.guake_logging import setupLogging instance = None # Trying to get an already running instance of guake. If it is not # possible, lets create a new instance. This function will return # a boolean value depending on this decision. try: bus = dbus.SessionBus() remote_object = bus.get_object(DBUS_NAME, DBUS_PATH) already_running = True except dbus.DBusException: # can now configure the logging setupLogging(options.verbose) # COLORTERM is an environment variable set by some terminal emulators such as # gnome-terminal. # To avoid confusing applications running inside Guake, clean up COLORTERM at startup. if "COLORTERM" in os.environ: del os.environ['COLORTERM'] log.info("Guake not running, starting it") # late loading of the Guake object, to speed up dbus comm from guake.guake_app import Guake instance = Guake() remote_object = DbusManager(instance) already_running = False only_show_hide = True if options.fullscreen: remote_object.fullscreen() if options.show: remote_object.show_from_remote() if options.hide: remote_object.hide_from_remote() if options.show_preferences: remote_object.show_prefs() only_show_hide = options.show if options.new_tab: remote_object.add_tab(options.new_tab) only_show_hide = options.show if options.select_tab: selected = int(options.select_tab) tab_count = int(remote_object.get_tab_count()) if 0 <= selected < tab_count: remote_object.select_tab(selected) else: sys.stderr.write('invalid index: %d\n' % selected) only_show_hide = options.show if options.selected_tab: selected = remote_object.get_selected_tab() sys.stdout.write('%d\n' % selected) only_show_hide = options.show if options.selected_tablabel: selectedlabel = remote_object.get_selected_tablabel() sys.stdout.write('%s\n' % selectedlabel) only_show_hide = options.show if options.split_vertical: remote_object.v_split_current_terminal() only_show_hide = options.show if options.split_horizontal: remote_object.h_split_current_terminal() only_show_hide = options.show if options.command: remote_object.execute_command(options.command) only_show_hide = options.show if options.tab_index and options.rename_tab: try: remote_object.rename_tab_uuid(str(uuid.UUID(options.tab_index)), options.rename_tab) except ValueError: remote_object.rename_tab(int(options.tab_index), options.rename_tab) only_show_hide = options.show if options.bgcolor: remote_object.set_bgcolor(options.bgcolor) only_show_hide = options.show if options.fgcolor: remote_object.set_fgcolor(options.fgcolor) only_show_hide = options.show if options.palette_name: remote_object.change_palette_name(options.palette_name) only_show_hide = options.show if options.rename_current_tab: remote_object.rename_current_tab(options.rename_current_tab) only_show_hide = options.show if options.show_about: remote_object.show_about() only_show_hide = options.show if options.quit: try: remote_object.quit() return True except dbus.DBusException: return True if already_running and only_show_hide: # here we know that guake was called without any parameter and # it is already running, so, lets toggle its visibility. remote_object.show_hide() if options.execute_startup_script: if not already_running: startup_script = instance.settings.general.get_string("startup-script") if startup_script: log.info("Calling startup script: %s", startup_script) pid = subprocess.Popen([startup_script], shell=True, stdin=None, stdout=None, stderr=None, close_fds=True) log.info("Startup script started with pid: %s", pid) # Please ensure this is the last line !!!! else: log.info("--no-startup-script argument defined, so don't execute the startup script") if already_running: log.info("Guake is already running") return already_running def exec_main(): if not main(): log.debug("Running main gtk loop") signal.signal(signal.SIGINT, signal.SIG_DFL) # Load gi pretty late, to speed up as much as possible the parsing of the option for DBus # comm through command line import gi gi.require_version('Gtk', '3.0') from gi.repository import Gtk Gtk.main() if __name__ == '__main__': exec_main() guake-3.6.3/guake/menus.py000066400000000000000000000163531346623310400154260ustar00rootroot00000000000000import gi gi.require_version('Gtk', '3.0') from gi.repository import Gtk from locale import gettext as _ gi.require_version('Vte', '2.91') # vte-0.42 from gi.repository import Vte from guake.customcommands import CustomCommands import logging log = logging.getLogger(__name__) def mk_tab_context_menu(callback_object): """Create the context menu for a notebook tab """ # Store the menu in a temp variable in terminal so that popup() is happy. See: # https://stackoverflow.com/questions/28465956/ callback_object.context_menu = Gtk.Menu() menu = callback_object.context_menu mi1 = Gtk.MenuItem(_("New Tab")) mi1.connect("activate", callback_object.on_new_tab) menu.add(mi1) mi2 = Gtk.MenuItem(_("Rename")) mi2.connect("activate", callback_object.on_rename) menu.add(mi2) mi3 = Gtk.MenuItem(_("Close")) mi3.connect("activate", callback_object.on_close) menu.add(mi3) menu.show_all() return menu def mk_notebook_context_menu(callback_object): """Create the context menu for the notebook """ callback_object.context_menu = Gtk.Menu() menu = callback_object.context_menu mi = Gtk.MenuItem(_("New Tab")) mi.connect("activate", callback_object.on_new_tab) menu.add(mi) menu.add(Gtk.SeparatorMenuItem()) mi = Gtk.MenuItem(_("Save Tabs")) mi.connect("activate", callback_object.on_save_tabs) menu.add(mi) mi = Gtk.MenuItem(_("Restore Tabs")) mi.connect("activate", callback_object.on_restore_tabs_with_dialog) menu.add(mi) menu.add(Gtk.SeparatorMenuItem()) mi = Gtk.ImageMenuItem("gtk-preferences") mi.set_use_stock(True) mi.connect("activate", callback_object.on_show_preferences) menu.add(mi) mi = Gtk.ImageMenuItem("gtk-about") mi.set_use_stock(True) mi.connect("activate", callback_object.on_show_about) menu.add(mi) menu.add(Gtk.SeparatorMenuItem()) mi = Gtk.MenuItem(_("Quit")) mi.connect("activate", callback_object.on_quit) menu.add(mi) menu.show_all() return menu SEARCH_SELECTION_LENGTH = 20 FILE_SELECTION_LENGTH = 30 def mk_terminal_context_menu(terminal, window, settings, callback_object): """Create the context menu for a terminal. """ # Store the menu in a temp variable in terminal so that popup() is happy. See: # https://stackoverflow.com/questions/28465956/ terminal.context_menu = Gtk.Menu() menu = terminal.context_menu mi = Gtk.MenuItem(_("Copy")) mi.connect("activate", callback_object.on_copy_clipboard) menu.add(mi) if get_link_under_cursor(terminal) is not None: mi = Gtk.MenuItem(_("Copy Url")) mi.connect("activate", callback_object.on_copy_url_clipboard) menu.add(mi) mi = Gtk.MenuItem(_("Paste")) mi.connect("activate", callback_object.on_paste_clipboard) # check if clipboard has text, if not disable the paste menuitem clipboard = Gtk.Clipboard.get_default(window.get_display()) mi.set_sensitive(clipboard.wait_is_text_available()) menu.add(mi) menu.add(Gtk.SeparatorMenuItem()) mi = Gtk.MenuItem(_("Toggle Fullscreen")) mi.connect("activate", callback_object.on_toggle_fullscreen) menu.add(mi) menu.add(Gtk.SeparatorMenuItem()) mi = Gtk.MenuItem(_("Split ―")) mi.connect("activate", callback_object.on_split_horizontal) menu.add(mi) mi = Gtk.MenuItem(_("Split |")) mi.connect("activate", callback_object.on_split_vertical) menu.add(mi) mi = Gtk.MenuItem(_("Close terminal")) mi.connect("activate", callback_object.on_close_terminal) menu.add(mi) menu.add(Gtk.SeparatorMenuItem()) mi = Gtk.MenuItem(_("Save content...")) mi.connect("activate", callback_object.on_save_to_file) menu.add(mi) mi = Gtk.MenuItem(_("Reset terminal")) mi.connect("activate", callback_object.on_reset_terminal) menu.add(mi) # TODO SEARCH uncomment menu.add() mi = Gtk.MenuItem(_("Find...")) mi.connect("activate", callback_object.on_find) # menu.add(mi) menu.add(Gtk.SeparatorMenuItem()) mi = Gtk.MenuItem(_("Open link...")) mi.connect("activate", callback_object.on_open_link) link = get_link_under_cursor(terminal) # TODO CONTEXTMENU this is a mess Quick open should also be sensible # if the text in the selection is a url the current terminal # implementation does not support this at the moment if link: if len(link) >= FILE_SELECTION_LENGTH: mi.set_label(_("Open Link: {!s}...").format(link[:FILE_SELECTION_LENGTH - 3])) else: mi.set_label(_("Open Link: {!s}").format(link)) mi.set_sensitive(True) else: mi.set_sensitive(False) menu.add(mi) mi = Gtk.MenuItem(_("Search on Web")) mi.connect("activate", callback_object.on_search_on_web) selection = get_current_selection(terminal, window) if selection: search_text = selection.rstrip() if len(search_text) > SEARCH_SELECTION_LENGTH: search_text = search_text[:SEARCH_SELECTION_LENGTH - 3] + "..." mi.set_label(_("Search on Web: '%s'") % search_text) mi.set_sensitive(True) else: mi.set_sensitive(False) menu.add(mi) mi = Gtk.MenuItem(_("Quick Open...")) mi.connect("activate", callback_object.on_quick_open) if selection: filename = get_filename_under_cursor(terminal, selection) if filename: filename_str = str(filename) if len(filename_str) > FILE_SELECTION_LENGTH: mi.set_label( _("Quick Open: {!s}...").format(filename_str[:FILE_SELECTION_LENGTH - 3]) ) else: mi.set_label(_("Quick Open: {!s}").format(filename_str)) mi.set_sensitive(True) else: mi.set_sensitive(False) else: mi.set_sensitive(False) menu.add(mi) customcommands = CustomCommands(settings, callback_object) if customcommands.should_load(): submen = customcommands.build_menu() if submen: menu.add(Gtk.SeparatorMenuItem()) mi = Gtk.MenuItem(_("Custom Commands")) mi.set_submenu(submen) menu.add(mi) menu.add(Gtk.SeparatorMenuItem()) mi = Gtk.ImageMenuItem("gtk-preferences") mi.set_use_stock(True) mi.connect("activate", callback_object.on_show_preferences) menu.add(mi) mi = Gtk.ImageMenuItem("gtk-about") mi.set_use_stock(True) mi.connect("activate", callback_object.on_show_about) menu.add(mi) menu.add(Gtk.SeparatorMenuItem()) mi = Gtk.ImageMenuItem(_("Quit")) mi.connect("activate", callback_object.on_quit) menu.add(mi) menu.show_all() return menu def get_current_selection(terminal, window): if terminal.get_has_selection(): terminal.copy_clipboard() clipboard = Gtk.Clipboard.get_default(window.get_display()) return clipboard.wait_for_text() return None def get_filename_under_cursor(terminal, selection): filename, _1, _2 = terminal.is_file_on_local_server(selection) log.info("Current filename under cursor: %s", filename) if filename: return filename return None def get_link_under_cursor(terminal): link = terminal.found_link log.info("Current link under cursor: %s", link) if link: return link return None guake-3.6.3/guake/notebook.py000066400000000000000000000417551346623310400161230ustar00rootroot00000000000000# -*- coding: utf-8; -*- """ Copyright (C) 2007-2018 Guake authors This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA """ from guake.about import AboutDialog from guake.boxes import DualTerminalBox from guake.boxes import RootTerminalBox from guake.boxes import TabLabelEventBox from guake.boxes import TerminalBox from guake.callbacks import MenuHideCallback from guake.callbacks import NotebookScrollCallback from guake.dialogs import PromptQuitDialog from guake.menus import mk_notebook_context_menu from guake.prefs import PrefsDialog from guake.utils import gdk_is_x11_display from guake.utils import save_tabs_when_changed import gi import os gi.require_version('Gtk', '3.0') gi.require_version('Wnck', '3.0') from gi.repository import GObject from gi.repository import Gdk from gi.repository import Gtk from gi.repository import Wnck from guake.terminal import GuakeTerminal from locale import gettext as _ import logging import posix log = logging.getLogger(__name__) class TerminalNotebook(Gtk.Notebook): def __init__(self, *args, **kwargs): Gtk.Notebook.__init__(self, *args, **kwargs) self.last_terminal_focused = None self.set_name("notebook-teminals") self.set_tab_pos(Gtk.PositionType.BOTTOM) self.set_property("show-tabs", True) self.set_property("enable-popup", False) self.set_property("scrollable", True) self.set_property("show-border", False) self.set_property("visible", True) self.set_property("has-focus", True) self.set_property("can-focus", True) self.set_property("is-focus", True) self.set_property("expand", True) if GObject.signal_lookup('terminal-spawned', TerminalNotebook) == 0: GObject.signal_new( 'terminal-spawned', TerminalNotebook, GObject.SIGNAL_RUN_LAST, GObject.TYPE_NONE, (GObject.TYPE_PYOBJECT, GObject.TYPE_INT) ) GObject.signal_new( 'page-deleted', TerminalNotebook, GObject.SIGNAL_RUN_LAST, GObject.TYPE_NONE, () ) self.scroll_callback = NotebookScrollCallback(self) self.add_events(Gdk.EventMask.SCROLL_MASK) self.connect('scroll-event', self.scroll_callback.on_scroll) self.notebook_on_button_press_id = self.connect( "button-press-event", self.on_button_press, None ) self.new_page_button = Gtk.Button( image=Gtk.Image.new_from_icon_name("tab-new", Gtk.IconSize.MENU), visible=True ) self.new_page_button.connect("clicked", self.on_new_tab) self.set_action_widget(self.new_page_button, Gtk.PackType.END) def attach_guake(self, guake): self.guake = guake def on_button_press(self, target, event, user_data): if event.button == 3: menu = mk_notebook_context_menu(self) menu.connect("hide", MenuHideCallback(self.guake.window).on_hide) try: menu.popup_at_pointer(event) except AttributeError: # Gtk 3.18 fallback ("'Menu' object has no attribute 'popup_at_pointer'") menu.popup(None, None, None, None, event.button, event.time) elif event.type == Gdk.EventType.DOUBLE_BUTTON_PRESS and event.button == 1: self.new_page_with_focus() return False def set_last_terminal_focused(self, terminal): self.last_terminal_focused = terminal def get_focused_terminal(self): for terminal in self.iter_terminals(): if terminal.has_focus(): return terminal def get_current_terminal(self): # TODO NOTEBOOK the name of this method should # be changed, for now it returns the last focused terminal return self.last_terminal_focused def get_terminals_for_page(self, index): page = self.get_nth_page(index) return page.get_terminals() def get_terminals(self): terminals = [] for page in self.iter_pages(): terminals += page.get_terminals() return terminals def get_running_fg_processes_count(self): fg_proc_count = 0 for page in self.iter_pages(): fg_proc_count += self.get_running_fg_processes_count_page(self.page_num(page)) return fg_proc_count def get_running_fg_processes_count_page(self, index): total_procs = 0 for terminal in self.get_terminals_for_page(index): pty = terminal.get_pty() if not pty: continue fdpty = pty.get_fd() term_pid = terminal.pid try: fgpid = posix.tcgetpgrp(fdpty) log.debug("found running pid: %s", fgpid) if fgpid not in (-1, term_pid): total_procs += 1 except OSError: log.debug( "Cannot retrieve any pid from terminal %s, looks like it is already dead", index ) return 0 return total_procs def has_page(self): return self.get_n_pages() > 0 def iter_terminals(self): for page in self.iter_pages(): if page is not None: for t in page.iter_terminals(): yield t def iter_tabs(self): for page_num in range(self.get_n_pages()): yield self.get_tab_label(self.get_nth_page(page_num)) def iter_pages(self): for page_num in range(self.get_n_pages()): yield self.get_nth_page(page_num) def delete_page(self, page_num, kill=True, prompt=0): log.debug("Deleting page index %s", page_num) if page_num >= self.get_n_pages() or page_num < 0: log.error("Can not delete page %s no such index", page_num) return # TODO NOTEBOOK it would be nice if none of the "ui" stuff # (PromptQuitDialog) would be in here procs = self.get_running_fg_processes_count_page(page_num) if prompt == 2 or (prompt == 1 and procs > 0): # TODO NOTEBOOK remove call to guake if not PromptQuitDialog(self.guake.window, procs, -1).close_tab(): return page = self.get_nth_page(page_num) for terminal in self.get_terminals_for_page(page_num): if kill: terminal.kill() terminal.destroy() if self.get_nth_page(page_num) is page: # NOTE: GitHub issue #1438 # Previous line `terminal.destroy()` will finally called `on_terminal_exited`, # and called `RootTerminalBox.remove_dead_child`, then called `remove_page`. # # But in some cases (e.g. #1438), it will not remove the page by # `terminal.destory() chain`. # # Check this by compare same page_num page with previous saved page instance, # and remove the page if it really didn't remove it. self.remove_page(page_num) @save_tabs_when_changed def remove_page(self, page_num): super().remove_page(page_num) # focusing the first terminal on the previous page if self.get_current_page() > -1: page = self.get_nth_page(self.get_current_page()) if page.get_terminals(): page.get_terminals()[0].grab_focus() self.emit('page-deleted') def delete_page_by_label(self, label, kill=True, prompt=0): self.delete_page(self.find_tab_index_by_label(label), kill, prompt) def delete_page_current(self, kill=True, prompt=0): self.delete_page(self.get_current_page(), kill, prompt) def new_page(self, directory=None): terminal = self.terminal_spawn(directory) terminal_box = TerminalBox() terminal_box.set_terminal(terminal) root_terminal_box = RootTerminalBox(self.guake, self) root_terminal_box.set_child(terminal_box) page_num = self.append_page(root_terminal_box, None) self.set_tab_reorderable(root_terminal_box, True) self.show_all() # needed to show newly added tabs and pages # this is needed to initially set the last_terminal_focused, # one could also call terminal.get_parent().on_terminal_focus() self.terminal_attached(terminal) return root_terminal_box, page_num, terminal def terminal_spawn(self, directory=None): terminal = GuakeTerminal(self.guake) terminal.grab_focus() if not isinstance(directory, str): directory = os.environ['HOME'] try: if self.guake.settings.general.get_boolean('open-tab-cwd'): # Do last focused terminal still alive? active_terminal = self.get_current_terminal() if not active_terminal: # If not alive, can we get any focused terminal? active_terminal = self.get_focused_terminal() directory = os.path.expanduser('~') if active_terminal: # If found, we will use its directory as new terminal's directory directory = active_terminal.get_current_directory() except Exception as e: pass log.info("Spawning new terminal at %s", directory) terminal.spawn_sync_pid(directory) return terminal def terminal_attached(self, terminal): terminal.emit("focus", Gtk.DirectionType.TAB_FORWARD) self.emit('terminal-spawned', terminal, terminal.pid) def new_page_with_focus(self, directory=None, label=None, user_set=False): box, page_num, terminal = self.new_page(directory) self.set_current_page(page_num) if not label: self.rename_page(page_num, _("Terminal"), False) else: self.rename_page(page_num, label, user_set) terminal.grab_focus() return box, page_num, terminal def rename_page(self, page_index, new_text, user_set=False): """Rename an already added page by its index. Use user_set to define if the rename was triggered by the user (eg. rename dialog) or by an update from the vte (eg. vte:window-title-changed) """ page = self.get_nth_page(page_index) if not getattr(page, "custom_label_set", False) or user_set: old_label = self.get_tab_label(page) if isinstance(old_label, TabLabelEventBox): old_label.set_text(new_text) else: label = TabLabelEventBox(self, new_text, self.guake.settings) label.add_events(Gdk.EventMask.SCROLL_MASK) label.connect('scroll-event', self.scroll_callback.on_scroll) self.set_tab_label(page, label) if user_set: setattr(page, "custom_label_set", new_text != "-") def find_tab_index_by_label(self, eventbox): for index, tab_eventbox in enumerate(self.iter_tabs()): if eventbox is tab_eventbox: return index return -1 def find_page_index_by_terminal(self, terminal): for index, page in enumerate(self.iter_pages()): for t in page.iter_terminals(): if t is terminal: return index return -1 def get_tab_text_index(self, index): return self.get_tab_label(self.get_nth_page(index)).get_text() def get_tab_text_page(self, page): return self.get_tab_label(page).get_text() @save_tabs_when_changed def on_new_tab(self, user_data): self.new_page_with_focus() def on_show_preferences(self, user_data): self.guake.hide() PrefsDialog(self.guake.settings).show() def on_show_about(self, user_data): self.guake.hide() AboutDialog() def on_quit(self, user_data): self.guake.accel_quit() def on_save_tabs(self, user_data): self.guake.save_tabs() def on_restore_tabs(self, user_data): self.guake.restore_tabs() def on_restore_tabs_with_dialog(self, user_data): dialog = Gtk.MessageDialog( parent=self.guake.window, flags=Gtk.DialogFlags.MODAL, buttons=Gtk.ButtonsType.OK_CANCEL, message_format=_( 'You are going to restore *all* the tabs!\n' 'which means all your terminals & pages ' 'will be replaced.\n\nDo you want to continue?' ) ) dialog.connect('response', self.restore_tabs_dialog_response) dialog.show() def restore_tabs_dialog_response(self, widget, response_id): widget.destroy() if response_id == Gtk.ResponseType.OK: self.guake.restore_tabs() class NotebookManager(GObject.Object): def __init__( self, window, notebook_parent, workspaces_enabled, terminal_spawned_cb, page_deleted_cb ): GObject.Object.__init__(self) if not GObject.signal_lookup('notebook-created', self): GObject.signal_new( 'notebook-created', self, GObject.SIGNAL_RUN_LAST, GObject.TYPE_NONE, (GObject.TYPE_PYOBJECT, GObject.TYPE_INT) ) self.current_notebook = 0 self.notebooks = {} self.window = window self.notebook_parent = notebook_parent self.terminal_spawned_cb = terminal_spawned_cb self.page_deleted_cb = page_deleted_cb if workspaces_enabled and gdk_is_x11_display(Gdk.Display.get_default()): # NOTE: Wnck didn't support non-X11 display backend, so we need to check if the display # is X11 or not, if not, it will not able to enable workspace-specific-tab-sets # # TODO: Is there anyway to support this in non-X11 display backend? self.screen = Wnck.Screen.get_default() self.screen.connect("active-workspace-changed", self.__workspace_changed_cb) def __workspace_changed_cb(self, screen, previous_workspace): self.set_workspace(self.screen.get_active_workspace().get_number()) def get_notebook(self, workspace_index: int): if not self.has_notebook_for_workspace(workspace_index): self.notebooks[workspace_index] = TerminalNotebook() self.emit('notebook-created', self.notebooks[workspace_index], workspace_index) self.notebooks[workspace_index].connect('terminal-spawned', self.terminal_spawned_cb) self.notebooks[workspace_index].connect('page-deleted', self.page_deleted_cb) log.info("created fresh notebook for workspace %d", self.current_notebook) # add a tab if there is none if not self.notebooks[workspace_index].has_page(): self.notebooks[workspace_index].new_page_with_focus(None) return self.notebooks[workspace_index] def get_current_notebook(self): return self.get_notebook(self.current_notebook) def has_notebook_for_workspace(self, workspace_index): return workspace_index in self.notebooks.keys() def set_workspace(self, index: int): self.notebook_parent.remove(self.get_current_notebook()) self.current_notebook = index log.info("current workspace is %d", self.current_notebook) notebook = self.get_current_notebook() self.notebook_parent.add(notebook) if self.window.get_property('visible') and \ notebook.last_terminal_focused is not None: notebook.last_terminal_focused.grab_focus() # Restore pending page terminal split notebook.guake.restore_pending_terminal_split() def get_notebooks(self): return self.notebooks def get_terminals(self): terminals = [] for k in self.notebooks: terminals += self.notebooks[k].get_terminals() return terminals def iter_terminals(self): for k in self.notebooks: for t in self.notebooks[k].iter_terminals(): yield t def iter_pages(self): for k in self.notebooks: for t in self.notebooks[k].iter_pages(): yield t def iter_notebooks(self): for k in self.notebooks: yield self.notebooks[k] def get_n_pages(self): n = 0 for k in self.notebooks: n += self.notebooks[k].get_n_pages() return n def get_n_notebooks(self): return len(self.notebooks.keys()) def get_running_fg_processes_count(self): r_fg_c = 0 for k in self.notebooks: r_fg_c += self.notebooks[k].get_running_fg_processes_count() return r_fg_c guake-3.6.3/guake/notifier.py000066400000000000000000000022441346623310400161100ustar00rootroot00000000000000# -*- coding: utf-8; -*- """ Copyright (C) 2007-2013 Guake authors This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA """ import gi gi.require_version('Notify', '0.7') from gi.repository import GLib from gi.repository import Notify Notify.init("Guake") __all__ = ['showMessage'] def showMessage(brief, body=None, icon=None): try: notification = Notify.Notification.new(brief, body, icon) notification.show() # pylint: disable=catching-non-exception except GLib.GError: pass # pylint: enable=catching-non-exception guake-3.6.3/guake/palettes.py000066400000000000000000001521771346623310400161250ustar00rootroot00000000000000# -*- coding: utf-8; -*- """ Copyright (C) 2007-2013 Guake authors This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA """ # index 00: Host # index 01: Syntax string # index 02: Command # index 03: Command color 2 # index 04: Path # index 05: Syntax var # index 06: Promp # index 07: # index 08: # index 09: Command error # index 10: Exec # index 11: # index 12: Folder # index 13: # index 14: # index 15: # index 16: Background Color # index 17: Foreground Color PALETTES = { '3024 Day': ( '#090903030000:#DBDB2D2D2020:#0101A2A25252:#FDFDEDED0202:#0101A0A0E4E4:' '#A1A16A6A9494:#B5B5E4E4F4F4:#A5A5A2A2A2A2:#5C5C58585555:#E8E8BBBBD0D0:' '#3A3A34343232:#4A4A45454343:#80807D7D7C7C:#D6D6D5D5D4D4:#CDCDABAB5353:' '#F7F7F7F7F7F7:#4A4A45454343:#F7F7F7F7F7F7' ), '3024 Night': ( '#090903030000:#DBDB2D2D2020:#0101A2A25252:#FDFDEDED0202:#0101A0A0E4E4:' '#A1A16A6A9494:#B5B5E4E4F4F4:#A5A5A2A2A2A2:#5C5C58585555:#E8E8BBBBD0D0:' '#3A3A34343232:#4A4A45454343:#80807D7D7C7C:#D6D6D5D5D4D4:#CDCDABAB5353:' '#F7F7F7F7F7F7:#A5A5A2A2A2A2:#090903030000' ), 'Adventure Time': ( '#050504040404:#BCBC00001313:#4949B1B11717:#E6E674741D1D:#0F0F4949C6C6:' '#666659599292:#6F6FA4A49797:#F8F8DBDBC0C0:#4E4E7B7BBFBF:#FCFC5E5E5959:' '#9D9DFFFF6E6E:#EFEFC1C11A1A:#18189696C6C6:#9A9A59595252:#C8C8F9F9F3F3:' '#F5F5F4F4FBFB:#F8F8DBDBC0C0:#1E1E1C1C4444' ), 'Afterglow': ( '#151515151515:#ACAC41414242:#7E7E8D8D5050:#E5E5B5B56767:#6C6C9999BABA:' '#9E9E4E4E8585:#7D7DD5D5CFCF:#D0D0D0D0D0D0:#505050505050:#ACAC41414242:' '#7E7E8D8D5050:#E5E5B5B56666:#6C6C9999BBBB:#9E9E4E4E8585:#7D7DD5D5CFCF:' '#F5F5F5F5F5F5:#D0D0D0D0D0D0:#202020202020' ), 'Alien Blood': ( '#111126261515:#7F7F2B2B2626:#2F2F7E7E2525:#70707F7F2323:#2F2F69697F7F:' '#474757577E7E:#31317F7F7676:#64647D7D7575:#3C3C47471111:#DFDF80800808:' '#1818E0E00000:#BDBDE0E00000:#0000A9A9DFDF:#00005858DFDF:#0000DFDFC3C3:' '#7373F9F99090:#63637D7D7575:#0F0F16160F0F' ), 'Argonaut': ( '#222222222222:#FFFF00000F0F:#8C8CE0E00A0A:#FFFFB9B90000:#00008D8DF8F8:' '#6C6C4343A5A5:#0000D7D7EBEB:#FFFFFFFFFFFF:#444444444444:#FFFF27273F3F:' '#ABABE0E05A5A:#FFFFD1D14141:#00009292FFFF:#9A9A5F5FEBEB:#6767FFFFEFEF:' '#FFFFFFFFFFFF:#FFFFFAFAF3F3:#0D0D0F0F1818' ), 'Arthur': ( '#3D3D35352A2A:#CDCD5C5C5C5C:#8686AFAF8080:#E8E8AEAE5B5B:#64649595EDED:' '#DEDEB8B88787:#B0B0C4C4DEDE:#BBBBAAAA9999:#555544444444:#CCCC55553333:' '#8888AAAA2222:#FFFFA7A75D5D:#8787CECEEBEB:#999966660000:#B0B0C4C4DEDE:' '#DDDDCCCCBBBB:#DDDDEEEEDDDD:#1C1C1C1C1C1C' ), 'Atom': ( '#000000000000:#FCFC5E5EF0F0:#8787C3C38A8A:#FFFFD7D7B1B1:#8585BEBEFDFD:' '#B9B9B5B5FCFC:#8585BEBEFDFD:#DFDFDFDFDFDF:#000000000000:#FCFC5E5EF0F0:' '#9494F9F93636:#F5F5FFFFA7A7:#9696CBCBFEFE:#B9B9B5B5FCFC:#8585BEBEFDFD:' '#DFDFDFDFDFDF:#C5C5C8C8C6C6:#161617171818' ), 'Belafonte Day': ( '#202011111B1B:#BEBE10100E0E:#858581816262:#EAEAA5A54949:#42426A6A7979:' '#979752522C2C:#98989A9A9C9C:#96968C8C8383:#5E5E52525252:#BEBE10100E0E:' '#858581816262:#EAEAA5A54949:#42426A6A7979:#979752522C2C:#98989A9A9C9C:' '#D5D5CCCCBABA:#454537373C3C:#D5D5CCCCBABA' ), 'Belafonte Night': ( '#202011111B1B:#BEBE10100E0E:#858581816262:#EAEAA5A54949:#42426A6A7979:' '#979752522C2C:#98989A9A9C9C:#96968C8C8383:#5E5E52525252:#BEBE10100E0E:' '#858581816262:#EAEAA5A54949:#42426A6A7979:#979752522C2C:#98989A9A9C9C:' '#D5D5CCCCBABA:#96968C8C8383:#202011111B1B' ), 'Birdsofparadise': ( '#57573D3D2525:#BEBE2D2D2626:#6B6BA0A08A8A:#E9E99C9C2929:#5A5A8686ACAC:' '#ABAB8080A6A6:#7474A5A5ACAC:#DFDFDADAB7B7:#9A9A6B6B4949:#E8E845452626:' '#9494D7D7BABA:#D0D0D0D04F4F:#B8B8D3D3EDED:#D0D09D9DCACA:#9292CECED6D6:' '#FFFFF9F9D4D4:#DFDFDADAB7B7:#2A2A1E1E1D1D' ), 'Blazer': ( '#000000000000:#B8B87A7A7A7A:#7A7AB8B87A7A:#B8B8B8B87A7A:#7A7A7A7AB8B8:' '#B8B87A7AB8B8:#7A7AB8B8B8B8:#D9D9D9D9D9D9:#262626262626:#DBDBBDBDBDBD:' '#BDBDDBDBBDBD:#DBDBDBDBBDBD:#BDBDBDBDDBDB:#DBDBBDBDDBDB:#BDBDDBDBDBDB:' '#FFFFFFFFFFFF:#D9D9E6E6F2F2:#0D0D19192626' ), 'Bluloco': ( '#505050505050:#FFFF2E2E3F3F:#6F6FD6D65D5D:#FFFF6F6F2323:#34347676FFFF:' '#98986161F8F8:#0000CDCDB3B3:#FFFFFCFCC2C2:#7C7C7C7C7C7C:#FFFF64648080:' '#3F3FC5C56B6B:#F9F9C8C85959:#0000B1B1FEFE:#B6B68D8DFFFF:#B3B38B8B7D7D:' '#FFFFFEFEE3E3:#DEDEE0E0DFDF:#262626262626' ), 'Borland': ( '#4E4E4E4E4E4E:#FFFF6B6B6060:#A7A7FFFF6060:#FFFFFFFFB6B6:#9696CACAFDFD:' '#FFFF7373FDFD:#C6C6C4C4FDFD:#EEEEEEEEEEEE:#7C7C7C7C7C7C:#FFFFB6B6B0B0:' '#CECEFFFFABAB:#FFFFFFFFCBCB:#B5B5DCDCFEFE:#FFFF9C9CFEFE:#DFDFDFDFFEFE:' '#FFFFFFFFFFFF:#FFFFFFFF4E4E:#00000000A4A4' ), 'Broadcast': ( '#000000000000:#DADA49493939:#51519F9F5050:#FFFFD2D24A4A:#6D6D9C9CBEBE:' '#D0D0D0D0FFFF:#6E6E9C9CBEBE:#FFFFFFFFFFFF:#323232323232:#FFFF7B7B6B6B:' '#8383D1D18282:#FFFFFFFF7C7C:#9F9FCECEF0F0:#FFFFFFFFFFFF:#A0A0CECEF0F0:' '#FFFFFFFFFFFF:#E6E6E1E1DCDC:#2B2B2B2B2B2B' ), 'Brogrammer': ( '#1F1F1F1F1F1F:#F7F711111818:#2C2CC5C55D5D:#ECECB9B90F0F:#2A2A8484D2D2:' '#4E4E5959B7B7:#0F0F8080D5D5:#D6D6DADAE4E4:#D6D6DADAE4E4:#DEDE34342E2E:' '#1D1DD2D26060:#F2F2BDBD0909:#0F0F8080D5D5:#52524F4FB9B9:#0F0F7C7CDADA:' '#FFFFFFFFFFFF:#D6D6DADAE4E4:#131313131313' ), 'C64': ( '#090903030000:#888839393232:#5555A0A04949:#BFBFCECE7272:#404031318D8D:' '#8B8B3F3F9696:#6767B6B6BDBD:#FFFFFFFFFFFF:#000000000000:#888839393232:' '#5555A0A04949:#BFBFCECE7272:#404031318D8D:#8B8B3F3F9696:#6767B6B6BDBD:' '#F7F7F7F7F7F7:#78786969C4C4:#404031318D8D' ), 'Chalk': ( '#7C7C8A8A8F8F:#B2B23A3A5151:#78789A9A6969:#B9B9ABAB4A4A:#2A2A7F7FACAC:' '#BCBC4F4F5A5A:#4444A7A79999:#D2D2D8D8D9D9:#888888888888:#F2F248484040:' '#8080C4C46F6F:#FFFFEBEB6262:#40409595FFFF:#FBFB51517575:#5252CCCCBDBD:' '#D2D2D8D8D9D9:#D2D2D8D8D9D9:#2B2B2C2C2E2E' ), 'Chalkboard': ( '#000000000000:#C3C373737272:#7272C3C37373:#C2C2C3C37272:#73737272C3C3:' '#C3C37272C2C2:#7272C2C2C3C3:#D9D9D9D9D9D9:#323232323232:#DBDBAAAAAAAA:' '#AAAADBDBAAAA:#DADADBDBAAAA:#AAAAAAAADBDB:#DBDBAAAADADA:#AAAADADADBDB:' '#FFFFFFFFFFFF:#D9D9E6E6F2F2:#292926262F2F' ), 'Ciapre': ( '#181818181818:#808000000909:#484851513B3B:#CCCC8A8A3E3E:#56566D6D8C8C:' '#72724C4C7C7C:#5B5B4F4F4A4A:#ADADA3A37E7E:#555555555555:#ABAB38383434:' '#A6A6A6A65D5D:#DCDCDEDE7B7B:#2F2F9797C6C6:#D3D330306060:#F3F3DADAB1B1:' '#F3F3F3F3F3F3:#ADADA3A37A7A:#18181C1C2727' ), 'Clrs': ( '#000000000000:#F7F727272929:#323289895C5C:#F9F96F6F1C1C:#12125C5CCFCF:' '#9F9F0000BCBC:#3232C2C2C0C0:#B2B2B2B2B2B2:#545457575353:#FBFB04041616:' '#2C2CC6C63131:#FCFCD6D62727:#15156F6FFEFE:#E8E80000B0B0:#3939D5D5CECE:' '#EDEDEDEDECEC:#262626262626:#FFFFFFFFFFFF' ), 'Cobalt Neon': ( '#141426263030:#FFFF23232020:#3A3AA5A5FFFF:#E9E9E7E75C5C:#8F8FF5F58686:' '#78781A1AA0A0:#8F8FF5F58686:#BABA4545B1B1:#FFFFF6F68888:#D4D431312E2E:' '#8F8FF5F58686:#E9E9F0F06D6D:#3C3C7D7DD2D2:#82823030A7A7:#6C6CBCBC6767:' '#8F8FF5F58686:#8F8FF5F58686:#141428283838' ), 'Cobalt2': ( '#000000000000:#FFFF00000000:#3737DDDD2121:#FEFEE4E40909:#14146060D2D2:' '#FFFF00005D5D:#0000BBBBBBBB:#BBBBBBBBBBBB:#555555555555:#F4F40D0D1717:' '#3B3BCFCF1D1D:#ECECC8C80909:#55555555FFFF:#FFFF5555FFFF:#6A6AE3E3F9F9:' '#FFFFFFFFFFFF:#FFFFFFFFFFFF:#121226263737' ), 'Crayon Pony Fish': ( '#2A2A1A1A1C1C:#909000002A2A:#575795952323:#AAAA30301B1B:#8B8B8787AFAF:' '#68682E2E5050:#E8E8A7A76666:#686852525959:#3C3C2A2A2E2E:#C5C524245C5C:' '#8D8DFFFF5656:#C7C737371D1D:#CFCFC9C9FFFF:#FBFB6C6CB9B9:#FFFFCECEAEAE:' '#AFAF94949D9D:#686852525959:#141406060707' ), 'Dark Pastel': ( '#000000000000:#FFFF55555555:#5555FFFF5555:#FFFFFFFF5555:#55555555FFFF:' '#FFFF5555FFFF:#5555FFFFFFFF:#BBBBBBBBBBBB:#555555555555:#FFFF55555555:' '#5555FFFF5555:#FFFFFFFF5555:#55555555FFFF:#FFFF5555FFFF:#5555FFFFFFFF:' '#FFFFFFFFFFFF:#FFFFFFFFFFFF:#000000000000' ), 'Darkside': ( '#000000000000:#E8E834341C1C:#6868C2C25656:#F2F2D3D32C2C:#1C1C9898E8E8:' '#8E8E6969C9C9:#1C1C9898E8E8:#BABABABABABA:#000000000000:#DFDF5A5A4F4F:' '#7676B7B76868:#EEEED6D64A4A:#38387B7BD2D2:#95957B7BBDBD:#3D3D9696E2E2:' '#BABABABABABA:#BABABABABABA:#222223232424' ), 'Desert': ( '#4D4D4D4D4D4D:#FFFF2B2B2B2B:#9898FBFB9898:#F0F0E6E68C8C:#CDCD85853F3F:' '#FFFFDEDEADAD:#FFFFA0A0A0A0:#F5F5DEDEB3B3:#555555555555:#FFFF55555555:' '#5555FFFF5555:#FFFFFFFF5555:#8787CECEFFFF:#FFFF5555FFFF:#FFFFD7D70000:' '#FFFFFFFFFFFF:#FFFFFFFFFFFF:#333333333333' ), 'Dimmed Monokai': ( '#3A3A3C3C4343:#BEBE3E3E4848:#86869A9A3A3A:#C4C4A5A53535:#4E4E7676A1A1:' '#85855B5B8D8D:#56568E8EA3A3:#B8B8BCBCB9B9:#888889898787:#FBFB00001E1E:' '#0E0E71712E2E:#C3C370703333:#17176C6CE3E3:#FBFB00006767:#2D2D6F6F6C6C:' '#FCFCFFFFB8B8:#B8B8BCBCB9B9:#1E1E1E1E1E1E' ), 'Dracula': ( '#000000000000:#FFFF55555555:#5050FAFA7B7B:#F1F1FAFA8C8C:#BDBD9393F9F9:' '#FFFF7979C6C6:#8B8BE9E9FDFD:#BBBBBBBBBBBB:#555555555555:#FFFF55555555:' '#5050FAFA7B7B:#F1F1FAFA8C8C:#BDBD9393F9F9:#FFFF7979C6C6:#8B8BE9E9FDFD:' '#FFFFFFFFFFFF:#F8F8F8F8F2F2:#1E1E1F1F2828' ), 'Earthsong': ( '#111114141717:#C8C841413434:#8484C4C44B4B:#F4F4AEAE2E2E:#13139797B9B9:' '#D0D062623C3C:#4F4F94945252:#E5E5C5C5A9A9:#66665E5E5454:#FFFF64645959:' '#9797E0E03535:#DFDFD5D56161:#5E5ED9D9FFFF:#FFFF91916868:#8383EFEF8888:' '#F6F6F6F6ECEC:#E5E5C6C6A8A8:#282824242020' ), 'Elemental': ( '#3C3C3B3B3030:#979728280F0F:#474799994242:#7F7F71711010:#49497F7F7D7D:' '#7E7E4E4E2E2E:#38387F7F5858:#808079797474:#545454544444:#DFDF50502A2A:' '#6060E0E06F6F:#D6D698982727:#7878D8D8D8D8:#CDCD7C7C5353:#5858D5D59898:' '#FFFFF1F1E8E8:#808079797373:#212121211C1C' ), 'Elementary Loki': ( '#070736364242:#DCDC32322F2F:#858599990000:#B5B589890000:#26268B8BD2D2:' '#ECEC00004848:#2A2AA1A19898:#9494A3A3A5A5:#58586E6E7575:#CBCB4B4B1616:' '#858599990000:#B5B589890000:#26268B8BD2D2:#D3D336368282:#2A2AA1A19898:' '#EEEEEEEEEEEE:#9494A3A3A5A5:#25252E2E3232' ), 'Espresso Libre': ( '#000000000000:#CCCC00000000:#1A1A92921C1C:#EFEFE4E43A3A:#00006666FFFF:' '#C5C565656B6B:#050598989A9A:#D3D3D7D7CFCF:#545457575353:#EFEF28282828:' '#9A9AFFFF8787:#FFFFFAFA5C5C:#4343A8A8EDED:#FFFF80808989:#3434E2E2E2E2:' '#EDEDEDEDECEC:#B8B8A8A89898:#2A2A21211C1C' ), 'Espresso': ( '#343434343434:#D2D251515151:#A5A5C2C26161:#FFFFC6C66D6D:#6C6C9999BBBB:' '#D1D19797D9D9:#BEBED6D6FFFF:#EEEEEEEEECEC:#535353535353:#F0F00C0C0C0C:' '#C2C2E0E07575:#E1E1E3E38B8B:#8A8AB7B7D9D9:#EFEFB5B5F7F7:#DCDCF3F3FFFF:' '#FFFFFFFFFFFF:#FFFFFFFFFFFF:#323232323232' ), 'Fideloper': ( '#28282F2F3232:#CACA1D1D2C2C:#EDEDB7B7ABAB:#B7B7AAAA9A9A:#2E2E7878C1C1:' '#C0C022226E6E:#303091918585:#E9E9E2E2CDCD:#090920202727:#D3D35F5F5A5A:' '#D3D35F5F5A5A:#A8A865657171:#7C7C8484C4C4:#5B5B5D5DB2B2:#818190908F8F:' '#FCFCF4F4DEDE:#DADAD9D9DFDF:#28282F2F3232' ), 'Fishtank': ( '#030306063C3C:#C6C600004949:#ABABF1F15757:#FDFDCDCD5E5E:#52525F5FB8B8:' '#97976F6F8181:#969686866262:#ECECEFEFFCFC:#6C6C5A5A3030:#D9D94A4A8A8A:' '#DADAFFFFA8A8:#FEFEE6E6A8A8:#B1B1BDBDF9F9:#FDFDA4A4CCCC:#A4A4BCBC8686:' '#F6F6FFFFECEC:#ECECEFEFFDFD:#222224243636' ), 'Flat': ( '#22222D2D3F3F:#A8A823232020:#3232A5A54848:#E5E58D8D1111:#31316767ACAC:' '#78781A1AA0A0:#2C2C93937070:#B0B0B6B6BABA:#21212C2C3C3C:#D4D431312E2E:' '#2D2D94944040:#E5E5BEBE0C0C:#3C3C7D7DD2D2:#82823030A7A7:#3535B3B38787:' '#E7E7ECECEDED:#2C2CC5C55D5D:#000022224040' ), 'Flatland': ( '#1C1C1D1D1919:#F1F182823838:#9E9ED2D26464:#F3F3EFEF6D6D:#4F4F9696BEBE:' '#69695A5ABBBB:#D5D538386464:#FEFEFFFFFEFE:#1C1C1D1D1919:#D1D12A2A2424:' '#A7A7D3D32C2C:#FFFF89894848:#6161B8B8D0D0:#69695A5ABBBB:#D5D538386464:' '#FEFEFFFFFEFE:#B8B8DADAEEEE:#1C1C1E1E2020' ), 'Frontend Delight': ( '#242424242626:#F8F850501A1A:#565657574646:#F9F976761D1D:#2C2C7070B7B7:' '#F0F02D2D4E4E:#3B3BA0A0A5A5:#ACACACACACAC:#5E5EACAC6C6C:#F6F643431919:' '#7474EBEB4C4C:#FCFCC2C22424:#33339393C9C9:#E7E75E5E4E4E:#4E4EBCBCE5E5:' '#8B8B73735A5A:#ACACACACACAC:#1B1B1B1B1D1D' ), 'Frontend Fun Forrest': ( '#000000000000:#D5D525252B2B:#90909B9B0000:#BDBD8A8A1313:#46469898A2A2:' '#8C8C42423131:#D9D981811212:#DDDDC1C16565:#7E7E69695454:#E4E459591B1B:' '#BFBFC6C65959:#FFFFCACA1B1B:#7C7CC9C9CECE:#D1D163634949:#E6E6A9A96B6B:' '#FFFFE9E9A3A3:#DDDDC1C16565:#242412120000' ), 'Frontend Galaxy': ( '#000000000000:#F9F955555F5F:#2020AFAF8989:#FDFDF0F02929:#58589C9CF5F5:' '#93934D4D9595:#1E1E9E9EE6E6:#BBBBBBBBBBBB:#555555555555:#FAFA8B8B8E8E:' '#3434BBBB9999:#FFFFFFFF5555:#58589C9CF5F5:#E7E755559898:#39397878BBBB:' '#FFFFFFFFFFFF:#FFFFFFFFFFFF:#1C1C28283636' ), 'Github': ( '#3E3E3E3E3E3E:#97970B0B1616:#070796962A2A:#F8F8EEEEC7C7:#00003E3E8A8A:' '#E9E946469191:#8989D1D1ECEC:#FFFFFFFFFFFF:#666666666666:#DEDE00000000:' '#8787D5D5A2A2:#F1F1D0D00707:#2E2E6C6CBABA:#FFFFA2A29F9F:#1C1CFAFAFEFE:' '#FFFFFFFFFFFF:#3E3E3E3E3E3E:#F4F4F4F4F4F4' ), 'Grape': ( '#2D2D28283E3E:#ECEC21216060:#1F1FA9A91B1B:#8D8DDCDC1F1F:#48487C7CF4F4:' '#8C8C3535C8C8:#3A3ADDDDEDED:#9E9E9E9EA0A0:#585850506A6A:#F0F071719A9A:' '#5252A9A95D5D:#B2B2DCDC8787:#A9A9BBBBEBEB:#ACAC8181C1C1:#9C9CE3E3EAEA:' '#A1A18888F7F7:#9E9E9E9EA0A0:#161614142323' ), 'Grass': ( '#000000000000:#BBBB00000000:#0000BBBB0000:#E7E7B0B00000:#00000000A3A3:' '#959500006161:#0000BBBBBBBB:#BBBBBBBBBBBB:#555555555555:#BBBB00000000:' '#0000BBBB0000:#E7E7B0B00000:#00000000BBBB:#FFFF5555FFFF:#5555FFFFFFFF:' '#FFFFFFFFFFFF:#FFFFF0F0A5A5:#131377773C3C' ), 'Hardcore': ( '#1B1B1D1D1E1E:#F9F926267272:#A6A6E2E22E2E:#FDFD97971F1F:#6666D9D9EFEF:' '#9E9E6F6FFEFE:#5E5E71717575:#CCCCCCCCC6C6:#505053535454:#FFFF66669D9D:' '#BEBEEDED5F5F:#E6E6DBDB7474:#6666D9D9EFEF:#9E9E6F6FFEFE:#A3A3BABABFBF:' '#F8F8F8F8F2F2:#A0A0A0A0A0A0:#121212121212' ), 'Harper': ( '#010101010101:#F8F8B6B63F3F:#7F7FB5B5E1E1:#D6D6DADA2525:#48489E9E4848:' '#B2B29696C6C6:#F5F5BFBFD7D7:#A8A8A4A49D9D:#72726E6E6A6A:#F8F8B6B63F3F:' '#7F7FB5B5E1E1:#D6D6DADA2525:#48489E9E4848:#B2B29696C6C6:#F5F5BFBFD7D7:' '#FEFEFBFBEAEA:#A8A8A4A49D9D:#010101010101' ), 'Highway': ( '#000000000000:#CFCF0D0D1717:#121280803333:#FFFFCACA3D3D:#00006A6AB3B3:' '#6A6A26267474:#383845456363:#EDEDEDEDEDED:#5C5C4F4F4949:#EFEF7D7D1717:' '#B1B1D1D13030:#FFFFF1F11F1F:#4F4FC2C2FDFD:#DEDE00007070:#5C5C4F4F4949:' '#FEFEFFFFFEFE:#EDEDEDEDEDED:#212122222424' ), 'Hipster Green': ( '#000000000000:#B6B620204A4A:#0000A6A60000:#BEBEBEBE0000:#24246D6DB2B2:' '#B2B20000B2B2:#0000A6A6B2B2:#BFBFBFBFBFBF:#666666666666:#E5E500000000:' '#8686A8A83E3E:#E5E5E5E50000:#00000000FFFF:#E5E50000E5E5:#0000E5E5E5E5:' '#E5E5E5E5E5E5:#8484C1C13737:#0F0F0A0A0505' ), 'Homebrew': ( '#000000000000:#999900000000:#0000A6A60000:#999999990000:#00000000B2B2:' '#B2B20000B2B2:#0000A6A6B2B2:#BFBFBFBFBFBF:#666666666666:#E5E500000000:' '#0000D9D90000:#E5E5E5E50000:#00000000FFFF:#E5E50000E5E5:#0000E5E5E5E5:' '#E5E5E5E5E5E5:#0000FFFF0000:#000000000000' ), 'Hurtado': ( '#575757575757:#FFFF1B1B0000:#A5A5DFDF5555:#FBFBE7E74A4A:#484863638787:' '#FCFC5E5EF0F0:#8585E9E9FEFE:#CBCBCBCBCBCB:#252525252525:#D4D41C1C0000:' '#A5A5DFDF5555:#FBFBE7E74949:#8989BDBDFFFF:#BFBF0000C0C0:#8585E9E9FEFE:' '#DBDBDBDBDBDB:#DADADBDBDADA:#000000000000' ), 'Hybrid': ( '#2A2A2E2E3333:#B7B74D4D5050:#B3B3BEBE5A5A:#E3E3B5B55E5E:#6D6D9090B0B0:' '#A0A07E7EABAB:#7F7FBEBEB3B3:#B5B5B8B8B6B6:#1D1D1E1E2121:#8C8C2D2D3232:' '#787883833131:#E5E589894F4F:#4B4B6B6B8888:#6E6E4F4F7979:#4D4D7B7B7373:' '#5A5A61616969:#B7B7BCBCB9B9:#161617171818' ), 'Ic Green Ppl': ( '#1E1E1E1E1E1E:#FBFB00002929:#32329B9B2424:#64649A9A2525:#14149B9B4545:' '#5353B8B82B2B:#2B2BB7B76767:#DFDFFEFEEEEE:#030326260F0F:#A6A6FFFF3E3E:' '#9F9FFFFF6D6D:#D1D1FFFF6D6D:#7272FFFFB5B5:#5050FFFF3D3D:#2222FFFF7171:' '#DADAEEEED0D0:#D9D9EEEED2D2:#3A3A3C3C3E3E' ), 'Ic Orange Ppl': ( '#000000000000:#C0C039390000:#A3A3A9A90000:#CACAAEAE0000:#BDBD6C6C0000:' '#FBFB5D5D0000:#F7F794940000:#FFFFC8C88A8A:#6A6A4E4E2929:#FFFF8B8B6767:' '#F6F6FFFF3F3F:#FFFFE3E36E6E:#FFFFBDBD5454:#FCFC87874F4F:#C5C597975252:' '#F9F9F9F9FEFE:#FFFFCBCB8383:#262626262626' ), 'Idle Toes': ( '#323232323232:#D2D252525252:#7F7FE1E17373:#FFFFC6C66D6D:#40409898FFFF:' '#F5F57F7FFFFF:#BEBED6D6FFFF:#EEEEEEEEECEC:#535353535353:#F0F070707070:' '#9D9DFFFF9090:#FFFFE4E48B8B:#5E5EB7B7F7F7:#FFFF9D9DFFFF:#DCDCF4F4FFFF:' '#FFFFFFFFFFFF:#FFFFFFFFFFFF:#323232323232' ), 'Ir Black': ( '#4F4F4F4F4F4F:#FAFA6C6C5F5F:#A8A8FEFE6060:#FFFFFEFEB6B6:#9696CACAFDFD:' '#FAFA7272FCFC:#C6C6C4C4FDFD:#EEEEEDEDEEEE:#7B7B7B7B7B7B:#FCFCB6B6AFAF:' '#CECEFFFFABAB:#FFFFFEFECCCC:#B5B5DCDCFEFE:#FBFB9B9BFEFE:#DFDFDFDFFDFD:' '#FEFEFFFFFEFE:#F1F1F1F1F1F1:#000000000000' ), 'Jackie Brown': ( '#2C2C1D1D1616:#EFEF57573434:#2B2BAFAF2B2B:#BDBDBEBE0000:#24246D6DB2B2:' '#CFCF5E5EC0C0:#0000ACACEEEE:#BFBFBFBFBFBF:#666666666666:#E5E500000000:' '#8686A8A83E3E:#E5E5E5E50000:#00000000FFFF:#E5E50000E5E5:#0000E5E5E5E5:' '#E5E5E5E5E5E5:#FFFFCCCC2F2F:#2C2C1C1C1515' ), 'Japanesque': ( '#343438383535:#CECE3E3E6060:#7B7BB7B75B5B:#E8E8B3B32A2A:#4C4C9999D3D3:' '#A5A57F7FC4C4:#38389A9AACAC:#F9F9FAFAF6F6:#58585A5A5858:#D1D18E8EA6A6:' '#76767E7E2B2B:#777759592E2E:#131358587979:#5F5F41419090:#7676BBBBCACA:' '#B1B1B5B5AEAE:#F7F7F6F6ECEC:#1D1D1D1D1D1D' ), 'Jellybeans': ( '#929292929292:#E2E273737373:#9393B9B97979:#FFFFBABA7B7B:#9797BEBEDCDC:' '#E1E1C0C0FAFA:#000098988E8E:#DEDEDEDEDEDE:#BDBDBDBDBDBD:#FFFFA1A1A1A1:' '#BDBDDEDEABAB:#FFFFDCDCA0A0:#B1B1D8D8F6F6:#FBFBDADAFFFF:#1A1AB2B2A8A8:' '#FFFFFFFFFFFF:#DEDEDEDEDEDE:#121212121212' ), 'Kibble': ( '#4D4D4D4D4D4D:#C7C700003131:#2929CFCF1313:#D8D8E3E30E0E:#34344949D1D1:' '#84840000FFFF:#07079898ABAB:#E2E2D1D1E3E3:#5A5A5A5A5A5A:#F0F015157878:' '#6C6CE0E05C5C:#F3F3F7F79E9E:#9797A4A4F7F7:#C4C49595F0F0:#6868F2F2E0E0:' '#FFFFFFFFFFFF:#F7F7F7F7F7F7:#0E0E10100A0A' ), 'Later This Evening': ( '#2B2B2B2B2B2B:#D3D35A5A5F5F:#AFAFBABA6666:#E5E5D2D28989:#A0A0B9B9D5D5:' '#BFBF9292D5D5:#9191BEBEB6B6:#3B3B3C3C3C3C:#444447474747:#D3D322222E2E:' '#AAAABBBB3939:#E4E4BDBD3939:#65659999D5D5:#AAAA5252D5D5:#5F5FBFBFADAD:' '#C0C0C2C2C2C2:#949494949494:#212121212121' ), 'Lavandula': ( '#232300004545:#7C7C15152525:#33337E7E6F6F:#7F7F6F6F4949:#4F4F4A4A7F7F:' '#59593F3F7E7E:#575776767F7F:#73736E6E7D7D:#37372C2C4646:#DFDF50506666:' '#5252E0E0C4C4:#E0E0C2C28686:#8E8E8686DFDF:#A6A67575DFDF:#9A9AD3D3DFDF:' '#8C8C9191FAFA:#73736E6E7D7D:#050500001414' ), 'Linux Console': ( '#000000000000:#aaaa00000000:#0000aaaa0000:#aaaa55550000:#00000000aaaa:' '#aaaa0000aaaa:#0000aaaaaaaa:#aaaaaaaaaaaa:#555555555556:#ffff55555555:' '#5555ffff5555:#ffffffff5555:#55555555ffff:#ffff5555ffff:#5555ffffffff:' '#ffffffffffff:#ffffffffffff:#000000000000' ), 'Liquid Carbon Transparent': ( '#000000000000:#FFFF2F2F2F2F:#54549A9A6F6F:#CCCCACAC0000:#00009999CCCC:' '#CCCC6868C8C8:#7979C4C4CCCC:#BCBCCCCCCCCC:#000000000000:#FFFF2F2F2F2F:' '#54549A9A6F6F:#CCCCACAC0000:#00009999CCCC:#CCCC6868C8C8:#7979C4C4CCCC:' '#BCBCCCCCCCCC:#AFAFC2C2C2C2:#000000000000' ), 'Liquid Carbon': ( '#000000000000:#FFFF2F2F2F2F:#54549A9A6F6F:#CCCCACAC0000:#00009999CCCC:' '#CCCC6868C8C8:#7979C4C4CCCC:#BCBCCCCCCCCC:#000000000000:#FFFF2F2F2F2F:' '#54549A9A6F6F:#CCCCACAC0000:#00009999CCCC:#CCCC6868C8C8:#7979C4C4CCCC:' '#BCBCCCCCCCCC:#AFAFC2C2C2C2:#2F2F2F2F2F2F' ), 'Lucario': ( '#4E4E4E4E4E4E:#FFFF6B6B6060:#FAFAB0B03636:#FFFFFFFFB6B6:#56569696EDED:' '#FFFF7373FDFD:#8E8EE4E47878:#EEEEEEEEEEEE:#4F4F4F4F4F4F:#F9F968686060:' '#FAFAB0B03636:#FDFDFFFFB8B8:#6B6B9F9FEDED:#FCFC6E6EF9F9:#8E8EE4E47878:' '#FFFFFFFFFFFF:#F8F8F8F8F2F2:#2B2B3E3E5050' ), 'Man Page': ( '#000000000000:#CCCC00000000:#0000A6A60000:#999999990000:#00000000B2B2:' '#B2B20000B2B2:#0000A6A6B2B2:#CCCCCCCCCCCC:#666666666666:#E5E500000000:' '#0000D9D90000:#E5E5E5E50000:#00000000FFFF:#E5E50000E5E5:#0000E5E5E5E5:' '#E5E5E5E5E5E5:#000000000000:#FEFEF4F49C9C' ), 'Mathias': ( '#000000000000:#E5E522222222:#A6A6E3E32D2D:#FCFC95951E1E:#C4C48D8DFFFF:' '#FAFA25257373:#6767D9D9F0F0:#F2F2F2F2F2F2:#555555555555:#FFFF55555555:' '#5555FFFF5555:#FFFFFFFF5555:#55555555FFFF:#FFFF5555FFFF:#5555FFFFFFFF:' '#FFFFFFFFFFFF:#BBBBBBBBBBBB:#000000000000' ), 'Medallion': ( '#000000000000:#B5B54C4C0000:#7C7C8A8A1616:#D2D2BDBD2525:#60606B6BAFAF:' '#8B8B59599090:#90906B6B2525:#C9C9C1C19999:#5E5E51511818:#FFFF91914848:' '#B1B1C9C93A3A:#FFFFE4E44949:#ABABB8B8FFFF:#FEFE9F9FFFFF:#FFFFBBBB5151:' '#FEFED5D59797:#CACAC2C29696:#1D1D18180808' ), 'Misterioso': ( '#000000000000:#FFFF42424242:#7474AFAF6868:#FFFFADAD2929:#33338F8F8686:' '#94941313E5E5:#2323D7D7D7D7:#E1E1E1E1E0E0:#555555555555:#FFFF32324242:' '#7474CDCD6868:#FFFFB9B92929:#2323D7D7D7D7:#FFFF3737FFFF:#0000EDEDE1E1:' '#FFFFFFFFFFFF:#E1E1E1E1E0E0:#2D2D37374343' ), 'Molokai': ( '#121212121212:#FAFA25257373:#9797E1E12323:#DFDFD4D46060:#0F0F7F7FCFCF:' '#87870000FFFF:#4242A7A7CFCF:#BBBBBBBBBBBB:#555555555555:#F5F566669C9C:' '#B0B0E0E05E5E:#FEFEF2F26C6C:#0000AFAFFFFF:#AFAF8787FFFF:#5050CDCDFEFE:' '#FFFFFFFFFFFF:#BBBBBBBBBBBB:#121212121212' ), 'Mona Lisa': ( '#34341A1A0D0D:#9B9B28281B1B:#626261613232:#C2C26E6E2727:#51515B5B5C5C:' '#9B9B1D1D2929:#585880805656:#F6F6D7D75C5C:#878742422727:#FFFF42423030:' '#B3B3B1B16363:#FFFF95956565:#9E9EB2B2B3B3:#FFFF5B5B6A6A:#8989CCCC8E8E:' '#FFFFE5E59797:#F6F6D5D56A6A:#11110B0B0D0D' ), 'Monokai Cobalt2': ( '#1C1C1D1D1919:#D0D01B1B2424:#A7A7D3D32C2C:#D8D8CFCF6767:#6161B8B8D0D0:' '#69695A5ABBBB:#D5D538386464:#FEFEFFFFFEFE:#1C1C1D1D1919:#D0D01B1B2424:' '#A7A7D3D32C2C:#D8D8CFCF6767:#6161B8B8D0D0:#69695A5ABBBB:#D5D538386464:' '#FEFEFFFFFEFE:#FFFFFFFFFFFF:#121226263737' ), 'Monokai Soda': ( '#191919191919:#F3F300005F5F:#9797E0E02323:#FAFA84841919:#9C9C6464FEFE:' '#F3F300005F5F:#5757D1D1EAEA:#C4C4C4C4B5B5:#61615E5E4B4B:#F3F300005F5F:' '#9797E0E02323:#DFDFD5D56161:#9C9C6464FEFE:#F3F300005F5F:#5757D1D1EAEA:' '#F6F6F6F6EEEE:#C4C4C4C4B5B5:#191919191919' ), 'Monokai': ( '#1C1C1D1D1919:#D0D01B1B2424:#A7A7D3D32C2C:#D8D8CFCF6767:#6161B8B8D0D0:' '#69695A5ABBBB:#D5D538386464:#FEFEFFFFFEFE:#1C1C1D1D1919:#D0D01B1B2424:' '#A7A7D3D32C2C:#D8D8CFCF6767:#6161B8B8D0D0:#69695A5ABBBB:#D5D538386464:' '#FEFEFFFFFEFE:#F6F6F5F5EEEE:#232325252626' ), 'N0tch2k': ( '#383838383838:#A9A955555151:#666666666666:#A9A980805151:#65657D7D3E3E:' '#767676767676:#C9C9C9C9C9C9:#D0D0B8B8A3A3:#474747474747:#A9A977777575:' '#8C8C8C8C8C8C:#A9A991917575:#9898BDBD5E5E:#A3A3A3A3A3A3:#DCDCDCDCDCDC:' '#D8D8C8C8BBBB:#A0A0A0A0A0A0:#222222222222' ), 'Neopolitan': ( '#000000000000:#808000000000:#6161CECE3C3C:#FBFBDEDE2D2D:#25253B3B7676:' '#FFFF00008080:#8D8DA6A6CECE:#F8F8F8F8F8F8:#000000000000:#808000000000:' '#6161CECE3C3C:#FBFBDEDE2D2D:#25253B3B7676:#FFFF00008080:#8D8DA6A6CECE:' '#F8F8F8F8F8F8:#FFFFFFFFFFFF:#27271F1F1919' ), 'Neutron': ( '#222225252B2B:#B5B53F3F3636:#5A5AB9B97777:#DDDDB5B56666:#6A6A7B7B9292:' '#A3A379799D9D:#3F3F9393A8A8:#E6E6E8E8EEEE:#222225252B2B:#B5B53F3F3636:' '#5A5AB9B97777:#DDDDB5B56666:#6A6A7B7B9292:#A3A379799D9D:#3F3F9393A8A8:' '#EBEBEDEDF2F2:#E6E6E8E8EEEE:#1B1B1D1D2222' ), 'Nightlion V1': ( '#4C4C4C4C4C4C:#BBBB00000000:#5E5EDEDE8F8F:#F2F2F0F06767:#26266A6AD7D7:' '#BBBB0000BBBB:#0000D9D9DFDF:#BBBBBBBBBBBB:#555555555555:#FFFF55555555:' '#5555FFFF5555:#FFFFFFFF5555:#55555555FFFF:#FFFF5555FFFF:#5555FFFFFFFF:' '#FFFFFFFFFFFF:#BBBBBBBBBBBB:#000000000000' ), 'Nightlion V2': ( '#4C4C4C4C4C4C:#BBBB00000000:#0303F6F62222:#F2F2F0F06767:#6363D0D0F0F0:' '#CECE6F6FDADA:#0000D9D9DFDF:#BBBBBBBBBBBB:#555555555555:#FFFF55555555:' '#7D7DF6F61C1C:#FFFFFFFF5555:#6262CACAE7E7:#FFFF9A9AF5F5:#0000CCCCD7D7:' '#FFFFFFFFFFFF:#BBBBBBBBBBBB:#171717171717' ), 'Nord': ( '#3B3B42425252:#BFBF61616A6A:#A3A3BEBE8C8C:#EBEBCBCB8B8B:#8181A1A1C1C1:' '#B4B48E8EADAD:#8888C0C0D0D0:#E5E5E9E9F0F0:#4C4C56566A6A:#BFBF61616A6A:' '#A3A3BEBE8C8C:#EBEBCBCB8B8B:#8181A1A1C1C1:#B4B48E8EADAD:#8F8FBCBCBBBB:' '#ECECEFEFF4F4:#D8D8DEDEE9E9:#2E2E34344040' ), 'Novel': ( '#000000000000:#CCCC00000000:#000096960000:#D0D06B6B0000:#00000000CCCC:' '#CCCC0000CCCC:#00008787CCCC:#CCCCCCCCCCCC:#7F7F7F7F7F7F:#CCCC00000000:' '#000096960000:#D0D06B6B0000:#00000000CCCC:#CCCC0000CCCC:#00008686CBCB:' '#FFFFFFFFFFFF:#3B3B23232222:#DFDFDBDBC3C3' ), 'Obsidian': ( '#000000000000:#A5A500000101:#0000BBBB0000:#FEFECCCC2222:#39399B9BDADA:' '#BBBB0000BBBB:#0000BBBBBBBB:#BBBBBBBBBBBB:#555555555555:#FFFF00000303:' '#9292C7C76363:#FEFEF7F77373:#A0A0D6D6FFFF:#FFFF5555FFFF:#5555FFFFFFFF:' '#FFFFFFFFFFFF:#CCCCCCCCCCCC:#272730303232' ), 'Ocean': ( '#000000000000:#999900000000:#0000A6A60000:#999999990000:#00000000B2B2:' '#B2B20000B2B2:#0000A6A6B2B2:#BFBFBFBFBFBF:#666666666666:#E5E500000000:' '#0000D9D90000:#E5E5E5E50000:#00000000FFFF:#E5E50000E5E5:#0000E5E5E5E5:' '#E5E5E5E5E5E5:#FFFFFFFFFFFF:#22224F4FBCBC' ), 'Ocean Dark': ( '#2B2B30303B3B:#BFBF61616A6A:#A3A3BEBE8C8C:#EBEBCBCB8B8B:#8F8FA1A1B3B3:' '#B4B48E8EADAD:#9696B5B5B4B4:#C0C0C5C5CECE:#656573737E7E:#BFBF61616A6A:' '#A3A3BEBE8C8C:#EBEBCBCB8B8B:#8F8FA1A1B3B3:#B4B48E8EADAD:#9696B5B5B4B4:' '#EFEFF1F1F5F5:#C0C0C5C5CECE:#2B2B30303B3B' ), 'Ocean Light': ( '#EFEFF1F1F5F5:#BFBF61616A6A:#A3A3BEBE8C8C:#EBEBCBCB8B8B:#8F8FA1A1B3B3:' '#B4B48E8EADAD:#9696B5B5B4B4:#C0C0C5C5CECE:#656573737E7E:#BFBF61616A6A:' '#A3A3BEBE8C8C:#EBEBCBCB8B8B:#8F8FA1A1B3B3:#B4B48E8EADAD:#9696B5B5B4B4:' '#2B2B30303B3B:#4F4F5B5B6666:#EFEFF1F1F5F5' ), 'Oceanic Next Dark': ( '#1B1B2B2B3434:#ECEC5f5f6767:#9999C7C79494:#FAFAC8C86363:#66669999CCCC:' '#C5C59494C5C5:#5F5FB3B3B3B3:#C0C0C5C5CECE:#656573737E7E:#ECEC5f5f6767:' '#9999C7C79494:#FAFAC8C86363:#66669999CCCC:#C5C59494C5C5:#5F5FB3B3B3B3:' '#D8D8DEDEE9E9:#C0C0C5C5CECE:#1B1B2B2B3434' ), 'Oceanic Next Light': ( '#D8D8DEDEE9E9:#ECEC5f5f6767:#9999C7C79494:#FAFAC8C86363:#66669999CCCC:' '#C5C59494C5C5:#5F5FB3B3B3B3:#C0C0C5C5CECE:#656573737E7E:#ECEC5f5f6767:' '#9999C7C79494:#FAFAC8C86363:#66669999CCCC:#C5C59494C5C5:#5F5FB3B3B3B3:' '#1B1B2B2B3434:#4F4F5B5B6666:#D8D8DEDEE9E9' ), 'Ollie': ( '#000000000000:#ABAB2E2E3030:#3131ABAB6060:#ABAB42420000:#2C2C5656ABAB:' '#AFAF84842727:#1F1FA5A5ABAB:#8A8A8D8DABAB:#5A5A36362525:#FFFF3D3D4848:' '#3B3BFFFF9999:#FFFF5E5E1E1E:#44448787FFFF:#FFFFC2C21C1C:#1E1EFAFAFFFF:' '#5B5B6D6DA7A7:#8A8A8D8DAEAE:#212120202424' ), 'One Dark': ( '#000000000000:#B0B058586969:#7676A6A66565:#CFCFB0B07373:#4A4AA4A4B8B8:' '#A1A16565C1C1:#4A4AA4A4B8B8:#B1B1B1B1B1B1:#4C4C57577272:#B0B058586969:' '#7676A6A66565:#CFCFB0B07373:#4A4AA4A4B8B8:#A1A16565C1C1:#4A4AA4A4B8B8:' '#DEDEDEDEDEDE:#4C4C57577171:#171718181C1C' ), 'Paul Millr': ( '#2A2A2A2A2A2A:#FFFF00000000:#7979FFFF0F0F:#E7E7BFBF0000:#38386B6BD7D7:' '#B3B34949BEBE:#6666CCCCFFFF:#BBBBBBBBBBBB:#666666666666:#FFFF00008080:' '#6666FFFF6666:#F3F3D6D64E4E:#70709A9AEDED:#DBDB6767E6E6:#7979DFDFF2F2:' '#FFFFFFFFFFFF:#F2F2F2F2F2F2:#000000000000' ), 'Pencil Dark': ( '#212121212121:#C3C307077171:#1010A7A77878:#A8A89C9C1414:#00008E8EC4C4:' '#52523C3C7979:#2020A5A5BABA:#D9D9D9D9D9D9:#424242424242:#FBFB00007A7A:' '#5F5FD7D7AFAF:#F3F3E4E43030:#2020BBBBFCFC:#68685555DEDE:#4F4FB8B8CCCC:' '#F1F1F1F1F1F1:#F1F1F1F1F1F1:#212121212121' ), 'Pencil Light': ( '#212121212121:#C3C307077171:#1010A7A77878:#A8A89C9C1414:#00008E8EC4C4:' '#52523C3C7979:#2020A5A5BABA:#D9D9D9D9D9D9:#424242424242:#FBFB00007A7A:' '#5F5FD7D7AFAF:#F3F3E4E43030:#2020BBBBFCFC:#68685555DEDE:#4F4FB8B8CCCC:' '#F1F1F1F1F1F1:#424242424242:#F1F1F1F1F1F1' ), 'Pnevma': ( '#2F2F2E2E2D2D:#A3A366666666:#9090A5A57D7D:#D7D7AFAF8787:#7F7FA5A5BDBD:' '#C7C79E9EC4C4:#8A8ADBDBB4B4:#D0D0D0D0D0D0:#4A4A48484545:#D7D787878787:' '#AFAFBEBEA2A2:#E4E4C9C9AFAF:#A1A1BDBDCECE:#D7D7BEBEDADA:#B1B1E7E7DDDD:' '#EFEFEFEFEFEF:#D0D0D0D0D0D0:#1C1C1C1C1C1C' ), 'Pro': ( '#000000000000:#999900000000:#0000A6A60000:#999999990000:#1F1F0808DBDB:' '#B2B20000B2B2:#0000A6A6B2B2:#BFBFBFBFBFBF:#666666666666:#E5E500000000:' '#0000D9D90000:#E5E5E5E50000:#00000000FFFF:#E5E50000E5E5:#0000E5E5E5E5:' '#E5E5E5E5E5E5:#F2F2F2F2F2F2:#000000000000' ), 'Red Alert': ( '#000000000000:#D5D52E2E4D4D:#7171BEBE6B6B:#BEBEB8B86B6B:#47479B9BEDED:' '#E8E87878D6D6:#6B6BBEBEB8B8:#D6D6D6D6D6D6:#262626262626:#E0E024245353:' '#AFAFF0F08B8B:#DFDFDDDDB7B7:#6565A9A9F0F0:#DDDDB7B7DFDF:#B7B7DFDFDDDD:' '#FFFFFFFFFFFF:#FFFFFFFFFFFF:#767624242323' ), 'Red Sands': ( '#000000000000:#FFFF3F3F0000:#0000BBBB0000:#E7E7B0B00000:#00007171FFFF:' '#BBBB0000BBBB:#0000BBBBBBBB:#BBBBBBBBBBBB:#555555555555:#BBBB00000000:' '#0000BBBB0000:#E7E7B0B00000:#00007171AEAE:#FFFF5555FFFF:#5555FFFFFFFF:' '#FFFFFFFFFFFF:#D7D7C9C9A7A7:#797924241E1E' ), 'Rippedcasts': ( '#000000000000:#CDCDAFAF9595:#A7A7FFFF6060:#BFBFBBBB1F1F:#7575A5A5B0B0:' '#FFFF7373FDFD:#595964647E7E:#BFBFBFBFBFBF:#666666666666:#EEEECBCBADAD:' '#BCBCEEEE6868:#E5E5E5E50000:#8686BDBDC9C9:#E5E50000E5E5:#8C8C9B9BC3C3:' '#E5E5E5E5E5E5:#FFFFFFFFFFFF:#2B2B2B2B2B2B' ), 'Royal': ( '#24241F1F2A2A:#909027274B4B:#232380801C1C:#B4B49D9D2727:#64648080AFAF:' '#66664D4D9696:#8A8AAAAABDBD:#515149496565:#31312D2D3C3C:#D4D434346C6C:' '#2C2CD8D84545:#FDFDE8E83A3A:#8F8FB9B9F9F9:#A4A47979E2E2:#ABABD3D3EBEB:' '#9D9D8B8BBDBD:#505048486868:#101008081414' ), 'Rxvt': ( '#000000000000:#cdcd00000000:#0000cdcd0000:#cdcdcdcd0000:#00000000cdcd:' '#cdcd0000cdcd:#0000cdcdcdcd:#fafaebebd7d7:#404040404040:#ffff00000000:' '#0000ffff0000:#ffffffff0000:#00000000ffff:#ffff0000ffff:#0000ffffffff:' '#ffffffffffff:#ffffffffffff:#000000000000' ), 'Sea Shells': ( '#171738384C4C:#D1D150502323:#02027C7C9B9B:#FCFCA0A02F2F:#1E1E49495050:' '#6868D3D3F1F1:#5050A3A3B5B5:#DEDEB8B88D8D:#42424B4B5252:#D3D386867777:' '#61618C8C9898:#FDFDD2D29E9E:#1B1BBCBCDDDD:#BBBBE3E3EEEE:#8686ABABB3B3:' '#FEFEE3E3CDCD:#DEDEB8B88D8D:#080813131A1A' ), 'Seafoam Pastel': ( '#757575757575:#82825D5D4D4D:#71718C8C6161:#ADADA1A16D6D:#4D4D7B7B8282:' '#8A8A71716767:#717193939393:#E0E0E0E0E0E0:#8A8A8A8A8A8A:#CFCF93937979:' '#9898D9D9AAAA:#FAFAE7E79D9D:#7979C3C3CFCF:#D6D6B2B2A1A1:#ADADE0E0E0E0:' '#E0E0E0E0E0E0:#D3D3E7E7D3D3:#242434343434' ), 'Seti': ( '#323232323232:#C2C228283232:#8E8EC4C43D3D:#E0E0C6C64F4F:#4343A5A5D5D5:' '#8B8B5757B5B5:#8E8EC4C43D3D:#EEEEEEEEEEEE:#323232323232:#C2C228283232:' '#8E8EC4C43D3D:#E0E0C6C64F4F:#4343A5A5D5D5:#8B8B5757B5B5:#8E8EC4C43D3D:' '#FFFFFFFFFFFF:#CACACECECDCD:#111112121313' ), 'Shaman': ( '#010120202626:#B1B12F2F2C2C:#0000A9A94040:#5D5D8A8AA9A9:#444499998585:' '#000059599C9C:#5C5C7E7E1919:#404055555454:#373743435050:#FFFF42424242:' '#2A2AEAEA5E5E:#8D8DD3D3FDFD:#6161D4D4B9B9:#12129898FFFF:#9898CFCF2828:' '#5858FAFAD6D6:#404055555555:#000010101414' ), 'Slate': ( '#212121212121:#E1E1A7A7BFBF:#8080D7D77878:#C4C4C9C9BFBF:#25254A4A4949:' '#A3A38080D3D3:#1414ABAB9C9C:#0202C4C4E0E0:#FFFFFFFFFFFF:#FFFFCCCCD8D8:' '#BDBDFFFFA8A8:#D0D0CBCBC9C9:#7979AFAFD2D2:#C4C4A7A7D8D8:#8B8BDEDEE0E0:' '#E0E0E0E0E0E0:#3434B0B0D2D2:#212121212121' ), 'Smyck': ( '#000000000000:#B7B741413131:#7D7DA9A90000:#C4C4A4A40000:#6262A3A3C4C4:' '#B9B98A8ACCCC:#202073738383:#A0A0A0A0A0A0:#7A7A7A7A7A7A:#D6D683837B7B:' '#C4C4F0F03636:#FEFEE1E14D4D:#8D8DCFCFF0F0:#F7F79999FFFF:#6969D9D9CFCF:' '#F7F7F7F7F7F7:#F7F7F7F7F7F7:#1B1B1B1B1B1B' ), 'Soft Server': ( '#000000000000:#A1A168686969:#9999A5A56969:#A2A290906969:#6A6A8F8FA3A3:' '#69697171A3A3:#6B6BA4A48F8F:#9999A3A3A2A2:#66666C6C6B6B:#DCDC5B5B5F5F:' '#BFBFDEDE5454:#DEDEB3B35F5F:#6262B1B1DFDF:#5F5F6E6EDEDE:#6464E3E39C9C:' '#D1D1DFDFDEDE:#9999A3A3A2A2:#242426262626' ), 'Solarized Darcula': ( '#252529292A2A:#F2F248484040:#626296965555:#B6B688880000:#20207575C7C7:' '#79797F7FD4D4:#151596968D8D:#D2D2D8D8D9D9:#252529292A2A:#F2F248484040:' '#626296965555:#B6B688880000:#20207575C7C7:#79797F7FD4D4:#151596968D8D:' '#D2D2D8D8D9D9:#D2D2D8D8D9D9:#3D3D3F3F4141' ), 'Solarized Dark Higher Contrast': ( '#000027273131:#D0D01B1B2424:#6B6BBEBE6C6C:#A5A577770505:#20207575C7C7:' '#C6C61B1B6E6E:#252591918585:#E9E9E2E2CBCB:#000063638888:#F4F415153B3B:' '#5050EEEE8484:#B1B17E7E2828:#17178D8DC7C7:#E1E14D4D8E8E:#0000B2B29E9E:' '#FCFCF4F4DCDC:#9B9BC1C1C2C2:#00001E1E2626' ), 'Solarized Dark': ( '#000027273131:#D0D01B1B2424:#727289890505:#A5A577770505:#20207575C7C7:' '#C6C61B1B6E6E:#252591918585:#E9E9E2E2CBCB:#00001E1E2626:#BDBD36361212:' '#46465A5A6161:#525267676F6F:#707081818383:#58585656B9B9:#818190908F8F:' '#FCFCF4F4DCDC:#707081818383:#00001E1E2626' ), 'Solarized Light': ( '#000027273131:#D0D01B1B2424:#727289890505:#A5A577770505:#20207575C7C7:' '#C6C61B1B6E6E:#252591918585:#E9E9E2E2CBCB:#00001E1E2626:#BDBD36361212:' '#46465A5A6161:#525267676F6F:#707081818383:#58585656B9B9:#818190908F8F:' '#FCFCF4F4DCDC:#525267676F6F:#FCFCF4F4DCDC' ), 'Space Gray Eighties': ( '#151517171C1C:#ECEC5F5F6767:#8080A7A76363:#FDFDC2C25353:#54548585C0C0:' '#BFBF8383C0C0:#5757C2C2C0C0:#EEEEECECE7E7:#555555555555:#FFFF69697373:' '#9393D3D39393:#FFFFD1D15656:#4D4D8383D0D0:#FFFF5555FFFF:#8383E8E8E4E4:' '#FFFFFFFFFFFF:#BDBDB9B9AEAE:#212121212121' ), 'Space Gray': ( '#000000000000:#AFAF4B4B5757:#8787B2B27979:#E5E5C0C07878:#7C7C8F8FA3A3:' '#A3A379799696:#8484A6A6A4A4:#B2B2B8B8C2C2:#000000000000:#AFAF4B4B5757:' '#8787B2B27979:#E5E5C0C07878:#7C7C8F8FA3A3:#A3A379799696:#8484A6A6A4A4:' '#FFFFFEFEFEFE:#B2B2B8B8C2C2:#202023232C2C' ), 'Spacedust': ( '#6E6E52524646:#E3E35A5A0000:#5C5CABAB9696:#E3E3CDCD7B7B:#0E0E54548B8B:' '#E3E35A5A0000:#0606AFAFC7C7:#F0F0F1F1CECE:#67674C4C3131:#FFFF8A8A3939:' '#ADADCACAB8B8:#FFFFC7C77777:#6767A0A0CDCD:#FFFF8A8A3939:#8383A6A6B3B3:' '#FEFEFFFFF0F0:#ECECEFEFC1C1:#0A0A1E1E2424' ), 'Spixel': ( '#000000000000:#A4A43E3E6363:#8A8AB5B54444:#F3F39A9A2626:#51518B8BA3A3:' '#97977070B3B3:#5B5BA6A6A5A5:#D3D3D7D7CFCF:#707073736D6D:#E8E84A4A8484:' '#A7A7E3E34646:#F1F1C5C58B8B:#7373B9B9D6D6:#C5E49865E6E6:#8282D9D9D8D8:' '#EEEEEEEEECEC:#FFFFFFFFFFFF:#262626262222' ), 'Spring': ( '#000000000000:#FFFF4C4C8383:#1F1F8C8C3A3A:#1F1FC9C95A5A:#1C1CD2D2EEEE:' '#89895959A8A8:#3E3E99999F9F:#FFFFFEFEFEFE:#000000000000:#FFFF00002121:' '#1F1FC2C23131:#D4D4B7B70606:#1515A9A9FDFD:#89895959A8A8:#3E3E99999F9F:' '#FFFFFEFEFEFE:#4D4D4D4D4C4C:#FFFFFFFFFFFF' ), 'Square': ( '#050505050505:#E9E989897C7C:#B6B637377D7D:#ECECEBEBBEBE:#A9A9CDCDEBEB:' '#757550507B7B:#C9C9CACAECEC:#F2F2F2F2F2F2:#141414141414:#F9F992928686:' '#C3C3F7F78686:#FCFCFBFBCCCC:#B6B6DEDEFBFB:#ADAD7F7FA8A8:#D7D7D9D9FCFC:' '#E2E2E2E2E2E2:#ACACACACABAB:#1A1A1A1A1A1A' ), 'Sundried': ( '#30302B2B2A2A:#A6A646463D3D:#575776764444:#9C9C5F5F2A2A:#48485A5A9898:' '#858545455151:#9C9C81814E4E:#C8C8C8C8C8C8:#4D4D4D4D4747:#AAAA00000C0C:' '#12128C8C2020:#FCFC6A6A2020:#78789898F7F7:#FCFC8989A0A0:#FAFAD3D38484:' '#FFFFFEFEFEFE:#C8C8C8C8C8C8:#1A1A18181818' ), 'Symphonic': ( '#000000000000:#DCDC32322F2F:#5656DBDB3A3A:#FFFF84840000:#00008484D4D4:' '#B7B72929D9D9:#CCCCCCCCFFFF:#FFFFFFFFFFFF:#1B1B1D1D2121:#DCDC32322F2F:' '#5656DBDB3A3A:#FFFF84840000:#00008484D4D4:#B7B72929D9D9:#CCCCCCCCFFFF:' '#FFFFFFFFFFFF:#FFFFFFFFFFFF:#000000000000' ), 'Tango': ( '#000000000000:#cccc00000000:#4e4e9a9a0606:#c4c4a0a00000:#34346565a4a4:' '#757550507b7b:#060698209a9a:#d3d3d7d7cfcf:#555557575353:#efef29292929:' '#8a8ae2e23434:#fcfce9e94f4f:#72729f9fcfcf:#adad7f7fa8a8:#3434e2e2e2e2:' '#eeeeeeeeecec:#ffffffffffff:#000000000000' ), 'Teerb': ( '#1C1C1C1C1C1C:#D6D686868686:#AEAED6D68686:#D7D7AFAF8787:#8686AEAED6D6:' '#D6D6AEAED6D6:#8A8ADBDBB4B4:#D0D0D0D0D0D0:#1C1C1C1C1C1C:#D6D686868686:' '#AEAED6D68686:#E4E4C9C9AFAF:#8686AEAED6D6:#D6D6AEAED6D6:#B1B1E7E7DDDD:' '#EFEFEFEFEFEF:#D0D0D0D0D0D0:#262626262626' ), 'Terminal Basic': ( '#000000000000:#999900000000:#0000A6A60000:#999999990000:#00000000B2B2:' '#B2B20000B2B2:#0000A6A6B2B2:#BFBFBFBFBFBF:#666666666666:#E5E500000000:' '#0000D9D90000:#E5E5E5E50000:#00000000FFFF:#E5E50000E5E5:#0000E5E5E5E5:' '#E5E5E5E5E5E5:#000000000000:#FFFFFFFFFFFF' ), 'Thayer Bright': ( '#1B1B1D1D1E1E:#F9F926267272:#4D4DF7F74040:#F3F3FDFD2121:#26265656D6D6:' '#8C8C5454FEFE:#3737C8C8B4B4:#CCCCCCCCC6C6:#505053535454:#FFFF59599595:' '#B6B6E3E35454:#FEFEEDED6C6C:#3F3F7878FFFF:#9E9E6F6FFEFE:#2323CECED4D4:' '#F8F8F8F8F2F2:#F8F8F8F8F8F8:#1B1B1D1D1E1E' ), 'Tomorrow Night Blue': ( '#000000000000:#FFFF9D9DA3A3:#D1D1F1F1A9A9:#FFFFEEEEADAD:#BBBBDADAFFFF:' '#EBEBBBBBFFFF:#9999FFFFFFFF:#FFFFFEFEFEFE:#000000000000:#FFFF9C9CA3A3:' '#D0D0F0F0A8A8:#FFFFEDEDACAC:#BABADADAFFFF:#EBEBBABAFFFF:#9999FFFFFFFF:' '#FFFFFEFEFEFE:#FFFFFEFEFEFE:#000024245151' ), 'Tomorrow Night Bright': ( '#000000000000:#D5D54E4E5353:#B9B9CACA4949:#E7E7C5C54747:#7979A6A6DADA:' '#C3C39797D8D8:#7070C0C0B1B1:#FFFFFEFEFEFE:#000000000000:#D4D44D4D5353:' '#B9B9C9C94949:#E6E6C4C44646:#7979A6A6DADA:#C3C39696D7D7:#7070C0C0B1B1:' '#FFFFFEFEFEFE:#E9E9E9E9E9E9:#000000000000' ), 'Tomorrow Night Eighties': ( '#000000000000:#F2F277777979:#9999CCCC9999:#FFFFCCCC6666:#66669999CCCC:' '#CCCC9999CCCC:#6666CCCCCCCC:#FFFFFEFEFEFE:#000000000000:#F1F177777979:' '#9999CCCC9999:#FFFFCCCC6666:#66669999CCCC:#CCCC9999CCCC:#6666CCCCCCCC:' '#FFFFFEFEFEFE:#CCCCCCCCCCCC:#2C2C2C2C2C2C' ), 'Tomorrow Night': ( '#000000000000:#CCCC66666666:#B5B5BDBD6868:#F0F0C6C67474:#8181A2A2BEBE:' '#B2B29393BBBB:#8A8ABEBEB7B7:#FFFFFEFEFEFE:#000000000000:#CCCC66666666:' '#B5B5BDBD6868:#F0F0C5C57474:#8080A1A1BDBD:#B2B29494BABA:#8A8ABDBDB6B6:' '#FFFFFEFEFEFE:#C5C5C8C8C6C6:#1D1D1F1F2121' ), 'Tomorrow': ( '#000000000000:#C8C828282828:#71718C8C0000:#EAEAB7B70000:#41417171AEAE:' '#89895959A8A8:#3E3E99999F9F:#FFFFFEFEFEFE:#000000000000:#C8C828282828:' '#70708B8B0000:#E9E9B6B60000:#41417070AEAE:#89895858A7A7:#3D3D99999F9F:' '#FFFFFEFEFEFE:#4D4D4D4D4C4C:#FFFFFFFFFFFF' ), 'Toy Chest': ( '#2C2C3F3F5757:#BEBE2D2D2626:#191991917171:#DADA8E8E2626:#32325D5D9696:' '#8A8A5D5DDBDB:#3535A0A08F8F:#2323D0D08282:#323268688989:#DDDD59594343:' '#3030CFCF7B7B:#E7E7D7D74B4B:#3333A5A5D9D9:#ADAD6B6BDCDC:#4141C3C3ADAD:' '#D4D4D4D4D4D4:#3030CFCF7B7B:#232336364A4A' ), 'Treehouse': ( '#323212120000:#B1B127270E0E:#4444A9A90000:#A9A981810B0B:#575784849999:' '#969636363C3C:#B2B259591D1D:#77776B6B5353:#424236362525:#EDED5C5C2020:' '#5555F2F23737:#F1F1B7B73131:#8585CFCFECEC:#E0E04B4B5A5A:#F0F07D7D1414:' '#FFFFC8C80000:#77776B6B5353:#191919191919' ), 'Twilight': ( '#141414141414:#C0C06C6C4343:#AFAFB9B97979:#C2C2A8A86C6C:#444446464949:' '#B4B4BEBE7B7B:#777782828484:#FEFEFFFFD3D3:#262626262626:#DDDD7C7C4C4C:' '#CBCBD8D88C8C:#E1E1C4C47D7D:#5A5A5D5D6161:#D0D0DBDB8E8E:#8A8A98989A9A:' '#FEFEFFFFD3D3:#FEFEFFFFD3D3:#141414141414' ), 'Urple': ( '#000000000000:#AFAF42425B5B:#3737A3A31515:#ACAC5B5B4141:#55554D4D9A9A:' '#6C6C3B3BA1A1:#808080808080:#878779799C9C:#5C5C31312525:#FFFF63638787:' '#2828E5E51F1F:#F0F080806161:#85857979EDED:#A0A05D5DEEEE:#EAEAEAEAEAEA:' '#BFBFA3A3FFFF:#868679799A9A:#1B1B1B1B2323' ), 'Vaughn': ( '#242423234F4F:#707050505050:#6060B4B48A8A:#DFDFAFAF8F8F:#55555555FFFF:' '#F0F08C8CC3C3:#8C8CD0D0D3D3:#707090908080:#707090908080:#DCDCA3A3A3A3:' '#6060B4B48A8A:#F0F0DFDFAFAF:#55555555FFFF:#ECEC9393D3D3:#9393E0E0E3E3:' '#FFFFFFFFFFFF:#DCDCDCDCCCCC:#252523234E4E' ), 'Vibrant Ink': ( '#878787878787:#FFFF66660000:#CCCCFFFF0404:#FFFFCCCC0000:#4444B3B3CCCC:' '#99993333CCCC:#4444B3B3CCCC:#F5F5F5F5F5F5:#555555555555:#FFFF00000000:' '#0000FFFF0000:#FFFFFFFF0000:#00000000FFFF:#FFFF0000FFFF:#0000FFFFFFFF:' '#E5E5E5E5E5E5:#FFFFFFFFFFFF:#000000000000' ), 'Warm Neon': ( '#000000000000:#E2E243434545:#3838B1B13939:#DADAE1E14545:#42426060C5C5:' '#F8F81F1FFBFB:#2929BABAD3D3:#D0D0B8B8A3A3:#FDFDFCFCFCFC:#E8E86F6F7171:' '#9B9BC0C08F8F:#DDDDD9D97979:#7A7A9090D5D5:#F6F67474B9B9:#5E5ED1D1E4E4:' '#D8D8C8C8BBBB:#AFAFDADAB6B6:#3F3F3F3F3F3F' ), 'Wez': ( '#000000000000:#CCCC55555555:#5555CCCC5555:#CDCDCDCD5555:#54545555CBCB:' '#CCCC5555CCCC:#7A7ACACACACA:#CCCCCCCCCCCC:#555555555555:#FFFF55555555:' '#5555FFFF5555:#FFFFFFFF5555:#55555555FFFF:#FFFF5555FFFF:#5555FFFFFFFF:' '#FFFFFFFFFFFF:#B3B3B3B3B3B3:#000000000000' ), 'Wild Cherry': ( '#000005050606:#D9D940408585:#2A2AB2B25050:#FFFFD1D16F6F:#88883C3CDCDC:' '#ECECECECECEC:#C1C1B8B8B7B7:#FFFFF8F8DDDD:#00009C9CC9C9:#DADA6B6BABAB:' '#F4F4DBDBA5A5:#EAEAC0C06666:#2F2F8B8BB9B9:#AEAE63636B6B:#FFFF91919D9D:' '#E4E483838D8D:#D9D9FAFAFFFF:#1F1F16162626' ), 'Wombat': ( '#000000000000:#FFFF60605A5A:#B1B1E8E86969:#EAEAD8D89C9C:#5D5DA9A9F6F6:' '#E8E86A6AFFFF:#8282FFFFF6F6:#DEDED9D9CECE:#313131313131:#F5F58B8B7F7F:' '#DCDCF8F88F8F:#EEEEE5E5B2B2:#A5A5C7C7FFFF:#DDDDAAAAFFFF:#B6B6FFFFF9F9:' '#FEFEFFFFFEFE:#DEDED9D9CECE:#171717171717' ), 'Wryan': ( '#333333333333:#8C8C46466565:#282873737373:#7C7C7C7C9999:#393955557373:' '#5E5E46468C8C:#313165658C8C:#89899C9CA1A1:#3D3D3D3D3D3D:#BFBF4D4D8080:' '#5353A6A6A6A6:#9E9E9E9ECBCB:#47477A7AB3B3:#7E7E6262B3B3:#60609696BFBF:' '#C0C0C0C0C0C0:#999999999393:#101010101010' ), 'Xterm': ( '#000000000000:#cdcb00000000:#0000cdcb0000:#cdcbcdcb0000:#1e1a908fffff:' '#cdcb0000cdcb:#0000cdcbcdcb:#e5e2e5e2e5e2:#4ccc4ccc4ccc:#ffff00000000:' '#0000ffff0000:#ffffffff0000:#46458281b4ae:#ffff0000ffff:#0000ffffffff:' '#ffffffffffff:#ffffffffffff:#000000000000' ), 'Zenburn': ( '#4D4D4D4D4D4D:#707050505050:#6060B4B48A8A:#F0F0DFDFAFAF:#505060607070:' '#DCDC8C8CC3C3:#8C8CD0D0D3D3:#DCDCDCDCCCCC:#707090908080:#DCDCA3A3A3A3:' '#C3C3BFBF9F9F:#E0E0CFCF9F9F:#9494BFBFF3F3:#ECEC9393D3D3:#9393E0E0E3E3:' '#FFFFFFFFFFFF:#DCDCDCDCCCCC:#3F3F3F3F3F3F' ), 'Aci': ( '#363636363636:#FFFF08088383:#8383FFFF0808:#FFFF83830808:#08088383FFFF:' '#83830808FFFF:#0808FFFF8383:#B6B6B6B6B6B6:#424242424242:#FFFF1E1E8E8E:' '#8E8EFFFF1E1E:#FFFF8E8E1E1E:#1E1E8E8EFFFF:#8E8E1E1EFFFF:#1E1EFFFF8E8E:' '#C2C2C2C2C2C2:#B4B4E1E1FDFD:#0D0D19192626' ), 'Aco': ( '#3F3F3F3F3F3F:#FFFF08088383:#8383FFFF0808:#FFFF83830808:#08088383FFFF:' '#83830808FFFF:#0808FFFF8383:#BEBEBEBEBEBE:#474747474747:#FFFF1E1E8E8E:' '#8E8EFFFF1E1E:#FFFF8E8E1E1E:#1E1E8E8EFFFF:#8E8E1E1EFFFF:#1E1EFFFF8E8E:' '#C4C4C4C4C4C4:#B4B4E1E1FDFD:#1F1F13130505' ), 'Azu': ( '#000000000000:#ACAC6D6D7474:#7474ACAC6D6D:#ACACA4A46D6D:#6D6D7474ACAC:' '#A4A46D6DACAC:#6D6DACACA4A4:#E6E6E6E6E6E6:#262626262626:#D6D6B8B8BCBC:' '#BCBCD6D6B8B8:#D6D6D3D3B8B8:#B8B8BCBCD6D6:#D3D3B8B8D6D6:#B8B8D6D6D3D3:' '#FFFFFFFFFFFF:#D9D9E6E6F2F2:#090911111A1A' ), 'Bim': ( '#2C2C24242323:#F5F55757A0A0:#A9A9EEEE5555:#F5F5A2A25555:#5E5EA2A2ECEC:' '#A9A95757ECEC:#5E5EEEEEA0A0:#919189898888:#919189898888:#F5F57979B2B2:' '#BBBBEEEE7878:#F5F5B3B37878:#8181B3B3ECEC:#BBBB7979ECEC:#8181EEEEB2B2:' '#F5F5EEEEECEC:#A9A9BEBED8D8:#010128284949' ), 'Cai': ( '#000000000000:#CACA27274D4D:#4D4DCACA2727:#CACAA4A42727:#27274D4DCACA:' '#A4A42727CACA:#2727CACAA4A4:#808080808080:#808080808080:#E9E98D8DA3A3:' '#A3A3E9E98D8D:#E9E9D4D48D8D:#8D8DA3A3E9E9:#D4D48D8DE9E9:#8D8DE9E9D4D4:' '#FFFFFFFFFFFF:#D9D9E6E6F2F2:#090911111A1A' ), 'Elementary': ( '#303030303030:#E1E132321A1A:#6A6AB0B01717:#FFFFC0C00505:#00004F4F9E9E:' '#ECEC00004848:#2A2AA7A7E7E7:#F2F2F2F2F2F2:#5D5D5D5D5D5D:#FFFF36361E1E:' '#7B7BC9C91F1F:#FFFFD0D00A0A:#00007171FFFF:#FFFF1D1D6262:#4B4BB8B8FDFD:' '#A0A02020F0F0:#F2F2F2F2F2F2:#101010101010' ), 'Elic': ( '#303030303030:#E1E132321A1A:#6A6AB0B01717:#FFFFC0C00505:#72729F9FCFCF:' '#ECEC00004848:#F2F2F2F2F2F2:#2A2AA7A7E7E7:#5D5D5D5D5D5D:#FFFF36361E1E:' '#7B7BC9C91F1F:#FFFFD0D00A0A:#00007171FFFF:#FFFF1D1D6262:#4B4BB8B8FDFD:' '#A0A02020F0F0:#F2F2F2F2F2F2:#4A4A45453E3E' ), 'Elio': ( '#303030303030:#E1E132321A1A:#6A6AB0B01717:#FFFFC0C00505:#72729F9FCFCF:' '#ECEC00004848:#2A2AA7A7E7E7:#F2F2F2F2F2F2:#5D5D5D5D5D5D:#FFFF36361E1E:' '#7B7BC9C91F1F:#FFFFD0D00A0A:#00007171FFFF:#FFFF1D1D6262:#4B4BB8B8FDFD:' '#A0A02020F0F0:#F2F2F2F2F2F2:#04041A1A3B3B' ), 'Freya': ( '#070736364242:#DCDC32322F2F:#858599990000:#B5B589890000:#26268B8BD2D2:' '#ECEC00004848:#2A2AA1A19898:#9494A3A3A5A5:#58586E6E7575:#CBCB4B4B1616:' '#858599990000:#B5B589890000:#26268B8BD2D2:#D3D336368282:#2A2AA1A19898:' '#6C6C7171C4C4:#9494A3A3A5A5:#25252E2E3232' ), 'Gruvbox Dark': ( '#66665C5C5454:#FBFB49493434:#8383A5A59898:#D7D799992121:#B1B162628686:' '#454585858888:#B8B8BBBB2626:#D6D65D5D0E0E:#A8A899998484:#FBFB49493434:' '#8E8EC0C07C7C:#FAFABDBD2F2F:#D3D386869B9B:#68689D9D6A6A:#989897971A1A:' '#FEFE80801919:#EBEBDBDBB2B2:#282828282828' ), 'Hemisu Dark': ( '#444444444444:#FFFF00005454:#B1B1D6D63030:#9D9D89895E5E:#6767BEBEE3E3:' '#B5B57676BCBC:#56569A9A9F9F:#EDEDEDEDEDED:#777777777777:#D6D65E5E7575:' '#BABAFFFFAAAA:#ECECE1E1C8C8:#9F9FD3D3E5E5:#DEDEB3B3DFDF:#B6B6E0E0E5E5:' '#FFFFFFFFFFFF:#FFFFFFFFFFFF:#000000000000' ), 'Hemisu Light': ( '#777777777777:#FFFF00005555:#737391910000:#50503D3D1515:#535380809191:' '#5B5B34345E5E:#535380809191:#999999999999:#999999999999:#D6D65E5E7676:' '#9C9CC7C70000:#949475755555:#9D9DB3B3CDCD:#A1A18484A4A4:#8585B2B2AAAA:' '#BABABABABABA:#444444444444:#EFEFEFEFEFEF' ), 'Jup': ( '#000000000000:#DDDD00006F6F:#6F6FDDDD0000:#DDDD6F6F0000:#00006F6FDDDD:' '#6F6F0000DDDD:#0000DDDD6F6F:#F2F2F2F2F2F2:#7D7D7D7D7D7D:#FFFF7474B9B9:' '#B9B9FFFF7474:#FFFFB9B97474:#7474B9B9FFFF:#B9B97474FFFF:#7474FFFFB9B9:' '#FFFFFFFFFFFF:#232347476A6A:#757584848080' ), 'Mar': ( '#000000000000:#B5B540407B7B:#7B7BB5B54040:#B5B57B7B4040:#40407B7BB5B5:' '#7B7B4040B5B5:#4040B5B57B7B:#F8F8F8F8F8F8:#737373737373:#CDCD7373A0A0:' '#A0A0CDCD7373:#CDCDA0A07373:#7373A0A0CDCD:#A0A07373CDCD:#7373CDCDA0A0:' '#FFFFFFFFFFFF:#232347476A6A:#FFFFFFFFFFFF' ), 'Material': ( '#070736364141:#EBEB60606B6B:#C3C3E8E88D8D:#F7F7EBEB9595:#8080CBCBC3C3:' '#FFFF24249090:#AEAEDDDDFFFF:#FFFFFFFFFFFF:#00002B2B3636:#EBEB60606B6B:' '#C3C3E8E88D8D:#F7F7EBEB9595:#7D7DC6C6BFBF:#6C6C7171C3C3:#343443434D4D:' '#FFFFFFFFFFFF:#C3C3C7C7D1D1:#1E1E28282C2C' ), 'Miu': ( '#000000000000:#B8B87A7A7A7A:#7A7AB8B87A7A:#B8B8B8B87A7A:#7A7A7A7AB8B8:' '#B8B87A7AB8B8:#7A7AB8B8B8B8:#D9D9D9D9D9D9:#262626262626:#DBDBBDBDBDBD:' '#BDBDDBDBBDBD:#DBDBDBDBBDBD:#BDBDBDBDDBDB:#DBDBBDBDDBDB:#BDBDDBDBDBDB:' '#FFFFFFFFFFFF:#D9D9E6E6F2F2:#0D0D19192626' ), 'Monokai dark': ( '#757571715E5E:#F9F926267272:#A6A6E2E22E2E:#F4F4BFBF7575:#6666D9D9EFEF:' '#AEAE8181FFFF:#2A2AA1A19898:#F9F9F8F8F5F5:#272728282222:#F9F926267272:' '#A6A6E2E22E2E:#F4F4BFBF7575:#6666D9D9EFEF:#AEAE8181FFFF:#2A2AA1A19898:' '#F8F8F8F8F2F2:#F8F8F8F8F2F2:#272728282222' ), 'Nep': ( '#000000000000:#DDDD6F6F0000:#0000DDDD6F6F:#6F6FDDDD0000:#6F6F0000DDDD:' '#DDDD00006F6F:#00006F6FDDDD:#F2F2F2F2F2F2:#7D7D7D7D7D7D:#FFFFB9B97474:' '#7474FFFFB9B9:#B9B9FFFF7474:#B9B97474FFFF:#FFFF7474B9B9:#7474B9B9FFFF:' '#FFFFFFFFFFFF:#232347476A6A:#757584848080' ), 'One Light': ( '#000000000000:#DADA3E3E3939:#414193933E3E:#858555550404:#31315E5EEEEE:' '#939300009292:#0E0E6F6FADAD:#8E8E8F8F9696:#2A2A2B2B3232:#DADA3E3E3939:' '#414193933E3E:#858555550404:#31315E5EEEEE:#939300009292:#0E0E6F6FADAD:' '#FFFFFEFEFEFE:#2A2A2B2B3232:#F8F8F8F8F8F8' ), 'Pali': ( '#0A0A0A0A0A0A:#ABAB8F8F7474:#7474ABAB8F8F:#8F8FABAB7474:#8F8F7474ABAB:' '#ABAB74748F8F:#74748F8FABAB:#F2F2F2F2F2F2:#5D5D5D5D5D5D:#FFFF1D1D6262:' '#9C9CC3C3AFAF:#FFFFD0D00A0A:#AFAF9C9CC3C3:#FFFF1D1D6262:#4B4BB8B8FDFD:' '#A0A02020F0F0:#D9D9E6E6F2F2:#23232E2E3737' ), 'Peppermint': ( '#353535353535:#E6E645456969:#8989D2D28787:#DADAB7B75252:#43439E9ECFCF:' '#D9D96161DCDC:#6464AAAAAFAF:#B3B3B3B3B3B3:#535353535353:#E4E485859A9A:' '#A2A2CCCCA1A1:#E1E1E3E38787:#6F6FBBBBE2E2:#E5E58686E7E7:#9696DCDCDADA:' '#DEDEDEDEDEDE:#C7C7C7C7C7C7:#000000000000' ), 'Sat': ( '#000000000000:#DDDD00000707:#0707DDDD0000:#DDDDD6D60000:#00000707DDDD:' '#D6D60000DDDD:#0000DDDDD6D6:#F2F2F2F2F2F2:#7D7D7D7D7D7D:#FFFF74747878:' '#7878FFFF7474:#FFFFFAFA7474:#74747878FFFF:#FAFA7474FFFF:#7474FFFFFAFA:' '#FFFFFFFFFFFF:#232347476A6A:#757584848080' ), 'Shel': ( '#2C2C24242323:#ABAB24246363:#6C6CA3A32323:#ABAB64642323:#2C2C6464A2A2:' '#6C6C2424A2A2:#2C2CA3A36363:#919189898888:#919189898888:#F5F58888B9B9:' '#C2C2EEEE8686:#F5F5BABA8686:#8F8FBABAECEC:#C2C28888ECEC:#8F8FEEEEB9B9:' '#F5F5EEEEECEC:#48488282CDCD:#2A2A20201F1F' ), 'Tin': ( '#000000000000:#8D8D53534E4E:#4E4E8D8D5353:#88888D8D4E4E:#53534E4E8D8D:' '#8D8D4E4E8888:#4E4E88888D8D:#FFFFFFFFFFFF:#000000000000:#B5B57D7D7878:' '#7878B5B57D7D:#B0B0B5B57878:#7D7D7878B5B5:#B5B57878B0B0:#7878B0B0B5B5:' '#FFFFFFFFFFFF:#FFFFFFFFFFFF:#2E2E2E2E3535' ), 'Ura': ( '#000000000000:#C2C21B1B6F6F:#6F6FC2C21B1B:#C2C26F6F1B1B:#1B1B6F6FC2C2:' '#6F6F1B1BC2C2:#1B1BC2C26F6F:#808080808080:#808080808080:#EEEE8484B9B9:' '#B9B9EEEE8484:#EEEEB9B98484:#8484B9B9EEEE:#B9B98484EEEE:#8484EEEEB9B9:' '#E5E5E5E5E5E5:#232347476A6A:#FEFEFFFFEEEE' ), 'Vag': ( '#303030303030:#A8A871713939:#3939A8A87171:#7171A8A83939:#71713939A8A8:' '#A8A839397171:#39397171A8A8:#8A8A8A8A8A8A:#494949494949:#B0B076763B3B:' '#3B3BB0B07676:#7676B0B03B3B:#76763B3BB0B0:#B0B03B3B7676:#3B3B7676B0B0:' '#CFCFCFCFCFCF:#D9D9E6E6F2F2:#19191F1F1D1D' ), } guake-3.6.3/guake/paths.py.in000066400000000000000000000054371346623310400160240ustar00rootroot00000000000000# -*- coding: utf-8; -*- """ Copyright (C) 2007-2013 Guake authors This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA """ import guake import logging import os import sys from pkg_resources import Requirement from pkg_resources import resource_filename log = logging.getLogger(__name__) def get_default_package_root(): packagedir = guake.__path__[0] dirname = os.path.join(os.path.dirname(packagedir)) return os.path.abspath(dirname) def get_data_files_dir(): d = os.path.dirname(sys.modules["guake"].__file__) p = os.path.basename(os.path.abspath(os.path.join(os.path.dirname(d), ".."))) if p in ["site-packages", "dist-packages"]: # current "guake" package has been installed in a prefix structure (/usr, /usr/local or # ~/.local/) loc_dir = os.path.abspath(os.path.join(d, "..", "..", "..", "..")) loc_dir = os.path.join(loc_dir, "share", "guake") if os.path.exists(loc_dir): return loc_dir return d def get_default_data_dir(): d = os.path.join(get_data_files_dir(), "data") log.debug("Using guake data directory: %s", d) return d def get_default_locale_dir(): d = os.path.join(get_data_files_dir(), "po") log.debug("Using guake image directory: %s", d) return d def get_default_image_dir(): d = os.path.join(get_default_data_dir(), 'pixmaps') log.debug("Using guake image directory: %s", d) return d def get_default_glade_dir(): d = get_default_data_dir() log.debug("Using guake glade directory: %s", d) return d def get_default_schema_dir(): d = get_default_data_dir() log.debug("Using guake scheme directory: %s", d) return d def get_default_theme_dir(): d = os.path.join(get_default_data_dir(), 'theme') log.debug("Using guake theme directory: %s", d) return d LOCALE_DIR = {{ LOCALE_DIR }} IMAGE_DIR = {{ IMAGE_DIR }} GLADE_DIR = {{ GLADE_DIR }} SCHEMA_DIR = {{ SCHEMA_DIR }} GUAKE_THEME_DIR = {{ GUAKE_THEME_DIR }} LOGIN_DESTOP_PATH = {{ LOGIN_DESTOP_PATH }} AUTOSTART_FOLDER = {{ AUTOSTART_FOLDER }} def try_to_compile_glib_schemas(): import subprocess subprocess.check_call(["glib-compile-schemas", "--strict", SCHEMA_DIR]) guake-3.6.3/guake/prefs.py000066400000000000000000001546421346623310400154220ustar00rootroot00000000000000# -*- coding: utf-8; -*- """ Copyright (C) 2007-2013 Guake authors This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA """ import logging import os import re import shutil import warnings from textwrap import dedent import gi gi.require_version('Gtk', '3.0') gi.require_version('Keybinder', '3.0') gi.require_version('Vte', '2.91') # vte-0.38 from gi.repository import GLib from gi.repository import GObject from gi.repository import Gdk from gi.repository import Gio from gi.repository import Gtk from gi.repository import Keybinder from gi.repository import Pango from gi.repository import Vte from guake.common import ShowableError from guake.common import get_binaries_from_path from guake.common import gladefile from guake.common import hexify_color from guake.common import pixmapfile from guake.globals import ALIGN_BOTTOM from guake.globals import ALIGN_CENTER from guake.globals import ALIGN_LEFT from guake.globals import ALIGN_RIGHT from guake.globals import ALIGN_TOP from guake.globals import ALWAYS_ON_PRIMARY from guake.globals import MAX_TRANSPARENCY from guake.globals import NAME from guake.globals import QUICK_OPEN_MATCHERS from guake.globals import bindtextdomain from guake.palettes import PALETTES from guake.paths import AUTOSTART_FOLDER from guake.paths import LOCALE_DIR from guake.paths import LOGIN_DESTOP_PATH from guake.simplegladeapp import SimpleGladeApp from guake.terminal import GuakeTerminal from guake.theme import list_all_themes from guake.theme import select_gtk_theme from locale import gettext as _ # pylint: disable=unsubscriptable-object log = logging.getLogger(__name__) # A regular expression to match possible python interpreters when # filling interpreters combo in preferences (including bpython and ipython) PYTHONS = re.compile(r'^[a-z]python$|^python\d\.\d$') # Path to the shells file, it will be used to start to populate # interpreters combo, see the next variable, its important to fill the # rest of the combo too. SHELLS_FILE = '/etc/shells' # string to show in prefereces dialog for user shell option USER_SHELL_VALUE = _('') # translating our types to vte types ERASE_BINDINGS = { 'ASCII DEL': 'ascii-delete', 'Escape sequence': 'delete-sequence', 'Control-H': 'ascii-backspace' } HOTKEYS = [ { 'label': _('General'), 'key': 'general', 'keys': [{ 'key': 'show-hide', 'label': _('Toggle Guake visibility') }, { 'key': 'show-focus', 'label': _('Show and focus Guake window') }, { 'key': 'toggle-fullscreen', 'label': _('Toggle Fullscreen') }, { 'key': 'toggle-hide-on-lose-focus', 'label': _('Toggle Hide on Lose Focus') }, { 'key': 'quit', 'label': _('Quit') }, { 'key': 'reset-terminal', 'label': _('Reset terminal') }, { 'key': 'search-terminal', 'label': _('Search terminal') }] }, { 'label': _('Tab management'), 'key': 'tab', 'keys': [ { 'key': 'new-tab', 'label': _('New tab') }, { 'key': 'new-tab-home', 'label': _('New tab in home directory') }, { 'key': 'close-tab', 'label': _('Close tab') }, { 'key': 'rename-current-tab', 'label': _('Rename current tab') }, ] }, { 'label': _('Split management'), 'key': 'split', 'keys': [ { 'key': 'split-tab-vertical', 'label': _('Split tab vertical') }, { 'key': 'split-tab-horizontal', 'label': _('Split tab horizontal') }, { 'key': 'close-terminal', 'label': _('Close terminal') }, { 'key': 'focus-terminal-up', 'label': _('Focus terminal above') }, { 'key': 'focus-terminal-down', 'label': _('Focus terminal below') }, { 'key': 'focus-terminal-left', 'label': _('Focus terminal on the left') }, { 'key': 'focus-terminal-right', 'label': _('Focus terminal on the right') }, { 'key': 'move-terminal-split-up', 'label': _('Move the terminal split handle up') }, { 'key': 'move-terminal-split-down', 'label': _('Move the terminal split handle down') }, { 'key': 'move-terminal-split-right', 'label': _('Move the terminal split handle right') }, { 'key': 'move-terminal-split-left', 'label': _('Move the terminal split handle left') }, ] }, { 'label': _('Navigation'), 'key': 'nav', 'keys': [ { 'key': 'previous-tab', 'label': _('Go to previous tab') }, { 'key': 'next-tab', 'label': _('Go to next tab') }, { 'key': 'move-tab-left', 'label': _('Move current tab left') }, { 'key': 'move-tab-right', 'label': _('Move current tab right') }, { 'key': 'switch-tab1', 'label': _('Go to first tab') }, { 'key': 'switch-tab2', 'label': _('Go to second tab') }, { 'key': 'switch-tab3', 'label': _('Go to third tab') }, { 'key': 'switch-tab4', 'label': _('Go to fourth tab') }, { 'key': 'switch-tab5', 'label': _('Go to fifth tab') }, { 'key': 'switch-tab6', 'label': _('Go to sixth tab') }, { 'key': 'switch-tab7', 'label': _('Go to seventh tab') }, { 'key': 'switch-tab8', 'label': _('Go to eighth tab') }, { 'key': 'switch-tab9', 'label': _('Go to ninth tab') }, { 'key': 'switch-tab10', 'label': _('Go to tenth tab') }, { 'key': 'switch-tab-last', 'label': _('Go to last tab') }, ] }, { 'label': _('Appearance'), 'key': 'appearance', 'keys': [{ 'key': 'zoom-out', 'label': _('Zoom out') }, { 'key': 'zoom-in', 'label': _('Zoom in') }, { 'key': 'zoom-in-alt', 'label': _('Zoom in (alternative)') }, { 'key': 'increase-height', 'label': _('Increase height') }, { 'key': 'decrease-height', 'label': _('Decrease height') }, { 'key': 'increase-transparency', 'label': _('Increase transparency') }, { 'key': 'decrease-transparency', 'label': _('Decrease transparency') }, { 'key': 'toggle-transparency', 'label': _('Toggle transparency') }] }, { 'label': _('Clipboard'), 'key': 'clipboard', 'keys': [ { 'key': 'clipboard-copy', 'label': _('Copy text to clipboard') }, { 'key': 'clipboard-paste', 'label': _('Paste text from clipboard') }, ] }, { 'label': _('Extra features'), 'key': 'extra', 'keys': [{ 'key': 'search-on-web', 'label': _('Search select text on web') }, ] }, ] html_escape_table = { "&": "&", '"': """, "'": "'", ">": ">", "<": "<", } HOTKET_MODEL_INDEX_DCONF = 0 HOTKET_MODEL_INDEX_LABEL = 1 HOTKET_MODEL_INDEX_HUMAN_ACCEL = 2 HOTKET_MODEL_INDEX_ACCEL = 3 def html_escape(text): """Produce entities within text.""" return "".join(html_escape_table.get(c, c) for c in text) def refresh_user_start(settings): if not AUTOSTART_FOLDER or not LOGIN_DESTOP_PATH: return if settings.general.get_boolean('start-at-login'): autostart_path = os.path.expanduser(AUTOSTART_FOLDER) os.makedirs(autostart_path, exist_ok=True) shutil.copyfile( os.path.join(LOGIN_DESTOP_PATH, "autostart-guake.desktop"), os.path.join(os.path.expanduser(AUTOSTART_FOLDER), "guake.desktop") ) else: desktop_file = os.path.join(os.path.expanduser(AUTOSTART_FOLDER), "guake.desktop") if os.path.exists(desktop_file): os.remove(desktop_file) class PrefsCallbacks(): """Holds callbacks that will be used in the PrefsDialg class. """ def __init__(self, prefDlg): self.prefDlg = prefDlg self.settings = prefDlg.settings # general tab def on_restore_tabs_startup_toggled(self, chk): """Changes the activity of restore-tabs-startup in dconf """ self.settings.general.set_boolean('restore-tabs-startup', chk.get_active()) def on_restore_tabs_notify_toggled(self, chk): """Changes the activity of restore-tabs-notify in dconf """ self.settings.general.set_boolean('restore-tabs-notify', chk.get_active()) def on_save_tabs_when_changed_toggled(self, chk): """Changes the activity of save-tabs-when-changed in dconf """ self.settings.general.set_boolean('save-tabs-when-changed', chk.get_active()) def on_default_shell_changed(self, combo): """Changes the activity of default_shell in dconf """ citer = combo.get_active_iter() if not citer: return shell = combo.get_model().get_value(citer, 0) # we unset the value (restore to default) when user chooses to use # user shell as guake shell interpreter. if shell == USER_SHELL_VALUE: self.settings.general.reset('default-shell') else: self.settings.general.set_string('default-shell', shell) def on_use_login_shell_toggled(self, chk): """Changes the activity of use_login_shell in dconf """ self.settings.general.set_boolean('use-login-shell', chk.get_active()) def on_open_tab_cwd_toggled(self, chk): """Changes the activity of open_tab_cwd in dconf """ self.settings.general.set_boolean('open-tab-cwd', chk.get_active()) def on_use_trayicon_toggled(self, chk): """Changes the activity of use_trayicon in dconf """ self.settings.general.set_boolean('use-trayicon', chk.get_active()) def on_use_popup_toggled(self, chk): """Changes the activity of use_popup in dconf """ self.settings.general.set_boolean('use-popup', chk.get_active()) def on_workspace_specific_tab_sets_toggled(self, chk): """Sets the 'workspace-specific-tab-sets' property in dconf """ self.settings.general.set_boolean('workspace-specific-tab-sets', chk.get_active()) def on_prompt_on_quit_toggled(self, chk): """Set the `prompt on quit' property in dconf """ self.settings.general.set_boolean('prompt-on-quit', chk.get_active()) def on_prompt_on_close_tab_changed(self, combo): """Set the `prompt_on_close_tab' property in dconf """ self.settings.general.set_int('prompt-on-close-tab', combo.get_active()) def on_gtk_theme_name_changed(self, combo): """Set the `gtk_theme_name' property in dconf """ citer = combo.get_active_iter() if not citer: return theme_name = combo.get_model().get_value(citer, 0) self.settings.general.set_string('gtk-theme-name', theme_name) select_gtk_theme(self.settings) def on_gtk_prefer_dark_theme_toggled(self, chk): """Set the `gtk_prefer_dark_theme' property in dconf """ self.settings.general.set_boolean('gtk-prefer-dark-theme', chk.get_active()) select_gtk_theme(self.settings) def on_window_ontop_toggled(self, chk): """Changes the activity of window_ontop in dconf """ self.settings.general.set_boolean('window-ontop', chk.get_active()) def on_tab_ontop_toggled(self, chk): """Changes the activity of tab_ontop in dconf """ self.settings.general.set_boolean('tab-ontop', chk.get_active()) def on_quick_open_enable_toggled(self, chk): """Changes the activity of quick_open_enable in dconf """ self.settings.general.set_boolean('quick-open-enable', chk.get_active()) def on_quick_open_in_current_terminal_toggled(self, chk): self.settings.general.set_boolean('quick-open-in-current-terminal', chk.get_active()) def on_startup_script_changed(self, edt): self.settings.general.set_string('startup-script', edt.get_text()) def on_window_refocus_toggled(self, chk): """Changes the activity of window_refocus in dconf """ self.settings.general.set_boolean('window-refocus', chk.get_active()) def on_window_losefocus_toggled(self, chk): """Changes the activity of window_losefocus in dconf """ self.settings.general.set_boolean('window-losefocus', chk.get_active()) def on_quick_open_command_line_changed(self, edt): self.settings.general.set_string('quick-open-command-line', edt.get_text()) def on_hook_show_changed(self, edt): self.settings.hooks.set_string('show', edt.get_text()) def on_window_tabbar_toggled(self, chk): """Changes the activity of window_tabbar in dconf """ self.settings.general.set_boolean('window-tabbar', chk.get_active()) def on_start_fullscreen_toggled(self, chk): """Changes the activity of start_fullscreen in dconf """ self.settings.general.set_boolean('start-fullscreen', chk.get_active()) def on_start_at_login_toggled(self, chk): """Changes the activity of start_at_login in dconf """ self.settings.general.set_boolean('start-at-login', chk.get_active()) refresh_user_start(self.settings) def on_use_vte_titles_toggled(self, chk): """Save `use_vte_titles` property value in dconf """ self.settings.general.set_boolean('use-vte-titles', chk.get_active()) def on_set_window_title_toggled(self, chk): """Save `set_window_title` property value in dconf """ self.settings.general.set_boolean('set-window-title', chk.get_active()) def on_abbreviate_tab_names_toggled(self, chk): """Save `abbreviate_tab_names` property value in dconf """ self.settings.general.set_boolean('abbreviate-tab-names', chk.get_active()) def on_max_tab_name_length_changed(self, spin): """Changes the value of max_tab_name_length in dconf """ val = int(spin.get_value()) self.settings.general.set_int('max-tab-name-length', val) self.prefDlg.update_vte_subwidgets_states() def on_mouse_display_toggled(self, chk): """Set the 'appear on mouse display' preference in dconf. This property supercedes any value stored in display_n. """ self.settings.general.set_boolean('mouse-display', chk.get_active()) def on_right_align_toggled(self, chk): """set the horizontal alignment setting. """ v = chk.get_active() self.settings.general.set_int('window-halignment', 1 if v else 0) def on_bottom_align_toggled(self, chk): """set the vertical alignment setting. """ v = chk.get_active() self.settings.general.set_int('window-valignment', ALIGN_BOTTOM if v else ALIGN_TOP) def on_display_n_changed(self, combo): """Set the destination display in dconf. """ i = combo.get_active_iter() if not i: return model = combo.get_model() first_item_path = model.get_path(model.get_iter_first()) if model.get_path(i) == first_item_path: val_int = ALWAYS_ON_PRIMARY else: val = model.get_value(i, 0) val_int = int(val.split()[0]) # extracts 1 from '1' or from '1 (primary)' self.settings.general.set_int('display-n', val_int) def on_window_height_value_changed(self, hscale): """Changes the value of window_height in dconf """ val = hscale.get_value() self.settings.general.set_int('window-height', int(val)) def on_window_width_value_changed(self, wscale): """Changes the value of window_width in dconf """ val = wscale.get_value() self.settings.general.set_int('window-width', int(val)) def on_window_halign_value_changed(self, halign_button): """Changes the value of window_halignment in dconf """ which_align = { 'radiobutton_align_left': ALIGN_LEFT, 'radiobutton_align_right': ALIGN_RIGHT, 'radiobutton_align_center': ALIGN_CENTER } if halign_button.get_active(): self.settings.general.set_int( 'window-halignment', which_align[halign_button.get_name()] ) self.prefDlg.get_widget("window_horizontal_displacement").set_sensitive( which_align[halign_button.get_name()] != ALIGN_CENTER ) def on_use_audible_bell_toggled(self, chk): """Changes the value of use_audible_bell in dconf """ self.settings.general.set_boolean('use-audible-bell', chk.get_active()) # scrolling tab def on_use_scrollbar_toggled(self, chk): """Changes the activity of use_scrollbar in dconf """ self.settings.general.set_boolean('use-scrollbar', chk.get_active()) def on_history_size_value_changed(self, spin): """Changes the value of history_size in dconf """ val = int(spin.get_value()) self.settings.general.set_int('history-size', val) self._update_history_widgets() def on_infinite_history_toggled(self, chk): self.settings.general.set_boolean('infinite-history', chk.get_active()) self._update_history_widgets() def _update_history_widgets(self): infinite = self.prefDlg.get_widget('infinite_history').get_active() self.prefDlg.get_widget('history_size').set_sensitive(not infinite) def on_scroll_output_toggled(self, chk): """Changes the activity of scroll_output in dconf """ self.settings.general.set_boolean('scroll-output', chk.get_active()) def on_scroll_keystroke_toggled(self, chk): """Changes the activity of scroll_keystroke in dconf """ self.settings.general.set_boolean('scroll-keystroke', chk.get_active()) # appearance tab def on_use_default_font_toggled(self, chk): """Changes the activity of use_default_font in dconf """ self.settings.general.set_boolean('use-default-font', chk.get_active()) def on_allow_bold_toggled(self, chk): """Changes the value of allow_bold in dconf """ self.settings.styleFont.set_boolean('allow-bold', chk.get_active()) def on_bold_is_bright_toggled(self, chk): """Changes the value of bold_is_bright in dconf """ self.settings.styleFont.set_boolean('bold-is-bright', chk.get_active()) def on_font_style_font_set(self, fbtn): """Changes the value of font_style in dconf """ self.settings.styleFont.set_string('style', fbtn.get_font_name()) def on_transparency_value_changed(self, hscale): """Changes the value of background_transparency in dconf """ value = hscale.get_value() self.prefDlg.set_colors_from_settings() self.settings.styleBackground.set_int('transparency', MAX_TRANSPARENCY - int(value)) # compatibility tab def on_backspace_binding_changed(self, combo): """Changes the value of compat_backspace in dconf """ val = combo.get_active_text() self.settings.general.set_string('compat-backspace', ERASE_BINDINGS[val]) def on_delete_binding_changed(self, combo): """Changes the value of compat_delete in dconf """ val = combo.get_active_text() self.settings.general.set_string('compat-delete', ERASE_BINDINGS[val]) def on_custom_command_file_chooser_file_changed(self, filechooser): self.settings.general.set_string('custom-command-file', filechooser.get_filename()) def toggle_prompt_on_quit_sensitivity(self, combo): self.prefDlg.toggle_prompt_on_quit_sensitivity(combo) def toggle_style_sensitivity(self, chk): self.prefDlg.toggle_style_sensitivity(chk) def toggle_use_font_background_sensitivity(self, chk): self.prefDlg.toggle_use_font_background_sensitivity(chk) def toggle_display_n_sensitivity(self, chk): self.prefDlg.toggle_display_n_sensitivity(chk) def toggle_quick_open_command_line_sensitivity(self, chk): self.prefDlg.toggle_quick_open_command_line_sensitivity(chk) def toggle_use_vte_titles(self, chk): self.prefDlg.toggle_use_vte_titles(chk) def update_vte_subwidgets_states(self): self.prefDlg.update_vte_subwidgets_states() def on_reset_compat_defaults_clicked(self, btn): self.prefDlg.on_reset_compat_defaults_clicked(btn) def on_palette_name_changed(self, combo): self.prefDlg.on_palette_name_changed(combo) def on_cursor_shape_changed(self, combo): self.prefDlg.on_cursor_shape_changed(combo) def on_blink_cursor_toggled(self, chk): self.prefDlg.on_blink_cursor_toggled(chk) def on_palette_color_set(self, btn): self.prefDlg.on_palette_color_set(btn) def on_window_vertical_displacement_value_changed(self, spin): """Changes the value of window-vertical-displacement """ self.settings.general.set_int('window-vertical-displacement', int(spin.get_value())) def on_window_horizontal_displacement_value_changed(self, spin): """Changes the value of window-horizontal-displacement """ self.settings.general.set_int('window-horizontal-displacement', int(spin.get_value())) def reload_erase_combos(self, btn=None): self.prefDlg.reload_erase_combos(btn) def gtk_widget_destroy(self, btn): self.prefDlg.gtk_widget_destroy(btn) class PrefsDialog(SimpleGladeApp): """The Guake Preferences dialog. """ def __init__(self, settings): """Setup the preferences dialog interface, loading images, adding filters to file choosers and connecting some signals. """ self.hotkey_alread_used = False self.store = None super(PrefsDialog, self).__init__(gladefile('prefs.glade'), root='config-window') style_provider = Gtk.CssProvider() css_data = dedent( """ .monospace{ font-family: monospace; } """ ).encode() style_provider.load_from_data(css_data) Gtk.StyleContext.add_provider_for_screen( Gdk.Screen.get_default(), style_provider, Gtk.STYLE_PROVIDER_PRIORITY_APPLICATION ) self.get_widget("quick_open_command_line").get_style_context().add_class("monospace") self.get_widget("quick_open_supported_patterns").get_style_context().add_class("monospace") self.settings = settings self.add_callbacks(PrefsCallbacks(self)) # window cleanup handler self.window = self.get_widget('config-window') self.get_widget('config-window').connect('destroy', self.on_destroy) # images ipath = pixmapfile('guake-notification.png') self.get_widget('image_logo').set_from_file(ipath) ipath = pixmapfile('quick-open.png') self.get_widget('image_quick_open').set_from_file(ipath) # Model format: # 0: the keybinding path in gsettings (str, hidden), # 1: label (str) # 2: human readable accelerator (str) # 3: gtk accelerator (str, hidden) self.store = Gtk.TreeStore(str, str, str, str) treeview = self.get_widget('treeview-keys') treeview.set_model(self.store) treeview.set_rules_hint(True) treeview.connect('button-press-event', self.start_editing) treeview.set_activate_on_single_click(True) renderer = Gtk.CellRendererText() column = Gtk.TreeViewColumn(_('Action'), renderer, text=1) column.set_property('expand', True) treeview.append_column(column) renderer = Gtk.CellRendererAccel() renderer.set_property('editable', True) renderer.connect('accel-edited', self.on_accel_edited) renderer.connect('accel-cleared', self.on_accel_cleared) column = Gtk.TreeViewColumn(_('Shortcut'), renderer, text=2) column.pack_start(renderer, True) column.set_property('expand', False) column.add_attribute(renderer, "accel-mods", 0) column.add_attribute(renderer, "accel-key", 1) treeview.append_column(column) class fake_guake(): pass fg = fake_guake() fg.window = self.window fg.settings = self.settings self.demo_terminal = GuakeTerminal(fg) self.demo_terminal_box = self.get_widget('demo_terminal_box') self.demo_terminal_box.add(self.demo_terminal) pid = self.spawn_sync_pid(None, self.demo_terminal) self.demo_terminal.pid = pid self.settings.general.bind( 'tab-close-buttons', self.get_widget('tab-close-buttons'), 'active', Gio.SettingsBindFlags.DEFAULT ) self.populate_shell_combo() self.populate_keys_tree() self.populate_display_n() self.populate_gtk_theme_names() self.load_configs() self.get_widget('config-window').hide() def spawn_sync_pid(self, directory=None, terminal=None): argv = list() user_shell = self.settings.general.get_string('default-shell') if user_shell and os.path.exists(user_shell): argv.append(user_shell) else: argv.append(os.environ['SHELL']) login_shell = self.settings.general.get_boolean('use-login-shell') if login_shell: argv.append('--login') if isinstance(directory, str): wd = directory else: wd = os.environ['HOME'] pid = terminal.spawn_sync( Vte.PtyFlags.DEFAULT, wd, argv, [], GLib.SpawnFlags.DO_NOT_REAP_CHILD, None, None, None ) try: tuple_type = gi._gi.ResultTuple # pylint: disable=c-extension-no-member except: # pylint: disable=bare-except tuple_type = tuple if isinstance(pid, (tuple, tuple_type)): # Return a tuple in 2.91 # https://lazka.github.io/pgi-docs/Vte-2.91/classes/Terminal.html#Vte.Terminal.spawn_sync pid = pid[1] assert isinstance(pid, int) return pid def show(self): """Calls the main window show_all method and presents the window in the desktop. """ self.get_widget('config-window').show_all() self.get_widget('config-window').present() def hide(self): """Calls the main window hide function. """ self.get_widget('config-window').hide() def on_destroy(self, window): self.demo_terminal.kill() self.demo_terminal.destroy() def toggle_prompt_on_quit_sensitivity(self, combo): """If toggle_on_close_tabs is set to 2 (Always), prompt_on_quit has no effect. """ self.get_widget('prompt_on_quit').set_sensitive(combo.get_active() != 2) def toggle_style_sensitivity(self, chk): """If the user chooses to use the gnome default font configuration it means that he will not be able to use the font selector. """ self.get_widget('font_style').set_sensitive(not chk.get_active()) def toggle_use_font_background_sensitivity(self, chk): """If the user chooses to use the gnome default font configuration it means that he will not be able to use the font selector. """ self.get_widget('palette_16').set_sensitive(chk.get_active()) self.get_widget('palette_17').set_sensitive(chk.get_active()) def toggle_display_n_sensitivity(self, chk): """When the user unchecks 'on mouse display', the option to select an alternate display should be enabeld. """ self.get_widget('display_n').set_sensitive(not chk.get_active()) def toggle_quick_open_command_line_sensitivity(self, chk): """When the user unchecks 'enable quick open', the command line should be disabled """ self.get_widget('quick_open_command_line').set_sensitive(chk.get_active()) self.get_widget('quick_open_in_current_terminal').set_sensitive(chk.get_active()) def toggle_use_vte_titles(self, chk): """When vte titles aren't used, there is nothing to abbreviate """ self.update_vte_subwidgets_states() def update_vte_subwidgets_states(self): do_use_vte_titles = self.get_widget('use_vte_titles').get_active() max_tab_name_length_wdg = self.get_widget('max_tab_name_length') max_tab_name_length_wdg.set_sensitive(do_use_vte_titles) self.get_widget('lbl_max_tab_name_length').set_sensitive(do_use_vte_titles) self.get_widget('abbreviate_tab_names').set_sensitive(do_use_vte_titles) def on_reset_compat_defaults_clicked(self, bnt): """Reset default values to compat_{backspace,delete} dconf keys. The default values are retrivied from the guake.schemas file. """ self.settings.general.reset('compat-backspace') self.settings.general.reset('compat-delete') self.reload_erase_combos() def on_palette_name_changed(self, combo): """Changes the value of palette in dconf """ palette_name = combo.get_active_text() if palette_name not in PALETTES: return self.settings.styleFont.set_string('palette', PALETTES[palette_name]) self.settings.styleFont.set_string('palette-name', palette_name) self.set_palette_colors(PALETTES[palette_name]) self.update_demo_palette(PALETTES[palette_name]) def on_cursor_shape_changed(self, combo): """Changes the value of cursor_shape in dconf """ index = combo.get_active() self.settings.style.set_int('cursor-shape', index) def on_blink_cursor_toggled(self, chk): """Changes the value of blink_cursor in dconf """ self.settings.style.set_int('cursor-blink-mode', chk.get_active()) def on_palette_color_set(self, btn): """Changes the value of palette in dconf """ palette = [] for i in range(18): palette.append(hexify_color(self.get_widget('palette_%d' % i).get_color())) palette = ':'.join(palette) self.settings.styleFont.set_string('palette', palette) self.settings.styleFont.set_string('palette-name', _('Custom')) self.set_palette_name('Custom') self.update_demo_palette(palette) # this methods should be moved to the GuakeTerminal class FROM HERE def set_palette_name(self, palette_name): """If the given palette matches an existing one, shows it in the combobox """ combo = self.get_widget('palette_name') found = False log.debug("wanting palette: %r", palette_name) for i in combo.get_model(): if i[0] == palette_name: combo.set_active_iter(i.iter) found = True break if not found: combo.set_active(self.custom_palette_index) def update_demo_palette(self, palette): self.set_colors_from_settings() def set_colors_from_settings(self): transparency = self.settings.styleBackground.get_int('transparency') colorRGBA = Gdk.RGBA(0, 0, 0, 0) palette_list = list() for color in self.settings.styleFont.get_string("palette").split(':'): colorRGBA.parse(color) palette_list.append(colorRGBA.copy()) if len(palette_list) > 16: bg_color = palette_list[17] else: bg_color = Gdk.RGBA(255, 255, 255, 0) bg_color.alpha = 1 / 100 * transparency if len(palette_list) > 16: font_color = palette_list[16] else: font_color = Gdk.RGBA(0, 0, 0, 0) self.demo_terminal.set_color_foreground(font_color) self.demo_terminal.set_color_bold(font_color) self.demo_terminal.set_colors(font_color, bg_color, palette_list[:16]) # TO HERE (see above) def fill_palette_names(self): combo = self.get_widget('palette_name') for palette in sorted(PALETTES): combo.append_text(palette) self.custom_palette_index = len(PALETTES) combo.append_text(_('Custom')) def set_cursor_shape(self, shape_index): self.get_widget('cursor_shape').set_active(shape_index) def set_cursor_blink_mode(self, mode_index): self.get_widget('cursor_blink_mode').set_active(mode_index) def set_palette_colors(self, palette): """Updates the color buttons with the given palette """ palette = palette.split(':') for i, pal in enumerate(palette): x, color = Gdk.Color.parse(pal) self.get_widget('palette_%d' % i).set_color(color) def reload_erase_combos(self, btn=None): """Read from dconf the value of compat_{backspace,delete} vars and select the right option in combos. """ # backspace erase binding combo = self.get_widget('backspace-binding-combobox') binding = self.settings.general.get_string('compat-backspace') for i in combo.get_model(): if ERASE_BINDINGS.get(i[0]) == binding: combo.set_active_iter(i.iter) break # delete erase binding combo = self.get_widget('delete-binding-combobox') binding = self.settings.general.get_string('compat-delete') for i in combo.get_model(): if ERASE_BINDINGS.get(i[0]) == binding: combo.set_active_iter(i.iter) break def _load_hooks_settings(self): """load hooks settings""" log.debug("executing _load_hooks_settings") hook_show_widget = self.get_widget("hook_show") hook_show_setting = self.settings.hooks.get_string("show") if hook_show_widget is not None: if hook_show_setting is not None: hook_show_widget.set_text(hook_show_setting) def _load_default_shell_settings(self): combo = self.get_widget('default_shell') # get the value for defualt shell. If unset, set to USER_SHELL_VALUE. value = self.settings.general.get_string('default-shell') or USER_SHELL_VALUE for i in combo.get_model(): if i[0] == value: combo.set_active_iter(i.iter) break def _load_screen_settings(self): """Load screen settings""" # display number / use primary display combo = self.get_widget('display_n') dest_screen = self.settings.general.get_int('display-n') # If Guake is configured to use a screen that is not currently attached, # default to 'primary display' option. screen = self.get_widget('config-window').get_screen() n_screens = screen.get_n_monitors() if dest_screen > n_screens - 1: self.settings.general.set_boolean('mouse-display', False) dest_screen = screen.get_primary_monitor() self.settings.general.set_int('display-n', dest_screen) if dest_screen == ALWAYS_ON_PRIMARY: first_item = combo.get_model().get_iter_first() combo.set_active_iter(first_item) else: seen_first = False # first item "always on primary" is special for i in combo.get_model(): if seen_first: i_int = int(i[0].split()[0]) # extracts 1 from '1' or from '1 (primary)' if i_int == dest_screen: combo.set_active_iter(i.iter) else: seen_first = True def load_configs(self): """Load configurations for all widgets in General, Scrolling and Appearance tabs from dconf. """ self._load_default_shell_settings() # restore tabs startup value = self.settings.general.get_boolean('restore-tabs-startup') self.get_widget('restore-tabs-startup').set_active(value) # restore tabs notify value = self.settings.general.get_boolean('restore-tabs-notify') self.get_widget('restore-tabs-notify').set_active(value) # save tabs when changed value = self.settings.general.get_boolean('save-tabs-when-changed') self.get_widget('save-tabs-when-changed').set_active(value) # login shell value = self.settings.general.get_boolean('use-login-shell') self.get_widget('use_login_shell').set_active(value) # tray icon value = self.settings.general.get_boolean('use-trayicon') self.get_widget('use_trayicon').set_active(value) # popup value = self.settings.general.get_boolean('use-popup') self.get_widget('use_popup').set_active(value) # workspace-specific tab sets value = self.settings.general.get_boolean('workspace-specific-tab-sets') self.get_widget('workspace-specific-tab-sets').set_active(value) # prompt on quit value = self.settings.general.get_boolean('prompt-on-quit') self.get_widget('prompt_on_quit').set_active(value) # prompt on close_tab value = self.settings.general.get_int('prompt-on-close-tab') self.get_widget('prompt_on_close_tab').set_active(value) self.get_widget('prompt_on_quit').set_sensitive(value != 2) # gtk theme theme value = self.settings.general.get_string('gtk-theme-name') combo = self.get_widget('gtk_theme_name') for i in combo.get_model(): if i[0] == value: combo.set_active_iter(i.iter) break # prefer gtk theme theme value = self.settings.general.get_boolean('gtk-prefer-dark-theme') self.get_widget('gtk_prefer_dark_theme').set_active(value) # ontop value = self.settings.general.get_boolean('window-ontop') self.get_widget('window_ontop').set_active(value) # tab ontop value = self.settings.general.get_boolean('tab-ontop') self.get_widget('tab_ontop').set_active(value) # refocus value = self.settings.general.get_boolean('window-refocus') self.get_widget('window_refocus').set_active(value) # losefocus value = self.settings.general.get_boolean('window-losefocus') self.get_widget('window_losefocus').set_active(value) # use VTE titles value = self.settings.general.get_boolean('use-vte-titles') self.get_widget('use_vte_titles').set_active(value) # set window title value = self.settings.general.get_boolean('set-window-title') self.get_widget('set_window_title').set_active(value) # abbreviate tab names self.get_widget('abbreviate_tab_names').set_sensitive(value) value = self.settings.general.get_boolean('abbreviate-tab-names') self.get_widget('abbreviate_tab_names').set_active(value) # max tab name length value = self.settings.general.get_int('max-tab-name-length') self.get_widget('max_tab_name_length').set_value(value) self.update_vte_subwidgets_states() value = self.settings.general.get_int('window-height') self.get_widget('window_height').set_value(value) value = self.settings.general.get_int('window-width') self.get_widget('window_width').set_value(value) # window displacements value = self.settings.general.get_int('window-vertical-displacement') self.get_widget('window_vertical_displacement').set_value(value) value = self.settings.general.get_int('window-horizontal-displacement') self.get_widget('window_horizontal_displacement').set_value(value) value = self.settings.general.get_int('window-halignment') which_button = { ALIGN_RIGHT: 'radiobutton_align_right', ALIGN_LEFT: 'radiobutton_align_left', ALIGN_CENTER: 'radiobutton_align_center' } self.get_widget(which_button[value]).set_active(True) self.get_widget("window_horizontal_displacement").set_sensitive(value != ALIGN_CENTER) value = self.settings.general.get_boolean('open-tab-cwd') self.get_widget('open_tab_cwd').set_active(value) # tab bar value = self.settings.general.get_boolean('window-tabbar') self.get_widget('window_tabbar').set_active(value) # start fullscreen value = self.settings.general.get_boolean('start-fullscreen') self.get_widget('start_fullscreen').set_active(value) # start at GNOME login value = self.settings.general.get_boolean('start-at-login') self.get_widget('start_at_login').set_active(value) # use audible bell value = self.settings.general.get_boolean('use-audible-bell') self.get_widget('use_audible_bell').set_active(value) self._load_screen_settings() value = self.settings.general.get_boolean('quick-open-enable') self.get_widget('quick_open_enable').set_active(value) self.get_widget('quick_open_command_line').set_sensitive(value) self.get_widget('quick_open_in_current_terminal').set_sensitive(value) text = Gtk.TextBuffer() text = self.get_widget('quick_open_supported_patterns').get_buffer() for title, matcher, _useless in QUICK_OPEN_MATCHERS: text.insert_at_cursor("%s: %s\n" % (title, matcher)) self.get_widget('quick_open_supported_patterns').set_buffer(text) value = self.settings.general.get_string('quick-open-command-line') if value is None: value = "subl %(file_path)s:%(line_number)s" self.get_widget('quick_open_command_line').set_text(value) value = self.settings.general.get_boolean('quick-open-in-current-terminal') self.get_widget('quick_open_in_current_terminal').set_active(value) value = self.settings.general.get_string('startup-script') if value: self.get_widget('startup_script').set_text(value) # use display where the mouse is currently value = self.settings.general.get_boolean('mouse-display') self.get_widget('mouse_display').set_active(value) # scrollbar value = self.settings.general.get_boolean('use-scrollbar') self.get_widget('use_scrollbar').set_active(value) # history size value = self.settings.general.get_int('history-size') self.get_widget('history_size').set_value(value) # infinite history value = self.settings.general.get_boolean('infinite-history') self.get_widget('infinite_history').set_active(value) # scroll output value = self.settings.general.get_boolean('scroll-output') self.get_widget('scroll_output').set_active(value) # scroll keystroke value = self.settings.general.get_boolean('scroll-keystroke') self.get_widget('scroll_keystroke').set_active(value) # default font value = self.settings.general.get_boolean('use-default-font') self.get_widget('use_default_font').set_active(value) self.get_widget('font_style').set_sensitive(not value) # font value = self.settings.styleFont.get_string('style') if value: self.get_widget('font_style').set_font_name(value) # allow bold font value = self.settings.styleFont.get_boolean('allow-bold') self.get_widget('allow_bold').set_active(value) # use bold is bright value = self.settings.styleFont.get_boolean('bold-is-bright') self.get_widget('bold_is_bright').set_active(value) # palette self.fill_palette_names() value = self.settings.styleFont.get_string('palette-name') self.set_palette_name(value) value = self.settings.styleFont.get_string('palette') self.set_palette_colors(value) self.update_demo_palette(value) # cursor shape value = self.settings.style.get_int('cursor-shape') self.set_cursor_shape(value) # cursor blink value = self.settings.style.get_int('cursor-blink-mode') self.set_cursor_blink_mode(value) value = self.settings.styleBackground.get_int('transparency') self.get_widget('background_transparency').set_value(MAX_TRANSPARENCY - value) value = self.settings.general.get_int('window-valignment') self.get_widget('top_align').set_active(value) # it's a separated method, to be reused. self.reload_erase_combos() # custom command context-menu configuration file custom_command_file = self.settings.general.get_string('custom-command-file') if custom_command_file: custom_command_file_name = os.path.expanduser(custom_command_file) else: custom_command_file_name = None custom_cmd_filter = Gtk.FileFilter() custom_cmd_filter.set_name(_("JSON files")) custom_cmd_filter.add_pattern("*.json") self.get_widget('custom_command_file_chooser').add_filter(custom_cmd_filter) all_files_filter = Gtk.FileFilter() all_files_filter.set_name(_("All files")) all_files_filter.add_pattern("*") self.get_widget('custom_command_file_chooser').add_filter(all_files_filter) if custom_command_file_name: self.get_widget('custom_command_file_chooser').set_filename(custom_command_file_name) # hooks self._load_hooks_settings() # -- populate functions -- def populate_shell_combo(self): """Read the /etc/shells and looks for installed shells to fill the default_shell combobox. """ cb = self.get_widget('default_shell') # append user shell as first option cb.append_text(USER_SHELL_VALUE) if os.path.exists(SHELLS_FILE): lines = open(SHELLS_FILE).readlines() for i in lines: possible = i.strip() if possible and not possible.startswith('#') and os.path.exists(possible): cb.append_text(possible) for i in get_binaries_from_path(PYTHONS): cb.append_text(i) def populate_gtk_theme_names(self): cb = self.get_widget('gtk_theme_name') for name in list_all_themes(): name = name.strip() cb.append_text(name) def populate_keys_tree(self): """Reads the HOTKEYS global variable and insert all data in the TreeStore used by the preferences window treeview. """ for group in HOTKEYS: parent = self.store.append(None, [None, group['label'], None, None]) for item in group['keys']: if item['key'] == "show-hide" or item['key'] == "show-focus": accel = self.settings.keybindingsGlobal.get_string(item['key']) else: accel = self.settings.keybindingsLocal.get_string(item['key']) gsettings_path = item['key'] keycode, mask = Gtk.accelerator_parse(accel) keylabel = Gtk.accelerator_get_label(keycode, mask) self.store.append(parent, [gsettings_path, item['label'], keylabel, accel]) self.get_widget('treeview-keys').expand_all() def populate_display_n(self): """Get the number of displays and populate this drop-down box with them all. Prepend the "always on primary" option. """ cb = self.get_widget('display_n') screen = self.get_widget('config-window').get_screen() cb.append_text("always on primary") for m in range(0, int(screen.get_n_monitors())): if m == int(screen.get_primary_monitor()): # TODO l10n cb.append_text(str(m) + ' ' + '(primary)') else: cb.append_text(str(m)) # -- key handling -- def on_accel_edited(self, cellrendereraccel, path, key, mods, hwcode): """Callback that handles key edition in cellrenderer. It makes some tests to validate the key, like looking for already in use keys and look for [A-Z][a-z][0-9] to avoid problems with these common keys. If all tests are ok, the value will be stored in dconf. """ accelerator = Gtk.accelerator_name(key, mods) dconf_path = self.store[path][HOTKET_MODEL_INDEX_DCONF] old_accel = self.store[path][HOTKET_MODEL_INDEX_HUMAN_ACCEL] keylabel = Gtk.accelerator_get_label(key, mods) # we needn't to change anything, the user is trying to set the # same key that is already set. if old_accel == accelerator: return False self.hotkey_alread_used = False # looking for already used keybindings def each_key(model, path, subiter): keyentry = model.get_value(subiter, HOTKET_MODEL_INDEX_ACCEL) if keyentry and keyentry == accelerator: self.hotkey_alread_used = True msg = _("The shortcut \"%s\" is already in use.") % html_escape(accelerator) ShowableError(self.window, _('Error setting keybinding.'), msg, -1) raise Exception('This is ok, we just use it to break the foreach loop!') self.store.foreach(each_key) if self.hotkey_alread_used: return False # avoiding problems with common keys if ((mods == 0 and key != 0) and ((ord('a') <= key <= ord('z')) or (ord('A') <= key <= ord('Z')) or (ord('0') <= key <= ord('9')))): dialog = Gtk.MessageDialog( self.get_widget('config-window'), Gtk.DialogFlags.MODAL | Gtk.DialogFlags.DESTROY_WITH_PARENT, Gtk.MessageType.WARNING, Gtk.ButtonsType.OK, _( "The shortcut \"%s\" cannot be used " "because it will become impossible to " "type using this key.\n\n" "Please try with a key such as " "Control, Alt or Shift at the same " "time.\n" ) % html_escape(key) ) dialog.run() dialog.destroy() return False self.store[path][HOTKET_MODEL_INDEX_HUMAN_ACCEL] = keylabel if dconf_path in ("show-hide", "show-focus"): self.settings.keybindingsGlobal.set_string(dconf_path, accelerator) else: self.settings.keybindingsLocal.set_string(dconf_path, accelerator) self.store[path][HOTKET_MODEL_INDEX_ACCEL] = accelerator def on_accel_cleared(self, cellrendereraccel, path): """If the user tries to clear a keybinding with the backspace key this callback will be called and it just fill the model with an empty key and set the 'disabled' string in dconf path. """ dconf_path = self.store[path][HOTKET_MODEL_INDEX_DCONF] if dconf_path == "show-hide": # cannot disable 'show-hide' hotkey log.warn("Cannot disable 'show-hide' hotkey") self.settings.keybindingsGlobal.set_string(dconf_path, old_accel) else: self.store[path][HOTKET_MODEL_INDEX_HUMAN_ACCEL] = "" self.store[path][HOTKET_MODEL_INDEX_ACCEL] = "None" if dconf_path == "show-focus": self.settings.keybindingsGlobal.set_string(dconf_path, 'disabled') else: self.settings.keybindingsLocal.set_string(dconf_path, 'disabled') def start_editing(self, treeview, event): """Make the treeview grab the focus and start editing the cell that the user has clicked to avoid confusion with two or three clicks before editing a keybinding. Thanks to gnome-keybinding-properties.c =) """ x, y = int(event.x), int(event.y) ret = treeview.get_path_at_pos(x, y) if not ret: return False path, column, cellx, celly = ret treeview.row_activated(path, Gtk.TreeViewColumn(None)) treeview.set_cursor(path) return False class KeyEntry(): def __init__(self, keycode, mask): self.keycode = keycode self.mask = mask def __repr__(self): return u'KeyEntry(%d, %d)' % (self.keycode, self.mask) def __eq__(self, rval): return self.keycode == rval.keycode and self.mask == rval.mask def setup_standalone_signals(instance): """Called when prefs dialog is running in standalone mode. It makes the delete event of dialog and click on close button finish the application. """ window = instance.get_widget('config-window') window.connect('delete-event', Gtk.main_quit) # We need to block the execution of the already associated # callback before connecting the new handler. button = instance.get_widget('button1') button.handler_block_by_func(instance.gtk_widget_destroy) button.connect('clicked', Gtk.main_quit) return instance if __name__ == '__main__': bindtextdomain(NAME, LOCALE_DIR) setup_standalone_signals(PrefsDialog(None)).show() Gtk.main() guake-3.6.3/guake/settings.py000066400000000000000000000104071346623310400161310ustar00rootroot00000000000000# -*- coding: utf-8; -*- """ Copyright (C) 2007-2012 Lincoln de Sousa Copyright (C) 2007 Gabriel Falcão This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA """ import logging import gi gi.require_version('Gtk', '3.0') from gi.repository import Gio log = logging.getLogger(__name__) class Settings(): def __init__(self, schema_source): Settings.enhanceSetting() self.guake = Gio.Settings.new_full( Gio.SettingsSchemaSource.lookup(schema_source, "guake", False), None, None ) self.guake.initEnhancements() self.guake.connect("changed", self.guake.triggerOnChangedValue) self.general = Gio.Settings.new_full( Gio.SettingsSchemaSource.lookup(schema_source, "guake.general", False), None, None ) self.general.initEnhancements() self.general.connect("changed", self.general.triggerOnChangedValue) self.keybindings = Gio.Settings.new_full( Gio.SettingsSchemaSource.lookup(schema_source, "guake.keybindings", False), None, None ) self.keybindings.initEnhancements() self.keybindings.connect("changed", self.keybindings.triggerOnChangedValue) self.keybindingsGlobal = Gio.Settings.new_full( Gio.SettingsSchemaSource.lookup(schema_source, "guake.keybindings.global", False), None, None ) self.keybindingsGlobal.initEnhancements() self.keybindingsGlobal.connect("changed", self.keybindingsGlobal.triggerOnChangedValue) self.keybindingsLocal = Gio.Settings.new_full( Gio.SettingsSchemaSource.lookup(schema_source, "guake.keybindings.local", False), None, None ) self.keybindingsLocal.initEnhancements() self.keybindingsLocal.connect("changed", self.keybindingsLocal.triggerOnChangedValue) self.styleBackground = Gio.Settings.new_full( Gio.SettingsSchemaSource.lookup(schema_source, "guake.style.background", False), None, None ) self.styleBackground.initEnhancements() self.styleBackground.connect("changed", self.styleBackground.triggerOnChangedValue) self.styleFont = Gio.Settings.new_full( Gio.SettingsSchemaSource.lookup(schema_source, "guake.style.font", False), None, None ) self.styleFont.initEnhancements() self.styleFont.connect("changed", self.styleFont.triggerOnChangedValue) self.style = Gio.Settings.new_full( Gio.SettingsSchemaSource.lookup(schema_source, "guake.style", False), None, None ) self.style.initEnhancements() self.style.connect("changed", self.style.triggerOnChangedValue) self.hooks = Gio.Settings.new_full( Gio.SettingsSchemaSource.lookup(schema_source, "guake.hooks", False), None, None ) self.hooks.initEnhancements() self.hooks.connect("changed", self.hooks.triggerOnChangedValue) def enhanceSetting(): def initEnhancements(self): self.listeners = dict() def onChangedValue(self, key, user_func): if key not in self.listeners: self.listeners[key] = list() self.listeners[key].append(user_func) def triggerOnChangedValue(self, settings, key, user_data=None): if key in self.listeners: for func in self.listeners[key]: func(settings, key, user_data) gi.repository.Gio.Settings.initEnhancements = initEnhancements gi.repository.Gio.Settings.onChangedValue = onChangedValue gi.repository.Gio.Settings.triggerOnChangedValue = triggerOnChangedValue guake-3.6.3/guake/simplegladeapp.py000066400000000000000000000254151346623310400172650ustar00rootroot00000000000000# -*- coding: utf-8; -*- """ Copyright (C) 2007-2013 Guake authors This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA """ import os import re import sys import gi gi.require_version('Gtk', '3.0') from gi.repository import Gtk import tokenize class SimpleGladeApp(): def __init__(self, path, root=None, domain=None, **kwargs): """ Load a glade file specified by glade_filename, using root as root widget and domain as the domain for translations. If it receives extra named arguments (argname=value), then they are used as attributes of the instance. path: path to a glade filename. If glade_filename cannot be found, then it will be searched in the same directory of the program (sys.argv[0]) root: the name of the widget that is the root of the user interface, usually a window or dialog (a top level widget). If None or ommited, the full user interface is loaded. domain: A domain to use for loading translations. If None or ommited, no translation is loaded. **kwargs: a dictionary representing the named extra arguments. It is useful to set attributes of new instances, for example: glade_app = SimpleGladeApp("ui.glade", foo="some value", bar="another value") sets two attributes (foo and bar) to glade_app. """ if os.path.isfile(path): self.glade_path = path else: glade_dir = os.path.dirname(sys.argv[0]) self.glade_path = os.path.join(glade_dir, path) for key, value in kwargs.items(): try: setattr(self, key, weakref.proxy(value)) except TypeError: setattr(self, key, value) self.glade = None self.builder = Gtk.Builder() self.builder.add_from_file(self.glade_path) if root: self.main_widget = self.builder.get_object(root) self.main_widget.show_all() else: self.main_widget = None # self.glade = self.create_glade(self.glade_path, root, domain) self.normalize_names() self.new() def __repr__(self): class_name = self.__class__.__name__ if self.main_widget: root = Gtk.Widget.get_name(self.main_widget) repr = '%s(path="%s", root="%s")' % (class_name, self.glade_path, root) else: repr = '%s(path="%s")' % (class_name, self.glade_path) return repr def new(self): """ Method called when the user interface is loaded and ready to be used. At this moment, the widgets are loaded and can be refered as self.widget_name """ pass def add_callbacks(self, callbacks_proxy): """ It uses the methods of callbacks_proxy as callbacks. The callbacks are specified by using: Properties window -> Signals tab in glade-2 (or any other gui designer like gazpacho). Methods of classes inheriting from SimpleGladeApp are used as callbacks automatically. callbacks_proxy: an instance with methods as code of callbacks. It means it has methods like on_button1_clicked, on_entry1_activate, etc. """ self.builder.connect_signals(callbacks_proxy) def normalize_names(self): """ It is internally used to normalize the name of the widgets. It means a widget named foo:vbox-dialog in glade is refered self.vbox_dialog in the code. It also sets a data "prefixes" with the list of prefixes a widget has for each widget. """ for widget in self.get_widgets(): if isinstance(widget, Gtk.Buildable): widget_name = Gtk.Buildable.get_name(widget) prefixes_name_l = widget_name.split(":") prefixes = prefixes_name_l[:-1] widget_api_name = prefixes_name_l[-1] widget_api_name = "_".join(re.findall(tokenize.Name, widget_api_name)) widget_name = Gtk.Buildable.set_name(widget, widget_api_name) if hasattr(self, widget_api_name): raise AttributeError( "instance %s already has an attribute %s" % (self, widget_api_name) ) else: setattr(self, widget_api_name, widget) if prefixes: # TODO is is a guess Gtk.Buildable.set_data(widget, "prefixes", prefixes) def add_prefix_actions(self, prefix_actions_proxy): """ By using a gui designer (glade-2, gazpacho, etc) widgets can have a prefix in theirs names like foo:entry1 or foo:label3 It means entry1 and label3 has a prefix action named foo. Then, prefix_actions_proxy must have a method named prefix_foo which is called everytime a widget with prefix foo is found, using the found widget as argument. prefix_actions_proxy: An instance with methods as prefix actions. It means it has methods like prefix_foo, prefix_bar, etc. """ prefix_s = "prefix_" prefix_pos = len(prefix_s) def is_method(t): return callable(t[1]) def is_prefix_action(t): return t[0].startswith(prefix_s) def drop_prefix(k, w): return (k[prefix_pos:], w) members_t = inspect.getmembers(prefix_actions_proxy) methods_t = filter(is_method, members_t) prefix_actions_t = filter(is_prefix_action, methods_t) prefix_actions_d = dict(map(drop_prefix, prefix_actions_t)) for widget in self.get_widgets(): prefixes = gtk.Widget.get_data(widget, "prefixes") if prefixes: for prefix in prefixes: if prefix in prefix_actions_d: prefix_action = prefix_actions_d[prefix] prefix_action(widget) def custom_handler(self, glade, function_name, widget_name, str1, str2, int1, int2): """ Generic handler for creating custom widgets, internally used to enable custom widgets (custom widgets of glade). The custom widgets have a creation function specified in design time. Those creation functions are always called with str1,str2,int1,int2 as arguments, that are values specified in design time. Methods of classes inheriting from SimpleGladeApp are used as creation functions automatically. If a custom widget has create_foo as creation function, then the method named create_foo is called with str1,str2,int1,int2 as arguments. """ try: handler = getattr(self, function_name) return handler(str1, str2, int1, int2) except AttributeError: return None def gtk_widget_show(self, widget, *args): """ Predefined callback. The widget is showed. Equivalent to widget.show() """ widget.show() def gtk_widget_hide(self, widget, *args): """ Predefined callback. The widget is hidden. Equivalent to widget.hide() """ widget.hide() return True def gtk_widget_grab_focus(self, widget, *args): """ Predefined callback. The widget grabs the focus. Equivalent to widget.grab_focus() """ widget.grab_focus() def gtk_widget_destroy(self, widget, *args): """ Predefined callback. The widget is destroyed. Equivalent to widget.destroy() """ widget.destroy() def gtk_window_activate_default(self, widget, *args): """ Predefined callback. The default widget of the window is activated. Equivalent to window.activate_default() """ widget.activate_default() def gtk_true(self, *args): """ Predefined callback. Equivalent to return True in a callback. Useful for stopping propagation of signals. """ return True def gtk_false(self, *args): """ Predefined callback. Equivalent to return False in a callback. """ return False def gtk_main_quit(self, *args): """ Predefined callback. Equivalent to self.quit() """ self.quit() def main(self): """ Starts the main loop of processing events. The default implementation calls gtk.main() Useful for applications that needs a non gtk main loop. For example, applications based on gstreamer needs to override this method with gst.main() Do not directly call this method in your programs. Use the method run() instead. """ gtk.main() def quit(self, *args): """ Quit processing events. The default implementation calls gtk.main_quit() Useful for applications that needs a non gtk main loop. For example, applications based on gstreamer needs to override this method with gst.main_quit() """ Gtk.main_quit() def run(self): """ Starts the main loop of processing events checking for Control-C. The default implementation checks wheter a Control-C is pressed, then calls on_keyboard_interrupt(). Use this method for starting programs. """ try: self.main() except KeyboardInterrupt: self.on_keyboard_interrupt() def on_keyboard_interrupt(self): """ This method is called by the default implementation of run() after a program is finished by pressing Control-C. """ pass def install_custom_handler(self, custom_handler): gtk.glade.set_custom_handler(custom_handler) def create_glade(self, glade_path, root, domain): return gtk.glade.XML(glade_path, root, domain) def get_widget(self, widget_name): return self.builder.get_object(widget_name) def get_widgets(self): return self.builder.get_objects() guake-3.6.3/guake/split_utils.py000066400000000000000000000137301346623310400166460ustar00rootroot00000000000000# -*- coding: utf-8; -*- """ Copyright (C) 2018 Mario Aichinger This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA """ import gi gi.require_version('Gtk', '3.0') from gi.repository import Gtk from guake.boxes import DualTerminalBox from guake.boxes import RootTerminalBox class FocusMover(): THRESHOLD = 10 BORDER_THICKNESS = 2 def __init__(self, window): self.window = window def move_right(self, terminal): window_width, window_height = self.window.get_size() tx, ty, tw, th = self.list_allocation(terminal) if tx + tw == window_width: return search_x = tx + tw + FocusMover.THRESHOLD search_y = ty + (th / 2) - FocusMover.BORDER_THICKNESS for term in terminal.get_parent().get_root_box().iter_terminals(): sx, sy, sw, sh = self.list_allocation(term) if sx <= search_x <= sx + sw and sy <= search_y <= sy + sh: term.grab_focus() def move_left(self, terminal): window_width, window_height = self.window.get_size() tx, ty, tw, th = self.list_allocation(terminal) if tx == 0: return search_x = tx - FocusMover.THRESHOLD search_y = ty + (th / 2) - FocusMover.BORDER_THICKNESS for term in terminal.get_parent().get_root_box().iter_terminals(): sx, sy, sw, sh = self.list_allocation(term) if sx <= search_x <= sx + sw and sy <= search_y <= sy + sh: term.grab_focus() def move_up(self, terminal): window_width, window_height = self.window.get_size() tx, ty, tw, th = self.list_allocation(terminal) if ty == 0: return search_x = tx + (tw / 2) - FocusMover.BORDER_THICKNESS search_y = ty - FocusMover.THRESHOLD for term in terminal.get_parent().get_root_box().iter_terminals(): sx, sy, sw, sh = self.list_allocation(term) if sx <= search_x <= sx + sw and sy <= search_y <= sy + sh: term.grab_focus() def move_down(self, terminal): window_width, window_height = self.window.get_size() tx, ty, tw, th = self.list_allocation(terminal) if ty + th == window_height: return search_x = tx + (tw / 2) - FocusMover.BORDER_THICKNESS search_y = ty + th + FocusMover.THRESHOLD for term in terminal.get_parent().get_root_box().iter_terminals(): sx, sy, sw, sh = self.list_allocation(term) if sx <= search_x <= sx + sw and sy <= search_y <= sy + sh: term.grab_focus() def list_allocation(self, terminal): terminal_rect = terminal.get_parent().get_allocation() x, y = terminal.get_parent().translate_coordinates(self.window, 0, 0) return x, y, terminal_rect.width, terminal_rect.height class SplitMover(): THRESHOLD = 35 STEP = 10 @classmethod def move_up(cls, terminal): box = terminal.get_parent() while not isinstance(box, RootTerminalBox): box = box.get_parent() if isinstance(box, DualTerminalBox): if box.get_orientation() == Gtk.Orientation.VERTICAL: _, __, p = cls.list_allocation(box) if p - SplitMover.STEP > SplitMover.THRESHOLD: box.set_position(p - SplitMover.STEP) else: box.set_position(SplitMover.THRESHOLD) break @classmethod def move_down(cls, terminal): box = terminal.get_parent() while not isinstance(box, RootTerminalBox): box = box.get_parent() if isinstance(box, DualTerminalBox): if box.get_orientation() == Gtk.Orientation.VERTICAL: _, y, p = cls.list_allocation(box) if p + SplitMover.STEP < y - SplitMover.THRESHOLD: box.set_position(p + SplitMover.STEP) else: box.set_position(y - SplitMover.THRESHOLD) break @classmethod def move_right(cls, terminal): box = terminal.get_parent() while not isinstance(box, RootTerminalBox): box = box.get_parent() if isinstance(box, DualTerminalBox): if box.get_orientation() == Gtk.Orientation.HORIZONTAL: x, _, p = cls.list_allocation(box) if p + SplitMover.STEP < x - SplitMover.THRESHOLD: box.set_position(p + SplitMover.STEP) else: box.set_position(x - SplitMover.THRESHOLD) break @classmethod def move_left(cls, terminal): box = terminal.get_parent() while not isinstance(box, RootTerminalBox): box = box.get_parent() if isinstance(box, DualTerminalBox): if box.get_orientation() == Gtk.Orientation.HORIZONTAL: _, __, p = cls.list_allocation(box) if p - SplitMover.STEP > SplitMover.THRESHOLD: box.set_position(p - SplitMover.STEP) else: box.set_position(SplitMover.THRESHOLD) break @classmethod def list_allocation(cls, box): box_rect = box.get_allocation() return box_rect.width, box_rect.height, box.get_position() guake-3.6.3/guake/support.py000066400000000000000000000054041346623310400160060ustar00rootroot00000000000000# -*- coding: utf-8 -*- import os import gi gi.require_version('Gtk', '3.0') gi.require_version('Gdk', '3.0') from gi.repository import Gdk from gi.repository import GdkX11 from gi.repository import Gtk from guake import gtk_version from guake import guake_version from guake import vte_runtime_version from guake import vte_version def horizonal_line(): print('-' * 50) def populate_display(display): screen = display.get_default_screen() print('Display: {}'.format(display.get_name())) print() # pylint: disable=R1719 print('RGBA visual: {}'.format(True if screen.get_rgba_visual() else False)) print() print('Composited: {}'.format(screen.is_composited())) print() n_monitors = display.get_n_monitors() for i in range(n_monitors): monitor = display.get_monitor(i) manufacturer = monitor.get_manufacturer() model = monitor.get_model() v = '%s%s%s' % ( manufacturer if manufacturer else '', ' ' if manufacturer or model else '', model if model else '' ) print('* Monitor: {} - {}'.format(i, v)) # Geometry rect = monitor.get_geometry() scale = monitor.get_scale_factor() v = '%d x %d%s at %d, %d' % ( rect.width, rect.height, ' % 2' if scale == 2 else '', rect.x, rect.y ) print(' * Geometry:\t\t{}'.format(v)) # Size v = '%d x %d mm²' % (monitor.get_width_mm(), monitor.get_height_mm()) print(' * Size:\t\t{}'.format(v)) # Primary print(' * Primary:\t\t{}'.format(monitor.is_primary())) # Refresh rate if monitor.get_refresh_rate(): v = '%.2f Hz' % (0.001 * monitor.get_refresh_rate()) else: v = 'unknown' print(' * Refresh rate:\t{}'.format(v)) # Subpixel layout print(' * Subpixel layout:\t{}'.format(monitor.get_subpixel_layout().value_nick)) def get_version(): display = Gdk.Display.get_default() print('Guake Version:\t\t{}'.format(guake_version())) print() print('Vte Version:\t\t{}'.format(vte_version())) print() print('Vte Runtime Version:\t{}'.format(vte_runtime_version())) print() horizonal_line() print('GTK+ Version:\t\t{}'.format(gtk_version())) print() print('GDK Backend:\t\t{}'.format(str(display).split(' ')[0][1:])) print() horizonal_line() def get_desktop_session(): print('Desktop Session: {}'.format(os.environ.get('DESKTOP_SESSION'))) print() horizonal_line() def get_display(): display = Gdk.Display.get_default() populate_display(display) def print_support(): print("
$ guake --support") print() get_version() get_desktop_session() get_display() guake-3.6.3/guake/terminal.py000066400000000000000000000512451346623310400161110ustar00rootroot00000000000000# -*- coding: utf-8; -*- """ Copyright (C) 2007-2013 Guake authors This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA """ import code import logging import os import re import shlex import signal import subprocess import sys import threading import uuid from enum import IntEnum from pathlib import Path from typing import Optional from typing import Tuple from urllib.parse import unquote from urllib.parse import urlparse from time import sleep import gi gi.require_version('Gtk', '3.0') gi.require_version('Vte', '2.91') # vte-0.38 from gi.repository import GLib from gi.repository import Gdk from gi.repository import GdkX11 from gi.repository import Gtk from gi.repository import Pango from gi.repository import Vte from guake.common import clamp from guake.globals import QUICK_OPEN_MATCHERS from guake.globals import TERMINAL_MATCH_EXPRS from guake.globals import TERMINAL_MATCH_TAGS log = logging.getLogger(__name__) libutempter = None try: # this allow to run some commands that requires libuterm to # be injected in current process, as: wall from atexit import register as at_exit_call from ctypes import cdll libutempter = cdll.LoadLibrary('libutempter.so.0') if libutempter is not None: # We absolutely need to remove the old tty from the utmp !!! at_exit_call(libutempter.utempter_remove_added_record) except Exception as e: libutempter = None sys.stderr.write("[WARN] ===================================================================\n") sys.stderr.write("[WARN] Unable to load the library libutempter !\n") sys.stderr.write( "[WARN] Some feature might not work:\n" "[WARN] - 'exit' command might freeze the terminal instead of closing the tab\n" "[WARN] - the 'wall' command is know to work badly\n" ) sys.stderr.write("[WARN] Error: " + str(e) + '\n') sys.stderr.write( "[WARN] ===================================================================²\n" ) def halt(loc): code.interact(local=loc) __all__ = ['GuakeTerminal'] # pylint: enable=anomalous-backslash-in-string class DropTargets(IntEnum): URIS = 0 TEXT = 1 class GuakeTerminal(Vte.Terminal): """Just a vte.Terminal with some properties already set. """ def __init__(self, guake): super(GuakeTerminal, self).__init__() self.guake = guake self.configure_terminal() self.add_matches() self.handler_ids = [] self.handler_ids.append(self.connect('button-press-event', self.button_press)) self.connect('child-exited', self.on_child_exited) # Call on_child_exited, don't remove it self.matched_value = '' self.font_scale_index = 0 self._pid = None self.custom_bgcolor = None self.custom_fgcolor = None self.found_link = None self.uuid = uuid.uuid4() self.setup_drag_and_drop() def setup_drag_and_drop(self): self.targets = Gtk.TargetList() self.targets.add_uri_targets(DropTargets.URIS) self.targets.add_text_targets(DropTargets.TEXT) self.drag_dest_set(Gtk.DestDefaults.ALL, [], Gdk.DragAction.COPY) self.drag_dest_set_target_list(self.targets) self.connect('drag-data-received', self.on_drag_data_received) def get_uuid(self): return self.uuid @property def pid(self): return self._pid @pid.setter def pid(self, pid): self._pid = pid def feed_child(self, resolved_cmdline): if (Vte.MAJOR_VERSION, Vte.MINOR_VERSION) >= (0, 42): encoded = resolved_cmdline.encode("utf-8") try: super().feed_child_binary(encoded) except TypeError: # The doc doest not say clearly at which version the feed_child* function has lost # the "len" parameter :( super().feed_child(resolved_cmdline, len(resolved_cmdline)) else: super().feed_child(resolved_cmdline, len(resolved_cmdline)) def execute_command(self, command): if command[-1] != '\n': command += "\n" self.feed_child(command) def copy_clipboard(self): if self.get_has_selection(): super(GuakeTerminal, self).copy_clipboard() elif self.matched_value: guake_clipboard = Gtk.Clipboard.get_default(self.guake.window.get_display()) guake_clipboard.set_text(self.matched_value, len(self.matched_value)) def configure_terminal(self): """Sets all customized properties on the terminal """ client = self.guake.settings.general word_chars = client.get_string('word-chars') if word_chars: self.set_word_char_exceptions(word_chars) self.set_audible_bell(client.get_boolean('use-audible-bell')) self.set_sensitive(True) cursor_blink_mode = self.guake.settings.style.get_int('cursor-blink-mode') self.set_property('cursor-blink-mode', cursor_blink_mode) if (Vte.MAJOR_VERSION, Vte.MINOR_VERSION) >= (0, 50): self.set_allow_hyperlink(True) if (Vte.MAJOR_VERSION, Vte.MINOR_VERSION) >= (0, 56): try: self.set_bold_is_bright(self.guake.settings.styleFont.get_boolean('bold-is-bright')) except: # pylint: disable=bare-except log.error("set_bold_is_bright not supported by your version of VTE") # TODO PORT is this still the case with the newer vte version? # -- Ubuntu has a patch to libvte which disables mouse scrolling in apps # -- like vim and less by default. If this is the case, enable it back. if hasattr(self, "set_alternate_screen_scroll"): self.set_alternate_screen_scroll(True) self.set_can_default(True) self.set_can_focus(True) def add_matches(self): """Adds all regular expressions declared in guake.globals.TERMINAL_MATCH_EXPRS to the terminal to make vte highlight text that matches them. """ try: # NOTE: PCRE2_UTF | PCRE2_NO_UTF_CHECK | PCRE2_MULTILINE # reference from vte/bindings/vala/app.vala, flags = 0x40080400u # also ref: https://mail.gnome.org/archives/commits-list/2016-September/msg06218.html VTE_REGEX_FLAGS = 0x40080400 for expr in TERMINAL_MATCH_EXPRS: tag = self.match_add_regex( Vte.Regex.new_for_match(expr, len(expr), VTE_REGEX_FLAGS), 0 ) self.match_set_cursor_type(tag, Gdk.CursorType.HAND2) for _useless, match, _otheruseless in QUICK_OPEN_MATCHERS: tag = self.match_add_regex( Vte.Regex.new_for_match(match, len(match), VTE_REGEX_FLAGS), 0 ) self.match_set_cursor_type(tag, Gdk.CursorType.HAND2) except (GLib.Error, AttributeError) as e: # pylint: disable=catching-non-exception try: compile_flag = 0 if (Vte.MAJOR_VERSION, Vte.MINOR_VERSION) >= (0, 44): compile_flag = GLib.RegexCompileFlags.MULTILINE for expr in TERMINAL_MATCH_EXPRS: tag = self.match_add_gregex(GLib.Regex.new(expr, compile_flag, 0), 0) self.match_set_cursor_type(tag, Gdk.CursorType.HAND2) for _useless, match, _otheruseless in QUICK_OPEN_MATCHERS: tag = self.match_add_gregex(GLib.Regex.new(match, compile_flag, 0), 0) self.match_set_cursor_type(tag, Gdk.CursorType.HAND2) except GLib.Error as e: # pylint: disable=catching-non-exception log.error( "ERROR: PCRE2 does not seems to be enabled on your system. " "Quick Edit and other Ctrl+click features are disabled. " "Please update your VTE package or contact your distribution to ask " "to enable regular expression support in VTE. Exception: '%s'", str(e) ) def get_current_directory(self): directory = os.path.expanduser('~') if self.pid is not None: try: cwd = os.readlink("/proc/{}/cwd".format(self.pid)) except Exception as e: return directory if os.path.exists(cwd): directory = cwd return directory def is_file_on_local_server(self, text) -> Tuple[Optional[Path], Optional[int], Optional[int]]: """Test if the provided text matches a file on local server Supports: - absolute path - relative path (using current working directory) - file:line syntax - file:line:colum syntax Args: text (str): candidate for file search Returns - Tuple(None, None, None) if the provided text does not match anything - Tuple(file path, None, None) if only a file path is found - Tuple(file path, linenumber, None) if line number is found - Tuple(file path, linenumber, columnnumber) if line and column numbers are found """ lineno = None colno = None py_func = None # "::" m = re.compile(r"(.*)\:(\d+)\:(\d+)$").match(text) if m: text = m.group(1) lineno = m.group(2) colno = m.group(3) else: # ":" m = re.compile(r"(.*)\:(\d+)$").match(text) if m: text = m.group(1) lineno = m.group(2) else: # "::" m = re.compile(r"^(.*)\:\:([a-zA-Z0-9\_]+)$").match(text) if m: text = m.group(1) py_func = m.group(2).strip() def find_lineno(text, pt, lineno, py_func): # print("text={!r}, pt={!r}, lineno={!r}, py_func={!r}".format(text, # pt, lineno, py_func)) if lineno: return lineno if not py_func: return with pt.open() as f: for i, line in enumerate(f.readlines()): if line.startswith("def {}".format(py_func)): return i + 1 break pt = Path(text) log.debug("checking file existance: %r", pt) try: if pt.exists(): lineno = find_lineno(text, pt, lineno, py_func) log.info("File exists: %r, line=%r", pt.absolute().as_posix(), lineno) return (pt, lineno, colno) log.debug("No file found matching: %r", text) cwd = self.get_current_directory() pt = Path(cwd) / pt log.debug("checking file existance: %r", pt) if pt.exists(): lineno = find_lineno(text, pt, lineno, py_func) log.info("File exists: %r, line=%r", pt.absolute().as_posix(), lineno) return (pt, lineno, colno) log.debug("file does not exist: %s", str(pt)) except OSError: log.debug("not a file name: %r", text) return (None, None, None) def button_press(self, terminal, event): """Handles the button press event in the terminal widget. If any match string is caught, another application is open to handle the matched resource uri. """ self.matched_value = '' if (Vte.MAJOR_VERSION, Vte.MINOR_VERSION) >= (0, 46): matched_string = self.match_check_event(event) else: matched_string = self.match_check( int(event.x / self.get_char_width()), int(event.y / self.get_char_height()) ) self.found_link = None if event.button == 1 and (event.get_state() & Gdk.ModifierType.CONTROL_MASK): if (Vte.MAJOR_VERSION, Vte.MINOR_VERSION) > (0, 50): s = self.hyperlink_check_event(event) else: s = None if s is not None: self._on_ctrl_click_matcher((s, None)) elif self.get_has_selection(): self.quick_open() elif matched_string and matched_string[0]: self._on_ctrl_click_matcher(matched_string) elif event.button == 3 and matched_string: self.found_link = self.handleTerminalMatch(matched_string) self.matched_value = matched_string[0] def on_child_exited(self, target, status, *user_data): if libutempter is not None: if self.get_pty() is not None: libutempter.utempter_remove_record(self.get_pty().get_fd()) def on_drag_data_received(self, widget, drag_context, x, y, data, info, time): if info == DropTargets.URIS: uris = data.get_uris() for uri in uris: path = Path(unquote(urlparse(uri).path)) self.feed_child(shlex.quote(str(path.absolute())) + ' ') elif info == DropTargets.TEXT: text = data.get_text() if text: self.feed_child(text) def quick_open(self): self.copy_clipboard() clipboard = Gtk.Clipboard.get(Gdk.SELECTION_CLIPBOARD) text = clipboard.wait_for_text() if not text: return (fp, lo, co) = self.is_file_on_local_server(text) self._execute_quick_open(fp, lo) def _on_ctrl_click_matcher(self, matched_string): value, tag = matched_string found_matcher = False log.debug("matched string: %s", matched_string) # First searching in additional matchers use_quick_open = self.guake.settings.general.get_boolean("quick-open-enable") if use_quick_open: found_matcher = self._find_quick_matcher(value) if not found_matcher: self.found_link = self.handleTerminalMatch(matched_string) if self.found_link: self.browse_link_under_cursor() def _find_quick_matcher(self, value): for _useless, _otheruseless, extractor in QUICK_OPEN_MATCHERS: g = re.compile(extractor).match(value) if g and g.groups(): filename = g.group(1).strip() if len(g.groups()) >= 2: line_number = g.group(2) else: line_number = None log.info("Quick action executed filename=%s, line=%s", filename, line_number) (filepath, ln, _) = self.is_file_on_local_server(filename) if ln: line_number = ln if not filepath: continue if line_number is None: line_number = "1" self._execute_quick_open(filepath, line_number) return True return False def _execute_quick_open(self, filepath, line_number): if not filepath: return cmdline = self.guake.settings.general.get_string("quick-open-command-line") if not line_number: line_number = "" else: line_number = str(line_number) logging.debug("Opening file %s at line %s", filepath, line_number) resolved_cmdline = cmdline % {"file_path": filepath, "line_number": line_number} logging.debug("Command line: %s", resolved_cmdline) quick_open_in_current_terminal = self.guake.settings.general.get_boolean( "quick-open-in-current-terminal" ) if quick_open_in_current_terminal: logging.debug("Executing it in current tab") if resolved_cmdline[-1] != '\n': resolved_cmdline += '\n' self.feed_child(resolved_cmdline) else: resolved_cmdline += " &" logging.debug("Executing it independently") subprocess.call(resolved_cmdline, shell=True) def handleTerminalMatch(self, matched_string): value, tag = matched_string log.debug("found tag: %r, item: %r", tag, value) if tag in TERMINAL_MATCH_TAGS: if TERMINAL_MATCH_TAGS[tag] == 'schema': # value here should not be changed, it is right and # ready to be used. pass elif TERMINAL_MATCH_TAGS[tag] == 'http': value = 'http://%s' % value elif TERMINAL_MATCH_TAGS[tag] == 'https': value = 'https://%s' % value elif TERMINAL_MATCH_TAGS[tag] == 'ftp': value = 'ftp://%s' % value elif TERMINAL_MATCH_TAGS[tag] == 'email': value = 'mailto:%s' % value if value: return value def get_link_under_cursor(self): return self.found_link def browse_link_under_cursor(self): # TODO move the call to xdg-open to guake.utils if not self.found_link: return log.debug("Opening link: %s", self.found_link) cmd = ["xdg-open", self.found_link] subprocess.Popen(cmd, shell=False) def set_font(self, font): self.font = font self.set_font_scale_index(0) def set_font_scale_index(self, scale_index): self.font_scale_index = clamp(scale_index, -6, 12) font = Pango.FontDescription(self.font.to_string()) scale_factor = 2 ** (self.font_scale_index / 6) new_size = int(scale_factor * font.get_size()) if font.get_size_is_absolute(): font.set_absolute_size(new_size) else: font.set_size(new_size) super(GuakeTerminal, self).set_font(font) font_scale = property(fset=set_font_scale_index, fget=lambda self: self.font_scale_index) def increase_font_size(self): self.font_scale += 1 def decrease_font_size(self): self.font_scale -= 1 def kill(self): pid = self.pid threading.Thread(target=self.delete_shell, args=(pid, )).start() # start_new_thread(self.delete_shell, (pid,)) def delete_shell(self, pid): """Kill the shell with SIGHUP NOTE: Leave it alone, DO NOT USE os.waitpid > sys:1: Warning: GChildWatchSource: Exit status of a child process was requested but ECHILD was received by waitpid(). See the documentation of g_child_watch_source_new() for possible causes. g_child_watch_source_new() documentation: https://developer.gnome.org/glib/stable/glib-The-Main-Event-Loop.html#g-child-watch-source-new On POSIX platforms, the following restrictions apply to this API due to limitations in POSIX process interfaces: ... * the application must not wait for pid to exit by any other mechanism, including waitpid(pid, ...) or a second child-watch source for the same pid ... For this reason, we should not call os.waitpid(pid, ...), leave it to OS """ try: os.kill(pid, signal.SIGHUP) except OSError: pass def spawn_sync_pid(self, directory): argv = list() user_shell = self.guake.settings.general.get_string('default-shell') if user_shell and os.path.exists(user_shell): argv.append(user_shell) else: argv.append(os.environ['SHELL']) login_shell = self.guake.settings.general.get_boolean('use-login-shell') if login_shell: argv.append('--login') log.debug("Spawn command: \"%s\"", " ".join(argv)) pid = self.spawn_sync( Vte.PtyFlags.DEFAULT, directory, argv, [], GLib.SpawnFlags.DO_NOT_REAP_CHILD, None, None, None ) try: tuple_type = gi._gi.ResultTuple # pylint: disable=c-extension-no-member except: # pylint: disable=bare-except tuple_type = tuple if isinstance(pid, (tuple, tuple_type)): # Return a tuple in 2.91 # https://lazka.github.io/pgi-docs/Vte-2.91/classes/Terminal.html#Vte.Terminal.spawn_sync pid = pid[1] assert isinstance(pid, int) if libutempter is not None: libutempter.utempter_add_record(self.get_pty().get_fd(), os.uname()[1]) self.pid = pid return pid guake-3.6.3/guake/tests/000077500000000000000000000000001346623310400150575ustar00rootroot00000000000000guake-3.6.3/guake/tests/__init__.py000066400000000000000000000000001346623310400171560ustar00rootroot00000000000000guake-3.6.3/guake/tests/test_about.py000066400000000000000000000012121346623310400175760ustar00rootroot00000000000000# -*- coding: utf-8 -*- # pylint: disable=redefined-outer-name import os import pytest from guake import guake_version from guake.about import AboutDialog @pytest.fixture def dialog(mocker): mocker.patch('guake.simplegladeapp.Gtk.Widget.show_all') try: old_os_environ = os.environ os.environ["LANGUAGE"] = "en_US.UTF-8" ad = AboutDialog() yield ad finally: os.environ = old_os_environ def test_version_test(dialog): assert dialog.get_widget('aboutdialog').get_version() == guake_version() def test_title(dialog): assert dialog.get_widget('aboutdialog').get_title() == 'About Guake' guake-3.6.3/guake/tests/test_guake.py000066400000000000000000000125261346623310400175720ustar00rootroot00000000000000# -*- coding: utf-8 -*- # pylint: disable=redefined-outer-name import json import os import tempfile import time from pathlib import Path import pytest import guake.guake_app from guake.common import pixmapfile from guake.guake_app import Guake @pytest.fixture def g(mocker, fs): mocker.patch('guake.guake_app.Guake.get_xdg_config_directory', return_value=Path('/foobar')) mocker.patch('guake.guake_app.shutil.copy', create=True) mocker.patch('guake.guake_app.notifier.showMessage', create=True) mocker.patch('guake.guake_app.traceback.print_exc', create=True) fs.pause() g = Guake() fs.add_real_file(pixmapfile('guake-notification.png')) fs.resume() return g # Accel Test def test_accel_search_terminal(g): nb = g.get_notebook() page = nb.get_nth_page(0) assert not page.search_revealer.get_reveal_child() g.accel_search_terminal() assert page.search_revealer.get_reveal_child() def test_accel_search_terminal_debounce(g): nb = g.get_notebook() page = nb.get_nth_page(0) assert not page.search_revealer.get_reveal_child() g.prev_accel_search_terminal_time = time.time() g.accel_search_terminal() assert not page.search_revealer.get_reveal_child() def test_accel_quit_without_prompt(mocker, g): # Disable quit prompt mocker.patch.object(g.settings.general, 'get_boolean', return_value=False) mocker.patch('guake.guake_app.Gtk.main_quit') g.accel_quit() assert guake.guake_app.Gtk.main_quit.call_count == 1 def test_accel_quit_with_prompt(mocker, g): # Enable quit prompt mocker.patch.object(g.settings.general, 'get_boolean', return_value=True) mocker.patch('guake.guake_app.PromptQuitDialog') mocker.patch('guake.guake_app.Gtk.main_quit') g.accel_quit() assert guake.guake_app.Gtk.main_quit.call_count == 1 # Save/Restore Tabs def test_guake_restore_tabs(g, fs): d1 = fs.create_dir('/foobar/foo') d2 = fs.create_dir('/foobar/bar') d3 = fs.create_dir('/foobar/foo/foo') d4 = fs.create_dir('/foobar/foo/bar') session = { "schema_version": 1, "timestamp": 1556092197, "workspace": { "0": [[{ "directory": d1.path, "label": "1", "custom_label_set": True }, { "directory": d2.path, "label": "2", "custom_label_set": True }, { "directory": d3.path, "label": d3.path, "custom_label_set": False }]], "1": [[{ "directory": d4.path, "label": "4", "custom_label_set": True }]] } } fn = fs.create_file('/foobar/session.json') with open(fn.path, 'w') as f: f.write(json.dumps(session)) g.restore_tabs(fn.name) nb = g.notebook_manager.get_notebook(0) assert nb.get_n_pages() == 3 assert nb.get_tab_text_index(0) == '1' assert nb.get_tab_text_index(1) == '2' nb = g.notebook_manager.get_notebook(1) assert nb.get_n_pages() == 1 assert nb.get_tab_text_index(0) == '4' def test_guake_restore_tabs_json_without_schema_version(g, fs): guake.guake_app.notifier.showMessage.reset_mock() fn = fs.create_file('/foobar/bar.json') with open(fn.path, 'w') as f: f.write('{}') g.restore_tabs(fn.name) assert guake.guake_app.notifier.showMessage.call_count == 1 def test_guake_restore_tabs_with_higher_schema_version(g, fs): guake.guake_app.notifier.showMessage.reset_mock() fn = fs.create_file('/foobar/bar.json') with open(fn.path, 'w') as f: f.write('{"schema_version": 2147483647}') g.restore_tabs(fn.name) assert guake.guake_app.notifier.showMessage.call_count == 1 def test_guake_restore_tabs_json_broken_session_file(g, fs): guake.guake_app.notifier.showMessage.reset_mock() fn = fs.create_file('/foobar/foobar.json') with open(fn.path, 'w') as f: f.write('{') g.restore_tabs(fn.name) assert guake.guake_app.shutil.copy.call_count == 1 assert guake.guake_app.notifier.showMessage.call_count == 1 def test_guake_restore_tabs_schema_broken_session_file(g, fs): guake.guake_app.notifier.showMessage.reset_mock() fn = fs.create_file('/foobar/bar.json') d = fs.create_dir('/foobar/foo') with open(fn.path, 'w') as f: f.write('{"schema_version": 1, "workspace": {"0": [[{"directory": "%s"}]]}}' % (d.path)) g.restore_tabs(fn.name) assert guake.guake_app.shutil.copy.call_count == 1 assert guake.guake_app.traceback.print_exc.call_count == 1 def test_guake_save_tabs_and_restore(mocker, g, fs): # Disable auto save mocker.patch.object(g.settings.general, 'get_boolean', return_value=False) # Save assert not os.path.exists('/foobar/session.json') g.add_tab() g.rename_current_tab('foobar', True) g.add_tab() g.rename_current_tab('python', True) assert g.get_notebook().get_n_pages() == 3 g.save_tabs() assert os.path.exists('/foobar') assert os.path.exists('/foobar/session.json') # Restore prepare g.close_tab() g.close_tab() assert g.get_notebook().get_n_pages() == 1 # Restore g.restore_tabs() nb = g.get_notebook() assert nb.get_n_pages() == 3 assert nb.get_tab_text_index(1) == 'foobar' assert nb.get_tab_text_index(2) == 'python' guake-3.6.3/guake/tests/test_notebook.py000066400000000000000000000026701346623310400203150ustar00rootroot00000000000000# -*- coding: utf-8 -*- # pylint: disable=redefined-outer-name import pytest from guake.notebook import TerminalNotebook @pytest.fixture def nb(mocker): targets = [ 'guake.notebook.TerminalNotebook.terminal_spawn', 'guake.notebook.TerminalNotebook.terminal_attached', 'guake.notebook.TerminalNotebook.guake', 'guake.notebook.TerminalBox.set_terminal' ] for target in targets: mocker.patch(target, create=True) return TerminalNotebook() def test_zero_page_notebook(nb): assert nb.get_n_pages() == 0 def test_add_one_page_to_notebook(nb): nb.new_page() assert nb.get_n_pages() == 1 def test_add_two_pages_to_notebook(nb): nb.new_page() nb.new_page() assert nb.get_n_pages() == 2 def test_remove_page_in_notebook(nb): nb.new_page() nb.new_page() assert nb.get_n_pages() == 2 nb.remove_page(0) assert nb.get_n_pages() == 1 nb.remove_page(0) assert nb.get_n_pages() == 0 def test_rename_page(nb): t1 = 'foo' t2 = 'bar' nb.new_page() nb.rename_page(0, t1, True) assert nb.get_tab_text_index(0) == t1 nb.rename_page(0, t2, False) assert nb.get_tab_text_index(0) == t1 nb.rename_page(0, t2, True) assert nb.get_tab_text_index(0) == t2 def test_add_new_page_with_focus_with_label(nb): t = 'test_this_label' nb.new_page_with_focus(label=t) assert nb.get_n_pages() == 1 assert nb.get_tab_text_index(0) == t guake-3.6.3/guake/tests/test_quick_open.py000066400000000000000000000013011346623310400206200ustar00rootroot00000000000000import re from guake.globals import QUICK_OPEN_MATCHERS from mock import Mock from textwrap import dedent def test_quick_open(): chunk = dedent( """ Traceback (most recent call last): File "./test.py", line 5, in os.path('/bad/path') TypeError: 'module' object is not callable """ ) found = _execute_quick_open(chunk) assert found == [('./test.py', '5')] def _execute_quick_open(chunk): found = [] for line in chunk.split('\n'): for _1, _2, r in QUICK_OPEN_MATCHERS: g = re.compile(r).match(line) if g: found.append((g.group(1), g.group(2))) return found guake-3.6.3/guake/theme.py000066400000000000000000000065521346623310400154010ustar00rootroot00000000000000import itertools import logging import os from pathlib import Path import gi gi.require_version('Gtk', '3.0') from gi.repository import GLib from gi.repository import Gdk from gi.repository import Gtk from textwrap import dedent from guake.paths import GUAKE_THEME_DIR log = logging.getLogger(__name__) # Reference: # https://gitlab.gnome.org/GNOME/gnome-tweaks/blob/master/gtweak/utils.py (GPL) def get_resource_dirs(resource): """Returns a list of all known resource dirs for a given resource. :param str resource: Name of the resource (e.g. "themes") :return: A list of resource dirs """ dirs = [ os.path.join(dir, resource) for dir in itertools.chain(GLib.get_system_data_dirs(), GUAKE_THEME_DIR, GLib.get_user_data_dir()) ] dirs += [os.path.join(os.path.expanduser("~"), ".{}".format(resource))] return [Path(dir) for dir in dirs if os.path.isdir(dir)] def list_all_themes(): return sorted( set( x.name for theme_dir in get_resource_dirs("themes") for x in theme_dir.iterdir() if x.is_dir() ) ) def select_gtk_theme(settings): gtk_theme_name = settings.general.get_string('gtk-theme-name') log.debug("Wanted GTK theme: %r", gtk_theme_name) gtk_settings = Gtk.Settings.get_default() gtk_settings.set_property("gtk-theme-name", gtk_theme_name) prefer_dark_theme = settings.general.get_boolean('gtk-prefer-dark-theme') log.debug("Prefer dark theme: %r", prefer_dark_theme) gtk_settings.set_property("gtk-application-prefer-dark-theme", prefer_dark_theme) def get_gtk_theme(settings): gtk_theme_name = settings.general.get_string('gtk-theme-name') prefer_dark_theme = settings.general.get_boolean('gtk-prefer-dark-theme') return (gtk_theme_name, "dark" if prefer_dark_theme else None) def patch_gtk_theme(style_context, settings): theme_name, variant = get_gtk_theme(settings) def rgba_to_hex(color): return "#{0:02x}{1:02x}{2:02x}".format( int(color.red * 255), int(color.green * 255), int(color.blue * 255) ) # for n in [ # "inverted_bg_color", # "inverted_fg_color", # "selected_bg_color", # "selected_fg_color", # "theme_inverted_bg_color", # "theme_inverted_fg_color", # "theme_selected_bg_color", # "theme_selected_fg_color", # ]: # s = style_context.lookup_color(n) # print(n, s, rgba_to_hex(s[1])) selected_fg_color = rgba_to_hex(style_context.lookup_color("theme_selected_fg_color")[1]) selected_bg_color = rgba_to_hex(style_context.lookup_color("theme_selected_bg_color")[1]) log.debug( "Patching theme '%s' (prefer dark = '%r'), overriding tab 'checked' state': " "foreground: %r, background: %r", theme_name, "yes" if variant == "dark" else "no", selected_fg_color, selected_bg_color ) css_data = dedent( """ .custom_tab:checked {{ color: {selected_fg_color}; background: {selected_bg_color}; }} """.format(selected_bg_color=selected_bg_color, selected_fg_color=selected_fg_color) ).encode() style_provider = Gtk.CssProvider() style_provider.load_from_data(css_data) Gtk.StyleContext.add_provider_for_screen( Gdk.Screen.get_default(), style_provider, Gtk.STYLE_PROVIDER_PRIORITY_APPLICATION ) guake-3.6.3/guake/utils.py000066400000000000000000000240761346623310400154400ustar00rootroot00000000000000# -*- coding: utf-8; -*- """ Copyright (C) 2018 Mario Aichinger Copyright (C) 2007-2012 Lincoln de Sousa Copyright (C) 2007 Gabriel Falcão This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA """ import datetime import logging import os import platform import subprocess import time import gi gi.require_version('Gtk', '3.0') gi.require_version('Gdk', '3.0') from gi.repository import Gdk from gi.repository import Gtk from guake.globals import ALIGN_BOTTOM from guake.globals import ALIGN_CENTER from guake.globals import ALIGN_LEFT from guake.globals import ALIGN_RIGHT from guake.globals import ALIGN_TOP from guake.globals import ALWAYS_ON_PRIMARY try: from gi.repository import GdkX11 except ImportError: GdkX11 = False log = logging.getLogger(__name__) def gdk_is_x11_display(instance): if GdkX11: return isinstance(instance, GdkX11.X11Display) return False def get_server_time(widget): try: return GdkX11.x11_get_server_time(widget.get_window()) except (TypeError, AttributeError): # Issue: https://github.com/Guake/guake/issues/1071 # Wayland does not seem to like `x11_get_server_time`. # Use local timestamp instead ts = time.time() return ts # Decorator for save-tabs-when-changed def save_tabs_when_changed(func): """Decorator for save-tabs-when-changed """ def wrapper(*args, **kwargs): func(*args, **kwargs) log.debug("mom, I've been called: %s %s", func.__name__, func) # Find me the Guake! clsname = args[0].__class__.__name__ g = None if clsname == 'Guake': g = args[0] elif getattr(args[0], 'get_guake', None): g = args[0].get_guake() elif getattr(args[0], 'get_notebook', None): g = args[0].get_notebook().guake elif getattr(args[0], 'guake', None): g = args[0].guake elif getattr(args[0], 'notebook', None): g = args[0].notebook.guake # Tada! if g and g.settings.general.get_boolean('save-tabs-when-changed'): g.save_tabs() return wrapper def save_preferences(filename): # XXX: Hardcode? prefs = subprocess.check_output(['dconf', 'dump', '/apps/guake/']) with open(filename, 'wb') as f: f.write(prefs) def restore_preferences(filename): # XXX: Hardcode? with open(filename, 'rb') as f: prefs = f.read() p = subprocess.Popen(['dconf', 'load', '/apps/guake/'], stdin=subprocess.PIPE) p.communicate(input=prefs) class TabNameUtils(): @classmethod def shorten(cls, text, settings): use_vte_titles = settings.general.get_boolean('use-vte-titles') if not use_vte_titles: return text max_name_length = settings.general.get_int("max-tab-name-length") if max_name_length != 0 and len(text) > max_name_length: text = "..." + text[-max_name_length:] return text class HidePrevention(): def __init__(self, window): """Create a new HidePrevention object like `HidePrevention(window)` """ if not isinstance(window, Gtk.Window): raise ValueError("window must be of type Gtk.Window, not of type %s" % type(window)) self.window = window def may_hide(self): """returns True if the window is allowed to hide and False if `prevent()` is called from some where """ return getattr(self.window, 'can_hide', True) def prevent(self): """sets a flag on the window object which indicates to may_hide that the window is NOT allowed to be hidden. """ setattr(self.window, 'can_hide', False) def allow(self): """sets the flag so that it indicates to may_hide that the window is allowed to be hidden """ setattr(self.window, 'can_hide', True) class FullscreenManager(): def __init__(self, settings, window): self.settings = settings self.window = window self.is_in_fullscreen = False def is_fullscreen(self): return getattr(self.window, 'is_fullscreen', False) def fullscreen(self): self.window.fullscreen() setattr(self.window, 'is_fullscreen', True) def unfullscreen(self): setattr(self.window, 'is_fullscreen', False) self.window.unfullscreen() # FIX to unfullscreen after show, fullscreen, hide, unfullscreen # (unfullscreen breaks/does not shrink window size) RectCalculator.set_final_window_rect(self.settings, self.window) def toggle(self): if self.is_fullscreen(): self.unfullscreen() else: self.fullscreen() class RectCalculator(): @classmethod def set_final_window_rect(cls, settings, window): """Sets the final size and location of the main window of guake. The height is the window_height property, width is window_width and the horizontal alignment is given by window_alignment. """ # fetch settings height_percents = settings.general.get_int('window-height') width_percents = settings.general.get_int('window-width') halignment = settings.general.get_int('window-halignment') valignment = settings.general.get_int('window-valignment') vdisplacement = settings.general.get_int('window-vertical-displacement') hdisplacement = settings.general.get_int('window-horizontal-displacement') log.debug("set_final_window_rect") log.debug(" height_percents = %s", height_percents) log.debug(" width_percents = %s", width_percents) log.debug(" halignment = %s", halignment) log.debug(" valignment = %s", valignment) log.debug(" hdisplacement = %s", hdisplacement) log.debug(" vdisplacement = %s", vdisplacement) # get the rectangle just from the destination monitor screen = window.get_screen() monitor = cls.get_final_window_monitor(settings, window) window_rect = screen.get_monitor_geometry(monitor) log.debug("Current monitor geometry") log.debug(" window_rect.x: %s", window_rect.x) log.debug(" window_rect.y: %s", window_rect.y) log.debug(" window_rect.height: %s", window_rect.height) log.debug(" window_rect.width: %s", window_rect.width) total_height = window_rect.height total_width = window_rect.width if halignment == ALIGN_CENTER: log.debug("aligning to center!") window_rect.width = int(float(total_width) * float(width_percents) / 100.0) window_rect.x += (total_width - window_rect.width) / 2 elif halignment == ALIGN_LEFT: log.debug("aligning to left!") window_rect.width = int( float(total_width - hdisplacement) * float(width_percents) / 100.0 ) window_rect.x += hdisplacement elif halignment == ALIGN_RIGHT: log.debug("aligning to right!") window_rect.width = int( float(total_width - hdisplacement) * float(width_percents) / 100.0 ) window_rect.x += total_width - window_rect.width - hdisplacement window_rect.height = int(float(total_height) * float(height_percents) / 100.0) if valignment == ALIGN_TOP: window_rect.y += vdisplacement elif valignment == ALIGN_BOTTOM: window_rect.y += total_height - window_rect.height - vdisplacement if width_percents == 100 and height_percents == 100: log.debug("MAXIMIZING MAIN WINDOW") window.maximize() elif not FullscreenManager(settings, window).is_fullscreen(): log.debug("RESIZING MAIN WINDOW TO THE FOLLOWING VALUES:") window.unmaximize() log.debug(" window_rect.x: %s", window_rect.x) log.debug(" window_rect.y: %s", window_rect.y) log.debug(" window_rect.height: %s", window_rect.height) log.debug(" window_rect.width: %s", window_rect.width) # Note: move_resize is only on GTK3 window.resize(window_rect.width, window_rect.height) window.move(window_rect.x, window_rect.y) log.debug("Updated window position: %r", window.get_position()) return window_rect @classmethod def get_final_window_monitor(cls, settings, window): """Gets the final screen number for the main window of guake. """ screen = window.get_screen() # fetch settings use_mouse = settings.general.get_boolean('mouse-display') dest_screen = settings.general.get_int('display-n') if use_mouse: # TODO PORT get_pointer is deprecated # https://developer.gnome.org/gtk3/stable/GtkWidget.html#gtk-widget-get-pointer win, x, y, _ = screen.get_root_window().get_pointer() dest_screen = screen.get_monitor_at_point(x, y) # If Guake is configured to use a screen that is not currently attached, # default to 'primary display' option. n_screens = screen.get_n_monitors() if dest_screen > n_screens - 1: settings.general.set_boolean('mouse-display', False) settings.general.set_int('display-n', dest_screen) dest_screen = screen.get_primary_monitor() # Use primary display if configured if dest_screen == ALWAYS_ON_PRIMARY: dest_screen = screen.get_primary_monitor() return dest_screen guake-3.6.3/po/000077500000000000000000000000001346623310400132375ustar00rootroot00000000000000guake-3.6.3/po/LINGUAS000066400000000000000000000001541346623310400142640ustar00rootroot00000000000000# Set of available languages. ca cs de el es fa fr gl hr hu id it ja ko nb nl pa pl pt_BR ru sv tr uk zh_CN guake-3.6.3/po/ca.po000066400000000000000000000761021346623310400141700ustar00rootroot00000000000000# Translation of Guake to Catalan # Copyright (C) Guake Translators # This file is distributed under the same license as the Guake package. # # Translators: # Raül Cambeiro 2013 msgid "" msgstr "" "Project-Id-Version: Guake 0.4.5\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2016-08-18 17:32+0200\n" "PO-Revision-Date: 2018-01-25 20:58+0100\n" "Last-Translator: Raül Cambeiro \n" "Language-Team: Catalan (http://www.transifex.com/projects/p/guake/language/" "ca/)\n" "Language: ca\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" "X-Generator: Poedit 2.0.6\n" #: ../guake/data/about.glade.h:1 msgid "About Guake" msgstr "Quant al Guake" #: ../guake/data/about.glade.h:5 #, fuzzy msgid "" "Guake is an easy to access\n" "terminal based on FPS games terminal" msgstr "" "El Guake és un terminal de fàcil accés\n" "basat en els terminals dels jocs FPS" #: ../guake/data/guake.glade.h:1 msgid "Copy" msgstr "Copia" #: ../guake/data/guake.glade.h:2 msgid "Paste" msgstr "Enganxa" #: ../guake/data/guake.glade.h:3 ../src/guake/prefs.py:79 msgid "Toggle Fullscreen" msgstr "Commuta la pantalla completa" #: ../guake/data/guake.glade.h:4 msgid "Save to File..." msgstr "" #: ../guake/data/guake.glade.h:5 ../src/guake/prefs.py:85 #, fuzzy msgid "Reset terminal" msgstr "Terminal Guake" #: ../guake/data/guake.glade.h:6 msgid "Find..." msgstr "" #: ../guake/data/guake.glade.h:7 #, fuzzy msgid "New Tab" msgstr "Pestanya nova" #: ../guake/data/guake.glade.h:8 #, fuzzy msgid "Rename Tab" msgstr "Canvia el nom de la pestanya" #: ../guake/data/guake.glade.h:9 msgid "Close Tab" msgstr "Tanca la pestanya" #: ../guake/data/guake.glade.h:10 msgid "Open link..." msgstr "" #: ../guake/data/guake.glade.h:11 msgid "Search on Web" msgstr "" #: ../guake/data/guake.glade.h:12 ../src/guake/prefs.py:83 msgid "Quit" msgstr "Surt" #: ../guake/data/guake.glade.h:13 msgid "Rename" msgstr "Canvia el nom" #: ../guake/data/guake.glade.h:14 msgid "Close" msgstr "Tanca" #: ../guake/data/guake.glade.h:15 msgid "Guake!" msgstr "Guake!" #: ../guake/data/guake.glade.h:16 #, fuzzy msgid "Add a new tab" msgstr "Afegeix una pestanya nova" #: ../guake/data/prefs.glade.h:1 msgid "Guake Preferences" msgstr "Preferències del Guake" #: ../guake/data/prefs.glade.h:2 msgid "Guake properties" msgstr "" "Propietats del Guake" #: ../guake/data/prefs.glade.h:3 msgid "" "Customize behavior and appearance of Guake!" msgstr "" "Personalitzeu el comportament i l'aparença del Guake!" #: ../guake/data/prefs.glade.h:4 msgid "" "Path to a bash script that would be automatically executed when Guake " "starts, unless you specify --no-startup-script.\n" "\n" "This would typically use the configuration by command line feature of " "Guake:\n" "\n" "#!/bin/bash\n" "\n" "sleep 5 # it is advised to wait a bit before Guake has been successfully " "started\n" "\n" "guake -r \"main\" -e \"cd ~/projects/myproject/main\"\n" "guake -r \"prod\" -e \"cd ~/projects/myproject/prod\"\n" msgstr "" #: ../guake/data/prefs.glade.h:15 msgid "Enable popup notifications on startup" msgstr "Habilita les notificacions emergents en arrencar" #: ../guake/data/prefs.glade.h:16 msgid "Show tray icon" msgstr "Mostra una icona a la safata" #: ../guake/data/prefs.glade.h:17 #, fuzzy msgid "Always prompt on quit" msgstr "Demana confirmació per sortir" #: ../guake/data/prefs.glade.h:18 msgid "_Flash terminal on bell" msgstr "" #: ../guake/data/prefs.glade.h:19 msgid "_Play system alert sound on bell" msgstr "" #: ../guake/data/prefs.glade.h:20 msgid "Path to script executed on Guake start:" msgstr "" #: ../guake/data/prefs.glade.h:21 #, fuzzy msgid "Prompt on close tab:" msgstr "Demana confirmació per sortir" #: ../guake/data/prefs.glade.h:22 msgid "" "Never\n" "With process running\n" "Always" msgstr "" #: ../guake/data/prefs.glade.h:25 msgid "General" msgstr "General" #: ../guake/data/prefs.glade.h:26 msgid "Bottom align window instead of top align" msgstr "" #: ../guake/data/prefs.glade.h:27 msgid "Appear on mouse display" msgstr "" #: ../guake/data/prefs.glade.h:28 msgid "Appear on display:" msgstr "" #: ../guake/data/prefs.glade.h:29 #, fuzzy msgid "Place tabs on top" msgstr "Resta al damunt" #: ../guake/data/prefs.glade.h:30 #, fuzzy msgid "Placement" msgstr "Paleta" #: ../guake/data/prefs.glade.h:31 msgid "Stay on top" msgstr "Resta al damunt" #: ../guake/data/prefs.glade.h:32 msgid "Use VTE titles for tab names" msgstr "" #: ../guake/data/prefs.glade.h:33 msgid "Max tab name length:" msgstr "" #: ../guake/data/prefs.glade.h:34 msgid "0 means no size limit" msgstr "" #: ../guake/data/prefs.glade.h:35 msgid "Abbreviate directories in tab names" msgstr "" #: ../guake/data/prefs.glade.h:36 msgid "Hide on lose focus" msgstr "Amaga-la en perdre el focus" #: ../guake/data/prefs.glade.h:37 msgid "Show tab bar" msgstr "Mostra la barra de pestanyes" #: ../guake/data/prefs.glade.h:38 #, fuzzy msgid "Start fullscreen" msgstr "Commuta la pantalla completa" #: ../guake/data/prefs.glade.h:39 msgid "Main Window" msgstr "Finestra principal" #: ../guake/data/prefs.glade.h:40 msgid "Left" msgstr "" #: ../guake/data/prefs.glade.h:41 msgid "Center" msgstr "" #: ../guake/data/prefs.glade.h:42 msgid "Right" msgstr "" #: ../guake/data/prefs.glade.h:43 #, fuzzy msgid "Main Window Horizontal Alignment" msgstr "Alçària de la finestra principal" #: ../guake/data/prefs.glade.h:44 #, fuzzy msgid "Main Window Height" msgstr "Alçària de la finestra principal" #: ../guake/data/prefs.glade.h:45 #, fuzzy msgid "Main Window Width" msgstr "Alçària de la finestra principal" #: ../guake/data/prefs.glade.h:46 msgid "Custom command file path: " msgstr "" #: ../guake/data/prefs.glade.h:47 msgid "Please select a json file" msgstr "" #: ../guake/data/prefs.glade.h:48 ../src/guake/prefs.py:75 msgid "General" msgstr "General" #: ../guake/data/prefs.glade.h:49 msgid "Default interpreter:" msgstr "Intèrpret per defecte:" #: ../guake/data/prefs.glade.h:50 msgid "_Run command as a login shell" msgstr "_Executa una ordre com a intèrpret d'inici de sessió" #: ../guake/data/prefs.glade.h:51 msgid "_Open new tab in current directory" msgstr "_Obre les pestanyes noves en el directori actual" #: ../guake/data/prefs.glade.h:52 msgid "Shell" msgstr "Intèrpret d'ordres" #: ../guake/data/prefs.glade.h:53 msgid "Shell" msgstr "" #: ../guake/data/prefs.glade.h:54 msgid "Show scrollbar" msgstr "Mostra la barra de desplaçament" #: ../guake/data/prefs.glade.h:55 msgid "Scrollback lines:" msgstr "Línies emmagatzemades:" #: ../guake/data/prefs.glade.h:56 msgid "On output" msgstr "Segons la sortida" #: ../guake/data/prefs.glade.h:57 msgid "On key stroke" msgstr "En prémer una tecla" #: ../guake/data/prefs.glade.h:58 msgid "Scroll" msgstr "Desplaçament" #: ../guake/data/prefs.glade.h:59 msgid "Scrolling" msgstr "Desplaçament" #: ../guake/data/prefs.glade.h:60 msgid "Use the system fixed width font" msgstr "Utilitza el tipus de lletra d'amplada fixa del sistema" #: ../guake/data/prefs.glade.h:61 msgid "Font:" msgstr "Tipus de lletra:" #: ../guake/data/prefs.glade.h:62 msgid "Choose some font" msgstr "Trieu el tipus de lletra" #: ../guake/data/prefs.glade.h:63 msgid "Text color:" msgstr "Color del text:" #: ../guake/data/prefs.glade.h:64 msgid "Background color:" msgstr "Color de fons:" #: ../guake/data/prefs.glade.h:65 msgid "Cursor shape:" msgstr "" #: ../guake/data/prefs.glade.h:66 msgid "" "Block\n" "I-Beam\n" "Underline" msgstr "" #: ../guake/data/prefs.glade.h:69 msgid "" "Follow GTK+ setting\n" "Blink on\n" "Blink off" msgstr "" #: ../guake/data/prefs.glade.h:72 msgid "Cursor blink mode:" msgstr "" #: ../guake/data/prefs.glade.h:73 msgid "Allow bold font" msgstr "" #: ../guake/data/prefs.glade.h:74 msgid "Palette" msgstr "Paleta" #: ../guake/data/prefs.glade.h:75 msgid "Built-in schemes:" msgstr "Esquemes integrats:" #: ../guake/data/prefs.glade.h:76 msgid "Color palette:" msgstr "Paleta de colors:" #: ../guake/data/prefs.glade.h:77 #, fuzzy msgid "Font color" msgstr "Color del text:" #: ../guake/data/prefs.glade.h:78 #, fuzzy msgid "Background color" msgstr "Color de fons:" #: ../guake/data/prefs.glade.h:79 msgid "Use font and background color from the palette" msgstr "" #: ../guake/data/prefs.glade.h:80 msgid "Demo:" msgstr "" #: ../guake/data/prefs.glade.h:81 msgid "Effects" msgstr "Efectes" #: ../guake/data/prefs.glade.h:82 msgid "Transparency:" msgstr "Transparència:" #: ../guake/data/prefs.glade.h:83 msgid "Background image:" msgstr "Imatge de fons:" #: ../guake/data/prefs.glade.h:84 ../src/guake/prefs.py:130 msgid "Appearance" msgstr "Aparença" #: ../guake/data/prefs.glade.h:85 msgid "" "Quick open is a feature allowing you to open a file directly into " "your favorite text editor by clicking on its filename when it appears in " "your terminal. See the list of currently supported text patterns used to " "extract filename below." msgstr "" #: ../guake/data/prefs.glade.h:86 msgid "Enable Quick Open when Ctrl+clicking on a filename in the terminal" msgstr "" #: ../guake/data/prefs.glade.h:87 msgid "Editor command line:" msgstr "" #: ../guake/data/prefs.glade.h:89 #, no-c-format msgid "" "Use the following elements in the open editor command line:\n" " - %(file_path)s: path to the file that has been clicked\n" " - %(line_number)s: if your editor supports it, you can directly open " "the file to a given line number when found on the screen.\n" "\n" "For example, for sublime, use subl %(file_path)s:%(line_number)s\n" "" msgstr "" #: ../guake/data/prefs.glade.h:95 msgid "Quick open in current terminal" msgstr "" #: ../guake/data/prefs.glade.h:96 msgid "" "Here is the list of supported patterns: (to add your own, please contact the " "Guake's authors)" msgstr "" #: ../guake/data/prefs.glade.h:97 #, fuzzy msgid "Quick Open" msgstr "Paleta" #: ../guake/data/prefs.glade.h:98 msgid "Quick Open" msgstr "" #: ../guake/data/prefs.glade.h:99 msgid "" "To change a shortcut simply click on its name.\n" "To disable a shortcut, press the \"Backspace\" key." msgstr "" #: ../guake/data/prefs.glade.h:101 msgid "Keyboard shortcuts" msgstr "Dreceres de teclat" #: ../guake/data/prefs.glade.h:102 msgid "" "Note: These options may cause some applications to behave " "incorrectly. They are only here to allow you to work around certain " "applications and operating systems that expect different terminal behavior." msgstr "" "Nota: aquestes opcions poden fer que algunes aplicacions no " "funcionin correctament. Només hi són per poder evitar certs aspectes " "d'aquelles aplicacions i sistemes operatius que esperen un comportament " "diferent del terminal." #: ../guake/data/prefs.glade.h:103 msgid "" "ASCII DEL\n" "Escape sequence\n" "Control-H" msgstr "" "ASCII DEL\n" "Seqüència d'escapament\n" "Control-H" #: ../guake/data/prefs.glade.h:106 msgid "_Backspace key generates:" msgstr "La tecla de _retrocés genera:" #: ../guake/data/prefs.glade.h:107 msgid "_Delete key generates:" msgstr "La tecla de _supressió genera:" #: ../guake/data/prefs.glade.h:108 msgid "_Reset Compatibility Options to Defaults" msgstr "Reinicia les _opcions de compatibilitat als valors predeterminats" #: ../guake/data/prefs.glade.h:109 msgid "Keyboard compatibility" msgstr "Compatibilitat del teclat" #: ../guake/data/prefs.glade.h:110 msgid "Compatibility" msgstr "Compatibilitat" #: ../src/guake/about.py:47 ../src/guake/gconfhandler.py:439 #: ../src/guake/guake_app.py:181 ../src/guake/guake_app.py:378 msgid "Guake Terminal" msgstr "Terminal Guake" #: ../src/guake/gconfhandler.py:369 ../src/guake/guake_app.py:1386 #, fuzzy msgid "Terminal" msgstr "Terminal %s" #: ../src/guake/gconfhandler.py:440 #, python-format msgid "" "A problem happened when binding %s key.\n" "Please use Guake Preferences dialog to choose another key" msgstr "" "S'ha produït un problema en definir la drecera amb la tecla %s.\n" "Empreu la finestra Preferències del Guake per triar una altra tecla (la " "icona de la safata era habilitada)." #: ../src/guake/guake_app.py:132 #, fuzzy msgid "Do you want to close the tab?" msgstr "De debò voleu sortir del Guake?" #: ../src/guake/guake_app.py:135 #, fuzzy msgid "Do you really want to quit Guake?" msgstr "De debò voleu sortir del Guake?" #: ../src/guake/guake_app.py:137 #, fuzzy msgid " and one tab open" msgstr "Afegeix una pestanya nova" #: ../src/guake/guake_app.py:139 #, python-brace-format msgid " and {0} tabs open" msgstr "" #: ../src/guake/guake_app.py:142 #, fuzzy msgid "There are no processes running" msgstr "Encara hi ha un procés en execució." #: ../src/guake/guake_app.py:144 #, fuzzy msgid "There is a process still running" msgstr "Encara hi ha un procés en execució." #: ../src/guake/guake_app.py:146 #, fuzzy, python-brace-format msgid "There are {0} processes still running" msgstr "Encara hi ha %d processos en execució." #: ../src/guake/guake_app.py:186 msgid "guake-indicator" msgstr "" #: ../src/guake/guake_app.py:186 msgid "guake-tray" msgstr "" #: ../src/guake/guake_app.py:190 msgid "Show" msgstr "" #: ../src/guake/guake_app.py:670 #, python-format msgid "Search on Web: '%s'" msgstr "" #: ../src/guake/guake_app.py:675 msgid "Search on Web (no selection)" msgstr "" #: ../src/guake/guake_app.py:683 msgid "Open Link: '{}...'" msgstr "" #: ../src/guake/guake_app.py:685 msgid "Open Link: {}" msgstr "" #: ../src/guake/guake_app.py:688 msgid "Open Link..." msgstr "" #: ../src/guake/guake_app.py:1425 msgid "Rename tab" msgstr "Canvia el nom de la pestanya" #: ../src/guake/guake_app.py:1736 msgid "Save to..." msgstr "" #: ../src/guake/guake_app.py:1743 ../src/guake/prefs.py:973 msgid "All files" msgstr "" #: ../src/guake/guake_app.py:1748 msgid "Text and Logs" msgstr "" #: ../src/guake/guake_app.py:1766 msgid "Find" msgstr "" #: ../src/guake/guake_app.py:1768 msgid "Forward" msgstr "" #: ../src/guake/guake_app.py:1769 msgid "Backward" msgstr "" #: ../src/guake/main.py:68 msgid "Put Guake in fullscreen mode" msgstr "" #: ../src/guake/main.py:72 msgid "Toggles the visibility of the terminal window" msgstr "Commuta la visibilitat de la finestra del terminal" #: ../src/guake/main.py:76 #, fuzzy msgid "Shows Guake main window" msgstr "Mostra la finestra de preferències del Guake" #: ../src/guake/main.py:80 #, fuzzy msgid "Hides Guake main window" msgstr "Mostra la finestra de preferències del Guake" #: ../src/guake/main.py:84 msgid "Shows Guake preference window" msgstr "Mostra la finestra de preferències del Guake" #: ../src/guake/main.py:88 msgid "Shows Guake's about info" msgstr "Mostra informació diversa del Guake" #: ../src/guake/main.py:92 #, fuzzy msgid "Add a new tab (with current directory set to NEW_TAB)" msgstr "_Obre les pestanyes noves en el directori actual" #: ../src/guake/main.py:96 msgid "Select a tab (SELECT_TAB is the index of the tab)" msgstr "" #: ../src/guake/main.py:100 msgid "Return the selected tab index." msgstr "Retorna l'índex de la pestanya seleccionada." #: ../src/guake/main.py:104 msgid "Execute an arbitrary command in the selected tab." msgstr "Executa una ordre arbitrària a la pestanya seleccionada." #: ../src/guake/main.py:108 msgid "Specify the tab to rename. Default is 0." msgstr "" #: ../src/guake/main.py:112 msgid "Set the hexadecimal (#rrggbb) background color of the selected tab." msgstr "" #: ../src/guake/main.py:117 msgid "Set the hexadecimal (#rrggbb) foreground color of the selected tab." msgstr "" #: ../src/guake/main.py:123 msgid "" "Rename the specified tab. Reset to default if TITLE is a single dash \"-\"." msgstr "" #: ../src/guake/main.py:129 msgid "" "Rename the current tab. Reset to default if TITLE is a single dash \"-\"." msgstr "" #: ../src/guake/main.py:134 msgid "Says to Guake go away =(" msgstr "Fa que el Guake desaparegui" #: ../src/guake/main.py:138 msgid "Do not execute the start up script" msgstr "" #: ../src/guake/main.py:235 msgid "Guake can not init!" msgstr "No s'ha pogut iniciar el Guake." #: ../src/guake/main.py:236 #, fuzzy msgid "" "Gconf Error.\n" "Have you installed guake.schemas properly?" msgstr "" "S'ha produït un error del Gconf.\n" "Heu instal·lat correctament la propietat guake.schemas?" #. string to show in prefereces dialog for user shell option #: ../src/guake/prefs.py:67 msgid "" msgstr "" #: ../src/guake/prefs.py:77 msgid "Toggle Guake visibility" msgstr "Commuta la visibilitat del Guake" #: ../src/guake/prefs.py:81 #, fuzzy msgid "Toggle Hide on Lose Focus" msgstr "Amaga-la en perdre el focus" #: ../src/guake/prefs.py:88 msgid "Tab management" msgstr "Gestió de pestanyes" #: ../src/guake/prefs.py:90 #, fuzzy msgid "New tab" msgstr "Pestanya nova" #: ../src/guake/prefs.py:92 msgid "Close tab" msgstr "Tanca la pestanya" #: ../src/guake/prefs.py:94 msgid "Rename current tab" msgstr "Canvia el nom a la pestanya actual" #: ../src/guake/prefs.py:97 msgid "Navigation" msgstr "Navegació" #: ../src/guake/prefs.py:99 msgid "Go to previous tab" msgstr "Vés a la pestanya anterior" #: ../src/guake/prefs.py:101 msgid "Go to next tab" msgstr "Vés a la pestanya següent" #: ../src/guake/prefs.py:103 #, fuzzy msgid "Move current tab left" msgstr "Canvia el nom a la pestanya actual" #: ../src/guake/prefs.py:105 #, fuzzy msgid "Move current tab right" msgstr "Canvia el nom a la pestanya actual" #: ../src/guake/prefs.py:107 #, fuzzy msgid "Go to first tab" msgstr "Vés a la pestanya següent" #: ../src/guake/prefs.py:109 #, fuzzy msgid "Go to second tab" msgstr "Vés a la pestanya següent" #: ../src/guake/prefs.py:111 #, fuzzy msgid "Go to third tab" msgstr "Vés a la pestanya següent" #: ../src/guake/prefs.py:113 #, fuzzy msgid "Go to fourth tab" msgstr "Vés a la pestanya següent" #: ../src/guake/prefs.py:115 #, fuzzy msgid "Go to fifth tab" msgstr "Vés a la pestanya següent" #: ../src/guake/prefs.py:117 #, fuzzy msgid "Go to sixth tab" msgstr "Vés a la pestanya següent" #: ../src/guake/prefs.py:119 #, fuzzy msgid "Go to seventh tab" msgstr "Vés a la pestanya següent" #: ../src/guake/prefs.py:121 #, fuzzy msgid "Go to eighth tab" msgstr "Vés a la pestanya següent" #: ../src/guake/prefs.py:123 #, fuzzy msgid "Go to ninth tab" msgstr "Vés a la pestanya següent" #: ../src/guake/prefs.py:125 #, fuzzy msgid "Go to tenth tab" msgstr "Vés a la pestanya següent" #: ../src/guake/prefs.py:127 #, fuzzy msgid "Go to last tab" msgstr "Vés a la pestanya següent" #: ../src/guake/prefs.py:132 msgid "Zoom out" msgstr "" #: ../src/guake/prefs.py:134 msgid "Zoom in" msgstr "" #: ../src/guake/prefs.py:136 msgid "Zoom in (alternative)" msgstr "" #: ../src/guake/prefs.py:138 msgid "Increase height" msgstr "" #: ../src/guake/prefs.py:140 msgid "Decrease height" msgstr "" #: ../src/guake/prefs.py:142 #, fuzzy msgid "Increase transparency" msgstr "Transparència:" #: ../src/guake/prefs.py:144 #, fuzzy msgid "Decrease transparency" msgstr "Transparència:" #: ../src/guake/prefs.py:146 #, fuzzy msgid "Toggle transparency" msgstr "Transparència:" #: ../src/guake/prefs.py:149 msgid "Clipboard" msgstr "Porta-retalls" #: ../src/guake/prefs.py:151 msgid "Copy text to clipboard" msgstr "Copia text al porta-retalls" #: ../src/guake/prefs.py:153 msgid "Paste text from clipboard" msgstr "Enganxa el text del porta-retalls" #: ../src/guake/prefs.py:156 msgid "Extra features" msgstr "" #: ../src/guake/prefs.py:159 msgid "Search select text on web" msgstr "" #: ../src/guake/prefs.py:481 msgid "Action" msgstr "Acció" #: ../src/guake/prefs.py:491 msgid "Shortcut" msgstr "Drecera" #: ../src/guake/prefs.py:651 ../src/guake/prefs.py:697 msgid "Custom" msgstr "" #: ../src/guake/prefs.py:969 msgid "JSON files" msgstr "" #: ../src/guake/prefs.py:1063 #, python-format msgid "The shortcut \"%s\" is already in use." msgstr "La drecera \"%s\" ja s'està fent servir." #: ../src/guake/prefs.py:1064 msgid "Error setting keybinding." msgstr "S'ha produït un error en definir la drecera." #: ../src/guake/prefs.py:1076 #, python-format msgid "" "The shortcut \"%s\" cannot be used because it will become impossible to type " "using this key.\n" "\n" "Please try with a key such as Control, Alt or Shift at the same time.\n" msgstr "" "No es pot emprar \"%s\" com a drecera perquè seria impossible escriure amb " "aquesta tecla.\n" "Proveu de combinar-la amb tecles com la de Control, Majúscula o " "Alternativa.\n" #: guake/main.py:153 msgid "Return the selected tab label." msgstr "" #: guake/data/prefs.glade:264 msgid "Never" msgstr "" #: guake/data/prefs.glade:265 msgid "With process running" msgstr "" #: guake/data/prefs.glade:266 msgid "Always" msgstr "" #: guake/data/prefs.glade:499 msgid "Refocus if open" msgstr "" #: guake/data/prefs.glade:865 msgid "Custom command file path:" msgstr "" #: guake/data/prefs.glade:1315 msgid "Show resizer" msgstr "" #: guake/data/prefs.glade:1423 msgid "Block" msgstr "" #: guake/data/prefs.glade:1424 msgid "I-Beam" msgstr "" #: guake/data/prefs.glade:1425 msgid "Underline" msgstr "" #: guake/data/prefs.glade:1443 msgid "Follow GTK+ setting" msgstr "" #: guake/data/prefs.glade:1444 msgid "Blink on" msgstr "" #: guake/data/prefs.glade:1445 msgid "Blink off" msgstr "" #: guake/data/prefs.glade:2236 msgid "" "Use the following elements in the open editor command line:\n" "- %(file_path)s: path to the file that has been clicked\n" "- %(line_number)s: if your editor supports it, you can directly open " "the file to a given line number when found on the screen.\n" "\n" "For example, for sublime, use subl %(file_path)s:%(line_number)s\n" "" msgstr "" #: guake/data/prefs.glade:2442 guake/data/prefs.glade:2462 msgid "ASCII DEL" msgstr "" #: guake/data/prefs.glade:2443 guake/data/prefs.glade:2463 msgid "Escape sequence" msgstr "" #: guake/data/prefs.glade:2444 guake/data/prefs.glade:2464 msgid "Control-H" msgstr "" #: guake/data/prefs.glade:2600 msgid "" "In this dialog you can attach your own command or script to various " "guake events" msgstr "" #: guake/data/prefs.glade:2635 msgid "On show:" msgstr "" #: guake/data/prefs.glade:2665 msgid "On start:" msgstr "" #: guake/data/prefs.glade:2714 msgid "Hooks" msgstr "" #: guake/data/guake-prefs.desktop:8 msgid "Configure your Guake sessions" msgstr "" #: guake/data/guake-prefs.desktop:15 guake/data/guake.desktop:18 msgid "guake" msgstr "" #: guake/data/guake-prefs.desktop:20 msgid "Terminal;Utility;" msgstr "" #: guake/data/guake.desktop:10 msgid "Use the command line in a Quake-like terminal" msgstr "" #: guake/data/prefs.glade:770 msgid "Main Window Horizontal Alignment" msgstr "" #: guake/prefs.py:89 msgid "Show and focus Guake window" msgstr "" #: guake/data/prefs.glade:566 msgid "0" msgstr "" #: guake/data/prefs.glade:610 msgid "Main Window Options" msgstr "" #: guake/data/prefs.glade:770 msgid "Horizontal Alignment:" msgstr "" #: guake/data/prefs.glade:855 msgid "Height:" msgstr "" #: guake/data/prefs.glade:868 msgid "Width:" msgstr "" #: guake/data/prefs.glade:913 msgid "Geometry" msgstr "" #: guake/data/prefs.glade:944 msgid "Main Window" msgstr "" #: guake/data/prefs.glade:1197 msgid "Infinite scrolling" msgstr "" #: guake/data/prefs.glade:1219 msgid "Scrollbar" msgstr "" #: guake/data/prefs.glade:1304 msgid "Scroll to Bottom" msgstr "" #: guake/data/prefs.glade:2117 msgid "" "Quick open is a feature allowing you to open a file directly into your " "favorite text editor by clicking on its filename when it appears in your " "terminal. See the list of currently supported text patterns used to extract " "filename below." msgstr "" #: guake/main.py:64 msgid "Show Guake version number and exit" msgstr "" #: guake/data/prefs.glade:93 msgid "Guake properties" msgstr "Propietats del Guake" #: guake/data/prefs.glade:107 msgid "Customize behavior and appearance of Guake!" msgstr "Personalitzeu el comportament i l'aparença del Guake!" #: guake/data/prefs.glade:929 msgid "Displacement in pixels" msgstr "" #: guake/guake_app.py:400 msgid "" "Guake is now running,\n" "press {!s} to use it." msgstr "" "El Guake està en execució,\n" "premeu{!s} per fer-lo servir." #: guake/main.py:73 msgid "Enable verbose logging" msgstr "" #: guake/guake_app.py:680 msgid "Quick Open: '{!s}...'" msgstr "" #: guake/guake_app.py:683 msgid "Quick Open: {!s}" msgstr "" #: guake/guake_app.py:691 msgid "Open Link: '{!s}...'" msgstr "" #: guake/guake_app.py:694 msgid "Open Link: {!s}" msgstr "" #: guake/data/prefs.glade:2175 msgid "" "WARNING: your system seems to have PCRE2 disabled for VTE, " "preventing application such as Guake to register \"matchers\" using regular " "expressions. Please contact your distribution to request a new version of " "VTE with PCRE2 enabled ! To use Quick Open, you must select the text " "before using Ctrl+click." msgstr "" #: guake/guake_app.py:680 msgid "Quick Open: {!s}..." msgstr "" #: guake/guake_app.py:691 msgid "Open Link: {!s}..." msgstr "" #: guake/guake_app.py:688 msgid "Quick Open..." msgstr "" #: guake/data/prefs.glade:223 msgid "Start Guake at login" msgstr "" #: guake/data/prefs.glade:363 msgid "Gtk Theme:" msgstr "" #: guake/data/prefs.glade:387 msgid "Prefer dark theme" msgstr "" #: guake/guake_app.py:435 msgid "Custom Commands" msgstr "" #: guake/main.py:184 msgid "" "Specify the tab to rename. Default is 0. Can be used to select tab by UUID." msgstr "" #: guake/main.py:212 msgid "" "Rename the specified tab by --tab-index. Reset to default if TITLE is a " "single dash \"-\"." msgstr "" #: data/search.glade:138 msgid "Search forward" msgstr "" #: data/search.glade:153 msgid "Match case" msgstr "" #: data/search.glade:186 msgid "Current search direction: Backward" msgstr "" #: data/prefs.glade:680 msgid "Set window title to current tab name" msgstr "" #: guake/menus.py:48 msgid "Copy Url" msgstr "" #: guake/menus.py:62 msgid "Split ―" msgstr "" #: guake/menus.py:65 msgid "Split " msgstr "" #: guake/menus.py:68 guake/prefs.py:150 msgid "Close terminal" msgstr "" #: guake/prefs.py:137 msgid "Split management" msgstr "" #: guake/prefs.py:142 msgid "Split tab vertical" msgstr "" #: guake/prefs.py:146 msgid "Split tab horizontal" msgstr "" #: guake/prefs.py:154 msgid "Focus terminal above" msgstr "" #: guake/prefs.py:158 msgid "Focus terminal below" msgstr "" #: guake/prefs.py:162 msgid "Focus terminal on the left" msgstr "" #: guake/prefs.py:166 msgid "Focus terminal on the right" msgstr "" #: guake/prefs.py:170 msgid "Move the terminal split handle up" msgstr "" #: guake/prefs.py:174 msgid "Move the terminal split handle down" msgstr "" #: guake/prefs.py:178 msgid "Move the terminal split handle right" msgstr "" #: guake/prefs.py:182 msgid "Move the terminal split handle left" msgstr "" #: guake/menus.py:65 msgid "Split |" msgstr "" #: guake/menus.py:72 msgid "Save content..." msgstr "" #: data/prefs.glade:1182 msgid "" "This might not work on all shells, make sure that your shell supports the --" "login option" msgstr "" #: guake/prefs.py:128 msgid "New tab in home directory" msgstr "" #: guake/dialogs.py:56 #, python-brace-format msgid " on {0} workspaces" msgstr "" #: guake/main.py:211 msgid "Change Guake palette scheme" msgstr "" #: data/prefs.glade:331 msgid "Use workspace-specific tab sets (requires restart)" msgstr "" #: guake/main.py:175 msgid "Split the selected tab vertically." msgstr "" #: guake/main.py:183 msgid "Split the selected tab horizontally." msgstr "" #: data/prefs.glade:348 msgid "Show close buttons for tabs" msgstr "" #: data/prefs.glade:1682 msgid "Bold text is also bright" msgstr "" #: data/prefs.glade:1682 msgid "Bold text is also bright (VTE >=0.52)" msgstr "" #: guake/menus.py:42 msgid "Save Tabs" msgstr "" #: guake/menus.py:45 msgid "Restore Tabs" msgstr "" #: guake/prefs.py:113 msgid "Search terminal" msgstr "" #: guake/main.py:278 msgid "Save Guake preferences to this filename" msgstr "" #: guake/main.py:286 msgid "Restore Guake preferences from this file" msgstr "" #: guake/guake_app.py:1192 #, python-brace-format msgid "Your session.json file is broken, backup to {session_filename}.bak" msgstr "" #: guake/guake_app.py:1228 #, python-brace-format msgid "" "Your session.json schema is broken, backup to {0}.bak,and error message has " "been saved to {0}.log.err" msgstr "" #: guake/guake_app.py:1239 msgid "Your tabs has been restored!" msgstr "" #: data/prefs.glade:190 msgid "Restore previous session (tabs)" msgstr "" #: data/prefs.glade:204 msgid "Enable notification when restore tabs" msgstr "" #: data/prefs.glade:218 msgid "Automatically save session when the tabs has been modified" msgstr "" #: data/prefs.glade:238 msgid "Startup & Tabs (Experiment)" msgstr "" #: guake/guake_app.py:1192 #, python-brace-format msgid "" "Your {session_filename} file is broken, backup to {session_filename}.bak" msgstr "" #: guake/guake_app.py:1227 #, python-brace-format msgid "" "Your {session_filename} schema is broken, backup to {0}.bak,and error " "message has been saved to {session_filename}.log.err" msgstr "" #: guake/guake_app.py:1227 #, python-brace-format msgid "" "Your {session_filename} schema is broken, backup to {session_filename}.bak," "and error message has been saved to {session_filename}.log.err." msgstr "" #: guake/guake_app.py:1227 #, python-brace-format msgid "" "Your {session_filename} schema is broken, backup to {session_filename}.bak, " "and error message has been saved to {session_filename}.log.err." msgstr "" #: guake/notebook.py:317 msgid "" "You are going to restore *all* the tabs!\n" "which means all your terminals & pages will be replaced.\n" "\n" "Do you want to continue?" msgstr "" #: guake/main.py:296 msgid "Show support infomations" msgstr "" #: guake/guake_app.py:1240 #, python-brace-format msgid "" "Tabs session restore abort.\n" "Your session file ({session_filename}) missing schema_version as key" msgstr "" #: guake/guake_app.py:1252 #, python-brace-format msgid "" "Tabs session restore abort.\n" "Your session file schema version is higher than current version " "({session_file_schema_version} > {current_schema_version})." msgstr "" #: guake/data/prefs.glade:409 msgid "Use workspace-specific tab sets (requires restart, only work on X11)" msgstr "" #~ msgid "key binding error" #~ msgstr "S'ha produït un error en definir la drecera de teclat" #~ msgid "Unable to bind global %s key" #~ msgstr "No s'ha pogut enllaçar la tecla global %s." #~ msgid "http://guake.org" #~ msgstr "http://guake.org" #~ msgid "" #~ "Tango\n" #~ "Linux console\n" #~ "XTerm\n" #~ "Rxvt\n" #~ "Custom\n" #~ msgstr "" #~ "Tango\n" #~ "Consola de Linux\n" #~ "XTerm\n" #~ "Rxvt\n" #~ "Personalitzat\n" #~ msgid "Select a tab" #~ msgstr "Selecciona una pestanya" #~ msgid "Rename the selected tab." #~ msgstr "Canvia el nom de la pestanya seleccionada." guake-3.6.3/po/cs.po000066400000000000000000001141451346623310400142120ustar00rootroot00000000000000# Translation of Guake to Czech # Copyright (C) 2011 Guake Translators # This file is distributed under the same license as the Guake package. # # Translators: # Martin Lukeš , 2011 # Daniel Milde , 2016 # Martin Lukeš , 2018 msgid "" msgstr "" "Project-Id-Version: Guake 0.4.5\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2016-08-18 17:32+0200\n" "PO-Revision-Date: 2019-04-28 18:50+0000\n" "Last-Translator: Pavel Borecki \n" "Language-Team: Czech \n" "Language: cs\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=3; plural=(n==1) ? 0 : (n>=2 && n<=4) ? 1 : 2;\n" "X-Generator: Weblate 3.6.1\n" #: ../guake/data/about.glade.h:1 msgid "About Guake" msgstr "O Guake" #: ../guake/data/about.glade.h:5 msgid "" "Guake is an easy to access\n" "terminal based on FPS games terminal" msgstr "" "Guake je snadno přístupný\n" "terminál podobný těm z FPS her" #: ../guake/data/guake.glade.h:1 msgid "Copy" msgstr "Kopírovat" #: ../guake/data/guake.glade.h:2 msgid "Paste" msgstr "Vložit" #: ../guake/data/guake.glade.h:3 ../src/guake/prefs.py:79 msgid "Toggle Fullscreen" msgstr "Přepnout na celou obrazovku" #: ../guake/data/guake.glade.h:4 msgid "Save to File..." msgstr "Uložit do souboru..." #: ../guake/data/guake.glade.h:5 ../src/guake/prefs.py:85 msgid "Reset terminal" msgstr "Inicializovat a vymazat" #: ../guake/data/guake.glade.h:6 msgid "Find..." msgstr "Najít..." #: ../guake/data/guake.glade.h:7 msgid "New Tab" msgstr "Nová karta" #: ../guake/data/guake.glade.h:8 msgid "Rename Tab" msgstr "Přejmenovat kartu" #: ../guake/data/guake.glade.h:9 msgid "Close Tab" msgstr "Zavřít kartu" #: ../guake/data/guake.glade.h:10 msgid "Open link..." msgstr "Otevřít odkaz..." #: ../guake/data/guake.glade.h:11 msgid "Search on Web" msgstr "Najít na webu" #: ../guake/data/guake.glade.h:12 ../src/guake/prefs.py:83 msgid "Quit" msgstr "Ukončit" #: ../guake/data/guake.glade.h:13 msgid "Rename" msgstr "Přejmenovat" #: ../guake/data/guake.glade.h:14 msgid "Close" msgstr "Zavřít" #: ../guake/data/guake.glade.h:15 msgid "Guake!" msgstr "Guake!" #: ../guake/data/guake.glade.h:16 msgid "Add a new tab" msgstr "Přidat novou kartu" #: ../guake/data/prefs.glade.h:1 msgid "Guake Preferences" msgstr "Nastavení Guake" #: ../guake/data/prefs.glade.h:2 msgid "Guake properties" msgstr "Nastavení Guake" #: ../guake/data/prefs.glade.h:3 msgid "" "Customize behavior and appearance of Guake!" msgstr "Upravit chování a vzhled Guake!" #: ../guake/data/prefs.glade.h:4 msgid "" "Path to a bash script that would be automatically executed when Guake " "starts, unless you specify --no-startup-script.\n" "\n" "This would typically use the configuration by command line feature of " "Guake:\n" "\n" "#!/bin/bash\n" "\n" "sleep 5 # it is advised to wait a bit before Guake has been successfully " "started\n" "\n" "guake -r \"main\" -e \"cd ~/projects/myproject/main\"\n" "guake -r \"prod\" -e \"cd ~/projects/myproject/prod\"\n" msgstr "" "Cesta k bash skriptu, který bude automaticky vykonán při spuštění Guake, " "pokud Guake nespustíte s parametrem --no-startup-script.\n" "\n" "Takový skript se většinou používá k nastavení Guake přes jeho terminálové " "rozhraní jako v následujícím příkladu:\n" "\n" "#!/bin/bash\n" "\n" "sleep 5 # je doporučeno chvilku počkat, aby se Guake stihlo spustit\n" "\n" "guake -r \"main\" -e \"cd ~/projects/myproject/main\"\n" "guake -r \"prod\" -e \"cd ~/projects/myproject/prod\"\n" #: ../guake/data/prefs.glade.h:15 msgid "Enable popup notifications on startup" msgstr "Zobrazovat vyskakovací zprávy po spuštění" #: ../guake/data/prefs.glade.h:16 msgid "Show tray icon" msgstr "Zobrazit ikonu v oznamovací oblasti" #: ../guake/data/prefs.glade.h:17 msgid "Always prompt on quit" msgstr "Vždy se ptát před ukončením" #: ../guake/data/prefs.glade.h:18 msgid "_Flash terminal on bell" msgstr "_Blikat při zvonku terminálu" #: ../guake/data/prefs.glade.h:19 msgid "_Play system alert sound on bell" msgstr "_Přehrát systémový zvuk upozornění" #: ../guake/data/prefs.glade.h:20 msgid "Path to script executed on Guake start:" msgstr "Cesta ke skriptu při spuštění Guake:" #: ../guake/data/prefs.glade.h:21 msgid "Prompt on close tab:" msgstr "Zeptat se na zavření karty:" #: ../guake/data/prefs.glade.h:22 msgid "" "Never\n" "With process running\n" "Always" msgstr "" "Nikdy\n" "Pokud běží proces\n" "Vždy" #: ../guake/data/prefs.glade.h:25 msgid "General" msgstr "Obecné" #: ../guake/data/prefs.glade.h:26 msgid "Bottom align window instead of top align" msgstr "Přichytit okno ke spodnímu okraji obrazovky" #: ../guake/data/prefs.glade.h:27 msgid "Appear on mouse display" msgstr "Zobrazit na displeji s myší" #: ../guake/data/prefs.glade.h:28 msgid "Appear on display:" msgstr "Zobrazit na displeji:" #: ../guake/data/prefs.glade.h:29 msgid "Place tabs on top" msgstr "Zobrazit karty navrchu" #: ../guake/data/prefs.glade.h:30 msgid "Placement" msgstr "Umístění" #: ../guake/data/prefs.glade.h:31 msgid "Stay on top" msgstr "Vždy navrchu" #: ../guake/data/prefs.glade.h:32 msgid "Use VTE titles for tab names" msgstr "Použít názvy VTE pro názvy karet" #: ../guake/data/prefs.glade.h:33 msgid "Max tab name length:" msgstr "Maximální délka názvu karty:" #: ../guake/data/prefs.glade.h:34 msgid "0 means no size limit" msgstr "0 znamená žádný limit velikosti" #: ../guake/data/prefs.glade.h:35 msgid "Abbreviate directories in tab names" msgstr "Zkrátit jména složek v názvech karet" #: ../guake/data/prefs.glade.h:36 msgid "Hide on lose focus" msgstr "Skrýt při ztrátě zaměření okna" #: ../guake/data/prefs.glade.h:37 msgid "Show tab bar" msgstr "Zobrazit lištu karet" #: ../guake/data/prefs.glade.h:38 msgid "Start fullscreen" msgstr "Spustit na celou obrazovku" #: ../guake/data/prefs.glade.h:39 msgid "Main Window" msgstr "Okno s terminálem" #: ../guake/data/prefs.glade.h:40 msgid "Left" msgstr "Vlevo" #: ../guake/data/prefs.glade.h:41 msgid "Center" msgstr "Na střed" #: ../guake/data/prefs.glade.h:42 msgid "Right" msgstr "Vpravo" #: ../guake/data/prefs.glade.h:43 msgid "Main Window Horizontal Alignment" msgstr "Vodorovné umístění okna s terminálem" #: ../guake/data/prefs.glade.h:44 msgid "Main Window Height" msgstr "Výška okna s terminálem" #: ../guake/data/prefs.glade.h:45 msgid "Main Window Width" msgstr "Šířka okna s terminálem" #: ../guake/data/prefs.glade.h:46 msgid "Custom command file path: " msgstr "Cesta k souboru s vlastním příkazem: " #: ../guake/data/prefs.glade.h:47 msgid "Please select a json file" msgstr "Vyberte soubor json" #: ../guake/data/prefs.glade.h:48 ../src/guake/prefs.py:75 msgid "General" msgstr "Obecné" #: ../guake/data/prefs.glade.h:49 msgid "Default interpreter:" msgstr "Výchozí interpret shellu:" #: ../guake/data/prefs.glade.h:50 msgid "_Run command as a login shell" msgstr "_Spustit příkaz jako přihlašovací shell" #: ../guake/data/prefs.glade.h:51 msgid "_Open new tab in current directory" msgstr "_Otevřít novou kartu v aktuálním adresáři" #: ../guake/data/prefs.glade.h:52 msgid "Shell" msgstr "Shell" #: ../guake/data/prefs.glade.h:53 msgid "Shell" msgstr "Shell" #: ../guake/data/prefs.glade.h:54 msgid "Show scrollbar" msgstr "Zobrazit posuvník" #: ../guake/data/prefs.glade.h:55 msgid "Scrollback lines:" msgstr "Omezit posuv na:" #: ../guake/data/prefs.glade.h:56 msgid "On output" msgstr "Při výstupu" #: ../guake/data/prefs.glade.h:57 msgid "On key stroke" msgstr "Při stisku klávesy" #: ../guake/data/prefs.glade.h:58 msgid "Scroll" msgstr "Posun" #: ../guake/data/prefs.glade.h:59 msgid "Scrolling" msgstr "Posouvání" #: ../guake/data/prefs.glade.h:60 msgid "Use the system fixed width font" msgstr "Používat systémové písmo s pevnou šířkou" #: ../guake/data/prefs.glade.h:61 msgid "Font:" msgstr "Písmo:" #: ../guake/data/prefs.glade.h:62 msgid "Choose some font" msgstr "Vyberte písmo terminálu" #: ../guake/data/prefs.glade.h:63 msgid "Text color:" msgstr "Barva textu:" #: ../guake/data/prefs.glade.h:64 msgid "Background color:" msgstr "Barva pozadí:" #: ../guake/data/prefs.glade.h:65 msgid "Cursor shape:" msgstr "Tvar kurzoru:" #: ../guake/data/prefs.glade.h:66 msgid "" "Block\n" "I-Beam\n" "Underline" msgstr "" "Blokový\n" "Svislá čára\n" "Podtrhávací čára" #: ../guake/data/prefs.glade.h:69 msgid "" "Follow GTK+ setting\n" "Blink on\n" "Blink off" msgstr "" "Dle nastavení GTK+\n" "Blikat\n" "Neblikat" #: ../guake/data/prefs.glade.h:72 msgid "Cursor blink mode:" msgstr "Blikání kurzoru:" #: ../guake/data/prefs.glade.h:73 msgid "Allow bold font" msgstr "Povolit tučný text" #: ../guake/data/prefs.glade.h:74 msgid "Palette" msgstr "Paleta" #: ../guake/data/prefs.glade.h:75 msgid "Built-in schemes:" msgstr "Zabudovaná schémata:" #: ../guake/data/prefs.glade.h:76 msgid "Color palette:" msgstr "Paleta barev:" #: ../guake/data/prefs.glade.h:77 msgid "Font color" msgstr "Barva textu" #: ../guake/data/prefs.glade.h:78 msgid "Background color" msgstr "Barva pozadí" #: ../guake/data/prefs.glade.h:79 msgid "Use font and background color from the palette" msgstr "Použít barvu písma a pozadí z palety" #: ../guake/data/prefs.glade.h:80 msgid "Demo:" msgstr "Náhled:" #: ../guake/data/prefs.glade.h:81 msgid "Effects" msgstr "Efekty" #: ../guake/data/prefs.glade.h:82 msgid "Transparency:" msgstr "Průhlednost:" #: ../guake/data/prefs.glade.h:83 msgid "Background image:" msgstr "Obrázek na pozadí:" #: ../guake/data/prefs.glade.h:84 ../src/guake/prefs.py:130 msgid "Appearance" msgstr "Vzhled" #: ../guake/data/prefs.glade.h:85 msgid "" "Quick open is a feature allowing you to open a file directly into " "your favorite text editor by clicking on its filename when it appears in " "your terminal. See the list of currently supported text patterns used to " "extract filename below." msgstr "" "Snadné otevření je funkce umožňující otevření souboru oblíbeným " "textovým editorem pouhým kliknutím na název souboru v terminálu. Seznam " "podporovaných textových vzorů použitých pro zjištění názvu souboru naleznete " "níže." #: ../guake/data/prefs.glade.h:86 msgid "Enable Quick Open when Ctrl+clicking on a filename in the terminal" msgstr "" "Aktivovat Snadné otevření při Ctrl+kliknutí na název souboru v terminálu" #: ../guake/data/prefs.glade.h:87 msgid "Editor command line:" msgstr "Příkaz ke spuštění editoru:" #: ../guake/data/prefs.glade.h:89 #, no-c-format msgid "" "Use the following elements in the open editor command line:\n" " - %(file_path)s: path to the file that has been clicked\n" " - %(line_number)s: if your editor supports it, you can directly open " "the file to a given line number when found on the screen.\n" "\n" "For example, for sublime, use subl %(file_path)s:%(line_number)s\n" "" msgstr "" "Použijte následující elementy při spouštění editoru:\n" " - %(file_path)s: cesta k souboru, na který bylo kliknuto\n" " - %(line_number)s: číslo řádku souboru, na kterém editor otevřít, " "pokud to nastavený editor podporuje a číslo bylo v odkazu.\n" "\n" "Například pro Sublime Text použijte subl %(file_path)s:%(line_number)s\n" "" #: ../guake/data/prefs.glade.h:95 msgid "Quick open in current terminal" msgstr "Otevírat v aktuálním terminálu" #: ../guake/data/prefs.glade.h:96 msgid "" "Here is the list of supported patterns: (to add your own, please contact the " "Guake's authors)" msgstr "" "Zde je seznam podporovaných vzorů: (pro přidání vlastních, kontaktujte " "vývojáře Guake)" #: ../guake/data/prefs.glade.h:97 msgid "Quick Open" msgstr "Snadné otevření" #: ../guake/data/prefs.glade.h:98 msgid "Quick Open" msgstr "Snadné otevření" #: ../guake/data/prefs.glade.h:99 msgid "" "To change a shortcut simply click on its name.\n" "To disable a shortcut, press the \"Backspace\" key." msgstr "" "Pro změnu klávesové zkratky klikněte na její název.\n" "Pro její deaktivaci stiskněte \"Backspace\"." #: ../guake/data/prefs.glade.h:101 msgid "Keyboard shortcuts" msgstr "Klávesové zkratky" #: ../guake/data/prefs.glade.h:102 msgid "" "Note: These options may cause some applications to behave " "incorrectly. They are only here to allow you to work around certain " "applications and operating systems that expect different terminal behavior." msgstr "" "Poznámka: Tyto volby mohou způsobit, že některé aplikace " "nebudou fungovat správně. Jsou tu pouze proto, abyste mohli obejít " "skutečnost, že některé aplikace a operační systémy očekávají jiné chování " "terminálu." #: ../guake/data/prefs.glade.h:103 msgid "" "ASCII DEL\n" "Escape sequence\n" "Control-H" msgstr "" "ASCII DEL\n" "Escape sekvence\n" "Ctrl+H" #: ../guake/data/prefs.glade.h:106 msgid "_Backspace key generates:" msgstr "Klávesa _Backspace generuje:" #: ../guake/data/prefs.glade.h:107 msgid "_Delete key generates:" msgstr "Klávesa _Delete generuje:" #: ../guake/data/prefs.glade.h:108 msgid "_Reset Compatibility Options to Defaults" msgstr "_Obnovit standardní nastavení pro kompatibilitu" #: ../guake/data/prefs.glade.h:109 msgid "Keyboard compatibility" msgstr "Kompatibilita klávesnic" #: ../guake/data/prefs.glade.h:110 msgid "Compatibility" msgstr "Kompatibilita" #: ../src/guake/about.py:47 ../src/guake/gconfhandler.py:439 #: ../src/guake/guake_app.py:181 ../src/guake/guake_app.py:378 msgid "Guake Terminal" msgstr "Guake Terminál" #: ../src/guake/gconfhandler.py:369 ../src/guake/guake_app.py:1386 msgid "Terminal" msgstr "Terminál %s" #: ../src/guake/gconfhandler.py:440 #, python-format msgid "" "A problem happened when binding %s key.\n" "Please use Guake Preferences dialog to choose another key" msgstr "" "Při nastavování klávesové zkratky %s nastala chyba.\n" "Pro výběr jiné zkratky použijte, prosím, okno Nastavení. (Ikona v oznamovací " "oblasti byla povolena.)" #: ../src/guake/guake_app.py:132 msgid "Do you want to close the tab?" msgstr "Opravdu chcete zavřít kartu?" #: ../src/guake/guake_app.py:135 msgid "Do you really want to quit Guake?" msgstr "Opravdu chcete ukončit Guake!?" #: ../src/guake/guake_app.py:137 msgid " and one tab open" msgstr " a jedna karta otevřena" #: ../src/guake/guake_app.py:139 #, python-brace-format msgid " and {0} tabs open" msgstr " a {0} karet otevřeno" #: ../src/guake/guake_app.py:142 msgid "There are no processes running" msgstr "Neběží žádné procesy" #: ../src/guake/guake_app.py:144 msgid "There is a process still running" msgstr "Stále běží jeden proces" #: ../src/guake/guake_app.py:146 #, python-brace-format msgid "There are {0} processes still running" msgstr "Stále běží {0} procesů" #: ../src/guake/guake_app.py:186 msgid "guake-indicator" msgstr "guake-indicator" #: ../src/guake/guake_app.py:186 msgid "guake-tray" msgstr "guake-tray" #: ../src/guake/guake_app.py:190 msgid "Show" msgstr "Zobrazit" #: ../src/guake/guake_app.py:670 #, python-format msgid "Search on Web: '%s'" msgstr "Vyhledat na webu: '%s'" #: ../src/guake/guake_app.py:675 msgid "Search on Web (no selection)" msgstr "Vyhledat na webu (bez výběru)" #: ../src/guake/guake_app.py:683 msgid "Open Link: '{}...'" msgstr "Otevřít odkaz: '{}...'" #: ../src/guake/guake_app.py:685 msgid "Open Link: {}" msgstr "Otevřít odkaz: {}" #: ../src/guake/guake_app.py:688 msgid "Open Link..." msgstr "Otevřít odkaz..." #: ../src/guake/guake_app.py:1425 msgid "Rename tab" msgstr "Přejmenovat kartu" #: ../src/guake/guake_app.py:1736 msgid "Save to..." msgstr "Uložit do..." #: ../src/guake/guake_app.py:1743 ../src/guake/prefs.py:973 msgid "All files" msgstr "Všechny soubory" #: ../src/guake/guake_app.py:1748 msgid "Text and Logs" msgstr "Text a logy" #: ../src/guake/guake_app.py:1766 msgid "Find" msgstr "Vyhledat" #: ../src/guake/guake_app.py:1768 msgid "Forward" msgstr "Vpřed" #: ../src/guake/guake_app.py:1769 msgid "Backward" msgstr "Zpět" #: ../src/guake/main.py:68 msgid "Put Guake in fullscreen mode" msgstr "Přepnout Guake na celou obrazovku" #: ../src/guake/main.py:72 msgid "Toggles the visibility of the terminal window" msgstr "Zobrazí / skryje okno terminálu" #: ../src/guake/main.py:76 msgid "Shows Guake main window" msgstr "Zobrazí hlavní okno Guake" #: ../src/guake/main.py:80 msgid "Hides Guake main window" msgstr "Skryje hlavní okno Guake" #: ../src/guake/main.py:84 msgid "Shows Guake preference window" msgstr "Zobrazí okno nastavení Guake" #: ../src/guake/main.py:88 msgid "Shows Guake's about info" msgstr "Zobrazí info o Guake" #: ../src/guake/main.py:92 msgid "Add a new tab (with current directory set to NEW_TAB)" msgstr "Otevře novou kartu s cestou nastavenou na NEW_TAB" #: ../src/guake/main.py:96 msgid "Select a tab (SELECT_TAB is the index of the tab)" msgstr "Vybere kartu podle indexu SELECT_TAB" #: ../src/guake/main.py:100 msgid "Return the selected tab index." msgstr "Vypíše pořadí vybrané karty." #: ../src/guake/main.py:104 msgid "Execute an arbitrary command in the selected tab." msgstr "Spustí ve vybrané kartě libovolný příkaz." #: ../src/guake/main.py:108 msgid "Specify the tab to rename. Default is 0." msgstr "Vybere kartu k přejmenování. Výchozí je 0." #: ../src/guake/main.py:112 msgid "Set the hexadecimal (#rrggbb) background color of the selected tab." msgstr "Nastaví hexadecimální (#rrggbb) barvu pozadí pro vybranou kartu." #: ../src/guake/main.py:117 msgid "Set the hexadecimal (#rrggbb) foreground color of the selected tab." msgstr "Nastaví hexadecimální (#rrggbb) barvu popředí pro vybranou kartu." #: ../src/guake/main.py:123 msgid "" "Rename the specified tab. Reset to default if TITLE is a single dash \"-\"." msgstr "" "Přejmenuje vybranou kartu. Dostane výchozí název, pokud bude TITLE " "jednoduchá pomlčka \"-\"." #: ../src/guake/main.py:129 msgid "" "Rename the current tab. Reset to default if TITLE is a single dash \"-\"." msgstr "" "Přejmenuje aktuální kartu. Dostane výchozí název, pokud bude TITLE " "jednoduchá pomlčka \"-\"." #: ../src/guake/main.py:134 msgid "Says to Guake go away =(" msgstr "Řekne Guake, aby šlo pryč =(" #: ../src/guake/main.py:138 msgid "Do not execute the start up script" msgstr "Nespouštět skript po spuštění" #: ../src/guake/main.py:235 msgid "Guake can not init!" msgstr "Guake nelze spustit!" #: ../src/guake/main.py:236 msgid "" "Gconf Error.\n" "Have you installed guake.schemas properly?" msgstr "" "Chyba v Gconf.\n" "Máte správně nainstalován guake.schemas?" #. string to show in prefereces dialog for user shell option #: ../src/guake/prefs.py:67 msgid "" msgstr "" #: ../src/guake/prefs.py:77 msgid "Toggle Guake visibility" msgstr "Přepnout viditelnost Guake" #: ../src/guake/prefs.py:81 msgid "Toggle Hide on Lose Focus" msgstr "Skrývat při ztrátě zaměření okna" #: ../src/guake/prefs.py:88 msgid "Tab management" msgstr "Správa karet" #: ../src/guake/prefs.py:90 msgid "New tab" msgstr "Nová karta" #: ../src/guake/prefs.py:92 msgid "Close tab" msgstr "Zavřít kartu" #: ../src/guake/prefs.py:94 msgid "Rename current tab" msgstr "Přejmenovat současnou kartu" #: ../src/guake/prefs.py:97 msgid "Navigation" msgstr "Navigace" #: ../src/guake/prefs.py:99 msgid "Go to previous tab" msgstr "Přejít na předchozí kartu" #: ../src/guake/prefs.py:101 msgid "Go to next tab" msgstr "Přejít na následující kartu" #: ../src/guake/prefs.py:103 msgid "Move current tab left" msgstr "Přesunout současnou kartu vlevo" #: ../src/guake/prefs.py:105 msgid "Move current tab right" msgstr "Přesunout současnou kartu vpravo" #: ../src/guake/prefs.py:107 msgid "Go to first tab" msgstr "Přejít na první kartu" #: ../src/guake/prefs.py:109 msgid "Go to second tab" msgstr "Přejít na druhou kartu" #: ../src/guake/prefs.py:111 msgid "Go to third tab" msgstr "Přejít na třetí kartu" #: ../src/guake/prefs.py:113 msgid "Go to fourth tab" msgstr "Přejít na čtvrtou kartu" #: ../src/guake/prefs.py:115 msgid "Go to fifth tab" msgstr "Přejít na pátou kartu" #: ../src/guake/prefs.py:117 msgid "Go to sixth tab" msgstr "Přejít na šestou kartu" #: ../src/guake/prefs.py:119 msgid "Go to seventh tab" msgstr "Přejít na sedmou kartu" #: ../src/guake/prefs.py:121 msgid "Go to eighth tab" msgstr "Přejít na osmou kartu" #: ../src/guake/prefs.py:123 msgid "Go to ninth tab" msgstr "Přejít na devátou kartu" #: ../src/guake/prefs.py:125 msgid "Go to tenth tab" msgstr "Přejít na desátou kartu" #: ../src/guake/prefs.py:127 msgid "Go to last tab" msgstr "Přejít na poslední kartu" #: ../src/guake/prefs.py:132 msgid "Zoom out" msgstr "Oddálit" #: ../src/guake/prefs.py:134 msgid "Zoom in" msgstr "Přiblížit" #: ../src/guake/prefs.py:136 msgid "Zoom in (alternative)" msgstr "Přiblížit (alternativa)" #: ../src/guake/prefs.py:138 msgid "Increase height" msgstr "Zvětšit výšku" #: ../src/guake/prefs.py:140 msgid "Decrease height" msgstr "Snížit výšku" #: ../src/guake/prefs.py:142 msgid "Increase transparency" msgstr "Zvýšit průhlednost" #: ../src/guake/prefs.py:144 msgid "Decrease transparency" msgstr "Snížit průhlednost" #: ../src/guake/prefs.py:146 msgid "Toggle transparency" msgstr "Přepnout průhlednost" #: ../src/guake/prefs.py:149 msgid "Clipboard" msgstr "Schránka" #: ../src/guake/prefs.py:151 msgid "Copy text to clipboard" msgstr "Kopírovat text do schránky" #: ../src/guake/prefs.py:153 msgid "Paste text from clipboard" msgstr "Vložit text ze schránky" #: ../src/guake/prefs.py:156 msgid "Extra features" msgstr "Další funkce" #: ../src/guake/prefs.py:159 msgid "Search select text on web" msgstr "Najít vybraný text na webu" #: ../src/guake/prefs.py:481 msgid "Action" msgstr "Akce" #: ../src/guake/prefs.py:491 msgid "Shortcut" msgstr "Klávesová zkratka" #: ../src/guake/prefs.py:651 ../src/guake/prefs.py:697 msgid "Custom" msgstr "Vlastní" #: ../src/guake/prefs.py:969 msgid "JSON files" msgstr "JSON soubory" #: ../src/guake/prefs.py:1063 #, python-format msgid "The shortcut \"%s\" is already in use." msgstr "Klávesová zkratka \"%s\" se již používá." #: ../src/guake/prefs.py:1064 msgid "Error setting keybinding." msgstr "Chyba při nastavování klávesové zkratky." #: ../src/guake/prefs.py:1076 #, python-format msgid "" "The shortcut \"%s\" cannot be used because it will become impossible to type " "using this key.\n" "\n" "Please try with a key such as Control, Alt or Shift at the same time.\n" msgstr "" "Klávesovou zkratku \"%s\" nelze nastavit, protože by nebylo možné s ní " "normálně psát.\n" "\n" "Zkuste to znovu s klávesami jako Ctrl, Alt, nebo Shift.\n" #: guake/guake_app.py:491 msgid "" "Guake is now running,\n" "press {!s} to use it." msgstr "" "Guake je nyní spuštěno,\n" "pro použití stiskněte {!s}." #: guake/main.py:153 msgid "Return the selected tab label." msgstr "Vrátit vybraný popisek karty." #: guake/data/prefs.glade:264 msgid "Never" msgstr "Nikdy" #: guake/data/prefs.glade:265 msgid "With process running" msgstr "S běžícím procesem" #: guake/data/prefs.glade:266 msgid "Always" msgstr "Vždy" #: guake/data/prefs.glade:499 msgid "Refocus if open" msgstr "Při otevření zaměřit" #: guake/data/prefs.glade:865 msgid "Custom command file path:" msgstr "Vlastní cesta ke skriptu:" #: guake/data/prefs.glade:1315 msgid "Show resizer" msgstr "Zobrazit nástroj pro změnu velikosti" #: guake/data/prefs.glade:1423 msgid "Block" msgstr "Blokový" #: guake/data/prefs.glade:1424 msgid "I-Beam" msgstr "Svislá čára" #: guake/data/prefs.glade:1425 msgid "Underline" msgstr "Podtrhávací čára" #: guake/data/prefs.glade:1443 msgid "Follow GTK+ setting" msgstr "Dle nastavení GTK+" #: guake/data/prefs.glade:1444 msgid "Blink on" msgstr "Blikat" #: guake/data/prefs.glade:1445 msgid "Blink off" msgstr "Neblikat" #: guake/data/prefs.glade:2236 msgid "" "Use the following elements in the open editor command line:\n" "- %(file_path)s: path to the file that has been clicked\n" "- %(line_number)s: if your editor supports it, you can directly open " "the file to a given line number when found on the screen.\n" "\n" "For example, for sublime, use subl %(file_path)s:%(line_number)s\n" "" msgstr "" "Použijte následující elementy při spouštění editoru:\n" " - %(file_path)s: cesta k souboru, na který bylo kliknuto\n" " - %(line_number)s: číslo řádku souboru, na kterém editor otevřít, " "pokud to nastavený editor podporuje a číslo bylo v odkazu.\n" "\n" "Například pro Sublime Text použijte subl %(file_path)s:%(line_number)s\n" "" #: guake/data/prefs.glade:2442 guake/data/prefs.glade:2462 msgid "ASCII DEL" msgstr "ASCII DEL" #: guake/data/prefs.glade:2443 guake/data/prefs.glade:2463 msgid "Escape sequence" msgstr "Escape sekvence" #: guake/data/prefs.glade:2444 guake/data/prefs.glade:2464 msgid "Control-H" msgstr "Control-H" #: guake/data/prefs.glade:2600 msgid "" "In this dialog you can attach your own command or script to various " "guake events" msgstr "" "V tomto dialogu můžete různým událostem v Guake přiřadit vlastní " "příkaz nebo skript" #: guake/data/prefs.glade:2635 msgid "On show:" msgstr "Při zobrazení:" #: guake/data/prefs.glade:2665 msgid "On start:" msgstr "Při spuštění:" #: guake/data/prefs.glade:2714 msgid "Hooks" msgstr "Hooky" #: guake/data/guake-prefs.desktop:8 msgid "Configure your Guake sessions" msgstr "Nastavit Guake sezení" #: guake/data/guake-prefs.desktop:15 guake/data/guake.desktop:18 msgid "guake" msgstr "guake" #: guake/data/guake-prefs.desktop:20 msgid "Terminal;Utility;" msgstr "Terminál;Nástroje;" #: guake/data/guake.desktop:10 msgid "Use the command line in a Quake-like terminal" msgstr "Používejte terminál jako ve hře Quake" #: guake/data/prefs.glade:770 msgid "Main Window Horizontal Alignment" msgstr "Horizontální umístění hlavního okna" #: guake/prefs.py:89 msgid "Show and focus Guake window" msgstr "Zobrazit a zaměřit okno Guake" #: guake/data/prefs.glade:566 msgid "0" msgstr "0" #: guake/data/prefs.glade:610 msgid "Main Window Options" msgstr "Možnosti hlavního okna" #: guake/data/prefs.glade:770 msgid "Horizontal Alignment:" msgstr "Horizontální umístění:" #: guake/data/prefs.glade:855 msgid "Height:" msgstr "Výška:" #: guake/data/prefs.glade:868 msgid "Width:" msgstr "Šířka:" #: guake/data/prefs.glade:913 msgid "Geometry" msgstr "Geometrie" #: guake/data/prefs.glade:944 msgid "Main Window" msgstr "Hlavní okno" #: guake/data/prefs.glade:1197 msgid "Infinite scrolling" msgstr "Nekonečné posouvání" #: guake/data/prefs.glade:1219 msgid "Scrollbar" msgstr "Posuvník" #: guake/data/prefs.glade:1304 msgid "Scroll to Bottom" msgstr "Posunout se na konec" #: guake/data/prefs.glade:2117 msgid "" "Quick open is a feature allowing you to open a file directly into your " "favorite text editor by clicking on its filename when it appears in your " "terminal. See the list of currently supported text patterns used to extract " "filename below." msgstr "" "Snadné otevření je funkce umožňující otevření souboru oblíbeným textovým " "editorem pouhým kliknutím na název souboru v terminálu. Seznam podporovaných " "textových vzorů použitých pro zjištění názvu souboru naleznete níže." #: guake/main.py:64 msgid "Show Guake version number and exit" msgstr "Zobrazit verzi Guake a ukončit" #: guake/data/prefs.glade:93 msgid "Guake properties" msgstr "Nastavení Guake" #: guake/data/prefs.glade:107 msgid "Customize behavior and appearance of Guake!" msgstr "Upravit chování a vzhled Guake!" #: guake/data/prefs.glade:929 msgid "Displacement in pixels" msgstr "Posun v pixelech" #: guake/main.py:73 msgid "Enable verbose logging" msgstr "Zaznamenávat události podrobněji" #: guake/guake_app.py:680 msgid "Quick Open: '{!s}...'" msgstr "Rychlé otevření: „{!s}…“" #: guake/guake_app.py:683 msgid "Quick Open: {!s}" msgstr "Rychlé otevření: {!s}" #: guake/guake_app.py:691 msgid "Open Link: '{!s}...'" msgstr "Otevřít odkaz: „{!s}…“" #: guake/guake_app.py:694 msgid "Open Link: {!s}" msgstr "Otevřít odkaz: {!s}" #: guake/data/prefs.glade:2175 msgid "" "WARNING: your system seems to have PCRE2 disabled for VTE, " "preventing application such as Guake to register \"matchers\" using regular " "expressions. Please contact your distribution to request a new version of " "VTE with PCRE2 enabled ! To use Quick Open, you must select the text " "before using Ctrl+click." msgstr "" "VAROVÁNÍ: zdá se, že váš systém má pro VTE vypnuté PCRE2, což " "brání aplikacím jako je Guake registrovat tzv. „shodovače“ pomocí " "regulárních výrazů. Obraťte se na vývojáře vámi používané distribuce a " "požádejte o novou verzi VTE se PCRE2 zapnutým! Pro použití Rychlého otevření " "je třeba před použitím Ctrl+kliknutí označit text." #: guake/guake_app.py:680 msgid "Quick Open: {!s}..." msgstr "Rychlé otevření: {!s}…" #: guake/guake_app.py:691 msgid "Open Link: {!s}..." msgstr "Otevřít odkaz: {!s}…" #: guake/guake_app.py:688 msgid "Quick Open..." msgstr "Rychlé otevření…" #: guake/data/prefs.glade:223 msgid "Start Guake at login" msgstr "Spouštět Guake při přihlášení" #: guake/data/prefs.glade:363 msgid "Gtk Theme:" msgstr "Gtk motiv vzhledu:" #: guake/data/prefs.glade:387 msgid "Prefer dark theme" msgstr "Upřednostňovat tmavý motiv vzhledu" #: guake/guake_app.py:435 msgid "Custom Commands" msgstr "Uživatelem určené příkazy" #: guake/main.py:184 msgid "" "Specify the tab to rename. Default is 0. Can be used to select tab by UUID." msgstr "" "Zadejte kterou kartu přejmenovat. Výchozí je 0 (nula). Je možné použít pro " "výběr karty podle nikde se neopak. identifikátoru." #: guake/main.py:212 msgid "" "Rename the specified tab by --tab-index. Reset to default if TITLE is a " "single dash \"-\"." msgstr "" "Přejmenovat určenou kartu pomocí --tab-index. Vrátit na výchozí hodnotu " "pokud TITLE je jeden mínus/spojovník („-“)." #: data/search.glade:138 msgid "Search forward" msgstr "Hledat dopředně" #: data/search.glade:153 msgid "Match case" msgstr "Rozlišovat malá/VELKÁ písmena" #: data/search.glade:186 msgid "Current search direction: Backward" msgstr "Stávající směr vyhledávání: pozpátku" #: data/prefs.glade:680 msgid "Set window title to current tab name" msgstr "Nastavit titulek okna na název stávající karty" #: guake/menus.py:48 msgid "Copy Url" msgstr "Zkopírovat URL adresu" #: guake/menus.py:62 msgid "Split ―" msgstr "Rozdělit ―" #: guake/menus.py:65 msgid "Split " msgstr "Rozdělit " #: guake/menus.py:68 guake/prefs.py:150 msgid "Close terminal" msgstr "Zavřít terminál" #: guake/prefs.py:137 msgid "Split management" msgstr "Správa rozdělování" #: guake/prefs.py:142 msgid "Split tab vertical" msgstr "Rozdělit kartu svisle" #: guake/prefs.py:146 msgid "Split tab horizontal" msgstr "Rozdělit kartu vodorovně" #: guake/prefs.py:154 msgid "Focus terminal above" msgstr "Zaměřit terminál nad" #: guake/prefs.py:158 msgid "Focus terminal below" msgstr "Zaměřit terminál pod" #: guake/prefs.py:162 msgid "Focus terminal on the left" msgstr "Zaměřit terminál nalevo" #: guake/prefs.py:166 msgid "Focus terminal on the right" msgstr "Zaměřit terminál napravo" #: guake/prefs.py:170 msgid "Move the terminal split handle up" msgstr "Přesunout ovládací prvek rozdělení terminálu nahoru" #: guake/prefs.py:174 msgid "Move the terminal split handle down" msgstr "Přesunout ovládací prvek rozdělení terminálu dolů" #: guake/prefs.py:178 msgid "Move the terminal split handle right" msgstr "Přesunout ovládací prvek rozdělení terminálu napravo" #: guake/prefs.py:182 msgid "Move the terminal split handle left" msgstr "Přesunout ovládací prvek rozdělení terminálu nalevo" #: guake/menus.py:65 msgid "Split |" msgstr "Rozdělit |" #: guake/menus.py:72 msgid "Save content..." msgstr "Uložit obsah…" #: data/prefs.glade:1182 msgid "" "This might not work on all shells, make sure that your shell supports the --" "login option" msgstr "" "Toto nemusí fungovat se všemi shelly – ověřte, že shell podporuje volbu --" "login" #: guake/prefs.py:128 msgid "New tab in home directory" msgstr "Nová karta s domovskou složkou" #: guake/dialogs.py:56 #, python-brace-format msgid " on {0} workspaces" msgstr " na {0} pracovních plochách" #: guake/main.py:211 msgid "Change Guake palette scheme" msgstr "Změnit schéma palety pro Guake" #: data/prefs.glade:331 msgid "Use workspace-specific tab sets (requires restart)" msgstr "Použít sady karet podle pracovních ploch (vyžaduje restart)" #: guake/main.py:175 msgid "Split the selected tab vertically." msgstr "Rozdělit označenou kartu svisle." #: guake/main.py:183 msgid "Split the selected tab horizontally." msgstr "Rozdělit označenou kartu vodorovně." #: data/prefs.glade:348 msgid "Show close buttons for tabs" msgstr "Zobrazovat na kartách tlačítka pro zavření" #: data/prefs.glade:1682 msgid "Bold text is also bright" msgstr "Tučný text je také rozjasněný" #: data/prefs.glade:1682 msgid "Bold text is also bright (VTE >=0.52)" msgstr "Tučný text je také rozjasněný (VTE verze 0.52 a starší)" #: guake/menus.py:42 msgid "Save Tabs" msgstr "Uložit karty" #: guake/menus.py:45 msgid "Restore Tabs" msgstr "Obnovit karty" #: guake/prefs.py:113 msgid "Search terminal" msgstr "Hledat terminál" #: guake/main.py:278 msgid "Save Guake preferences to this filename" msgstr "Uložit předvolby Guake do tohoto souboru" #: guake/main.py:286 msgid "Restore Guake preferences from this file" msgstr "Obnovit předvolby Guake z tohoto souboru" #: guake/guake_app.py:1192 #, python-brace-format msgid "Your session.json file is broken, backup to {session_filename}.bak" msgstr "" "Vás soubor session.json je poškozený, zálohovat do {session_filename}.bak" #: guake/guake_app.py:1228 #, python-brace-format msgid "" "Your session.json schema is broken, backup to {0}.bak,and error message has " "been saved to {0}.log.err" msgstr "" "Vaše schema session.json je poškozené, záloha do {0}.bak, a chybové hlášení " "bylo uložen do {0}.log.err" #: guake/guake_app.py:1239 msgid "Your tabs has been restored!" msgstr "Vaše karty byly obnoveny!" #: data/prefs.glade:190 msgid "Restore previous session (tabs)" msgstr "Obnovit předchozí relaci (karty)" #: data/prefs.glade:204 msgid "Enable notification when restore tabs" msgstr "Zapnout oznamování při obnovování karet" #: data/prefs.glade:218 msgid "Automatically save session when the tabs has been modified" msgstr "Automaticky uložit relaci když jsou karty upraveny" #: data/prefs.glade:238 msgid "Startup & Tabs (Experiment)" msgstr "Spouštění a karty (experiment)" #: guake/guake_app.py:1192 #, python-brace-format msgid "" "Your {session_filename} file is broken, backup to {session_filename}.bak" msgstr "" "Váš soubor {session_filename} je poškozený, záloha do {session_filename}.bak" #: guake/guake_app.py:1227 #, python-brace-format msgid "" "Your {session_filename} schema is broken, backup to {0}.bak,and error " "message has been saved to {session_filename}.log.err" msgstr "" "Váš {session_filename} schema je poškozené, záloha do {0}.bak, a chybové " "hlášení bylo uloženo do {session_filename}.log.err" #: guake/guake_app.py:1227 #, python-brace-format msgid "" "Your {session_filename} schema is broken, backup to {session_filename}.bak," "and error message has been saved to {session_filename}.log.err." msgstr "" "Vaše {session_filename} schema je poškozené, náhradně se použije " "{session_filename}.bak, a chybové hlášení bylo uloženo do {session_filename}." "log.err." #: guake/guake_app.py:1227 #, python-brace-format msgid "" "Your {session_filename} schema is broken, backup to {session_filename}.bak, " "and error message has been saved to {session_filename}.log.err." msgstr "" "Vaše {session_filename} schema je poškozené, náhradně bude použito " "{session_filename}.bak, a hlášení chyby bylo uloženo do {session_filename}." "log.err." #: guake/notebook.py:317 msgid "" "You are going to restore *all* the tabs!\n" "which means all your terminals & pages will be replaced.\n" "\n" "Do you want to continue?" msgstr "" "Chystáte se obnovit *všechny* karty!\n" "což znamená, že všechny terminály a stránky budou nahrazeny.\n" "\n" "Chcete pokračovat?" #: guake/main.py:296 msgid "Show support infomations" msgstr "Zobrazit informace pro podporu" #: guake/guake_app.py:1240 #, python-brace-format msgid "" "Tabs session restore abort.\n" "Your session file ({session_filename}) missing schema_version as key" msgstr "" #: guake/guake_app.py:1252 #, python-brace-format msgid "" "Tabs session restore abort.\n" "Your session file schema version is higher than current version " "({session_file_schema_version} > {current_schema_version})." msgstr "" #: guake/data/prefs.glade:409 msgid "Use workspace-specific tab sets (requires restart, only work on X11)" msgstr "" #~ msgid "key binding error" #~ msgstr "chyba klávesových zkratek" #~ msgid "Unable to bind global %s key" #~ msgstr "Nelze nastavit globální %s klávesu" #~ msgid "http://guake.org" #~ msgstr "http://guake.org" #~ msgid "" #~ "Tango\n" #~ "Linux console\n" #~ "XTerm\n" #~ "Rxvt\n" #~ "Custom\n" #~ msgstr "" #~ "Tango\n" #~ "Linux console\n" #~ "XTerm\n" #~ "Rxvt\n" #~ "Custom\n" #~ msgid "Select a tab" #~ msgstr "Vybrat kartu" #~ msgid "Rename the selected tab." #~ msgstr "Přejmenovat vybranou kartu." guake-3.6.3/po/de.po000066400000000000000000000731751346623310400142040ustar00rootroot00000000000000# Translation of Guake to German # Copyright (C) 2009 Guake Translators # This file is distributed under the same license as the Guake package. # # Translators: # Markus Majer , 2009 # Frank Dietrich , 2016 # Roman Zimmer , 2018 # Mario Aichinger , 2019 msgid "" msgstr "" "Project-Id-Version: Guake 0.4.5\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2018-07-07 19:07+0200\n" "PO-Revision-Date: 2019-05-06 20:48+0000\n" "Last-Translator: ssantos \n" "Language-Team: German \n" "Language: de\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=n != 1;\n" "X-Generator: Weblate 3.7-dev\n" #: guake/about.py:54 guake/keybindings.py:94 guake/guake_app.py:201 #: guake/guake_app.py:414 msgid "Guake Terminal" msgstr "Guake Terminal" #: guake/keybindings.py:96 #, python-format msgid "" "A problem happened when binding %s key.\n" "Please use Guake Preferences dialog to choose another key" msgstr "" "Ein Problem trat beim Belegen der Taste %s auf.\n" "Bitte benutzen Sie die Einstellungen, um eine andere Taste oder eine andere " "Tastenkombination zu wählen" #: guake/prefs.py:78 msgid "" msgstr "" #: guake/prefs.py:89 msgid "General" msgstr "Allgemein" #: guake/prefs.py:94 msgid "Toggle Guake visibility" msgstr "Sichtbarkeit von Guake umschalten" #: guake/prefs.py:98 msgid "Show and focus Guake window" msgstr "Zeige und fokussiere das Fenster von Guake" #: guake/prefs.py:102 msgid "Toggle Fullscreen" msgstr "Vollbildmodus umschalten" #: guake/prefs.py:106 msgid "Toggle Hide on Lose Focus" msgstr "Option \"Verstecken, wenn der Fokus verloren geht\" umschalten" #: guake/prefs.py:110 msgid "Quit" msgstr "Beenden" #: guake/prefs.py:114 msgid "Reset terminal" msgstr "Terminal zurücksetzen" #: guake/prefs.py:119 msgid "Tab management" msgstr "Reiter-Verwaltung" #: guake/prefs.py:124 msgid "New tab" msgstr "Neuer Reiter" #: guake/prefs.py:128 msgid "Close tab" msgstr "Reiter schließen" #: guake/prefs.py:132 msgid "Rename current tab" msgstr "Aktuellen Reiter umbenennen" #: guake/prefs.py:137 msgid "Navigation" msgstr "Navigation" #: guake/prefs.py:142 msgid "Go to previous tab" msgstr "Zum vorherigen Reiter wechseln" #: guake/prefs.py:146 msgid "Go to next tab" msgstr "Zum nächsten Reiter wechseln" #: guake/prefs.py:150 msgid "Move current tab left" msgstr "Aktuellen Reiter nach links verschieben" #: guake/prefs.py:154 msgid "Move current tab right" msgstr "Aktuellen Reiter nach rechts verschieben" #: guake/prefs.py:158 msgid "Go to first tab" msgstr "Zum ersten Reiter wechseln" #: guake/prefs.py:162 msgid "Go to second tab" msgstr "Zum zweiten Reiter wechseln" #: guake/prefs.py:166 msgid "Go to third tab" msgstr "Zum dritten Reiter wechseln" #: guake/prefs.py:170 msgid "Go to fourth tab" msgstr "Zum vierten Reiter wechseln" #: guake/prefs.py:174 msgid "Go to fifth tab" msgstr "Zum fünften Reiter wechseln" #: guake/prefs.py:178 msgid "Go to sixth tab" msgstr "Zum sechsten Reiter wechseln" #: guake/prefs.py:182 msgid "Go to seventh tab" msgstr "Zum siebten Reiter wechseln" #: guake/prefs.py:186 msgid "Go to eighth tab" msgstr "Zum achten Reiter wechseln" #: guake/prefs.py:190 msgid "Go to ninth tab" msgstr "Zum neunten Reiter wechseln" #: guake/prefs.py:194 msgid "Go to tenth tab" msgstr "Zum zehnten Reiter wechseln" #: guake/prefs.py:198 msgid "Go to last tab" msgstr "Zum letzten Reiter wechseln" #: guake/prefs.py:203 msgid "Appearance" msgstr "Aussehen" #: guake/prefs.py:207 msgid "Zoom out" msgstr "Verkleinern" #: guake/prefs.py:210 msgid "Zoom in" msgstr "Vergrößern" #: guake/prefs.py:213 msgid "Zoom in (alternative)" msgstr "Vergrößern (alternativ)" #: guake/prefs.py:216 msgid "Increase height" msgstr "Höhe erhöhen" #: guake/prefs.py:219 msgid "Decrease height" msgstr "Höhe verringern" #: guake/prefs.py:222 msgid "Increase transparency" msgstr "Transparenz erhöhen" #: guake/prefs.py:225 msgid "Decrease transparency" msgstr "Transparenz verringern" #: guake/prefs.py:228 msgid "Toggle transparency" msgstr "Transparenz umschalten" #: guake/prefs.py:232 msgid "Clipboard" msgstr "Zwischenablage" #: guake/prefs.py:237 msgid "Copy text to clipboard" msgstr "Kopiere Text in die Zwischenablage" #: guake/prefs.py:241 msgid "Paste text from clipboard" msgstr "Füge Text aus der Zwischenablage ein" #: guake/prefs.py:246 msgid "Extra features" msgstr "Zusätzliche Funktionen" #: guake/prefs.py:250 msgid "Search select text on web" msgstr "Markierten Text im Internet suchen" #: guake/prefs.py:686 msgid "Action" msgstr "Aktion" #: guake/prefs.py:694 msgid "Shortcut" msgstr "Tastenkombination" #: guake/prefs.py:849 guake/prefs.py:903 msgid "Custom" msgstr "Angepasst" #: guake/prefs.py:1194 msgid "JSON files" msgstr "JSON-Dateien" #: guake/prefs.py:1198 guake/guake_app.py:1895 msgid "All files" msgstr "Alle Dateien" #: guake/prefs.py:1293 #, python-format msgid "The shortcut \"%s\" is already in use." msgstr "Die Tastenkombination \"%s\" wird bereits verwendet." #: guake/prefs.py:1294 msgid "Error setting keybinding." msgstr "Fehler beim Setzen der Tastenkombination." #: guake/prefs.py:1310 #, python-format msgid "" "The shortcut \"%s\" cannot be used because it will become impossible to type " "using this key.\n" "\n" "Please try with a key such as Control, Alt or Shift at the same time.\n" msgstr "" "Die Tastenkombination \"%s\" kann nicht genutzt werden, weil es unmöglich " "wird mit dieser Kombination zu tippen.\n" "\n" "Versuchen Sie es mit den Tasten Strg, Alt oder Shift zur gleichen Zeit.\n" #: guake/main.py:70 msgid "Show Guake version number and exit" msgstr "Zeige die Versionsnummer von Guake und beende" #: guake/main.py:79 msgid "Enable verbose logging" msgstr "Ausführliches Protokollieren aktivieren" #: guake/main.py:88 msgid "Put Guake in fullscreen mode" msgstr "Guake in den Vollbildmodus schalten" #: guake/main.py:97 msgid "Toggles the visibility of the terminal window" msgstr "Ändert die Sichtbarkeit des Terminal-Fensters" #: guake/main.py:105 msgid "Shows Guake main window" msgstr "Zeigt das Hauptfenster von Guake" #: guake/main.py:113 msgid "Hides Guake main window" msgstr "Versteckt das Hauptfenster von Guake" #: guake/main.py:122 msgid "Shows Guake preference window" msgstr "Zeigt die Einstellungen von Guake" #: guake/main.py:131 msgid "Shows Guake's about info" msgstr "Zeigt die Programminformationen von Guake" #: guake/main.py:140 msgid "Add a new tab (with current directory set to NEW_TAB)" msgstr "" "Neuen Reiter hinzufügen (mit aktuellem Verzeichnis gesetzt auf NEW_TAB)" #: guake/main.py:149 msgid "Select a tab (SELECT_TAB is the index of the tab)" msgstr "Reiter auswählen (SELECT_TAB ist der Index des Reiters)" #: guake/main.py:158 msgid "Return the selected tab index." msgstr "Gibt den Index des ausgewählten Reiters zurück." #: guake/main.py:167 msgid "Return the selected tab label." msgstr "Gibt die Bezeichnung des ausgewählten Reiters zurück." #: guake/main.py:176 msgid "Execute an arbitrary command in the selected tab." msgstr "Beliebigen Befehl im ausgewählten Reiter ausführen." #: guake/main.py:185 msgid "" "Specify the tab to rename. Default is 0. Can be used to select tab by UUID." msgstr "" "Reiter zum Umbenennen angeben. Vorgabe ist 0. Kann benutzt werden, um einen " "Reiter per UUID auszuwählen." #: guake/main.py:193 msgid "Set the hexadecimal (#rrggbb) background color of the selected tab." msgstr "" "Hexadezimale (#rrggbb) Hintergrundfarbe des ausgewählten Reiters setzen." #: guake/main.py:202 msgid "Set the hexadecimal (#rrggbb) foreground color of the selected tab." msgstr "" "Hexadezimale (#rrggbb) Vordergrundfarbe des ausgewählten Reiters setzen." #: guake/main.py:213 msgid "" "Rename the specified tab by --tab-index. Reset to default if TITLE is a " "single dash \"-\"." msgstr "" "Den durch --tab-index angegebenen Reiter umbenennen. Auf die Voreinstellung " "zurücksetzen, wenn TITLE ein einzelner Bindestrich \"-\" ist." #: guake/main.py:225 msgid "" "Rename the current tab. Reset to default if TITLE is a single dash \"-\"." msgstr "" "Aktuellen Reiter umbenennen. Auf die Voreinstellung zurücksetzen, wenn TITLE " "ein Bindestrich \"-\" ist." #: guake/main.py:235 msgid "Says to Guake go away =(" msgstr "Sagt Guake, dass es verschwinden soll =(" #: guake/main.py:244 msgid "Do not execute the start up script" msgstr "Das Startskript nicht ausführen" #: guake/guake_app.py:133 msgid "Do you want to close the tab?" msgstr "Möchten Sie den Reiter schließen?" #: guake/guake_app.py:136 msgid "Do you really want to quit Guake?" msgstr "Möchten Sie Guake wirklich beenden?" #: guake/guake_app.py:138 msgid " and one tab open" msgstr " und ein geöffneter Reiter" #: guake/guake_app.py:140 #, python-brace-format msgid " and {0} tabs open" msgstr " und {0} geöffnete Reiter" #: guake/guake_app.py:143 msgid "There are no processes running" msgstr "Es existiert kein laufender Prozess" #: guake/guake_app.py:145 msgid "There is a process still running" msgstr "Es existiert noch ein laufender Prozess" #: guake/guake_app.py:147 #, python-brace-format msgid "There are {0} processes still running" msgstr "Es existieren noch {0} laufende Prozesse" #: guake/guake_app.py:207 msgid "guake-indicator" msgstr "Guake-Indikator" #: guake/guake_app.py:207 msgid "guake-tray" msgstr "Guake-Tray" #: guake/guake_app.py:212 msgid "Show" msgstr "Anzeigen" #: guake/guake_app.py:415 msgid "" "Guake is now running,\n" "press {!s} to use it." msgstr "" "Guake wurde gestartet.\n" "Bitte drücken Sie {!s} zum Verwenden." #: guake/guake_app.py:470 msgid "Custom Commands" msgstr "Eigene Befehle" #: guake/guake_app.py:723 #, python-format msgid "Search on Web: '%s'" msgstr "Im Internet suchen: '%s'" #: guake/guake_app.py:727 msgid "Search on Web (no selection)" msgstr "Im Internet suchen (keine Auswahl)" #: guake/guake_app.py:739 msgid "Quick Open: {!s}..." msgstr "Schnell-Öffnen: {!s} …" #: guake/guake_app.py:742 msgid "Quick Open: {!s}" msgstr "Schnell-Öffnen: {!s}" #: guake/guake_app.py:745 msgid "Quick Open..." msgstr "Schnell-Öffnen …" #: guake/guake_app.py:753 msgid "Open Link: {!s}..." msgstr "Verweis öffnen: {!s} …" #: guake/guake_app.py:756 msgid "Open Link: {!s}" msgstr "Verweis öffnen: {!s}" #: guake/guake_app.py:759 msgid "Open Link..." msgstr "Verweis öffnen …" #: guake/guake_app.py:1499 msgid "Terminal" msgstr "Terminal" #: guake/guake_app.py:1555 msgid "Rename tab" msgstr "Reiter umbenennen" #: guake/guake_app.py:1890 msgid "Save to..." msgstr "Speichern unter …" #: guake/guake_app.py:1900 msgid "Text and Logs" msgstr "Text und Protokolle" #: guake/guake_app.py:1920 msgid "Find" msgstr "Suchen" #: guake/guake_app.py:1922 msgid "Forward" msgstr "Nächsten" #: guake/guake_app.py:1922 msgid "Backward" msgstr "Vorherigen" #: data/about.glade:14 msgid "" "Guake is an easy to access\n" "terminal based on FPS games terminal" msgstr "" "Guake ist ein einfach zugängliches\n" "Terminal, basierend auf denen bekannter\n" "Egoshooter" #: data/prefs.glade:43 msgid "Guake Preferences" msgstr "Guake-Einstellungen" #: data/prefs.glade:93 msgid "Guake properties" msgstr "Guake-Einstellungen" #: data/prefs.glade:107 msgid "Customize behavior and appearance of Guake!" msgstr "" "Passen Sie das Aussehen und Verhalten von Guake an Ihre Bedürfnisse an!" #: data/prefs.glade:190 msgid "Enable popup notifications on startup" msgstr "Popup-Benachrichtigungen beim Start einschalten" #: data/prefs.glade:207 msgid "_Play system alert sound on bell" msgstr "Bei Terminalglocke Systemalarmton _ausgeben" #: data/prefs.glade:223 msgid "Start Guake at login" msgstr "Guake bei Anmeldung starten" #: data/prefs.glade:246 msgid "Prompt on close tab:" msgstr "Beim Schließen eines Reiters nachfragen:" #: data/prefs.glade:260 msgid "Never" msgstr "Niemals" #: data/prefs.glade:261 msgid "With process running" msgstr "Bei laufendem Prozess" #: data/prefs.glade:262 msgid "Always" msgstr "Immer" #: data/prefs.glade:281 msgid "Always prompt on quit" msgstr "Beim Beenden immer nachfragen" #: data/prefs.glade:297 msgid "Show tray icon" msgstr "Symbol in der Benachrichtigungsleiste anzeigen" #: data/prefs.glade:313 msgid "_Flash terminal on bell" msgstr "_Blinken bei Terminalglocke" #: data/prefs.glade:337 data/prefs.glade:1635 msgid "General" msgstr "Allgemein" #: data/prefs.glade:363 msgid "Gtk Theme:" msgstr "GTK+-Thema:" #: data/prefs.glade:387 msgid "Prefer dark theme" msgstr "Dunkles Thema bevorzugen" #: data/prefs.glade:416 msgid "Custom command file path:" msgstr "Datei für benutzerdefinierte Anpassungen:" #: data/prefs.glade:428 msgid "Please select a json file" msgstr "Bitte wählen Sie eine JSON-Datei aus" #: data/prefs.glade:516 msgid "Refocus if open" msgstr "Fokus wiederherstellen, wenn bereits geöffnet" #: data/prefs.glade:533 msgid "Hide on lose focus" msgstr "Verstecken, wenn der Fokus verloren geht" #: data/prefs.glade:550 msgid "Start fullscreen" msgstr "Im Vollbildmodus starten" #: data/prefs.glade:566 msgid "Stay on top" msgstr "Im Vordergrund bleiben" #: data/prefs.glade:584 msgid "Show tab bar" msgstr "Reiterleiste anzeigen" #: data/prefs.glade:600 msgid "Use VTE titles for tab names" msgstr "VTE-Titel als Reiternamen benutzen" #: data/prefs.glade:618 msgid "Abbreviate directories in tab names" msgstr "Verzeichnisnamen in Reitern abkürzen" #: data/prefs.glade:643 msgid "Max tab name length:" msgstr "Max. Länge der Reiternamen:" #: data/prefs.glade:658 msgid "0" msgstr "0" #: data/prefs.glade:680 msgid "Set window title to current tab name" msgstr "Fenstertitel auf aktuellen Reiternamen setzen" #: data/prefs.glade:702 msgid "Main Window Options" msgstr "Hauptfenster-Optionen" #: data/prefs.glade:733 msgid "Bottom align window instead of top align" msgstr "Fenster am unteren anstatt oberen Rand ausrichten" #: data/prefs.glade:749 msgid "Appear on mouse display" msgstr "Auf dem Mausbildschirm anzeigen" #: data/prefs.glade:774 msgid "Appear on display:" msgstr "Anzeigedisplay:" #: data/prefs.glade:804 msgid "Place tabs on top" msgstr "Reiter oben platzieren" #: data/prefs.glade:826 msgid "Placement" msgstr "Platzierung" #: data/prefs.glade:862 msgid "Horizontal Alignment:" msgstr "Horizontale Ausrichtung:" #: data/prefs.glade:878 msgid "Left" msgstr "Links" #: data/prefs.glade:898 msgid "Center" msgstr "Mittig" #: data/prefs.glade:918 msgid "Right" msgstr "Rechts" #: data/prefs.glade:947 msgid "Height:" msgstr "Höhe:" #: data/prefs.glade:960 msgid "Width:" msgstr "Breite:" #: data/prefs.glade:1014 msgid "Displacement in pixels" msgstr "Verschiebung in Pixeln" #: data/prefs.glade:1042 msgid "Geometry" msgstr "Geometrie" #: data/prefs.glade:1073 msgid "Main Window" msgstr "Hauptfenster" #: data/prefs.glade:1118 msgid "Default interpreter:" msgstr "Vorgabe-Interpreter:" #: data/prefs.glade:1157 msgid "_Run command as a login shell" msgstr "Befehl als _Login-Shell ausführen" #: data/prefs.glade:1175 msgid "_Open new tab in current directory" msgstr "_Neuen Reiter in aktuellem Verzeichnis öffnen" #: data/prefs.glade:1220 msgid "Shell" msgstr "Shell" #: data/prefs.glade:1266 msgid "Show scrollbar" msgstr "Bildlaufleiste anzeigen" #: data/prefs.glade:1290 msgid "Scrollback lines:" msgstr "Zeilenpuffer:" #: data/prefs.glade:1326 msgid "Infinite scrolling" msgstr "Unendlicher Bildlauf" #: data/prefs.glade:1348 msgid "Scrollbar" msgstr "Bildlaufleiste" #: data/prefs.glade:1393 msgid "On output" msgstr "Bei Ausgabe" #: data/prefs.glade:1410 msgid "On key stroke" msgstr "Bei Tastendruck" #: data/prefs.glade:1433 msgid "Scroll to Bottom" msgstr "Ans Ende springen" #: data/prefs.glade:1457 msgid "Scrolling" msgstr "Bildlauf" #: data/prefs.glade:1492 msgid "Use the system fixed width font" msgstr "Dicktengleiche Systemschrift benutzen" #: data/prefs.glade:1520 msgid "Font:" msgstr "Schriftart:" #: data/prefs.glade:1535 msgid "Choose some font" msgstr "Schrift auswählen" #: data/prefs.glade:1549 msgid "Cursor shape:" msgstr "Form der Eingabemarke:" #: data/prefs.glade:1564 msgid "Block" msgstr "Rechteck" #: data/prefs.glade:1565 msgid "I-Beam" msgstr "Senkrechter Strich" #: data/prefs.glade:1566 msgid "Underline" msgstr "Unterstrich" #: data/prefs.glade:1580 msgid "Cursor blink mode:" msgstr "Blinkende Eingabemarke:" #: data/prefs.glade:1594 msgid "Follow GTK+ setting" msgstr "Vorgabe" #: data/prefs.glade:1595 msgid "Blink on" msgstr "Aktiviert" #: data/prefs.glade:1596 msgid "Blink off" msgstr "Deaktiviert" #: data/prefs.glade:1613 msgid "Allow bold font" msgstr "Schriftstärke fett erlauben" #: data/prefs.glade:1670 msgid "Built-in schemes:" msgstr "Integrierte Schemata:" #: data/prefs.glade:1696 msgid "Color palette:" msgstr "Farbpalette:" #: data/prefs.glade:1711 msgid "Demo:" msgstr "Demo:" #: data/prefs.glade:2014 msgid "Palette" msgstr "Farbpalette" #: data/prefs.glade:2036 msgid "Effects" msgstr "Effekte" #: data/prefs.glade:2061 msgid "Transparency:" msgstr "Transparenz:" #: data/prefs.glade:2145 msgid "" "To change a shortcut simply click on its name.\n" "To disable a shortcut, press the \"Backspace\" key." msgstr "" "Um eine Tastenkombination zu ändern, klicken Sie auf dessen Namen.\n" "Um eine Tastenkombination abzuschalten, drücken Sie die \"Rücktaste\"." #: data/prefs.glade:2195 msgid "Keyboard shortcuts" msgstr "Tastenkombinationen" #: data/prefs.glade:2247 msgid "" "Quick open is a feature allowing you to open a file directly into your " "favorite text editor by clicking on its filename when it appears in your " "terminal. See the list of currently supported text patterns used to extract " "filename below." msgstr "" "Schnell-Öffnen ist eine Funktion, die es Ihnen erlaubt, Dateien durch Klick " "auf den Dateinamen direkt in Ihrem favorisierten Texteditor zu öffnen. Die " "Liste der momentan unterstützen Textmuster zum Extrahieren der Dateinamen " "sehen Sie unten." #: data/prefs.glade:2285 msgid "Enable Quick Open when Ctrl+clicking on a filename in the terminal" msgstr "" "Schnell-Öffnen bei Strg+Klick auf einen Dateinamen im Terminal aktivieren" #: data/prefs.glade:2310 msgid "Editor command line:" msgstr "Editor-Befehlszeile:" #: data/prefs.glade:2356 msgid "" "Use the following elements in the open editor command line:\n" "- %(file_path)s: path to the file that has been clicked\n" "- %(line_number)s: if your editor supports it, you can directly open " "the file to a given line number when found on the screen.\n" "\n" "For example, for sublime, use subl %(file_path)s:%(line_number)s\n" "" msgstr "" "Benutzen Sie die folgenden Platzhalter in der \"Editor-Befehlszeile" "\":\n" " - %(file_path)s: Pfad zu der Datei, die angeklickt wurde.\n" " - %(line_number)s: Falls Ihr Editor es unterstützt, können Sie die " "Datei direkt an der angegebenen Zeilennummer öffnen, wenn diese vorhanden " "ist.\n" "\n" "Zum Beispiel benutzen Sie für sublime: subl %(file_path)s:" "%(line_number)s\n" "" #: data/prefs.glade:2411 msgid "Quick open in current terminal" msgstr "Schnell-Öffnen im aktuellen Terminal" #: data/prefs.glade:2455 data/guake.glade:134 msgid "Quick Open" msgstr "Schnell-Öffnen" #: data/prefs.glade:2505 msgid "" "In this dialog you can attach your own command or script to various " "guake events" msgstr "" "In diesem Dialog können Sie einen Befehl oder ein Skript mit " "verschiedenen Guake-Ereignissen verknüpfen" #: data/prefs.glade:2527 msgid "On show:" msgstr "Beim Anzeigen:" #: data/prefs.glade:2539 msgid "On start:" msgstr "Beim Starten:" # From Wikipedia: https://de.wikipedia.org/wiki/Hook_(Informatik) #: data/prefs.glade:2605 msgid "Hooks" msgstr "Einschubmethoden" #: data/prefs.glade:2634 msgid "" "Note: These options may cause some applications to behave " "incorrectly. They are only here to allow you to work around certain " "applications and operating systems that expect different terminal behavior." msgstr "" "Hinweis: Diese Optionen könnten dazu führen, dass einige " "Programme nicht mehr ordnungsgemäß funktionieren. Diese Optionen dienen nur " "dazu, verschiedene Programme und Systeme zu unterstützen, die ein anderes " "Verhalten des Terminals erwarten." #: data/prefs.glade:2654 msgid "_Backspace key generates:" msgstr "_Rücktaste erzeugt:" #: data/prefs.glade:2667 msgid "_Delete key generates:" msgstr "_Entfernen-Taste erzeugt:" #: data/prefs.glade:2682 data/prefs.glade:2699 msgid "ASCII DEL" msgstr "ASCII DEL" #: data/prefs.glade:2683 data/prefs.glade:2700 msgid "Escape sequence" msgstr "Escape-Sequenz" #: data/prefs.glade:2684 data/prefs.glade:2701 msgid "Control-H" msgstr "Strg-H" #: data/prefs.glade:2726 msgid "_Reset Compatibility Options to Defaults" msgstr "Kompatibilitätseinstellungen auf Vorgabewerte _zurücksetzen" #: data/prefs.glade:2757 msgid "Compatibility" msgstr "Kompatibilität" #: data/search.glade:22 data/guake.glade:206 msgid "Close" msgstr "Schließen" #: data/search.glade:138 msgid "Search forward" msgstr "Nächsten suchen" #: data/search.glade:153 msgid "Match case" msgstr "Groß-/Kleinschreibung beachten" #: data/search.glade:186 msgid "Current search direction: Backward" msgstr "Aktuelle Suchrichtung: Vorherig" #: data/guake.glade:11 msgid "Copy" msgstr "Kopieren" #: data/guake.glade:20 msgid "Paste" msgstr "Einfügen" #: data/guake.glade:50 msgid "Save to File..." msgstr "In Datei speichern …" #: data/guake.glade:68 msgid "Find..." msgstr "Suchen …" #: data/guake.glade:83 data/guake.glade:188 msgid "New Tab" msgstr "Neuer Reiter" #: data/guake.glade:92 msgid "Rename Tab" msgstr "Reiter umbenennen" #: data/guake.glade:101 msgid "Close Tab" msgstr "Reiter schließen" #: data/guake.glade:116 msgid "Open link..." msgstr "Verweis öffnen …" #: data/guake.glade:125 msgid "Search on Web" msgstr "Im Internet suchen" #: data/guake.glade:197 msgid "Rename" msgstr "Umbenennen" #: data/guake.glade:256 msgid "Guake!" msgstr "Guake!" #: data/guake.desktop:32 data/autostart-guake.desktop:31 #: data/guake.template.desktop:4 msgid "Use the command line in a Quake-like terminal" msgstr "Verwenden Sie die Befehlszeile in einem Quake-ähnlichen Terminal" #: data/guake.desktop:40 data/autostart-guake.desktop:39 #: data/guake-prefs.desktop:41 data/guake-prefs.template.desktop:7 #: data/guake.template.desktop:7 msgid "guake" msgstr "guake" #: data/guake-prefs.desktop:33 data/guake-prefs.template.desktop:4 msgid "Configure your Guake sessions" msgstr "Konfigurieren Sie Ihre Guake-Sitzungen" #: data/guake-prefs.desktop:52 data/guake-prefs.template.desktop:13 msgid "Terminal;Utility;" msgstr "Terminal;Dienstprogramm;" #: guake/menus.py:42 msgid "Copy Url" msgstr "Verweis kopieren" #: guake/menus.py:62 msgid "Split ―" msgstr "Teile ―" #: guake/menus.py:65 msgid "Split " msgstr "Teile " #: guake/menus.py:68 guake/prefs.py:150 msgid "Close terminal" msgstr "Terminal schließen" #: guake/prefs.py:137 msgid "Split management" msgstr "Teilungsverwaltung" #: guake/prefs.py:142 msgid "Split tab vertical" msgstr "Tab vertikal aufteilen" #: guake/prefs.py:146 msgid "Split tab horizontal" msgstr "Tab horizontal aufteilen" #: guake/prefs.py:154 msgid "Focus terminal above" msgstr "Terminal oberhalb fokusieren" #: guake/prefs.py:158 msgid "Focus terminal below" msgstr "Terminal unterhalb fokusieren" #: guake/prefs.py:162 msgid "Focus terminal on the left" msgstr "Terminal links fokusieren" #: guake/prefs.py:166 msgid "Focus terminal on the right" msgstr "Terminal rechts fokusieren" #: guake/prefs.py:170 msgid "Move the terminal split handle up" msgstr "Terminal-Trenner nach oben bewegen" #: guake/prefs.py:174 msgid "Move the terminal split handle down" msgstr "Terminal-Trenner nach unten bewegen" #: guake/prefs.py:178 msgid "Move the terminal split handle right" msgstr "Terminal-Trenner nach rechts bewegen" #: guake/prefs.py:182 msgid "Move the terminal split handle left" msgstr "Terminal-Trenner nach links bewegen" #: guake/menus.py:65 msgid "Split |" msgstr "Teilen |" #: guake/menus.py:72 msgid "Save content..." msgstr "Inhalt speichern..." #: data/prefs.glade:1182 msgid "" "This might not work on all shells, make sure that your shell supports the --" "login option" msgstr "" "Dies funktioniert möglicherweise nicht in allen Shells, stellen Sie sicher " "das Ihre Shell --login unterstützt" #: data/prefs.glade:331 msgid "Use workspace-specific tab sets" msgstr "Jedem Workspace eigene Tabs zuweisen" #: guake/prefs.py:128 msgid "New tab in home directory" msgstr "Neuen Tab im HOME-Verzeichnis" #: guake/dialogs.py:56 #, python-brace-format msgid " on {0} workspaces" msgstr " auf {0} Arbeitsflächen" #: guake/main.py:211 msgid "Change Guake palette scheme" msgstr "Guake-Farbpalettenschema ändern" #: data/prefs.glade:331 msgid "Use workspace-specific tab sets (requires restart)" msgstr "Arbeitsflächenspezifische Tab-Gruppen verwenden (erfordert Neustart)" #: guake/main.py:175 msgid "Split the selected tab vertically." msgstr "Die ausgewählte Registerkarte vertikal aufteilen." #: guake/main.py:183 msgid "Split the selected tab horizontally." msgstr "Die ausgewählte Registerkarte horizontal aufteilen." #: data/prefs.glade:348 msgid "Show close buttons for tabs" msgstr "Schließen-Knöpfe für Registerkarten anzeigen" #: data/prefs.glade:1682 msgid "Bold text is also bright" msgstr "Fettgedruckter Text ist auch hell" #: data/prefs.glade:1682 msgid "Bold text is also bright (VTE >=0.52)" msgstr "Fettgedruckter Text ist ebenfalls hell (VTE >=0,52)" #: guake/menus.py:42 msgid "Save Tabs" msgstr "Registerkarten speichern" #: guake/menus.py:45 msgid "Restore Tabs" msgstr "Registerkarten Wiederherstellen" #: guake/prefs.py:113 msgid "Search terminal" msgstr "Terminal durchsuchen" #: guake/main.py:278 msgid "Save Guake preferences to this filename" msgstr "Guake-Einstellungen unter diesem Dateinamen speichern" #: guake/main.py:286 msgid "Restore Guake preferences from this file" msgstr "Guake-Einstellungen aus dieser Datei wiederherstellen" #: guake/guake_app.py:1192 #, python-brace-format msgid "Your session.json file is broken, backup to {session_filename}.bak" msgstr "" "Ihre session.json-Datei ist defekt, Sicherung auf {session_filename}.bak" #: guake/guake_app.py:1228 #, python-brace-format msgid "" "Your session.json schema is broken, backup to {0}.bak,and error message has " "been saved to {0}.log.err" msgstr "" "Ihr session.json-Schema ist defekt, Backup auf {0}.bak erstellen und die " "Fehlermeldung wurde auf {0}.log.err gespeichert" #: guake/guake_app.py:1239 msgid "Your tabs has been restored!" msgstr "Ihre Registerkarten wurden wiederhergestellt!" #: guake/tests/test_about.py:23 msgid "About Guake" msgstr "Über Guake" #: data/prefs.glade:190 msgid "Restore previous session (tabs)" msgstr "Wiederherstellen der vorherigen Sitzung (Registerkarten)" #: data/prefs.glade:204 msgid "Enable notification when restore tabs" msgstr "" "Benachrichtigung bei der Wiederherstellung von Registerkarten aktivieren" #: data/prefs.glade:218 msgid "Automatically save session when the tabs has been modified" msgstr "Sitzung automatisch speichern, wenn die Registerkarten geändert wurden" #: data/prefs.glade:238 msgid "Startup & Tabs (Experiment)" msgstr "Start & Registerkarten (Experiment)" #: guake/guake_app.py:1192 #, python-brace-format msgid "" "Your {session_filename} file is broken, backup to {session_filename}.bak" msgstr "" "Ihre {session_filename} Datei ist beschädigt, Backup auf {session_filename}." "bak" #: guake/guake_app.py:1227 #, python-brace-format msgid "" "Your {session_filename} schema is broken, backup to {0}.bak,and error " "message has been saved to {session_filename}.log.err" msgstr "" "Ihr Schema {session_filename} ist defekt, Backup auf {0}.bak erstellt und " "die Fehlermeldung wurde unter {session_filename}.log.err gespeichert" #: guake/guake_app.py:1227 #, python-brace-format msgid "" "Your {session_filename} schema is broken, backup to {session_filename}.bak," "and error message has been saved to {session_filename}.log.err." msgstr "" "Ihr Schema {session_filename} ist beschädigt, Backup auf {session_filename}." "bak erstellt und die Fehlermeldung wurde auf {session_filename}.log.err " "gespeichert." #: guake/guake_app.py:1227 #, python-brace-format msgid "" "Your {session_filename} schema is broken, backup to {session_filename}.bak, " "and error message has been saved to {session_filename}.log.err." msgstr "" "Ihr Schema {session_filename} ist beschädigt, Backup auf {session_filename}." "bak erstellt und die Fehlermeldung wurde auf {session_filename}.log.err " "gespeichert." #: guake/notebook.py:317 msgid "" "You are going to restore *all* the tabs!\n" "which means all your terminals & pages will be replaced.\n" "\n" "Do you want to continue?" msgstr "" "Sie werden * alle * Tabs wiederherstellen!\n" "Das bedeutet, dass alle Terminals und Seiten ersetzt werden.\n" "\n" "Wollen Sie weitermachen?" #: guake/main.py:296 msgid "Show support infomations" msgstr "Support-Informationen anzeigen" #: guake/guake_app.py:1240 #, python-brace-format msgid "" "Tabs session restore abort.\n" "Your session file ({session_filename}) missing schema_version as key" msgstr "" #: guake/guake_app.py:1252 #, python-brace-format msgid "" "Tabs session restore abort.\n" "Your session file schema version is higher than current version " "({session_file_schema_version} > {current_schema_version})." msgstr "" #: guake/data/prefs.glade:409 msgid "Use workspace-specific tab sets (requires restart, only work on X11)" msgstr "" guake-3.6.3/po/el.po000066400000000000000000001025421346623310400142030ustar00rootroot00000000000000# translation of el.po to # Μετάφραση του Guake-terminal # Copyright (C) 2007 Gabriel Falcão # Copyright (C) 2007 Lincoln de Sousa # This file is distributed under the same license as the Guake package. # Μαριμπής Αβραάμ , 2009 # msgid "" msgstr "" "Project-Id-Version: Guake 0.4.5\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2016-08-18 17:32+0200\n" "PO-Revision-Date: 2018-01-25 21:00+0100\n" "Last-Translator: Μαριμπής Αβραάμ \n" "Language-Team: guake@lists.guake.org\n" "Language: el\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "X-Generator: Poedit 2.0.6\n" #: ../guake/data/about.glade.h:1 msgid "About Guake" msgstr "Περί του Guake" #: ../guake/data/about.glade.h:5 #, fuzzy msgid "" "Guake is an easy to access\n" "terminal based on FPS games terminal" msgstr "" "Το Guake είναι ένα ευκόλως προσβάσιμο\n" "τερματικό βασισμένο στο τερματικό των\n" "παιχνιδιών πρώτου προσώπου" #: ../guake/data/guake.glade.h:1 msgid "Copy" msgstr "Αντιγραφή" #: ../guake/data/guake.glade.h:2 msgid "Paste" msgstr "Επικόλληση" #: ../guake/data/guake.glade.h:3 ../src/guake/prefs.py:79 msgid "Toggle Fullscreen" msgstr "Εναλλαγή πλήρους οθόνης" #: ../guake/data/guake.glade.h:4 msgid "Save to File..." msgstr "" #: ../guake/data/guake.glade.h:5 ../src/guake/prefs.py:85 #, fuzzy msgid "Reset terminal" msgstr "Guake-Terminal" #: ../guake/data/guake.glade.h:6 msgid "Find..." msgstr "" #: ../guake/data/guake.glade.h:7 #, fuzzy msgid "New Tab" msgstr "Νέα καρτέλα" #: ../guake/data/guake.glade.h:8 #, fuzzy msgid "Rename Tab" msgstr "Μετονομασία καρτέλας" #: ../guake/data/guake.glade.h:9 msgid "Close Tab" msgstr "Κλείσιμο Καρτέλας" #: ../guake/data/guake.glade.h:10 msgid "Open link..." msgstr "" #: ../guake/data/guake.glade.h:11 msgid "Search on Web" msgstr "" #: ../guake/data/guake.glade.h:12 ../src/guake/prefs.py:83 msgid "Quit" msgstr "Έξοδος" #: ../guake/data/guake.glade.h:13 msgid "Rename" msgstr "Μετονομασία" #: ../guake/data/guake.glade.h:14 msgid "Close" msgstr "Κλείσιμο" #: ../guake/data/guake.glade.h:15 msgid "Guake!" msgstr "Guake!" #: ../guake/data/guake.glade.h:16 #, fuzzy msgid "Add a new tab" msgstr "Προσθήκη νέας καρτέλας" #: ../guake/data/prefs.glade.h:1 msgid "Guake Preferences" msgstr "Προτιμήσεις του Guake" #: ../guake/data/prefs.glade.h:2 msgid "Guake properties" msgstr "Ιδιότητες Guake" #: ../guake/data/prefs.glade.h:3 msgid "" "Customize behavior and appearance of Guake!" msgstr "" "Προσαρμόστε τη συμπεριφορά και την εμφάνιση του Guake!" "" #: ../guake/data/prefs.glade.h:4 msgid "" "Path to a bash script that would be automatically executed when Guake " "starts, unless you specify --no-startup-script.\n" "\n" "This would typically use the configuration by command line feature of " "Guake:\n" "\n" "#!/bin/bash\n" "\n" "sleep 5 # it is advised to wait a bit before Guake has been successfully " "started\n" "\n" "guake -r \"main\" -e \"cd ~/projects/myproject/main\"\n" "guake -r \"prod\" -e \"cd ~/projects/myproject/prod\"\n" msgstr "" #: ../guake/data/prefs.glade.h:15 msgid "Enable popup notifications on startup" msgstr "Ενεργοποίηση αναδυόμενων ειδοποιήσεων κατά την εκκίνηση" #: ../guake/data/prefs.glade.h:16 msgid "Show tray icon" msgstr "Εμφάνιση εικονιδίου συστήματος" #: ../guake/data/prefs.glade.h:17 msgid "Always prompt on quit" msgstr "" #: ../guake/data/prefs.glade.h:18 msgid "_Flash terminal on bell" msgstr "" #: ../guake/data/prefs.glade.h:19 msgid "_Play system alert sound on bell" msgstr "" #: ../guake/data/prefs.glade.h:20 msgid "Path to script executed on Guake start:" msgstr "" #: ../guake/data/prefs.glade.h:21 msgid "Prompt on close tab:" msgstr "" #: ../guake/data/prefs.glade.h:22 msgid "" "Never\n" "With process running\n" "Always" msgstr "" #: ../guake/data/prefs.glade.h:25 msgid "General" msgstr "Γενικά" #: ../guake/data/prefs.glade.h:26 msgid "Bottom align window instead of top align" msgstr "" #: ../guake/data/prefs.glade.h:27 msgid "Appear on mouse display" msgstr "" #: ../guake/data/prefs.glade.h:28 msgid "Appear on display:" msgstr "" #: ../guake/data/prefs.glade.h:29 #, fuzzy msgid "Place tabs on top" msgstr "Μείνε στο προσκήνιο" #: ../guake/data/prefs.glade.h:30 #, fuzzy msgid "Placement" msgstr "Γραμματοσειρές" #: ../guake/data/prefs.glade.h:31 msgid "Stay on top" msgstr "Μείνε στο προσκήνιο" #: ../guake/data/prefs.glade.h:32 msgid "Use VTE titles for tab names" msgstr "" #: ../guake/data/prefs.glade.h:33 msgid "Max tab name length:" msgstr "" #: ../guake/data/prefs.glade.h:34 msgid "0 means no size limit" msgstr "" #: ../guake/data/prefs.glade.h:35 msgid "Abbreviate directories in tab names" msgstr "" #: ../guake/data/prefs.glade.h:36 msgid "Hide on lose focus" msgstr "Απόκρυψη όταν χάνει εστίαση" #: ../guake/data/prefs.glade.h:37 msgid "Show tab bar" msgstr "Εμφάνισε την γραμμή καρτελών" #: ../guake/data/prefs.glade.h:38 #, fuzzy msgid "Start fullscreen" msgstr "Εναλλαγή πλήρους οθόνης" #: ../guake/data/prefs.glade.h:39 msgid "Main Window" msgstr "Κεντρικό Παράθυρο" #: ../guake/data/prefs.glade.h:40 msgid "Left" msgstr "" #: ../guake/data/prefs.glade.h:41 msgid "Center" msgstr "" #: ../guake/data/prefs.glade.h:42 msgid "Right" msgstr "" #: ../guake/data/prefs.glade.h:43 #, fuzzy msgid "Main Window Horizontal Alignment" msgstr "Μέγεθος κεντρικού παραθύρου" #: ../guake/data/prefs.glade.h:44 #, fuzzy msgid "Main Window Height" msgstr "Κεντρικό Παράθυρο" #: ../guake/data/prefs.glade.h:45 #, fuzzy msgid "Main Window Width" msgstr "Κεντρικό Παράθυρο" #: ../guake/data/prefs.glade.h:46 msgid "Custom command file path: " msgstr "" #: ../guake/data/prefs.glade.h:47 msgid "Please select a json file" msgstr "" #: ../guake/data/prefs.glade.h:48 ../src/guake/prefs.py:75 msgid "General" msgstr "Γενικά" #: ../guake/data/prefs.glade.h:49 msgid "Default interpreter:" msgstr "Προκαθορισμένος μεταγλωττιστής:" #: ../guake/data/prefs.glade.h:50 msgid "_Run command as a login shell" msgstr "_Εκτέλεση εντολής ως κέλυφος σύνδεσης" #: ../guake/data/prefs.glade.h:51 msgid "_Open new tab in current directory" msgstr "" #: ../guake/data/prefs.glade.h:52 msgid "Shell" msgstr "Κελύφος" #: ../guake/data/prefs.glade.h:53 msgid "Shell" msgstr "" #: ../guake/data/prefs.glade.h:54 msgid "Show scrollbar" msgstr "Εμφάνιση γραμμή κύλισης" #: ../guake/data/prefs.glade.h:55 msgid "Scrollback lines:" msgstr "Γραμμές κύλισης προς τα πίσω:" #: ../guake/data/prefs.glade.h:56 msgid "On output" msgstr "Όταν υπάρχει έξοδος" #: ../guake/data/prefs.glade.h:57 msgid "On key stroke" msgstr "Στο πάτημα ενός πλήκτρου" #: ../guake/data/prefs.glade.h:58 msgid "Scroll" msgstr "Κύλιση" #: ../guake/data/prefs.glade.h:59 msgid "Scrolling" msgstr "Κύλιση" #: ../guake/data/prefs.glade.h:60 msgid "Use the system fixed width font" msgstr "" #: ../guake/data/prefs.glade.h:61 msgid "Font:" msgstr "" #: ../guake/data/prefs.glade.h:62 msgid "Choose some font" msgstr "Επιλογή γραμματοσειράς" #: ../guake/data/prefs.glade.h:63 msgid "Text color:" msgstr "" #: ../guake/data/prefs.glade.h:64 msgid "Background color:" msgstr "" #: ../guake/data/prefs.glade.h:65 msgid "Cursor shape:" msgstr "" #: ../guake/data/prefs.glade.h:66 msgid "" "Block\n" "I-Beam\n" "Underline" msgstr "" #: ../guake/data/prefs.glade.h:69 msgid "" "Follow GTK+ setting\n" "Blink on\n" "Blink off" msgstr "" #: ../guake/data/prefs.glade.h:72 msgid "Cursor blink mode:" msgstr "" #: ../guake/data/prefs.glade.h:73 msgid "Allow bold font" msgstr "" #: ../guake/data/prefs.glade.h:74 #, fuzzy msgid "Palette" msgstr "Γενικά" #: ../guake/data/prefs.glade.h:75 msgid "Built-in schemes:" msgstr "" #: ../guake/data/prefs.glade.h:76 #, fuzzy msgid "Color palette:" msgstr "Χρώμα:" #: ../guake/data/prefs.glade.h:77 msgid "Font color" msgstr "" #: ../guake/data/prefs.glade.h:78 #, fuzzy msgid "Background color" msgstr "Φόντο" #: ../guake/data/prefs.glade.h:79 msgid "Use font and background color from the palette" msgstr "" #: ../guake/data/prefs.glade.h:80 msgid "Demo:" msgstr "" #: ../guake/data/prefs.glade.h:81 #, fuzzy msgid "Effects" msgstr "Γραμματοσειρές" #: ../guake/data/prefs.glade.h:82 msgid "Transparency:" msgstr "Διαφάνεια:" #: ../guake/data/prefs.glade.h:83 msgid "Background image:" msgstr "" #: ../guake/data/prefs.glade.h:84 ../src/guake/prefs.py:130 msgid "Appearance" msgstr "Εμφάνιση" #: ../guake/data/prefs.glade.h:85 msgid "" "Quick open is a feature allowing you to open a file directly into " "your favorite text editor by clicking on its filename when it appears in " "your terminal. See the list of currently supported text patterns used to " "extract filename below." msgstr "" #: ../guake/data/prefs.glade.h:86 msgid "Enable Quick Open when Ctrl+clicking on a filename in the terminal" msgstr "" #: ../guake/data/prefs.glade.h:87 msgid "Editor command line:" msgstr "" #: ../guake/data/prefs.glade.h:89 #, no-c-format msgid "" "Use the following elements in the open editor command line:\n" " - %(file_path)s: path to the file that has been clicked\n" " - %(line_number)s: if your editor supports it, you can directly open " "the file to a given line number when found on the screen.\n" "\n" "For example, for sublime, use subl %(file_path)s:%(line_number)s\n" "" msgstr "" #: ../guake/data/prefs.glade.h:95 msgid "Quick open in current terminal" msgstr "" #: ../guake/data/prefs.glade.h:96 msgid "" "Here is the list of supported patterns: (to add your own, please contact the " "Guake's authors)" msgstr "" #: ../guake/data/prefs.glade.h:97 #, fuzzy msgid "Quick Open" msgstr "Γραμματοσειρές" #: ../guake/data/prefs.glade.h:98 msgid "Quick Open" msgstr "" #: ../guake/data/prefs.glade.h:99 msgid "" "To change a shortcut simply click on its name.\n" "To disable a shortcut, press the \"Backspace\" key." msgstr "" #: ../guake/data/prefs.glade.h:101 msgid "Keyboard shortcuts" msgstr "Συντομεύσεις πληκτρολογίου" #: ../guake/data/prefs.glade.h:102 msgid "" "Note: These options may cause some applications to behave " "incorrectly. They are only here to allow you to work around certain " "applications and operating systems that expect different terminal behavior." msgstr "" "Σημείωση: Αυτές οι επιλογές ίσως προκαλέσουν μερικές " "εφαρμογές να συμπεριφέρονται εσφαλμένα. Σκοπός τους είναι να σας επιτρέψουν " "να δουλέψετε με συγκεκριμένες εφαρμογές και λειτουργικά συστήματα τα οποία " "απαιτούν διαφορετική συμπεριφορά από το τερματικό." #: ../guake/data/prefs.glade.h:103 msgid "" "ASCII DEL\n" "Escape sequence\n" "Control-H" msgstr "" "ASCII DEL\n" "Escape sequence\n" "Control-H" #: ../guake/data/prefs.glade.h:106 msgid "_Backspace key generates:" msgstr "Το πλήκτρο _Backspace παράγει:" #: ../guake/data/prefs.glade.h:107 msgid "_Delete key generates:" msgstr "Το πλήκτρο _Delete παράγει:" #: ../guake/data/prefs.glade.h:108 msgid "_Reset Compatibility Options to Defaults" msgstr "_Επαναφορά των Προκαθορισμένων Ρυθμίσεων Συμβατότητας" #: ../guake/data/prefs.glade.h:109 msgid "Keyboard compatibility" msgstr "Συμβατότητα πληκτρολογίου" #: ../guake/data/prefs.glade.h:110 msgid "Compatibility" msgstr "Συμβατότητα" #: ../src/guake/about.py:47 ../src/guake/gconfhandler.py:439 #: ../src/guake/guake_app.py:181 ../src/guake/guake_app.py:378 #, fuzzy msgid "Guake Terminal" msgstr "Guake-Terminal" #: ../src/guake/gconfhandler.py:369 ../src/guake/guake_app.py:1386 #, fuzzy msgid "Terminal" msgstr "Τερματικό %s" #: ../src/guake/gconfhandler.py:440 #, fuzzy, python-format msgid "" "A problem happened when binding %s key.\n" "Please use Guake Preferences dialog to choose another key" msgstr "" "Παρουσιάστηκε ένα πρόβλημα κατά την σύνδεση του πλήκτρου %s.\n" "Παρακαλώ χρησιμοποιήστε την φόρμα Ρυθμίσεων του Guake και επιλέξτε ένα " "διαφορετικό πλήκτρο (Το εικονίδιο συστήματος ήταν ενεργοποιημένο)" #: ../src/guake/guake_app.py:132 msgid "Do you want to close the tab?" msgstr "" #: ../src/guake/guake_app.py:135 msgid "Do you really want to quit Guake?" msgstr "" #: ../src/guake/guake_app.py:137 #, fuzzy msgid " and one tab open" msgstr "Προσθήκη νέας καρτέλας" #: ../src/guake/guake_app.py:139 #, python-brace-format msgid " and {0} tabs open" msgstr "" #: ../src/guake/guake_app.py:142 msgid "There are no processes running" msgstr "" #: ../src/guake/guake_app.py:144 msgid "There is a process still running" msgstr "" #: ../src/guake/guake_app.py:146 #, python-brace-format msgid "There are {0} processes still running" msgstr "" #: ../src/guake/guake_app.py:186 msgid "guake-indicator" msgstr "" #: ../src/guake/guake_app.py:186 msgid "guake-tray" msgstr "" #: ../src/guake/guake_app.py:190 msgid "Show" msgstr "" #: ../src/guake/guake_app.py:379 #, fuzzy, python-format msgid "" "Guake is now running,\n" "press {!s} to use it." msgstr "" "Το Guake εκτελείται ήδη,\n" "πατήστε {!s} για να το χρησιμοποιήσετε." #: ../src/guake/guake_app.py:670 #, python-format msgid "Search on Web: '%s'" msgstr "" #: ../src/guake/guake_app.py:675 msgid "Search on Web (no selection)" msgstr "" #: ../src/guake/guake_app.py:683 msgid "Open Link: '{}...'" msgstr "" #: ../src/guake/guake_app.py:685 msgid "Open Link: {}" msgstr "" #: ../src/guake/guake_app.py:688 msgid "Open Link..." msgstr "" #: ../src/guake/guake_app.py:1425 msgid "Rename tab" msgstr "Μετονομασία καρτέλας" #: ../src/guake/guake_app.py:1736 msgid "Save to..." msgstr "" #: ../src/guake/guake_app.py:1743 ../src/guake/prefs.py:973 msgid "All files" msgstr "" #: ../src/guake/guake_app.py:1748 msgid "Text and Logs" msgstr "" #: ../src/guake/guake_app.py:1766 msgid "Find" msgstr "" #: ../src/guake/guake_app.py:1768 msgid "Forward" msgstr "" #: ../src/guake/guake_app.py:1769 msgid "Backward" msgstr "" #: ../src/guake/main.py:68 msgid "Put Guake in fullscreen mode" msgstr "" #: ../src/guake/main.py:72 msgid "Toggles the visibility of the terminal window" msgstr "Εναλλάσει την ορατότητα του τερματικού παραθύρου" #: ../src/guake/main.py:76 #, fuzzy msgid "Shows Guake main window" msgstr "Εμφανίζει το παράθυρο προτιμήσεων του Guake" #: ../src/guake/main.py:80 #, fuzzy msgid "Hides Guake main window" msgstr "Εμφανίζει το παράθυρο προτιμήσεων του Guake" #: ../src/guake/main.py:84 msgid "Shows Guake preference window" msgstr "Εμφανίζει το παράθυρο προτιμήσεων του Guake" #: ../src/guake/main.py:88 msgid "Shows Guake's about info" msgstr "Εμφανίζει πληροφορίες περί του Guake" #: ../src/guake/main.py:92 msgid "Add a new tab (with current directory set to NEW_TAB)" msgstr "" #: ../src/guake/main.py:96 msgid "Select a tab (SELECT_TAB is the index of the tab)" msgstr "" #: ../src/guake/main.py:100 msgid "Return the selected tab index." msgstr "Restituisce l'indice della scheda selezionata." #: ../src/guake/main.py:104 msgid "Execute an arbitrary command in the selected tab." msgstr "Εκτέλεσε μία εντολή στην επιλεγμένη καρτέλα" #: ../src/guake/main.py:108 msgid "Specify the tab to rename. Default is 0." msgstr "" #: ../src/guake/main.py:112 msgid "Set the hexadecimal (#rrggbb) background color of the selected tab." msgstr "" #: ../src/guake/main.py:117 msgid "Set the hexadecimal (#rrggbb) foreground color of the selected tab." msgstr "" #: ../src/guake/main.py:123 msgid "" "Rename the specified tab. Reset to default if TITLE is a single dash \"-\"." msgstr "" #: ../src/guake/main.py:129 msgid "" "Rename the current tab. Reset to default if TITLE is a single dash \"-\"." msgstr "" #: ../src/guake/main.py:134 msgid "Says to Guake go away =(" msgstr "Λέει στο Guake να φύγει =(" #: ../src/guake/main.py:138 msgid "Do not execute the start up script" msgstr "" #: ../src/guake/main.py:235 msgid "Guake can not init!" msgstr "Το Guake δεν μπορεί να ξεκινήσει!" #: ../src/guake/main.py:236 #, fuzzy msgid "" "Gconf Error.\n" "Have you installed guake.schemas properly?" msgstr "" "Σφάλμα Gconf.\n" "Έχετε εγκαταστήσει το guake.schemas σωστά;" #. string to show in prefereces dialog for user shell option #: ../src/guake/prefs.py:67 msgid "" msgstr "<κέλυφος χρήστη>" #: ../src/guake/prefs.py:77 msgid "Toggle Guake visibility" msgstr "Εναλλαγή ορατότητας του Guake" #: ../src/guake/prefs.py:81 #, fuzzy msgid "Toggle Hide on Lose Focus" msgstr "Απόκρυψη όταν χάνει εστίαση" #: ../src/guake/prefs.py:88 msgid "Tab management" msgstr "Διαχείρηση καρτελών" #: ../src/guake/prefs.py:90 #, fuzzy msgid "New tab" msgstr "Νέα καρτέλα" #: ../src/guake/prefs.py:92 msgid "Close tab" msgstr "Κλείσμο καρτέλας" #: ../src/guake/prefs.py:94 msgid "Rename current tab" msgstr "Μετονομασία τρέχουσας καρτέλας" #: ../src/guake/prefs.py:97 msgid "Navigation" msgstr "Πλοήγηση" #: ../src/guake/prefs.py:99 msgid "Go to previous tab" msgstr "Μετάβαση στην προηγούμενη καρτέλα" #: ../src/guake/prefs.py:101 msgid "Go to next tab" msgstr "Μετάβαση στην επόμενη καρτέλα" #: ../src/guake/prefs.py:103 #, fuzzy msgid "Move current tab left" msgstr "Μετονομασία τρέχουσας καρτέλας" #: ../src/guake/prefs.py:105 #, fuzzy msgid "Move current tab right" msgstr "Μετονομασία τρέχουσας καρτέλας" #: ../src/guake/prefs.py:107 #, fuzzy msgid "Go to first tab" msgstr "Μετάβαση στην επόμενη καρτέλα" #: ../src/guake/prefs.py:109 #, fuzzy msgid "Go to second tab" msgstr "Μετάβαση στην επόμενη καρτέλα" #: ../src/guake/prefs.py:111 #, fuzzy msgid "Go to third tab" msgstr "Μετάβαση στην επόμενη καρτέλα" #: ../src/guake/prefs.py:113 #, fuzzy msgid "Go to fourth tab" msgstr "Μετάβαση στην επόμενη καρτέλα" #: ../src/guake/prefs.py:115 #, fuzzy msgid "Go to fifth tab" msgstr "Μετάβαση στην επόμενη καρτέλα" #: ../src/guake/prefs.py:117 #, fuzzy msgid "Go to sixth tab" msgstr "Μετάβαση στην επόμενη καρτέλα" #: ../src/guake/prefs.py:119 #, fuzzy msgid "Go to seventh tab" msgstr "Μετάβαση στην επόμενη καρτέλα" #: ../src/guake/prefs.py:121 #, fuzzy msgid "Go to eighth tab" msgstr "Μετάβαση στην επόμενη καρτέλα" #: ../src/guake/prefs.py:123 #, fuzzy msgid "Go to ninth tab" msgstr "Μετάβαση στην επόμενη καρτέλα" #: ../src/guake/prefs.py:125 #, fuzzy msgid "Go to tenth tab" msgstr "Μετάβαση στην επόμενη καρτέλα" #: ../src/guake/prefs.py:127 #, fuzzy msgid "Go to last tab" msgstr "Μετάβαση στην επόμενη καρτέλα" #: ../src/guake/prefs.py:132 msgid "Zoom out" msgstr "" #: ../src/guake/prefs.py:134 msgid "Zoom in" msgstr "" #: ../src/guake/prefs.py:136 msgid "Zoom in (alternative)" msgstr "" #: ../src/guake/prefs.py:138 msgid "Increase height" msgstr "" #: ../src/guake/prefs.py:140 msgid "Decrease height" msgstr "" #: ../src/guake/prefs.py:142 #, fuzzy msgid "Increase transparency" msgstr "Διαφάνεια:" #: ../src/guake/prefs.py:144 #, fuzzy msgid "Decrease transparency" msgstr "Διαφάνεια:" #: ../src/guake/prefs.py:146 #, fuzzy msgid "Toggle transparency" msgstr "Διαφάνεια:" #: ../src/guake/prefs.py:149 msgid "Clipboard" msgstr "Πρόχειρο" #: ../src/guake/prefs.py:151 msgid "Copy text to clipboard" msgstr "Αντιγραφή κειμένου στο πρόχειρο" #: ../src/guake/prefs.py:153 msgid "Paste text from clipboard" msgstr "Επικόλληση κειμένου από το πρόχειρο" #: ../src/guake/prefs.py:156 msgid "Extra features" msgstr "" #: ../src/guake/prefs.py:159 msgid "Search select text on web" msgstr "" #: ../src/guake/prefs.py:481 msgid "Action" msgstr "Ενέργεια" #: ../src/guake/prefs.py:491 msgid "Shortcut" msgstr "Συντόμευση" #: ../src/guake/prefs.py:651 ../src/guake/prefs.py:697 msgid "Custom" msgstr "" #: ../src/guake/prefs.py:969 msgid "JSON files" msgstr "" #: ../src/guake/prefs.py:1063 #, python-format msgid "The shortcut \"%s\" is already in use." msgstr "Η συντόμευση \"%s\" είναι σε χρήση." #: ../src/guake/prefs.py:1064 msgid "Error setting keybinding." msgstr "Σφάλμα κατά τη ρύθμιση συντομεύσεων πληκτρολογίου" #: ../src/guake/prefs.py:1076 #, python-format msgid "" "The shortcut \"%s\" cannot be used because it will become impossible to type " "using this key.\n" "\n" "Please try with a key such as Control, Alt or Shift at the same time.\n" msgstr "" "Η συντόμευση \"%s\" δεν μπορεί να χρησιμοποιηθεί γιατί θα καταστεί αδύνατο " "να πληκτρολογείτε χρησιμοποιώντας αυτό το πλήκτρο.\n" "\n" "Παρακαλώ δοκιμάστε πατώντας ταυτόχρονα ένα πλήκτρο όπως Control, Alt ή " "Shift.\n" #: guake/main.py:153 msgid "Return the selected tab label." msgstr "" #: guake/data/prefs.glade:264 msgid "Never" msgstr "" #: guake/data/prefs.glade:265 msgid "With process running" msgstr "" #: guake/data/prefs.glade:266 msgid "Always" msgstr "" #: guake/data/prefs.glade:499 msgid "Refocus if open" msgstr "" #: guake/data/prefs.glade:865 msgid "Custom command file path:" msgstr "" #: guake/data/prefs.glade:1315 msgid "Show resizer" msgstr "" #: guake/data/prefs.glade:1423 msgid "Block" msgstr "" #: guake/data/prefs.glade:1424 msgid "I-Beam" msgstr "" #: guake/data/prefs.glade:1425 msgid "Underline" msgstr "" #: guake/data/prefs.glade:1443 msgid "Follow GTK+ setting" msgstr "" #: guake/data/prefs.glade:1444 msgid "Blink on" msgstr "" #: guake/data/prefs.glade:1445 msgid "Blink off" msgstr "" #: guake/data/prefs.glade:2236 msgid "" "Use the following elements in the open editor command line:\n" "- %(file_path)s: path to the file that has been clicked\n" "- %(line_number)s: if your editor supports it, you can directly open " "the file to a given line number when found on the screen.\n" "\n" "For example, for sublime, use subl %(file_path)s:%(line_number)s\n" "" msgstr "" #: guake/data/prefs.glade:2442 guake/data/prefs.glade:2462 msgid "ASCII DEL" msgstr "" #: guake/data/prefs.glade:2443 guake/data/prefs.glade:2463 msgid "Escape sequence" msgstr "" #: guake/data/prefs.glade:2444 guake/data/prefs.glade:2464 msgid "Control-H" msgstr "" #: guake/data/prefs.glade:2600 msgid "" "In this dialog you can attach your own command or script to various " "guake events" msgstr "" #: guake/data/prefs.glade:2635 msgid "On show:" msgstr "" #: guake/data/prefs.glade:2665 msgid "On start:" msgstr "" #: guake/data/prefs.glade:2714 msgid "Hooks" msgstr "" #: guake/data/guake-prefs.desktop:8 msgid "Configure your Guake sessions" msgstr "" #: guake/data/guake-prefs.desktop:15 guake/data/guake.desktop:18 msgid "guake" msgstr "" #: guake/data/guake-prefs.desktop:20 msgid "Terminal;Utility;" msgstr "" #: guake/data/guake.desktop:10 msgid "Use the command line in a Quake-like terminal" msgstr "" #: guake/data/prefs.glade:770 msgid "Main Window Horizontal Alignment" msgstr "" #: guake/prefs.py:89 msgid "Show and focus Guake window" msgstr "" #: guake/data/prefs.glade:566 msgid "0" msgstr "" #: guake/data/prefs.glade:610 msgid "Main Window Options" msgstr "" #: guake/data/prefs.glade:770 msgid "Horizontal Alignment:" msgstr "" #: guake/data/prefs.glade:855 msgid "Height:" msgstr "" #: guake/data/prefs.glade:868 msgid "Width:" msgstr "" #: guake/data/prefs.glade:913 msgid "Geometry" msgstr "" #: guake/data/prefs.glade:944 msgid "Main Window" msgstr "" #: guake/data/prefs.glade:1197 msgid "Infinite scrolling" msgstr "" #: guake/data/prefs.glade:1219 msgid "Scrollbar" msgstr "" #: guake/data/prefs.glade:1304 msgid "Scroll to Bottom" msgstr "" #: guake/data/prefs.glade:2117 msgid "" "Quick open is a feature allowing you to open a file directly into your " "favorite text editor by clicking on its filename when it appears in your " "terminal. See the list of currently supported text patterns used to extract " "filename below." msgstr "" #: guake/main.py:64 msgid "Show Guake version number and exit" msgstr "" #: guake/data/prefs.glade:93 msgid "Guake properties" msgstr "Ιδιότητες Guake" #: guake/data/prefs.glade:107 msgid "Customize behavior and appearance of Guake!" msgstr "Προσαρμόστε τη συμπεριφορά και την εμφάνιση του Guake!" #: guake/data/prefs.glade:929 msgid "Displacement in pixels" msgstr "" #: guake/main.py:73 msgid "Enable verbose logging" msgstr "" #: guake/guake_app.py:680 msgid "Quick Open: '{!s}...'" msgstr "" #: guake/guake_app.py:683 msgid "Quick Open: {!s}" msgstr "" #: guake/guake_app.py:691 msgid "Open Link: '{!s}...'" msgstr "" #: guake/guake_app.py:694 msgid "Open Link: {!s}" msgstr "" #: guake/data/prefs.glade:2175 msgid "" "WARNING: your system seems to have PCRE2 disabled for VTE, " "preventing application such as Guake to register \"matchers\" using regular " "expressions. Please contact your distribution to request a new version of " "VTE with PCRE2 enabled ! To use Quick Open, you must select the text " "before using Ctrl+click." msgstr "" #: guake/guake_app.py:680 msgid "Quick Open: {!s}..." msgstr "" #: guake/guake_app.py:691 msgid "Open Link: {!s}..." msgstr "" #: guake/guake_app.py:688 msgid "Quick Open..." msgstr "" #: guake/data/prefs.glade:223 msgid "Start Guake at login" msgstr "" #: guake/data/prefs.glade:363 msgid "Gtk Theme:" msgstr "" #: guake/data/prefs.glade:387 msgid "Prefer dark theme" msgstr "" #: guake/guake_app.py:435 msgid "Custom Commands" msgstr "" #: guake/main.py:184 msgid "" "Specify the tab to rename. Default is 0. Can be used to select tab by UUID." msgstr "" #: guake/main.py:212 msgid "" "Rename the specified tab by --tab-index. Reset to default if TITLE is a " "single dash \"-\"." msgstr "" #: data/search.glade:138 msgid "Search forward" msgstr "" #: data/search.glade:153 msgid "Match case" msgstr "" #: data/search.glade:186 msgid "Current search direction: Backward" msgstr "" #: data/prefs.glade:680 msgid "Set window title to current tab name" msgstr "" #: guake/menus.py:48 msgid "Copy Url" msgstr "" #: guake/menus.py:62 msgid "Split ―" msgstr "" #: guake/menus.py:65 msgid "Split " msgstr "" #: guake/menus.py:68 guake/prefs.py:150 msgid "Close terminal" msgstr "" #: guake/prefs.py:137 msgid "Split management" msgstr "" #: guake/prefs.py:142 msgid "Split tab vertical" msgstr "" #: guake/prefs.py:146 msgid "Split tab horizontal" msgstr "" #: guake/prefs.py:154 msgid "Focus terminal above" msgstr "" #: guake/prefs.py:158 msgid "Focus terminal below" msgstr "" #: guake/prefs.py:162 msgid "Focus terminal on the left" msgstr "" #: guake/prefs.py:166 msgid "Focus terminal on the right" msgstr "" #: guake/prefs.py:170 msgid "Move the terminal split handle up" msgstr "" #: guake/prefs.py:174 msgid "Move the terminal split handle down" msgstr "" #: guake/prefs.py:178 msgid "Move the terminal split handle right" msgstr "" #: guake/prefs.py:182 msgid "Move the terminal split handle left" msgstr "" #: guake/menus.py:65 msgid "Split |" msgstr "" #: guake/menus.py:72 msgid "Save content..." msgstr "" #: data/prefs.glade:1182 msgid "" "This might not work on all shells, make sure that your shell supports the --" "login option" msgstr "" #: guake/prefs.py:128 msgid "New tab in home directory" msgstr "" #: guake/dialogs.py:56 #, python-brace-format msgid " on {0} workspaces" msgstr "" #: guake/main.py:211 msgid "Change Guake palette scheme" msgstr "" #: data/prefs.glade:331 msgid "Use workspace-specific tab sets (requires restart)" msgstr "" #: guake/main.py:175 msgid "Split the selected tab vertically." msgstr "" #: guake/main.py:183 msgid "Split the selected tab horizontally." msgstr "" #: data/prefs.glade:348 msgid "Show close buttons for tabs" msgstr "" #: data/prefs.glade:1682 msgid "Bold text is also bright" msgstr "" #: data/prefs.glade:1682 msgid "Bold text is also bright (VTE >=0.52)" msgstr "" #: guake/menus.py:42 msgid "Save Tabs" msgstr "" #: guake/menus.py:45 msgid "Restore Tabs" msgstr "" #: guake/prefs.py:113 msgid "Search terminal" msgstr "" #: guake/main.py:278 msgid "Save Guake preferences to this filename" msgstr "" #: guake/main.py:286 msgid "Restore Guake preferences from this file" msgstr "" #: guake/guake_app.py:1192 #, python-brace-format msgid "Your session.json file is broken, backup to {session_filename}.bak" msgstr "" #: guake/guake_app.py:1228 #, python-brace-format msgid "" "Your session.json schema is broken, backup to {0}.bak,and error message has " "been saved to {0}.log.err" msgstr "" #: guake/guake_app.py:1239 msgid "Your tabs has been restored!" msgstr "" #: data/prefs.glade:190 msgid "Restore previous session (tabs)" msgstr "" #: data/prefs.glade:204 msgid "Enable notification when restore tabs" msgstr "" #: data/prefs.glade:218 msgid "Automatically save session when the tabs has been modified" msgstr "" #: data/prefs.glade:238 msgid "Startup & Tabs (Experiment)" msgstr "" #: guake/guake_app.py:1192 #, python-brace-format msgid "" "Your {session_filename} file is broken, backup to {session_filename}.bak" msgstr "" #: guake/guake_app.py:1227 #, python-brace-format msgid "" "Your {session_filename} schema is broken, backup to {0}.bak,and error " "message has been saved to {session_filename}.log.err" msgstr "" #: guake/guake_app.py:1227 #, python-brace-format msgid "" "Your {session_filename} schema is broken, backup to {session_filename}.bak," "and error message has been saved to {session_filename}.log.err." msgstr "" #: guake/guake_app.py:1227 #, python-brace-format msgid "" "Your {session_filename} schema is broken, backup to {session_filename}.bak, " "and error message has been saved to {session_filename}.log.err." msgstr "" #: guake/notebook.py:317 msgid "" "You are going to restore *all* the tabs!\n" "which means all your terminals & pages will be replaced.\n" "\n" "Do you want to continue?" msgstr "" #: guake/main.py:296 msgid "Show support infomations" msgstr "" #: guake/guake_app.py:1240 #, python-brace-format msgid "" "Tabs session restore abort.\n" "Your session file ({session_filename}) missing schema_version as key" msgstr "" #: guake/guake_app.py:1252 #, python-brace-format msgid "" "Tabs session restore abort.\n" "Your session file schema version is higher than current version " "({session_file_schema_version} > {current_schema_version})." msgstr "" #: guake/data/prefs.glade:409 msgid "Use workspace-specific tab sets (requires restart, only work on X11)" msgstr "" #~ msgid "key binding error" #~ msgstr "σφάλμα συντόμευσης πληκτρολογίου" #~ msgid "Unable to bind global %s key" #~ msgstr "Αδυναμία καθολικής σύνδεσης του πλήκτρου \"%s\"" #, fuzzy #~ msgid "http://guake.org" #~ msgstr "http://guake-terminal.org" #~ msgid "Choose some color" #~ msgstr "Επιλογή χρώματος" #~ msgid "Image:" #~ msgstr "Εικόνα:" #~ msgid "Style:" #~ msgstr "Στυλ:" #~ msgid "Use system defaults" #~ msgstr "Χρησιμοποίησε τις προκαθορισμένες ρυθμίσεις" #~ msgid "Select a tab" #~ msgstr "Επιλέξτε μία καρτέλα" #~ msgid "Rename the selected tab." #~ msgstr "Μετονομασία της επιλεγμένης καρτέλας" guake-3.6.3/po/es.po000066400000000000000000001032051346623310400142070ustar00rootroot00000000000000# Tradução do Guake-terminal # Copyright (C) Guake Translators # This file is distributed under the same license as the Guake package. # # Translators: # Gabriel Falcão , 2007 # Diego Martinez , 2009 # Ricardo Hermosilla , 2012 msgid "" msgstr "" "Project-Id-Version: Guake 0.4.5\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2016-08-18 17:32+0200\n" "PO-Revision-Date: 2018-01-25 21:00+0100\n" "Last-Translator: Dante Bravo \n" "Language-Team: Spanish (http://www.transifex.com/projects/p/guake/language/" "es/)\n" "Language: es\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" "X-Generator: Poedit 2.0.6\n" #: ../guake/data/about.glade.h:1 msgid "About Guake" msgstr "Acerca de Guake" #: ../guake/data/about.glade.h:5 #, fuzzy msgid "" "Guake is an easy to access\n" "terminal based on FPS games terminal" msgstr "" "Guake es un terminal de fácil acceso\n" "basado en los terminales de los juegos\n" "de acción en primera persona." #: ../guake/data/guake.glade.h:1 msgid "Copy" msgstr "Copiar" #: ../guake/data/guake.glade.h:2 msgid "Paste" msgstr "Pegar" #: ../guake/data/guake.glade.h:3 ../src/guake/prefs.py:79 msgid "Toggle Fullscreen" msgstr "Conmutar pantalla completa" #: ../guake/data/guake.glade.h:4 msgid "Save to File..." msgstr "Guardar en fichero..." #: ../guake/data/guake.glade.h:5 ../src/guake/prefs.py:85 msgid "Reset terminal" msgstr "Reiniciar terminal" #: ../guake/data/guake.glade.h:6 msgid "Find..." msgstr "Buscar..." #: ../guake/data/guake.glade.h:7 msgid "New Tab" msgstr "Nueva pestaña" #: ../guake/data/guake.glade.h:8 msgid "Rename Tab" msgstr "Renombrar pestaña" #: ../guake/data/guake.glade.h:9 msgid "Close Tab" msgstr "Cerrar pestaña" #: ../guake/data/guake.glade.h:10 msgid "Open link..." msgstr "Abrir vínculo..." #: ../guake/data/guake.glade.h:11 msgid "Search on Web" msgstr "Buscar en la Web" #: ../guake/data/guake.glade.h:12 ../src/guake/prefs.py:83 msgid "Quit" msgstr "Salir" #: ../guake/data/guake.glade.h:13 msgid "Rename" msgstr "Renombrar" #: ../guake/data/guake.glade.h:14 msgid "Close" msgstr "Cerrar" #: ../guake/data/guake.glade.h:15 msgid "Guake!" msgstr "Guake!" #: ../guake/data/guake.glade.h:16 msgid "Add a new tab" msgstr "Agregar nueva pestaña" #: ../guake/data/prefs.glade.h:1 msgid "Guake Preferences" msgstr "Preferencias de Guake" #: ../guake/data/prefs.glade.h:2 msgid "Guake properties" msgstr "" "Propiedades de Guake" #: ../guake/data/prefs.glade.h:3 msgid "" "Customize behavior and appearance of Guake!" msgstr "" "Personaliza el comportamiento y apariencia Guake!" #: ../guake/data/prefs.glade.h:4 msgid "" "Path to a bash script that would be automatically executed when Guake " "starts, unless you specify --no-startup-script.\n" "\n" "This would typically use the configuration by command line feature of " "Guake:\n" "\n" "#!/bin/bash\n" "\n" "sleep 5 # it is advised to wait a bit before Guake has been successfully " "started\n" "\n" "guake -r \"main\" -e \"cd ~/projects/myproject/main\"\n" "guake -r \"prod\" -e \"cd ~/projects/myproject/prod\"\n" msgstr "" "Ruta del script bash que se ejecutará automáticamente cuando Guake se " "inicie, excepto si se especifica --no-startup-script.\n" "\n" "Normalmente se utiliza la configuración de la línea de comandos de Guake:\n" "\n" "#!/bin/bash\n" "\n" "sleep 5 # se recomienda esperar un poco, para que Guake se inicie " "correctamente\n" "\n" "guake -r \"main\" -e \"cd ~/projects/myproject/main\"\n" "guake -r \"prod\" -e \"cd ~/projects/myproject/prod\"\n" #: ../guake/data/prefs.glade.h:15 msgid "Enable popup notifications on startup" msgstr "Activar notificaciones emergentes al inicio" #: ../guake/data/prefs.glade.h:16 msgid "Show tray icon" msgstr "Mostrar icono en la bandeja del sistema" #: ../guake/data/prefs.glade.h:17 msgid "Always prompt on quit" msgstr "Advertir siempre al salir" #: ../guake/data/prefs.glade.h:18 msgid "_Flash terminal on bell" msgstr "" #: ../guake/data/prefs.glade.h:19 msgid "_Play system alert sound on bell" msgstr "" #: ../guake/data/prefs.glade.h:20 msgid "Path to script executed on Guake start:" msgstr "Ruta del script que se ejecutará al iniciar Guake:" #: ../guake/data/prefs.glade.h:21 msgid "Prompt on close tab:" msgstr "Advertir al cerrar pestaña:" #: ../guake/data/prefs.glade.h:22 msgid "" "Never\n" "With process running\n" "Always" msgstr "" "Nunca\n" "Mientras se ejecute un proceso\n" "Siempre" #: ../guake/data/prefs.glade.h:25 msgid "General" msgstr "General" #: ../guake/data/prefs.glade.h:26 msgid "Bottom align window instead of top align" msgstr "Alinear ventana abajo " #: ../guake/data/prefs.glade.h:27 msgid "Appear on mouse display" msgstr "Mostrar en pantalla en la que se encuentra el ratón" #: ../guake/data/prefs.glade.h:28 msgid "Appear on display:" msgstr "Mostrar en pantalla:" #: ../guake/data/prefs.glade.h:29 msgid "Place tabs on top" msgstr "Posicionar pestañas arriba" #: ../guake/data/prefs.glade.h:30 msgid "Placement" msgstr "Posicionamiento" #: ../guake/data/prefs.glade.h:31 msgid "Stay on top" msgstr "Permanecer encima" #: ../guake/data/prefs.glade.h:32 msgid "Use VTE titles for tab names" msgstr "Usar nombres estilo VTE para las pestañas" #: ../guake/data/prefs.glade.h:33 msgid "Max tab name length:" msgstr "" #: ../guake/data/prefs.glade.h:34 msgid "0 means no size limit" msgstr "" #: ../guake/data/prefs.glade.h:35 msgid "Abbreviate directories in tab names" msgstr "" #: ../guake/data/prefs.glade.h:36 msgid "Hide on lose focus" msgstr "Esconder al perder el foco" #: ../guake/data/prefs.glade.h:37 msgid "Show tab bar" msgstr "Mostrar barra de pestañas" #: ../guake/data/prefs.glade.h:38 msgid "Start fullscreen" msgstr "Iniciar en pantalla completa" #: ../guake/data/prefs.glade.h:39 msgid "Main Window" msgstr "Ventana principal" #: ../guake/data/prefs.glade.h:40 msgid "Left" msgstr "Izquierda" #: ../guake/data/prefs.glade.h:41 msgid "Center" msgstr "Centro" #: ../guake/data/prefs.glade.h:42 msgid "Right" msgstr "Derecha" #: ../guake/data/prefs.glade.h:43 msgid "Main Window Horizontal Alignment" msgstr "Alineación horizontal de la ventana principal" #: ../guake/data/prefs.glade.h:44 msgid "Main Window Height" msgstr "Altura de la ventana principal" #: ../guake/data/prefs.glade.h:45 msgid "Main Window Width" msgstr "Anchura de la ventana principal" #: ../guake/data/prefs.glade.h:46 msgid "Custom command file path: " msgstr "Ruta del fichero de comandos personalizados:" #: ../guake/data/prefs.glade.h:47 msgid "Please select a json file" msgstr "Seleccione un fichero JSON" #: ../guake/data/prefs.glade.h:48 ../src/guake/prefs.py:75 msgid "General" msgstr "General" #: ../guake/data/prefs.glade.h:49 msgid "Default interpreter:" msgstr "Intérprete predeterminado:" #: ../guake/data/prefs.glade.h:50 msgid "_Run command as a login shell" msgstr "_Ejecutar comando como un usuario de shell" #: ../guake/data/prefs.glade.h:51 msgid "_Open new tab in current directory" msgstr "_Abrir nueva pestaña en el directorio actual" #: ../guake/data/prefs.glade.h:52 msgid "Shell" msgstr "Shell" #: ../guake/data/prefs.glade.h:53 msgid "Shell" msgstr "Shell" #: ../guake/data/prefs.glade.h:54 msgid "Show scrollbar" msgstr "Mostrar barra de desplazamiento" #: ../guake/data/prefs.glade.h:55 msgid "Scrollback lines:" msgstr "Desplazamiento hacia atrás (líneas):" #: ../guake/data/prefs.glade.h:56 msgid "On output" msgstr "En la salida" #: ../guake/data/prefs.glade.h:57 msgid "On key stroke" msgstr "Al presionar una tecla" #: ../guake/data/prefs.glade.h:58 msgid "Scroll" msgstr "Desplazar" #: ../guake/data/prefs.glade.h:59 msgid "Scrolling" msgstr "Desplazamiento hacia atrás (líneas):" #: ../guake/data/prefs.glade.h:60 msgid "Use the system fixed width font" msgstr "Usar tamaño de letra del sistema" #: ../guake/data/prefs.glade.h:61 msgid "Font:" msgstr "Fuente:" #: ../guake/data/prefs.glade.h:62 msgid "Choose some font" msgstr "Elija una tipografía" #: ../guake/data/prefs.glade.h:63 msgid "Text color:" msgstr "Color del texto:" #: ../guake/data/prefs.glade.h:64 msgid "Background color:" msgstr "Color de fondo:" #: ../guake/data/prefs.glade.h:65 msgid "Cursor shape:" msgstr "Forma del cursor:" #: ../guake/data/prefs.glade.h:66 msgid "" "Block\n" "I-Beam\n" "Underline" msgstr "" "Bloque\n" "Forma de viga\n" "Guión bajo" #: ../guake/data/prefs.glade.h:69 msgid "" "Follow GTK+ setting\n" "Blink on\n" "Blink off" msgstr "" "Utilizar configuración de GTK+\n" "Parpadeo activado\n" "Parpadeo desactivado" #: ../guake/data/prefs.glade.h:72 msgid "Cursor blink mode:" msgstr "Modo de parpadeo del cursor:" #: ../guake/data/prefs.glade.h:73 msgid "Allow bold font" msgstr "Permitir negrita" #: ../guake/data/prefs.glade.h:74 msgid "Palette" msgstr "Paleta" #: ../guake/data/prefs.glade.h:75 msgid "Built-in schemes:" msgstr "Esquemas incorporados:" #: ../guake/data/prefs.glade.h:76 msgid "Color palette:" msgstr "Paleta de colores:" #: ../guake/data/prefs.glade.h:77 msgid "Font color" msgstr "Color del texto" #: ../guake/data/prefs.glade.h:78 msgid "Background color" msgstr "Color de fondo" #: ../guake/data/prefs.glade.h:79 msgid "Use font and background color from the palette" msgstr "Utilizar color de texto y de fondo de la paleta de colores" #: ../guake/data/prefs.glade.h:80 msgid "Demo:" msgstr "Demo:" #: ../guake/data/prefs.glade.h:81 msgid "Effects" msgstr "Efectos" #: ../guake/data/prefs.glade.h:82 msgid "Transparency:" msgstr "Fondo transparente:" #: ../guake/data/prefs.glade.h:83 msgid "Background image:" msgstr "Imagen de fondo:" #: ../guake/data/prefs.glade.h:84 ../src/guake/prefs.py:130 msgid "Appearance" msgstr "Apariencia" #: ../guake/data/prefs.glade.h:85 msgid "" "Quick open is a feature allowing you to open a file directly into " "your favorite text editor by clicking on its filename when it appears in " "your terminal. See the list of currently supported text patterns used to " "extract filename below." msgstr "" "Abrir rápido es una funcionalidad que le permite abrir un fichero " "desde su terminal directamente en su editor de texto favorito. Debajo " "dispone de una lista de los patrones de texto utilizados para mostrar el " "nombre del fichero." #: ../guake/data/prefs.glade.h:86 msgid "Enable Quick Open when Ctrl+clicking on a filename in the terminal" msgstr "" "Habilitar Abrir rápido cuando abra un fichero de la terminal pulsando Ctrl" "+Clic" #: ../guake/data/prefs.glade.h:87 msgid "Editor command line:" msgstr "Editor de línea de comandos:" #: ../guake/data/prefs.glade.h:89 #, no-c-format msgid "" "Use the following elements in the open editor command line:\n" " - %(file_path)s: path to the file that has been clicked\n" " - %(line_number)s: if your editor supports it, you can directly open " "the file to a given line number when found on the screen.\n" "\n" "For example, for sublime, use subl %(file_path)s:%(line_number)s\n" "" msgstr "" "Utilice los siguientes elementos en el editor de línea de " "comandos:\n" " - %(file_path)s: ruta al fichero en el que se ha hecho clic\n" " - %(line_number)s: si su editor soporta esta característica, puede " "abrir el fichero directamente en línea especificada.\n" "\n" "Por ejemplo, para Sublime, utilice subl %(file_path)s:%(line_number)s\n" "" #: ../guake/data/prefs.glade.h:95 msgid "Quick open in current terminal" msgstr "Abrir rápido en el terminal actual" #: ../guake/data/prefs.glade.h:96 msgid "" "Here is the list of supported patterns: (to add your own, please contact the " "Guake's authors)" msgstr "" "Aquí encontrará una lista de patrones soportados: (Si desea añadir uno " "propio, contacte con los autores de Guake)" #: ../guake/data/prefs.glade.h:97 msgid "Quick Open" msgstr "Abrir rápido" #: ../guake/data/prefs.glade.h:98 msgid "Quick Open" msgstr "Abrir rápido" #: ../guake/data/prefs.glade.h:99 msgid "" "To change a shortcut simply click on its name.\n" "To disable a shortcut, press the \"Backspace\" key." msgstr "" "Para cambiar un atajo del teclado haga clic encima de su nombre.\n" "Para desactivar un atajo del teclado, presione la tecla \"Backspace\"." #: ../guake/data/prefs.glade.h:101 msgid "Keyboard shortcuts" msgstr "Atajos de teclado" #: ../guake/data/prefs.glade.h:102 msgid "" "Note: These options may cause some applications to behave " "incorrectly. They are only here to allow you to work around certain " "applications and operating systems that expect different terminal behavior." msgstr "" "Nota: Estas opciones podrían causar que algunas " "aplicaciones se comporten incorrectamente. Solo están disponibles como una " "alternativa a ciertas aplicaciones o sistemas operativos que esperan un " "comportamiento del terminal distinto." #: ../guake/data/prefs.glade.h:103 msgid "" "ASCII DEL\n" "Escape sequence\n" "Control-H" msgstr "" "ASCII DEL\n" "Secuencia de Escape \n" "Control-H" #: ../guake/data/prefs.glade.h:106 msgid "_Backspace key generates:" msgstr "Tecla _Backspace genera:" #: ../guake/data/prefs.glade.h:107 msgid "_Delete key generates:" msgstr "Tecla _Delete genera:" #: ../guake/data/prefs.glade.h:108 msgid "_Reset Compatibility Options to Defaults" msgstr "_Reiniciar " #: ../guake/data/prefs.glade.h:109 msgid "Keyboard compatibility" msgstr "Compatibilidad del teclado" #: ../guake/data/prefs.glade.h:110 msgid "Compatibility" msgstr "Compatibilidad" #: ../src/guake/about.py:47 ../src/guake/gconfhandler.py:439 #: ../src/guake/guake_app.py:181 ../src/guake/guake_app.py:378 msgid "Guake Terminal" msgstr "Guake Terminal" #: ../src/guake/gconfhandler.py:369 ../src/guake/guake_app.py:1386 msgid "Terminal" msgstr "Terminal" #: ../src/guake/gconfhandler.py:440 #, python-format msgid "" "A problem happened when binding %s key.\n" "Please use Guake Preferences dialog to choose another key" msgstr "" "Ocurrió un problema asignando la tecla %s.\n" "Por favor, use las preferencias de Guake para asignar otra tecla." #: ../src/guake/guake_app.py:132 msgid "Do you want to close the tab?" msgstr "¿Realmente quiere cerrar la pestaña?" #: ../src/guake/guake_app.py:135 msgid "Do you really want to quit Guake?" msgstr "¿Realmente quiere salir de Guake?" #: ../src/guake/guake_app.py:137 msgid " and one tab open" msgstr "y una pestaña abierta" #: ../src/guake/guake_app.py:139 #, python-brace-format msgid " and {0} tabs open" msgstr "y {0} pestañas abiertas" #: ../src/guake/guake_app.py:142 msgid "There are no processes running" msgstr "No hay procesos ejecutándose actualmente" #: ../src/guake/guake_app.py:144 msgid "There is a process still running" msgstr "Hay un proceso ejecutándose actualmente" #: ../src/guake/guake_app.py:146 #, python-brace-format msgid "There are {0} processes still running" msgstr "Hay {0} procesos ejecutándose actualmente" #: ../src/guake/guake_app.py:186 msgid "guake-indicator" msgstr "" #: ../src/guake/guake_app.py:186 msgid "guake-tray" msgstr "" #: ../src/guake/guake_app.py:190 msgid "Show" msgstr "Mostrar" #: ../src/guake/guake_app.py:379 #, python-format msgid "" "Guake is now running,\n" "press {!s} to use it." msgstr "" "Guake se está ejecutando,\n" "pulse {!s} para usarlo." #: ../src/guake/guake_app.py:670 #, python-format msgid "Search on Web: '%s'" msgstr "Buscar en la Web: '%s'" #: ../src/guake/guake_app.py:675 msgid "Search on Web (no selection)" msgstr "Buscar en la Web (nada seleccionado)" #: ../src/guake/guake_app.py:683 #, fuzzy msgid "Open Link: '{}...'" msgstr "Abrir vínculo: {}" #: ../src/guake/guake_app.py:685 msgid "Open Link: {}" msgstr "Abrir vínculo: {}" #: ../src/guake/guake_app.py:688 msgid "Open Link..." msgstr "Abrir vínculo..." #: ../src/guake/guake_app.py:1425 msgid "Rename tab" msgstr "Renombrar pestaña" #: ../src/guake/guake_app.py:1736 msgid "Save to..." msgstr "Guardar como..." #: ../src/guake/guake_app.py:1743 ../src/guake/prefs.py:973 msgid "All files" msgstr "Todos los ficheros" #: ../src/guake/guake_app.py:1748 msgid "Text and Logs" msgstr "" #: ../src/guake/guake_app.py:1766 msgid "Find" msgstr "Buscar" #: ../src/guake/guake_app.py:1768 msgid "Forward" msgstr "Adelante" #: ../src/guake/guake_app.py:1769 msgid "Backward" msgstr "Atrás" #: ../src/guake/main.py:68 msgid "Put Guake in fullscreen mode" msgstr "Guake en modo pantalla completa" #: ../src/guake/main.py:72 msgid "Toggles the visibility of the terminal window" msgstr "Conmuta la visibilidad de la ventana del terminal" #: ../src/guake/main.py:76 msgid "Shows Guake main window" msgstr "Muestra la ventana principal de Guake" #: ../src/guake/main.py:80 msgid "Hides Guake main window" msgstr "Oculta la ventana principal de Guake" #: ../src/guake/main.py:84 msgid "Shows Guake preference window" msgstr "Muestra las preferencias de Guake" #: ../src/guake/main.py:88 msgid "Shows Guake's about info" msgstr "Muestra el diálogo de información de Guake" #: ../src/guake/main.py:92 msgid "Add a new tab (with current directory set to NEW_TAB)" msgstr "Añadir nueva pestaña (directorio actual establecido en NEW_TAB)" #: ../src/guake/main.py:96 msgid "Select a tab (SELECT_TAB is the index of the tab)" msgstr "Seleccionar una pestaña (SELECT_TAB es el índice de la pestaña)" #: ../src/guake/main.py:100 msgid "Return the selected tab index." msgstr "Devolver el índice de la pestaña seleccionada" #: ../src/guake/main.py:104 msgid "Execute an arbitrary command in the selected tab." msgstr "Ejecutar un comando arbitrario en la pestaña seleccionada." #: ../src/guake/main.py:108 msgid "Specify the tab to rename. Default is 0." msgstr "Especifique la pestaña a renombrar. Por defecto es 0." #: ../src/guake/main.py:112 msgid "Set the hexadecimal (#rrggbb) background color of the selected tab." msgstr "" "Establecer un color de fondo hexadecimal (#rrggbb) para la pestaña " "seleccionada." #: ../src/guake/main.py:117 msgid "Set the hexadecimal (#rrggbb) foreground color of the selected tab." msgstr "" "Establecer un color de fuente hexadecimal (#rrggbb) para la pestaña " "seleccionada." #: ../src/guake/main.py:123 msgid "" "Rename the specified tab. Reset to default if TITLE is a single dash \"-\"." msgstr "" "Renombrar la pestaña especificada. Retomará el valor por defecto si TITLE es " "solo un \"-\"." #: ../src/guake/main.py:129 msgid "" "Rename the current tab. Reset to default if TITLE is a single dash \"-\"." msgstr "" "Renombrar la pestaña actual. Retomará el valor por defecto si TITLE es solo " "un \"-\"." #: ../src/guake/main.py:134 msgid "Says to Guake go away =(" msgstr "Le dice a Guake que desaparezca =(" #: ../src/guake/main.py:138 msgid "Do not execute the start up script" msgstr "No ejecutar el script de inicio" #: ../src/guake/main.py:235 msgid "Guake can not init!" msgstr "¡Guake no se puede iniciar!" #: ../src/guake/main.py:236 msgid "" "Gconf Error.\n" "Have you installed guake.schemas properly?" msgstr "" "Error de Gconf.\n" "¿Ha instalado guake.schemas apropiadamente?" #. string to show in prefereces dialog for user shell option #: ../src/guake/prefs.py:67 msgid "" msgstr "" #: ../src/guake/prefs.py:77 msgid "Toggle Guake visibility" msgstr "Conmuta la visibilidad del terminal" #: ../src/guake/prefs.py:81 #, fuzzy msgid "Toggle Hide on Lose Focus" msgstr "Esconder al perder el foco" #: ../src/guake/prefs.py:88 msgid "Tab management" msgstr "Administrar pestañas" #: ../src/guake/prefs.py:90 #, fuzzy msgid "New tab" msgstr "Nueva pestaña" #: ../src/guake/prefs.py:92 msgid "Close tab" msgstr "Cerrar pestaña" #: ../src/guake/prefs.py:94 msgid "Rename current tab" msgstr "Renombrar la pestaña actual" #: ../src/guake/prefs.py:97 msgid "Navigation" msgstr "Navegación" #: ../src/guake/prefs.py:99 msgid "Go to previous tab" msgstr "Ir a la pestaña anterior" #: ../src/guake/prefs.py:101 msgid "Go to next tab" msgstr "Ir a la pestaña siguiente" #: ../src/guake/prefs.py:103 #, fuzzy msgid "Move current tab left" msgstr "Renombrar la pestaña actual" #: ../src/guake/prefs.py:105 #, fuzzy msgid "Move current tab right" msgstr "Renombrar la pestaña actual" #: ../src/guake/prefs.py:107 #, fuzzy msgid "Go to first tab" msgstr "Ir a la pestaña siguiente" #: ../src/guake/prefs.py:109 #, fuzzy msgid "Go to second tab" msgstr "Ir a la pestaña siguiente" #: ../src/guake/prefs.py:111 #, fuzzy msgid "Go to third tab" msgstr "Ir a la pestaña siguiente" #: ../src/guake/prefs.py:113 #, fuzzy msgid "Go to fourth tab" msgstr "Ir a la pestaña siguiente" #: ../src/guake/prefs.py:115 #, fuzzy msgid "Go to fifth tab" msgstr "Ir a la pestaña siguiente" #: ../src/guake/prefs.py:117 #, fuzzy msgid "Go to sixth tab" msgstr "Ir a la pestaña siguiente" #: ../src/guake/prefs.py:119 #, fuzzy msgid "Go to seventh tab" msgstr "Ir a la pestaña siguiente" #: ../src/guake/prefs.py:121 #, fuzzy msgid "Go to eighth tab" msgstr "Ir a la pestaña siguiente" #: ../src/guake/prefs.py:123 #, fuzzy msgid "Go to ninth tab" msgstr "Ir a la pestaña siguiente" #: ../src/guake/prefs.py:125 #, fuzzy msgid "Go to tenth tab" msgstr "Ir a la pestaña siguiente" #: ../src/guake/prefs.py:127 #, fuzzy msgid "Go to last tab" msgstr "Ir a la pestaña siguiente" #: ../src/guake/prefs.py:132 msgid "Zoom out" msgstr "" #: ../src/guake/prefs.py:134 msgid "Zoom in" msgstr "" #: ../src/guake/prefs.py:136 msgid "Zoom in (alternative)" msgstr "" #: ../src/guake/prefs.py:138 msgid "Increase height" msgstr "" #: ../src/guake/prefs.py:140 msgid "Decrease height" msgstr "" #: ../src/guake/prefs.py:142 #, fuzzy msgid "Increase transparency" msgstr "Fondo transparente:" #: ../src/guake/prefs.py:144 #, fuzzy msgid "Decrease transparency" msgstr "Fondo transparente:" #: ../src/guake/prefs.py:146 #, fuzzy msgid "Toggle transparency" msgstr "Fondo transparente:" #: ../src/guake/prefs.py:149 msgid "Clipboard" msgstr "Portapapeles" #: ../src/guake/prefs.py:151 msgid "Copy text to clipboard" msgstr "Copiar texto al portapapeles" #: ../src/guake/prefs.py:153 msgid "Paste text from clipboard" msgstr "Pegar texto del portapapeles" #: ../src/guake/prefs.py:156 msgid "Extra features" msgstr "" #: ../src/guake/prefs.py:159 #, fuzzy msgid "Search select text on web" msgstr "Buscar en la Web" #: ../src/guake/prefs.py:481 msgid "Action" msgstr "Acción" #: ../src/guake/prefs.py:491 msgid "Shortcut" msgstr "Atajo" #: ../src/guake/prefs.py:651 ../src/guake/prefs.py:697 msgid "Custom" msgstr "Personalizado" #: ../src/guake/prefs.py:969 msgid "JSON files" msgstr "Ficheros JSON" #: ../src/guake/prefs.py:1063 #, python-format msgid "The shortcut \"%s\" is already in use." msgstr "El atajo de teclado \"%s\" esta en uso actualmente." #: ../src/guake/prefs.py:1064 msgid "Error setting keybinding." msgstr "Error asignando teclas." #: ../src/guake/prefs.py:1076 #, python-format msgid "" "The shortcut \"%s\" cannot be used because it will become impossible to type " "using this key.\n" "\n" "Please try with a key such as Control, Alt or Shift at the same time.\n" msgstr "" "El atajo del teclado \"%s\" no puede ser usado porque será imposible " "escribir usando esa tecla.\n" "\n" "Por favor intente con una tecla como Control, Alt o Shift al mismo tiempo.\n" #: guake/main.py:153 msgid "Return the selected tab label." msgstr "" #: guake/data/prefs.glade:264 msgid "Never" msgstr "" #: guake/data/prefs.glade:265 msgid "With process running" msgstr "" #: guake/data/prefs.glade:266 msgid "Always" msgstr "" #: guake/data/prefs.glade:499 msgid "Refocus if open" msgstr "" #: guake/data/prefs.glade:865 msgid "Custom command file path:" msgstr "" #: guake/data/prefs.glade:1315 msgid "Show resizer" msgstr "" #: guake/data/prefs.glade:1423 msgid "Block" msgstr "" #: guake/data/prefs.glade:1424 msgid "I-Beam" msgstr "" #: guake/data/prefs.glade:1425 msgid "Underline" msgstr "" #: guake/data/prefs.glade:1443 msgid "Follow GTK+ setting" msgstr "" #: guake/data/prefs.glade:1444 msgid "Blink on" msgstr "" #: guake/data/prefs.glade:1445 msgid "Blink off" msgstr "" #: guake/data/prefs.glade:2236 msgid "" "Use the following elements in the open editor command line:\n" "- %(file_path)s: path to the file that has been clicked\n" "- %(line_number)s: if your editor supports it, you can directly open " "the file to a given line number when found on the screen.\n" "\n" "For example, for sublime, use subl %(file_path)s:%(line_number)s\n" "" msgstr "" #: guake/data/prefs.glade:2442 guake/data/prefs.glade:2462 msgid "ASCII DEL" msgstr "" #: guake/data/prefs.glade:2443 guake/data/prefs.glade:2463 msgid "Escape sequence" msgstr "" #: guake/data/prefs.glade:2444 guake/data/prefs.glade:2464 msgid "Control-H" msgstr "" #: guake/data/prefs.glade:2600 msgid "" "In this dialog you can attach your own command or script to various " "guake events" msgstr "" #: guake/data/prefs.glade:2635 msgid "On show:" msgstr "" #: guake/data/prefs.glade:2665 msgid "On start:" msgstr "" #: guake/data/prefs.glade:2714 msgid "Hooks" msgstr "" #: guake/data/guake-prefs.desktop:8 msgid "Configure your Guake sessions" msgstr "" #: guake/data/guake-prefs.desktop:15 guake/data/guake.desktop:18 msgid "guake" msgstr "" #: guake/data/guake-prefs.desktop:20 msgid "Terminal;Utility;" msgstr "" #: guake/data/guake.desktop:10 msgid "Use the command line in a Quake-like terminal" msgstr "" #: guake/data/prefs.glade:770 msgid "Main Window Horizontal Alignment" msgstr "" #: guake/prefs.py:89 msgid "Show and focus Guake window" msgstr "" #: guake/data/prefs.glade:566 msgid "0" msgstr "" #: guake/data/prefs.glade:610 msgid "Main Window Options" msgstr "" #: guake/data/prefs.glade:770 msgid "Horizontal Alignment:" msgstr "" #: guake/data/prefs.glade:855 msgid "Height:" msgstr "" #: guake/data/prefs.glade:868 msgid "Width:" msgstr "" #: guake/data/prefs.glade:913 msgid "Geometry" msgstr "" #: guake/data/prefs.glade:944 msgid "Main Window" msgstr "" #: guake/data/prefs.glade:1197 msgid "Infinite scrolling" msgstr "" #: guake/data/prefs.glade:1219 msgid "Scrollbar" msgstr "" #: guake/data/prefs.glade:1304 msgid "Scroll to Bottom" msgstr "" #: guake/data/prefs.glade:2117 msgid "" "Quick open is a feature allowing you to open a file directly into your " "favorite text editor by clicking on its filename when it appears in your " "terminal. See the list of currently supported text patterns used to extract " "filename below." msgstr "" #: guake/main.py:64 msgid "Show Guake version number and exit" msgstr "" #: guake/data/prefs.glade:93 msgid "Guake properties" msgstr "Propiedades de Guake" #: guake/data/prefs.glade:107 msgid "Customize behavior and appearance of Guake!" msgstr "Personaliza el comportamiento y apariencia Guake!" #: guake/data/prefs.glade:929 msgid "Displacement in pixels" msgstr "" #: guake/main.py:73 msgid "Enable verbose logging" msgstr "" #: guake/guake_app.py:680 msgid "Quick Open: '{!s}...'" msgstr "" #: guake/guake_app.py:683 msgid "Quick Open: {!s}" msgstr "" #: guake/guake_app.py:691 msgid "Open Link: '{!s}...'" msgstr "" #: guake/guake_app.py:694 msgid "Open Link: {!s}" msgstr "" #: guake/data/prefs.glade:2175 msgid "" "WARNING: your system seems to have PCRE2 disabled for VTE, " "preventing application such as Guake to register \"matchers\" using regular " "expressions. Please contact your distribution to request a new version of " "VTE with PCRE2 enabled ! To use Quick Open, you must select the text " "before using Ctrl+click." msgstr "" #: guake/guake_app.py:680 msgid "Quick Open: {!s}..." msgstr "" #: guake/guake_app.py:691 msgid "Open Link: {!s}..." msgstr "" #: guake/guake_app.py:688 msgid "Quick Open..." msgstr "" #: guake/data/prefs.glade:223 msgid "Start Guake at login" msgstr "" #: guake/data/prefs.glade:363 msgid "Gtk Theme:" msgstr "" #: guake/data/prefs.glade:387 msgid "Prefer dark theme" msgstr "" #: guake/guake_app.py:435 msgid "Custom Commands" msgstr "" #: guake/main.py:184 msgid "" "Specify the tab to rename. Default is 0. Can be used to select tab by UUID." msgstr "" #: guake/main.py:212 msgid "" "Rename the specified tab by --tab-index. Reset to default if TITLE is a " "single dash \"-\"." msgstr "" #: data/search.glade:138 msgid "Search forward" msgstr "" #: data/search.glade:153 msgid "Match case" msgstr "" #: data/search.glade:186 msgid "Current search direction: Backward" msgstr "" #: data/prefs.glade:680 msgid "Set window title to current tab name" msgstr "" #: guake/menus.py:48 msgid "Copy Url" msgstr "" #: guake/menus.py:62 msgid "Split ―" msgstr "" #: guake/menus.py:65 msgid "Split " msgstr "" #: guake/menus.py:68 guake/prefs.py:150 msgid "Close terminal" msgstr "" #: guake/prefs.py:137 msgid "Split management" msgstr "" #: guake/prefs.py:142 msgid "Split tab vertical" msgstr "" #: guake/prefs.py:146 msgid "Split tab horizontal" msgstr "" #: guake/prefs.py:154 msgid "Focus terminal above" msgstr "" #: guake/prefs.py:158 msgid "Focus terminal below" msgstr "" #: guake/prefs.py:162 msgid "Focus terminal on the left" msgstr "" #: guake/prefs.py:166 msgid "Focus terminal on the right" msgstr "" #: guake/prefs.py:170 msgid "Move the terminal split handle up" msgstr "" #: guake/prefs.py:174 msgid "Move the terminal split handle down" msgstr "" #: guake/prefs.py:178 msgid "Move the terminal split handle right" msgstr "" #: guake/prefs.py:182 msgid "Move the terminal split handle left" msgstr "" #: guake/menus.py:65 msgid "Split |" msgstr "" #: guake/menus.py:72 msgid "Save content..." msgstr "" #: data/prefs.glade:1182 msgid "" "This might not work on all shells, make sure that your shell supports the --" "login option" msgstr "" #: guake/prefs.py:128 msgid "New tab in home directory" msgstr "" #: guake/dialogs.py:56 #, python-brace-format msgid " on {0} workspaces" msgstr "" #: guake/main.py:211 msgid "Change Guake palette scheme" msgstr "" #: data/prefs.glade:331 msgid "Use workspace-specific tab sets (requires restart)" msgstr "" #: guake/main.py:175 msgid "Split the selected tab vertically." msgstr "" #: guake/main.py:183 msgid "Split the selected tab horizontally." msgstr "" #: data/prefs.glade:348 msgid "Show close buttons for tabs" msgstr "" #: data/prefs.glade:1682 msgid "Bold text is also bright" msgstr "" #: data/prefs.glade:1682 msgid "Bold text is also bright (VTE >=0.52)" msgstr "" #: guake/menus.py:42 msgid "Save Tabs" msgstr "" #: guake/menus.py:45 msgid "Restore Tabs" msgstr "" #: guake/prefs.py:113 msgid "Search terminal" msgstr "" #: guake/main.py:278 msgid "Save Guake preferences to this filename" msgstr "" #: guake/main.py:286 msgid "Restore Guake preferences from this file" msgstr "" #: guake/guake_app.py:1192 #, python-brace-format msgid "Your session.json file is broken, backup to {session_filename}.bak" msgstr "" #: guake/guake_app.py:1228 #, python-brace-format msgid "" "Your session.json schema is broken, backup to {0}.bak,and error message has " "been saved to {0}.log.err" msgstr "" #: guake/guake_app.py:1239 msgid "Your tabs has been restored!" msgstr "" #: data/prefs.glade:190 msgid "Restore previous session (tabs)" msgstr "" #: data/prefs.glade:204 msgid "Enable notification when restore tabs" msgstr "" #: data/prefs.glade:218 msgid "Automatically save session when the tabs has been modified" msgstr "" #: data/prefs.glade:238 msgid "Startup & Tabs (Experiment)" msgstr "" #: guake/guake_app.py:1192 #, python-brace-format msgid "" "Your {session_filename} file is broken, backup to {session_filename}.bak" msgstr "" #: guake/guake_app.py:1227 #, python-brace-format msgid "" "Your {session_filename} schema is broken, backup to {0}.bak,and error " "message has been saved to {session_filename}.log.err" msgstr "" #: guake/guake_app.py:1227 #, python-brace-format msgid "" "Your {session_filename} schema is broken, backup to {session_filename}.bak," "and error message has been saved to {session_filename}.log.err." msgstr "" #: guake/guake_app.py:1227 #, python-brace-format msgid "" "Your {session_filename} schema is broken, backup to {session_filename}.bak, " "and error message has been saved to {session_filename}.log.err." msgstr "" #: guake/notebook.py:317 msgid "" "You are going to restore *all* the tabs!\n" "which means all your terminals & pages will be replaced.\n" "\n" "Do you want to continue?" msgstr "" #: guake/main.py:296 msgid "Show support infomations" msgstr "" #: guake/guake_app.py:1240 #, python-brace-format msgid "" "Tabs session restore abort.\n" "Your session file ({session_filename}) missing schema_version as key" msgstr "" #: guake/guake_app.py:1252 #, python-brace-format msgid "" "Tabs session restore abort.\n" "Your session file schema version is higher than current version " "({session_file_schema_version} > {current_schema_version})." msgstr "" #: guake/data/prefs.glade:409 msgid "Use workspace-specific tab sets (requires restart, only work on X11)" msgstr "" #~ msgid "key binding error" #~ msgstr "Error al asignar tecla" #~ msgid "Unable to bind global %s key" #~ msgstr "No se pudo asignar la tecla %s" #~ msgid "http://guake.org" #~ msgstr "http://guake.org" #~ msgid "" #~ "Tango\n" #~ "Linux console\n" #~ "XTerm\n" #~ "Rxvt\n" #~ "Custom\n" #~ msgstr "" #~ "Tango\n" #~ "Consola Linux\n" #~ "XTerm\n" #~ "Rxvt\n" #~ "Custom\n" #~ msgid "Select a tab" #~ msgstr "Seleccione una pestaña" #~ msgid "Rename the selected tab." #~ msgstr "Renombrar la pestaña seleccionada" guake-3.6.3/po/fa.po000066400000000000000000001020521346623310400141650ustar00rootroot00000000000000# Translation of Guake to Persian # Copyright (C) 2013 Guake Translators # This file is distributed under the same license as the Guake package. # # Translators: # Kasra Keshavarz , 2009, 2010. msgid "" msgstr "" "Project-Id-Version: Guake 0.4.5\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2016-08-18 17:32+0200\n" "PO-Revision-Date: 2018-01-25 20:53+0100\n" "Last-Translator: Kasra Keshavarz \n" "Language-Team: guake@lists.guake.org <>\n" "Language: fa\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "X-Generator: Poedit 2.0.6\n" #: ../guake/data/about.glade.h:1 msgid "About Guake" msgstr "درباره‌ی Guake" #: ../guake/data/about.glade.h:5 #, fuzzy msgid "" "Guake is an easy to access\n" "terminal based on FPS games terminal" msgstr "" "برنامه‌ی Guake ترمینالی سریع\n" "و در دسترس در هر زمان" #: ../guake/data/guake.glade.h:1 msgid "Copy" msgstr "رونوشت کردن" #: ../guake/data/guake.glade.h:2 msgid "Paste" msgstr "چسباندن" #: ../guake/data/guake.glade.h:3 ../src/guake/prefs.py:79 msgid "Toggle Fullscreen" msgstr "‌تغییر به تمام‌صفحه" #: ../guake/data/guake.glade.h:4 msgid "Save to File..." msgstr "" #: ../guake/data/guake.glade.h:5 ../src/guake/prefs.py:85 #, fuzzy msgid "Reset terminal" msgstr "Guake Terminal" #: ../guake/data/guake.glade.h:6 msgid "Find..." msgstr "" #: ../guake/data/guake.glade.h:7 msgid "New Tab" msgstr "Nueva pestaña" #: ../guake/data/guake.glade.h:8 #, fuzzy msgid "Rename Tab" msgstr "نام زبانه را تغییر بده" #: ../guake/data/guake.glade.h:9 msgid "Close Tab" msgstr "بستن زبانه" #: ../guake/data/guake.glade.h:10 msgid "Open link..." msgstr "" #: ../guake/data/guake.glade.h:11 msgid "Search on Web" msgstr "" #: ../guake/data/guake.glade.h:12 ../src/guake/prefs.py:83 msgid "Quit" msgstr "خروج" #: ../guake/data/guake.glade.h:13 msgid "Rename" msgstr "تغییر نام" #: ../guake/data/guake.glade.h:14 msgid "Close" msgstr "بستن" #: ../guake/data/guake.glade.h:15 msgid "Guake!" msgstr "Guake!" #: ../guake/data/guake.glade.h:16 #, fuzzy msgid "Add a new tab" msgstr "زبانه‌ی جدید" #: ../guake/data/prefs.glade.h:1 msgid "Guake Preferences" msgstr "تنظیمات Guake" #: ../guake/data/prefs.glade.h:2 msgid "Guake properties" msgstr "تنظیمات Guake" #: ../guake/data/prefs.glade.h:3 msgid "" "Customize behavior and appearance of Guake!" msgstr "سفارشی کردن رفتار و ظاهر Guake" #: ../guake/data/prefs.glade.h:4 msgid "" "Path to a bash script that would be automatically executed when Guake " "starts, unless you specify --no-startup-script.\n" "\n" "This would typically use the configuration by command line feature of " "Guake:\n" "\n" "#!/bin/bash\n" "\n" "sleep 5 # it is advised to wait a bit before Guake has been successfully " "started\n" "\n" "guake -r \"main\" -e \"cd ~/projects/myproject/main\"\n" "guake -r \"prod\" -e \"cd ~/projects/myproject/prod\"\n" msgstr "" #: ../guake/data/prefs.glade.h:15 msgid "Enable popup notifications on startup" msgstr "فعال کردن پنجره‌های اطلاعیه در شروع" #: ../guake/data/prefs.glade.h:16 msgid "Show tray icon" msgstr "نمایش دادن آیکون در حالت مخفی" #: ../guake/data/prefs.glade.h:17 #, fuzzy msgid "Always prompt on quit" msgstr "سریع در موقع خروج" #: ../guake/data/prefs.glade.h:18 msgid "_Flash terminal on bell" msgstr "" #: ../guake/data/prefs.glade.h:19 msgid "_Play system alert sound on bell" msgstr "" #: ../guake/data/prefs.glade.h:20 msgid "Path to script executed on Guake start:" msgstr "" #: ../guake/data/prefs.glade.h:21 #, fuzzy msgid "Prompt on close tab:" msgstr "سریع در موقع خروج" #: ../guake/data/prefs.glade.h:22 msgid "" "Never\n" "With process running\n" "Always" msgstr "" #: ../guake/data/prefs.glade.h:25 msgid "General" msgstr "عمومی" #: ../guake/data/prefs.glade.h:26 msgid "Bottom align window instead of top align" msgstr "" #: ../guake/data/prefs.glade.h:27 msgid "Appear on mouse display" msgstr "" #: ../guake/data/prefs.glade.h:28 msgid "Appear on display:" msgstr "" #: ../guake/data/prefs.glade.h:29 #, fuzzy msgid "Place tabs on top" msgstr "همیشه در بالا بمان" #: ../guake/data/prefs.glade.h:30 #, fuzzy msgid "Placement" msgstr "پَلت" #: ../guake/data/prefs.glade.h:31 msgid "Stay on top" msgstr "همیشه در بالا بمان" #: ../guake/data/prefs.glade.h:32 msgid "Use VTE titles for tab names" msgstr "" #: ../guake/data/prefs.glade.h:33 msgid "Max tab name length:" msgstr "" #: ../guake/data/prefs.glade.h:34 msgid "0 means no size limit" msgstr "" #: ../guake/data/prefs.glade.h:35 msgid "Abbreviate directories in tab names" msgstr "" #: ../guake/data/prefs.glade.h:36 msgid "Hide on lose focus" msgstr "در صورت توجه کم پنهان شو" #: ../guake/data/prefs.glade.h:37 msgid "Show tab bar" msgstr "نمایش دادن نوار حاوی زبانه" #: ../guake/data/prefs.glade.h:38 #, fuzzy msgid "Start fullscreen" msgstr "‌تغییر به تمام‌صفحه" #: ../guake/data/prefs.glade.h:39 msgid "Main Window" msgstr "پنجره اصلی" #: ../guake/data/prefs.glade.h:40 msgid "Left" msgstr "" #: ../guake/data/prefs.glade.h:41 msgid "Center" msgstr "" #: ../guake/data/prefs.glade.h:42 msgid "Right" msgstr "" #: ../guake/data/prefs.glade.h:43 #, fuzzy msgid "Main Window Horizontal Alignment" msgstr "سایز پنجره اصلی" #: ../guake/data/prefs.glade.h:44 #, fuzzy msgid "Main Window Height" msgstr "سایز پنجره اصلی" #: ../guake/data/prefs.glade.h:45 #, fuzzy msgid "Main Window Width" msgstr "سایز پنجره اصلی" #: ../guake/data/prefs.glade.h:46 msgid "Custom command file path: " msgstr "" #: ../guake/data/prefs.glade.h:47 msgid "Please select a json file" msgstr "" #: ../guake/data/prefs.glade.h:48 ../src/guake/prefs.py:75 msgid "General" msgstr "عمومی" #: ../guake/data/prefs.glade.h:49 msgid "Default interpreter:" msgstr "خط فرمان پیشفرض:" #: ../guake/data/prefs.glade.h:50 msgid "_Run command as a login shell" msgstr "_اجرا دستور به عنوان خط فرمان ورود به سیستم" #: ../guake/data/prefs.glade.h:51 msgid "_Open new tab in current directory" msgstr "_زبانه‌ای جدید در مسیر کنونی باز کن" #: ../guake/data/prefs.glade.h:52 msgid "Shell" msgstr "خط فرمان" #: ../guake/data/prefs.glade.h:53 msgid "Shell" msgstr "" #: ../guake/data/prefs.glade.h:54 msgid "Show scrollbar" msgstr "نمایش دادن نوار لغزش" #: ../guake/data/prefs.glade.h:55 msgid "Scrollback lines:" msgstr "پیمایش خط‌های قبلی:" #: ../guake/data/prefs.glade.h:56 msgid "On output" msgstr "در خروجی" #: ../guake/data/prefs.glade.h:57 msgid "On key stroke" msgstr "با زدن کلید" #: ../guake/data/prefs.glade.h:58 msgid "Scroll" msgstr "پیمایش" #: ../guake/data/prefs.glade.h:59 msgid "Scrolling" msgstr "پیمایش" #: ../guake/data/prefs.glade.h:60 msgid "Use the system fixed width font" msgstr "استفاده از قلم عریض ساخته‌شده‌ی سیستم" #: ../guake/data/prefs.glade.h:61 msgid "Font:" msgstr "قلم:" #: ../guake/data/prefs.glade.h:62 msgid "Choose some font" msgstr "تعدادی قلم انتخاب کنید" #: ../guake/data/prefs.glade.h:63 msgid "Text color:" msgstr "رنگ متن:" #: ../guake/data/prefs.glade.h:64 msgid "Background color:" msgstr "رنگ پس‌زمینه:" #: ../guake/data/prefs.glade.h:65 msgid "Cursor shape:" msgstr "" #: ../guake/data/prefs.glade.h:66 msgid "" "Block\n" "I-Beam\n" "Underline" msgstr "" #: ../guake/data/prefs.glade.h:69 msgid "" "Follow GTK+ setting\n" "Blink on\n" "Blink off" msgstr "" #: ../guake/data/prefs.glade.h:72 msgid "Cursor blink mode:" msgstr "" #: ../guake/data/prefs.glade.h:73 msgid "Allow bold font" msgstr "" #: ../guake/data/prefs.glade.h:74 msgid "Palette" msgstr "پَلت" #: ../guake/data/prefs.glade.h:75 msgid "Built-in schemes:" msgstr "طرح‌های داخلی:" #: ../guake/data/prefs.glade.h:76 msgid "Color palette:" msgstr "پَلت رنگ:" #: ../guake/data/prefs.glade.h:77 #, fuzzy msgid "Font color" msgstr "رنگ متن:" #: ../guake/data/prefs.glade.h:78 #, fuzzy msgid "Background color" msgstr "رنگ پس‌زمینه:" #: ../guake/data/prefs.glade.h:79 msgid "Use font and background color from the palette" msgstr "" #: ../guake/data/prefs.glade.h:80 msgid "Demo:" msgstr "" #: ../guake/data/prefs.glade.h:81 msgid "Effects" msgstr "اثرات" #: ../guake/data/prefs.glade.h:82 msgid "Transparency:" msgstr "شفافیت:" #: ../guake/data/prefs.glade.h:83 msgid "Background image:" msgstr "عکس پس‌زمینه:" #: ../guake/data/prefs.glade.h:84 ../src/guake/prefs.py:130 msgid "Appearance" msgstr "ظاهر" #: ../guake/data/prefs.glade.h:85 msgid "" "Quick open is a feature allowing you to open a file directly into " "your favorite text editor by clicking on its filename when it appears in " "your terminal. See the list of currently supported text patterns used to " "extract filename below." msgstr "" #: ../guake/data/prefs.glade.h:86 msgid "Enable Quick Open when Ctrl+clicking on a filename in the terminal" msgstr "" #: ../guake/data/prefs.glade.h:87 msgid "Editor command line:" msgstr "" #: ../guake/data/prefs.glade.h:89 #, no-c-format msgid "" "Use the following elements in the open editor command line:\n" " - %(file_path)s: path to the file that has been clicked\n" " - %(line_number)s: if your editor supports it, you can directly open " "the file to a given line number when found on the screen.\n" "\n" "For example, for sublime, use subl %(file_path)s:%(line_number)s\n" "" msgstr "" #: ../guake/data/prefs.glade.h:95 msgid "Quick open in current terminal" msgstr "" #: ../guake/data/prefs.glade.h:96 msgid "" "Here is the list of supported patterns: (to add your own, please contact the " "Guake's authors)" msgstr "" #: ../guake/data/prefs.glade.h:97 #, fuzzy msgid "Quick Open" msgstr "Posición de las pestañas" #: ../guake/data/prefs.glade.h:98 msgid "Quick Open" msgstr "" #: ../guake/data/prefs.glade.h:99 msgid "" "To change a shortcut simply click on its name.\n" "To disable a shortcut, press the \"Backspace\" key." msgstr "" #: ../guake/data/prefs.glade.h:101 msgid "Keyboard shortcuts" msgstr "میانبر‌های صفحه‌کلید" #: ../guake/data/prefs.glade.h:102 msgid "" "Note: These options may cause some applications to behave " "incorrectly. They are only here to allow you to work around certain " "applications and operating systems that expect different terminal behavior." msgstr "" "توجه:این ترجیحات ممکن است باعث شود که بعضی برنامه‌ها درست " "کار نکنند. این‌ها فقط اینجا هستند برای احازه دادن شما برای کارکردن در بعضی " "برنامه‌ها و سیستم عامل‌ها که انتظار رفتار پایانه‌های متفاوتی دارند. " #: ../guake/data/prefs.glade.h:103 msgid "" "ASCII DEL\n" "Escape sequence\n" "Control-H" msgstr "" "ASCII DEL\n" "Escape sequence\n" "Control-H" #: ../guake/data/prefs.glade.h:106 msgid "_Backspace key generates:" msgstr "_تولید کردن کلید پسبردن" #: ../guake/data/prefs.glade.h:107 msgid "_Delete key generates:" msgstr "تولید کردن کلید پاک کردن" #: ../guake/data/prefs.glade.h:108 msgid "_Reset Compatibility Options to Defaults" msgstr "_تنظیم مجدد ترجیحات سازگاری به پیشفرض" #: ../guake/data/prefs.glade.h:109 msgid "Keyboard compatibility" msgstr "سازگاری با صفحه‌کلید" #: ../guake/data/prefs.glade.h:110 msgid "Compatibility" msgstr "سازگاری" #: ../src/guake/about.py:47 ../src/guake/gconfhandler.py:439 #: ../src/guake/guake_app.py:181 ../src/guake/guake_app.py:378 msgid "Guake Terminal" msgstr "Guake Terminal" #: ../src/guake/gconfhandler.py:369 ../src/guake/guake_app.py:1386 #, fuzzy msgid "Terminal" msgstr "ترمینال %s" #: ../src/guake/gconfhandler.py:440 #, fuzzy, python-format msgid "" "A problem happened when binding %s key.\n" "Please use Guake Preferences dialog to choose another key" msgstr "" "مشکلی هنگام بارگزاری کلید %s به وجود آمد.\n" "لطفا از برگه‌ی تنظیمات Guake برای انتخاب کلید دیگر استفاده کنید(آیکون مخفی " "فعال شده بود)" #: ../src/guake/guake_app.py:132 #, fuzzy msgid "Do you want to close the tab?" msgstr "واقعا مایل به خارج شدن از Guake هستید!؟" #: ../src/guake/guake_app.py:135 #, fuzzy msgid "Do you really want to quit Guake?" msgstr "واقعا مایل به خارج شدن از Guake هستید!؟" #: ../src/guake/guake_app.py:137 #, fuzzy msgid " and one tab open" msgstr "افزودن زبانه‌ی جدید" #: ../src/guake/guake_app.py:139 #, python-brace-format msgid " and {0} tabs open" msgstr "" #: ../src/guake/guake_app.py:142 #, fuzzy msgid "There are no processes running" msgstr "روند دیگری هنوز در حال اجراست" #: ../src/guake/guake_app.py:144 #, fuzzy msgid "There is a process still running" msgstr "روند دیگری هنوز در حال اجراست" #: ../src/guake/guake_app.py:146 #, fuzzy, python-brace-format msgid "There are {0} processes still running" msgstr "روندهای %d در حال اجرا هستند." #: ../src/guake/guake_app.py:186 msgid "guake-indicator" msgstr "" #: ../src/guake/guake_app.py:186 msgid "guake-tray" msgstr "" #: ../src/guake/guake_app.py:190 msgid "Show" msgstr "" #: ../src/guake/guake_app.py:379 #, python-format msgid "" "Guake is now running,\n" "press {!s} to use it." msgstr "" "هم‌اکنون Guake در حال اجرا می‌باشد،\n" "برای استفاده کلید {!s} را فشار دهید." #: ../src/guake/guake_app.py:670 #, python-format msgid "Search on Web: '%s'" msgstr "" #: ../src/guake/guake_app.py:675 msgid "Search on Web (no selection)" msgstr "" #: ../src/guake/guake_app.py:683 msgid "Open Link: '{}...'" msgstr "" #: ../src/guake/guake_app.py:685 msgid "Open Link: {}" msgstr "" #: ../src/guake/guake_app.py:688 msgid "Open Link..." msgstr "" #: ../src/guake/guake_app.py:1425 msgid "Rename tab" msgstr "نام زبانه را تغییر بده" #: ../src/guake/guake_app.py:1736 msgid "Save to..." msgstr "" #: ../src/guake/guake_app.py:1743 ../src/guake/prefs.py:973 msgid "All files" msgstr "" #: ../src/guake/guake_app.py:1748 msgid "Text and Logs" msgstr "" #: ../src/guake/guake_app.py:1766 msgid "Find" msgstr "" #: ../src/guake/guake_app.py:1768 msgid "Forward" msgstr "" #: ../src/guake/guake_app.py:1769 msgid "Backward" msgstr "" #: ../src/guake/main.py:68 msgid "Put Guake in fullscreen mode" msgstr "" #: ../src/guake/main.py:72 msgid "Toggles the visibility of the terminal window" msgstr "Toggles the visibility of the terminal window" #: ../src/guake/main.py:76 #, fuzzy msgid "Shows Guake main window" msgstr "Shows Guake preference window" #: ../src/guake/main.py:80 #, fuzzy msgid "Hides Guake main window" msgstr "Shows Guake preference window" #: ../src/guake/main.py:84 msgid "Shows Guake preference window" msgstr "Shows Guake preference window" #: ../src/guake/main.py:88 msgid "Shows Guake's about info" msgstr "Shows Guake's about info" #: ../src/guake/main.py:92 #, fuzzy msgid "Add a new tab (with current directory set to NEW_TAB)" msgstr "_زبانه‌ای جدید در مسیر کنونی باز کن" #: ../src/guake/main.py:96 msgid "Select a tab (SELECT_TAB is the index of the tab)" msgstr "" #: ../src/guake/main.py:100 msgid "Return the selected tab index." msgstr "Return the selected tab index." #: ../src/guake/main.py:104 msgid "Execute an arbitrary command in the selected tab." msgstr "Execute an arbitrary command in the selected tab." #: ../src/guake/main.py:108 msgid "Specify the tab to rename. Default is 0." msgstr "" #: ../src/guake/main.py:112 msgid "Set the hexadecimal (#rrggbb) background color of the selected tab." msgstr "" #: ../src/guake/main.py:117 msgid "Set the hexadecimal (#rrggbb) foreground color of the selected tab." msgstr "" #: ../src/guake/main.py:123 msgid "" "Rename the specified tab. Reset to default if TITLE is a single dash \"-\"." msgstr "" #: ../src/guake/main.py:129 msgid "" "Rename the current tab. Reset to default if TITLE is a single dash \"-\"." msgstr "" #: ../src/guake/main.py:134 msgid "Says to Guake go away =(" msgstr "Says to Guake go away =(" #: ../src/guake/main.py:138 msgid "Do not execute the start up script" msgstr "" #: ../src/guake/main.py:235 msgid "Guake can not init!" msgstr "برنامه‌ی Guake قابل بارگزاری نیست!" #: ../src/guake/main.py:236 #, fuzzy msgid "" "Gconf Error.\n" "Have you installed guake.schemas properly?" msgstr "" "خطای Gconf.\n" "آیا guake.schemas را به طور صحیح نصب کرده‌اید؟" #. string to show in prefereces dialog for user shell option #: ../src/guake/prefs.py:67 msgid "" msgstr "" #: ../src/guake/prefs.py:77 msgid "Toggle Guake visibility" msgstr "تغییر پدیداری Guake" #: ../src/guake/prefs.py:81 #, fuzzy msgid "Toggle Hide on Lose Focus" msgstr "در صورت توجه کم پنهان شو" #: ../src/guake/prefs.py:88 msgid "Tab management" msgstr "مدیریت زبانه" #: ../src/guake/prefs.py:90 #, fuzzy msgid "New tab" msgstr "Nueva pestaña" #: ../src/guake/prefs.py:92 msgid "Close tab" msgstr "بستن زبانه" #: ../src/guake/prefs.py:94 msgid "Rename current tab" msgstr "نام زبانه‌ی فعلی را تغییر بده" #: ../src/guake/prefs.py:97 msgid "Navigation" msgstr "Navigation" #: ../src/guake/prefs.py:99 msgid "Go to previous tab" msgstr "رفتن به زبانه‌ی قبلی" #: ../src/guake/prefs.py:101 msgid "Go to next tab" msgstr "رفتن به زبانه‌ی بعدی" #: ../src/guake/prefs.py:103 #, fuzzy msgid "Move current tab left" msgstr "نام زبانه‌ی فعلی را تغییر بده" #: ../src/guake/prefs.py:105 #, fuzzy msgid "Move current tab right" msgstr "نام زبانه‌ی فعلی را تغییر بده" #: ../src/guake/prefs.py:107 #, fuzzy msgid "Go to first tab" msgstr "رفتن به زبانه‌ی بعدی" #: ../src/guake/prefs.py:109 #, fuzzy msgid "Go to second tab" msgstr "رفتن به زبانه‌ی بعدی" #: ../src/guake/prefs.py:111 #, fuzzy msgid "Go to third tab" msgstr "رفتن به زبانه‌ی بعدی" #: ../src/guake/prefs.py:113 #, fuzzy msgid "Go to fourth tab" msgstr "رفتن به زبانه‌ی بعدی" #: ../src/guake/prefs.py:115 #, fuzzy msgid "Go to fifth tab" msgstr "رفتن به زبانه‌ی بعدی" #: ../src/guake/prefs.py:117 #, fuzzy msgid "Go to sixth tab" msgstr "رفتن به زبانه‌ی بعدی" #: ../src/guake/prefs.py:119 #, fuzzy msgid "Go to seventh tab" msgstr "رفتن به زبانه‌ی بعدی" #: ../src/guake/prefs.py:121 #, fuzzy msgid "Go to eighth tab" msgstr "رفتن به زبانه‌ی بعدی" #: ../src/guake/prefs.py:123 #, fuzzy msgid "Go to ninth tab" msgstr "رفتن به زبانه‌ی بعدی" #: ../src/guake/prefs.py:125 #, fuzzy msgid "Go to tenth tab" msgstr "رفتن به زبانه‌ی بعدی" #: ../src/guake/prefs.py:127 #, fuzzy msgid "Go to last tab" msgstr "رفتن به زبانه‌ی بعدی" #: ../src/guake/prefs.py:132 msgid "Zoom out" msgstr "" #: ../src/guake/prefs.py:134 msgid "Zoom in" msgstr "" #: ../src/guake/prefs.py:136 msgid "Zoom in (alternative)" msgstr "" #: ../src/guake/prefs.py:138 msgid "Increase height" msgstr "" #: ../src/guake/prefs.py:140 msgid "Decrease height" msgstr "" #: ../src/guake/prefs.py:142 #, fuzzy msgid "Increase transparency" msgstr "شفافیت:" #: ../src/guake/prefs.py:144 #, fuzzy msgid "Decrease transparency" msgstr "شفافیت:" #: ../src/guake/prefs.py:146 #, fuzzy msgid "Toggle transparency" msgstr "شفافیت:" #: ../src/guake/prefs.py:149 msgid "Clipboard" msgstr "حافظه‌ی موقت" #: ../src/guake/prefs.py:151 msgid "Copy text to clipboard" msgstr "کپی متن به حافظه‌ی موقت" #: ../src/guake/prefs.py:153 msgid "Paste text from clipboard" msgstr "چشباندن متن از حافظه‌ی موقت" #: ../src/guake/prefs.py:156 msgid "Extra features" msgstr "" #: ../src/guake/prefs.py:159 msgid "Search select text on web" msgstr "" #: ../src/guake/prefs.py:481 msgid "Action" msgstr "حرکت" #: ../src/guake/prefs.py:491 msgid "Shortcut" msgstr "میانبر" #: ../src/guake/prefs.py:651 ../src/guake/prefs.py:697 msgid "Custom" msgstr "" #: ../src/guake/prefs.py:969 msgid "JSON files" msgstr "" #: ../src/guake/prefs.py:1063 #, python-format msgid "The shortcut \"%s\" is already in use." msgstr "میانبر \"%s\" هم‌اکنون در حال استفاده می‌باشد." #: ../src/guake/prefs.py:1064 msgid "Error setting keybinding." msgstr "خطا در بارگزاری کلید." #: ../src/guake/prefs.py:1076 #, python-format msgid "" "The shortcut \"%s\" cannot be used because it will become impossible to type " "using this key.\n" "\n" "Please try with a key such as Control, Alt or Shift at the same time.\n" msgstr "" "میانبر \"%s\" قابل استفاده نیست زیرا این کار تایپ کردن را با این کلید غیر " "ممکن می‌کند.\n" "\n" "لطفا با کلیدهایی مانند Control, Alt, Shift در یک زمان استفاده کنید.\n" #: guake/main.py:153 msgid "Return the selected tab label." msgstr "" #: guake/data/prefs.glade:264 msgid "Never" msgstr "" #: guake/data/prefs.glade:265 msgid "With process running" msgstr "" #: guake/data/prefs.glade:266 msgid "Always" msgstr "" #: guake/data/prefs.glade:499 msgid "Refocus if open" msgstr "" #: guake/data/prefs.glade:865 msgid "Custom command file path:" msgstr "" #: guake/data/prefs.glade:1315 msgid "Show resizer" msgstr "" #: guake/data/prefs.glade:1423 msgid "Block" msgstr "" #: guake/data/prefs.glade:1424 msgid "I-Beam" msgstr "" #: guake/data/prefs.glade:1425 msgid "Underline" msgstr "" #: guake/data/prefs.glade:1443 msgid "Follow GTK+ setting" msgstr "" #: guake/data/prefs.glade:1444 msgid "Blink on" msgstr "" #: guake/data/prefs.glade:1445 msgid "Blink off" msgstr "" #: guake/data/prefs.glade:2236 msgid "" "Use the following elements in the open editor command line:\n" "- %(file_path)s: path to the file that has been clicked\n" "- %(line_number)s: if your editor supports it, you can directly open " "the file to a given line number when found on the screen.\n" "\n" "For example, for sublime, use subl %(file_path)s:%(line_number)s\n" "" msgstr "" #: guake/data/prefs.glade:2442 guake/data/prefs.glade:2462 msgid "ASCII DEL" msgstr "" #: guake/data/prefs.glade:2443 guake/data/prefs.glade:2463 msgid "Escape sequence" msgstr "" #: guake/data/prefs.glade:2444 guake/data/prefs.glade:2464 msgid "Control-H" msgstr "" #: guake/data/prefs.glade:2600 msgid "" "In this dialog you can attach your own command or script to various " "guake events" msgstr "" #: guake/data/prefs.glade:2635 msgid "On show:" msgstr "" #: guake/data/prefs.glade:2665 msgid "On start:" msgstr "" #: guake/data/prefs.glade:2714 msgid "Hooks" msgstr "" #: guake/data/guake-prefs.desktop:8 msgid "Configure your Guake sessions" msgstr "" #: guake/data/guake-prefs.desktop:15 guake/data/guake.desktop:18 msgid "guake" msgstr "" #: guake/data/guake-prefs.desktop:20 msgid "Terminal;Utility;" msgstr "" #: guake/data/guake.desktop:10 msgid "Use the command line in a Quake-like terminal" msgstr "" #: guake/data/prefs.glade:770 msgid "Main Window Horizontal Alignment" msgstr "" #: guake/prefs.py:89 msgid "Show and focus Guake window" msgstr "" #: guake/data/prefs.glade:566 msgid "0" msgstr "" #: guake/data/prefs.glade:610 msgid "Main Window Options" msgstr "" #: guake/data/prefs.glade:770 msgid "Horizontal Alignment:" msgstr "" #: guake/data/prefs.glade:855 msgid "Height:" msgstr "" #: guake/data/prefs.glade:868 msgid "Width:" msgstr "" #: guake/data/prefs.glade:913 msgid "Geometry" msgstr "" #: guake/data/prefs.glade:944 msgid "Main Window" msgstr "" #: guake/data/prefs.glade:1197 msgid "Infinite scrolling" msgstr "" #: guake/data/prefs.glade:1219 msgid "Scrollbar" msgstr "" #: guake/data/prefs.glade:1304 msgid "Scroll to Bottom" msgstr "" #: guake/data/prefs.glade:2117 msgid "" "Quick open is a feature allowing you to open a file directly into your " "favorite text editor by clicking on its filename when it appears in your " "terminal. See the list of currently supported text patterns used to extract " "filename below." msgstr "" #: guake/main.py:64 msgid "Show Guake version number and exit" msgstr "" #: guake/data/prefs.glade:93 msgid "Guake properties" msgstr "تنظیمات Guake" #: guake/data/prefs.glade:107 msgid "Customize behavior and appearance of Guake!" msgstr "سفارشی کردن رفتار و ظاهر Guake" #: guake/data/prefs.glade:929 msgid "Displacement in pixels" msgstr "" #: guake/main.py:73 msgid "Enable verbose logging" msgstr "" #: guake/guake_app.py:680 msgid "Quick Open: '{!s}...'" msgstr "" #: guake/guake_app.py:683 msgid "Quick Open: {!s}" msgstr "" #: guake/guake_app.py:691 msgid "Open Link: '{!s}...'" msgstr "" #: guake/guake_app.py:694 msgid "Open Link: {!s}" msgstr "" #: guake/data/prefs.glade:2175 msgid "" "WARNING: your system seems to have PCRE2 disabled for VTE, " "preventing application such as Guake to register \"matchers\" using regular " "expressions. Please contact your distribution to request a new version of " "VTE with PCRE2 enabled ! To use Quick Open, you must select the text " "before using Ctrl+click." msgstr "" #: guake/guake_app.py:680 msgid "Quick Open: {!s}..." msgstr "" #: guake/guake_app.py:691 msgid "Open Link: {!s}..." msgstr "" #: guake/guake_app.py:688 msgid "Quick Open..." msgstr "" #: guake/data/prefs.glade:223 msgid "Start Guake at login" msgstr "" #: guake/data/prefs.glade:363 msgid "Gtk Theme:" msgstr "" #: guake/data/prefs.glade:387 msgid "Prefer dark theme" msgstr "" #: guake/guake_app.py:435 msgid "Custom Commands" msgstr "" #: guake/main.py:184 msgid "" "Specify the tab to rename. Default is 0. Can be used to select tab by UUID." msgstr "" #: guake/main.py:212 msgid "" "Rename the specified tab by --tab-index. Reset to default if TITLE is a " "single dash \"-\"." msgstr "" #: data/search.glade:138 msgid "Search forward" msgstr "" #: data/search.glade:153 msgid "Match case" msgstr "" #: data/search.glade:186 msgid "Current search direction: Backward" msgstr "" #: data/prefs.glade:680 msgid "Set window title to current tab name" msgstr "" #: guake/menus.py:48 msgid "Copy Url" msgstr "" #: guake/menus.py:62 msgid "Split ―" msgstr "" #: guake/menus.py:65 msgid "Split " msgstr "" #: guake/menus.py:68 guake/prefs.py:150 msgid "Close terminal" msgstr "" #: guake/prefs.py:137 msgid "Split management" msgstr "" #: guake/prefs.py:142 msgid "Split tab vertical" msgstr "" #: guake/prefs.py:146 msgid "Split tab horizontal" msgstr "" #: guake/prefs.py:154 msgid "Focus terminal above" msgstr "" #: guake/prefs.py:158 msgid "Focus terminal below" msgstr "" #: guake/prefs.py:162 msgid "Focus terminal on the left" msgstr "" #: guake/prefs.py:166 msgid "Focus terminal on the right" msgstr "" #: guake/prefs.py:170 msgid "Move the terminal split handle up" msgstr "" #: guake/prefs.py:174 msgid "Move the terminal split handle down" msgstr "" #: guake/prefs.py:178 msgid "Move the terminal split handle right" msgstr "" #: guake/prefs.py:182 msgid "Move the terminal split handle left" msgstr "" #: guake/menus.py:65 msgid "Split |" msgstr "" #: guake/menus.py:72 msgid "Save content..." msgstr "" #: data/prefs.glade:1182 msgid "" "This might not work on all shells, make sure that your shell supports the --" "login option" msgstr "" #: guake/prefs.py:128 msgid "New tab in home directory" msgstr "" #: guake/dialogs.py:56 #, python-brace-format msgid " on {0} workspaces" msgstr "" #: guake/main.py:211 msgid "Change Guake palette scheme" msgstr "" #: data/prefs.glade:331 msgid "Use workspace-specific tab sets (requires restart)" msgstr "" #: guake/main.py:175 msgid "Split the selected tab vertically." msgstr "" #: guake/main.py:183 msgid "Split the selected tab horizontally." msgstr "" #: data/prefs.glade:348 msgid "Show close buttons for tabs" msgstr "" #: data/prefs.glade:1682 msgid "Bold text is also bright" msgstr "" #: data/prefs.glade:1682 msgid "Bold text is also bright (VTE >=0.52)" msgstr "" #: guake/menus.py:42 msgid "Save Tabs" msgstr "" #: guake/menus.py:45 msgid "Restore Tabs" msgstr "" #: guake/prefs.py:113 msgid "Search terminal" msgstr "" #: guake/main.py:278 msgid "Save Guake preferences to this filename" msgstr "" #: guake/main.py:286 msgid "Restore Guake preferences from this file" msgstr "" #: guake/guake_app.py:1192 #, python-brace-format msgid "Your session.json file is broken, backup to {session_filename}.bak" msgstr "" #: guake/guake_app.py:1228 #, python-brace-format msgid "" "Your session.json schema is broken, backup to {0}.bak,and error message has " "been saved to {0}.log.err" msgstr "" #: guake/guake_app.py:1239 msgid "Your tabs has been restored!" msgstr "" #: data/prefs.glade:190 msgid "Restore previous session (tabs)" msgstr "" #: data/prefs.glade:204 msgid "Enable notification when restore tabs" msgstr "" #: data/prefs.glade:218 msgid "Automatically save session when the tabs has been modified" msgstr "" #: data/prefs.glade:238 msgid "Startup & Tabs (Experiment)" msgstr "" #: guake/guake_app.py:1192 #, python-brace-format msgid "" "Your {session_filename} file is broken, backup to {session_filename}.bak" msgstr "" #: guake/guake_app.py:1227 #, python-brace-format msgid "" "Your {session_filename} schema is broken, backup to {0}.bak,and error " "message has been saved to {session_filename}.log.err" msgstr "" #: guake/guake_app.py:1227 #, python-brace-format msgid "" "Your {session_filename} schema is broken, backup to {session_filename}.bak," "and error message has been saved to {session_filename}.log.err." msgstr "" #: guake/guake_app.py:1227 #, python-brace-format msgid "" "Your {session_filename} schema is broken, backup to {session_filename}.bak, " "and error message has been saved to {session_filename}.log.err." msgstr "" #: guake/notebook.py:317 msgid "" "You are going to restore *all* the tabs!\n" "which means all your terminals & pages will be replaced.\n" "\n" "Do you want to continue?" msgstr "" #: guake/main.py:296 msgid "Show support infomations" msgstr "" #: guake/guake_app.py:1240 #, python-brace-format msgid "" "Tabs session restore abort.\n" "Your session file ({session_filename}) missing schema_version as key" msgstr "" #: guake/guake_app.py:1252 #, python-brace-format msgid "" "Tabs session restore abort.\n" "Your session file schema version is higher than current version " "({session_file_schema_version} > {current_schema_version})." msgstr "" #: guake/data/prefs.glade:409 msgid "Use workspace-specific tab sets (requires restart, only work on X11)" msgstr "" #~ msgid "key binding error" #~ msgstr "خطا در باگزاری کلید" #~ msgid "Unable to bind global %s key" #~ msgstr "نمی‌توان کلید %s را بارگزاری کرد" #~ msgid "http://guake.org" #~ msgstr "http://guake.org" #~ msgid "" #~ "Tango\n" #~ "Linux console\n" #~ "XTerm\n" #~ "Rxvt\n" #~ "Custom\n" #~ msgstr "" #~ "Tango\n" #~ "Linux console\n" #~ "XTerm\n" #~ "Rxvt\n" #~ "Custom\n" #~ msgid "Select a tab" #~ msgstr "Select a tab" #~ msgid "Rename the selected tab." #~ msgstr "Rename the selected tab." #~ msgid "Background" #~ msgstr "پس زمینه" #~ msgid "Choose some color" #~ msgstr "تعدادی رنگ انتخاب کنید" #~ msgid "Image:" #~ msgstr "تصویر:" #~ msgid "Style:" #~ msgstr "سبک:" #~ msgid "Use system defaults" #~ msgstr "استفاده از پیشفرض‌های سیستم" #~ msgid "Window behavior" #~ msgstr "رفتار پنجره" #~ msgid "Desaturation:" #~ msgstr "خالی کردن" #~ msgid "Style" #~ msgstr "سبک" #~ msgid "Could not connect to dbus session bus. dbus will be unavailable.\n" #~ msgstr "نمی‌توان به dbus session bus متصل شد، dbus در دسترس نخواهد بود.\n" #~ msgid "Global hotkeys" #~ msgstr "میانبر‌های بین‌المللی" #~ msgid "Local hotkeys" #~ msgstr "میانبر‌های محلی" #~ msgid "Bottom" #~ msgstr "Abajo" #~ msgid "Top" #~ msgstr "Arriba" #~ msgid "Guake Properties" #~ msgstr "Preferencias de Guake" guake-3.6.3/po/fr.po000066400000000000000000001127521346623310400142160ustar00rootroot00000000000000# Traduction française de Guake-terminal # Copyright (C) Guake Translators # This file is distributed under the same license as the Guake package. # # Translators: # Pierre-Yves Chibon , 2009. # Pablo Martin-Gomez , 2010 # Thomas Canniot , 2011 # Sylvestre Ledru , 2012 # Benjamin Danon , 2012 msgid "" msgstr "" "Project-Id-Version: Guake 0.4.5\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2019-05-13 10:56+0200\n" "PO-Revision-Date: 2019-05-13 11:06+0200\n" "Last-Translator: ButterflyOfFire \n" "Language-Team: French \n" "Language: fr\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=n > 1;\n" "X-Generator: Poedit 1.8.7.1\n" #: guake/menus.py:20 guake/menus.py:38 msgid "New Tab" msgstr "Nouvel onglet" #: guake/menus.py:23 msgid "Rename" msgstr "Renommer" #: guake/menus.py:26 msgid "Close" msgstr "Fermer" #: guake/menus.py:42 msgid "Save Tabs" msgstr "Sauver les onglets" #: guake/menus.py:45 msgid "Restore Tabs" msgstr "Restaurer les onglets" #: guake/menus.py:58 guake/menus.py:178 guake/prefs.py:107 msgid "Quit" msgstr "Quitter" #: guake/menus.py:76 msgid "Copy" msgstr "Copier" #: guake/menus.py:80 msgid "Copy Url" msgstr "Copier l'URL" #: guake/menus.py:83 msgid "Paste" msgstr "Coller" #: guake/menus.py:90 guake/prefs.py:101 msgid "Toggle Fullscreen" msgstr "Activer/Désactiver le plein écran" #: guake/menus.py:94 msgid "Split ―" msgstr "Découper ―" #: guake/menus.py:97 msgid "Split |" msgstr "Découper |" #: guake/menus.py:100 guake/prefs.py:152 msgid "Close terminal" msgstr "Fermer ce terminal" #: guake/menus.py:104 msgid "Save content..." msgstr "Enregistrer le contenu..." #: guake/menus.py:107 guake/prefs.py:110 msgid "Reset terminal" msgstr "Mise à zéro du terminal" #: guake/menus.py:111 msgid "Find..." msgstr "Recherche..." #: guake/menus.py:115 msgid "Open link..." msgstr "Ouvrir le lien..." #: guake/menus.py:123 msgid "Open Link: {!s}..." msgstr "Ouvrir le lien: {!s}..." #: guake/menus.py:125 msgid "Open Link: {!s}" msgstr "Ouvrir le lien : {!s}" #: guake/menus.py:130 msgid "Search on Web" msgstr "Rechercher sur le Web" #: guake/menus.py:137 #, python-format msgid "Search on Web: '%s'" msgstr "Rechercher sur le Web: '%s'" #: guake/menus.py:142 msgid "Quick Open..." msgstr "Ouverture Rapide..." #: guake/menus.py:150 msgid "Quick Open: {!s}..." msgstr "Ouverture Rapide: {!s}..." #: guake/menus.py:153 msgid "Quick Open: {!s}" msgstr "Ouverture Rapide: {!s}" #: guake/menus.py:165 msgid "Custom Commands" msgstr "Commandes personnalisées:" #: guake/prefs.py:80 msgid "" msgstr "" #: guake/prefs.py:91 msgid "General" msgstr "Général" #: guake/prefs.py:95 msgid "Toggle Guake visibility" msgstr "Afficher/Cacher Guake" #: guake/prefs.py:98 msgid "Show and focus Guake window" msgstr "Afficher et sélectionner la fenêtre Guake" #: guake/prefs.py:104 msgid "Toggle Hide on Lose Focus" msgstr "Cacher lors de la perte du focus" #: guake/prefs.py:113 msgid "Search terminal" msgstr "Rechercher..." #: guake/prefs.py:117 msgid "Tab management" msgstr "Gestion des onglets" #: guake/prefs.py:122 msgid "New tab" msgstr "Nouvel onglet" #: guake/prefs.py:126 msgid "New tab in home directory" msgstr "Nouvel onglet dans votre répertoire personnel" #: guake/prefs.py:130 msgid "Close tab" msgstr "Fermer l'onglet" #: guake/prefs.py:134 msgid "Rename current tab" msgstr "Renommer l'onglet actuel" #: guake/prefs.py:139 msgid "Split management" msgstr "Gestion multi-terminal" #: guake/prefs.py:144 msgid "Split tab vertical" msgstr "Découpage vertical" #: guake/prefs.py:148 msgid "Split tab horizontal" msgstr "Découpage horizontal" #: guake/prefs.py:156 msgid "Focus terminal above" msgstr "Activer le terminal au dessus" #: guake/prefs.py:160 msgid "Focus terminal below" msgstr "Activer le teminal en dessous" #: guake/prefs.py:164 msgid "Focus terminal on the left" msgstr "Activer le terminal à gauche" #: guake/prefs.py:168 msgid "Focus terminal on the right" msgstr "Activer le terminal à droite" #: guake/prefs.py:172 msgid "Move the terminal split handle up" msgstr "Déplacer la poignée vers le haut" #: guake/prefs.py:176 msgid "Move the terminal split handle down" msgstr "Déplacer la poignée vers le bas" #: guake/prefs.py:180 msgid "Move the terminal split handle right" msgstr "Déplacer la poignée vers la droite" #: guake/prefs.py:184 msgid "Move the terminal split handle left" msgstr "Déplacer la poignée vers la gauche" #: guake/prefs.py:189 msgid "Navigation" msgstr "Navigation" #: guake/prefs.py:194 msgid "Go to previous tab" msgstr "Aller à l'onglet précédent" #: guake/prefs.py:198 msgid "Go to next tab" msgstr "Aller à l'onglet suivant" #: guake/prefs.py:202 msgid "Move current tab left" msgstr "Déplacer à gauche l'onglet actuel" #: guake/prefs.py:206 msgid "Move current tab right" msgstr "Déplacer à droite l'onglet actuel" #: guake/prefs.py:210 msgid "Go to first tab" msgstr "Aller au premier onglet" #: guake/prefs.py:214 msgid "Go to second tab" msgstr "Aller au second onglet" #: guake/prefs.py:218 msgid "Go to third tab" msgstr "Aller au troisième onglet" #: guake/prefs.py:222 msgid "Go to fourth tab" msgstr "Aller au quatrième onglet" #: guake/prefs.py:226 msgid "Go to fifth tab" msgstr "Aller au cinquième onglet" #: guake/prefs.py:230 msgid "Go to sixth tab" msgstr "Aller au sixième onglet" #: guake/prefs.py:234 msgid "Go to seventh tab" msgstr "Aller au septième onglet" #: guake/prefs.py:238 msgid "Go to eighth tab" msgstr "Aller au huitième onglet" #: guake/prefs.py:242 msgid "Go to ninth tab" msgstr "Aller au neuvième onglet" #: guake/prefs.py:246 msgid "Go to tenth tab" msgstr "Aller au dixième onglet" #: guake/prefs.py:250 msgid "Go to last tab" msgstr "Aller au dernier onglet" #: guake/prefs.py:255 msgid "Appearance" msgstr "Apparence" #: guake/prefs.py:259 msgid "Zoom out" msgstr "Dézoomer" #: guake/prefs.py:262 msgid "Zoom in" msgstr "Zoomer" #: guake/prefs.py:265 msgid "Zoom in (alternative)" msgstr "Zoomer (alternatif)" #: guake/prefs.py:268 msgid "Increase height" msgstr "Augmenter la taille" #: guake/prefs.py:271 msgid "Decrease height" msgstr "Réduire la taille" #: guake/prefs.py:274 msgid "Increase transparency" msgstr "Augmenter la transparence" #: guake/prefs.py:277 msgid "Decrease transparency" msgstr "Réduire la transparence" #: guake/prefs.py:280 msgid "Toggle transparency" msgstr "Activer/Désactiver la transparence" #: guake/prefs.py:284 msgid "Clipboard" msgstr "Presse-papiers" #: guake/prefs.py:289 msgid "Copy text to clipboard" msgstr "Copier dans le presse-papiers" #: guake/prefs.py:293 msgid "Paste text from clipboard" msgstr "Coller à partir du presse-papiers" #: guake/prefs.py:298 msgid "Extra features" msgstr "Extra" #: guake/prefs.py:302 msgid "Search select text on web" msgstr "Rechercher le texte sélectionné sur le Web" #: guake/prefs.py:764 msgid "Action" msgstr "Action" #: guake/prefs.py:772 msgid "Shortcut" msgstr "Raccourcis" #: guake/prefs.py:938 guake/prefs.py:992 msgid "Custom" msgstr "Personnalisé" #: guake/prefs.py:1302 msgid "JSON files" msgstr "Fichiers JSON" #: guake/prefs.py:1306 guake/dialogs.py:111 msgid "All files" msgstr "Tous les fichiers" #: guake/prefs.py:1401 #, python-format msgid "The shortcut \"%s\" is already in use." msgstr "Le raccourcis « %s » est déjà utilisé." #: guake/prefs.py:1402 msgid "Error setting keybinding." msgstr "Erreur d'attribution des raccourcis." #: guake/prefs.py:1418 #, python-format msgid "" "The shortcut \"%s\" cannot be used because it will become impossible to type " "using this key.\n" "\n" "Please try with a key such as Control, Alt or Shift at the same time.\n" msgstr "" "Le raccourcis « %s » ne peux être utilisé car il empêche une utilisation " "normale du clavier.\n" "\n" "Essayez de l'utiliser en combinaison avec une touche tel que Control, Alt ou " "Shift.\n" #: guake/main.py:73 msgid "Show Guake version number and exit" msgstr "Afficher la version de Guake et quitter" #: guake/main.py:82 msgid "Enable verbose logging" msgstr "Activer la sortie verbeuse" #: guake/main.py:91 msgid "Put Guake in fullscreen mode" msgstr "Placer Guake en mode plein écran" #: guake/main.py:100 msgid "Toggles the visibility of the terminal window" msgstr "Activer/Désactiver la visibilité de la fenêtre principale" #: guake/main.py:108 msgid "Shows Guake main window" msgstr "Afficher la fenêtre principale de Guake" #: guake/main.py:116 msgid "Hides Guake main window" msgstr "Afficher la fenêtre principale de Guake" #: guake/main.py:125 msgid "Shows Guake preference window" msgstr "Afficher la fenêtre de préférences de Guake" #: guake/main.py:134 msgid "Shows Guake's about info" msgstr "Afficher les informations à propos de Guake" #: guake/main.py:143 msgid "Add a new tab (with current directory set to NEW_TAB)" msgstr "Ajouter un nouvel onglet (le dossier courant est spécifié par NEW_TAB)" #: guake/main.py:152 msgid "Select a tab (SELECT_TAB is the index of the tab)" msgstr "Sélectionner un onglet (SELECT_TAB est l'index du tab)" #: guake/main.py:161 msgid "Return the selected tab index." msgstr "Retourne l'index de l'onglet sélectionné." #: guake/main.py:170 msgid "Return the selected tab label." msgstr "Retourne le label de l'onglet sélectionné." #: guake/main.py:178 msgid "Split the selected tab vertically." msgstr "Couper verticalement" #: guake/main.py:186 msgid "Split the selected tab horizontally." msgstr "Couper horizontalement" #: guake/main.py:195 msgid "Execute an arbitrary command in the selected tab." msgstr "Exécuter une commande dans un onglet sélectionné." #: guake/main.py:204 msgid "" "Specify the tab to rename. Default is 0. Can be used to select tab by UUID." msgstr "" "Index de l'onglet à renommer. Par défaut 0. Peut aussi être utilisé pour " "spécifier l'UUID de l'onglet." #: guake/main.py:212 msgid "Set the hexadecimal (#rrggbb) background color of the selected tab." msgstr "" "Choisir la couleur hexadécimale (#rrggbb) du fond pour l'onglet sectionné." #: guake/main.py:221 msgid "Set the hexadecimal (#rrggbb) foreground color of the selected tab." msgstr "" "Choisir la couleur hexadécimale (#rrggbb) de la police pour l'onglet " "sectionné." #: guake/main.py:230 msgid "Change Guake palette scheme" msgstr "Changer de palette de couleur" #: guake/main.py:240 msgid "" "Rename the specified tab by --tab-index. Reset to default if TITLE is a " "single dash \"-\"." msgstr "" "Renomme l'onglet spécifié par --tab-dex. Remet à zéro si le TITRE est \"-" "\" (simple tiret)." #: guake/main.py:252 msgid "" "Rename the current tab. Reset to default if TITLE is a single dash \"-\"." msgstr "" "Renommer the tab actuel. Pour remettre à la valeur par défaut, utiliser \"-" "\"." #: guake/main.py:262 msgid "Says to Guake go away =(" msgstr "Dis au-revoir à Guake =(" #: guake/main.py:271 msgid "Do not execute the start up script" msgstr "Ne pas executer le script de démarrage" #: guake/main.py:279 msgid "Save Guake preferences to this filename" msgstr "Exporter les préférences de Guake dans ce fichier" #: guake/main.py:287 msgid "Restore Guake preferences from this file" msgstr "Restaurer les préférences de Guake depuis ce fichier." #: guake/main.py:295 msgid "Show support infomations" msgstr "Afficher les informations pour le support" #: guake/guake_app.py:156 guake/guake_app.py:288 guake/guake_app.py:1228 #: guake/guake_app.py:1238 guake/guake_app.py:1250 guake/guake_app.py:1299 #: guake/guake_app.py:1314 guake/keybindings.py:92 guake/about.py:54 msgid "Guake Terminal" msgstr "Terminal Guake" #: guake/guake_app.py:162 msgid "guake-indicator" msgstr "guake-indicator" #: guake/guake_app.py:162 msgid "guake-tray" msgstr "guake-tray" #: guake/guake_app.py:167 msgid "Show" msgstr "Afficher" #: guake/guake_app.py:289 msgid "" "Guake is now running,\n" "press {!s} to use it." msgstr "" "Guake est démarré, \n" "appuyer sur {!s} pour ouvrir Guake." #: guake/guake_app.py:971 guake/notebook.py:267 msgid "Terminal" msgstr "Terminal" #: guake/guake_app.py:1059 msgid "Find" msgstr "Rechercher" #: guake/guake_app.py:1060 msgid "Forward" msgstr "Suivant" #: guake/guake_app.py:1060 msgid "Backward" msgstr "Précédent" #: guake/guake_app.py:1229 #, python-brace-format msgid "" "Your {session_filename} file is broken, backup to {session_filename}.bak" msgstr "" "Votre fichier {session_filename} est cassé, sauvegarde vers " "{session_filename}.bak." #: guake/guake_app.py:1240 #, python-brace-format msgid "" "Tabs session restore abort.\n" "Your session file ({session_filename}) missing schema_version as key" msgstr "" "La restauration de session annulé.\n" "Votre fichier de session ({session_filename}) ne dispose de la clé " "schema_version" #: guake/guake_app.py:1252 #, python-brace-format msgid "" "Tabs session restore abort.\n" "Your session file schema version is higher than current version " "({session_file_schema_version} > {current_schema_version})." msgstr "" "La restauration de session annulé.\n" "Votre fichier de session a une version de schema supérieure à la version " "supportée actuellement ({session_file_schema_version} > " "{current_schema_version})." #: guake/guake_app.py:1301 #, python-brace-format msgid "" "Your {session_filename} schema is broken, backup to {session_filename}.bak, " "and error message has been saved to {session_filename}.log.err." msgstr "" "Votre schema {session_filename} est cassé, sauvegarde dans " "{session_filename}.bak, et enregistrement des messages d'erreur vers " "{session_filename}.log.err." #: guake/guake_app.py:1314 msgid "Your tabs has been restored!" msgstr "Vos onglets ont été restauré!" #: guake/notebook.py:338 msgid "" "You are going to restore *all* the tabs!\n" "which means all your terminals & pages will be replaced.\n" "\n" "Do you want to continue?" msgstr "" "Vous êtes sur le point de restaurer *tous* les onglets!\n" "Ceci signifie que tous les terminaux ouverts seront fermés.\n" "\n" "Voulez-vous continuer?" #: guake/keybindings.py:94 #, python-format msgid "" "A problem happened when binding %s key.\n" "Please use Guake Preferences dialog to choose another key" msgstr "" "Un problème est survenu lors de la liaison avec la touche %s.\n" "Merci d'utiliser la fenêtre de préférences de Guake pour choisir une autre " "touche" #: guake/dialogs.py:11 msgid "Rename tab" msgstr "Renomme l'onglet" #: guake/dialogs.py:46 msgid "Do you want to close the tab?" msgstr "Voulez-vous vraiment fermer l'onglet ?" #: guake/dialogs.py:50 msgid "Do you really want to quit Guake?" msgstr "Voulez-vous vraiment quitter Guake ?" #: guake/dialogs.py:52 msgid " and one tab open" msgstr " et un tab ouvert" #: guake/dialogs.py:54 #, python-brace-format msgid " and {0} tabs open" msgstr " et {0} onglets ouverts" #: guake/dialogs.py:56 #, python-brace-format msgid " on {0} workspaces" msgstr "sur {0} espaces de travail" #: guake/dialogs.py:61 msgid "There are no processes running" msgstr "Il y n'a pas de processus actif" #: guake/dialogs.py:63 msgid "There is a process still running" msgstr "Il y a encore un processus en cours" #: guake/dialogs.py:65 #, python-brace-format msgid "There are {0} processes still running" msgstr "Il y a {0} processus encore actifs" #: guake/dialogs.py:94 msgid "Save to..." msgstr "Enregistrer sous..." #: guake/dialogs.py:116 msgid "Text and Logs" msgstr "Textes et logs" #: guake/data/about.glade:14 msgid "" "Guake is an easy to access\n" "terminal based on FPS games terminal" msgstr "" "Guake est un terminal simple et facilement utilisable\n" "basé sur les terminaux disponibles dans les jeux fps" #: guake/data/guake.glade:47 msgid "Guake!" msgstr "Guake !" #: guake/data/prefs.glade:43 msgid "Guake Preferences" msgstr "Préférences de Guake" #: guake/data/prefs.glade:96 msgid "Guake properties" msgstr "Propriétés de Guake" #: guake/data/prefs.glade:110 msgid "Customize behavior and appearance of Guake!" msgstr "Personnaliser Guake !" #: guake/data/prefs.glade:190 msgid "Restore previous session (tabs)" msgstr "Restauration de la précédentes sessions (onglets)" #: guake/data/prefs.glade:204 msgid "Enable notification when restore tabs" msgstr "Activer les notifications lors de la restauration des onglets" #: guake/data/prefs.glade:218 msgid "Automatically save session when the tabs has been modified" msgstr "" "Sauvegarde automatique de la session lors de la modification des onglets" #: guake/data/prefs.glade:238 msgid "Startup & Tabs (Experiment)" msgstr "Démarrage & Onglets" #: guake/data/prefs.glade:271 msgid "Enable popup notifications on startup" msgstr "Activer la notification par pop-up au démarrage" #: guake/data/prefs.glade:288 msgid "_Play system alert sound on bell" msgstr "_Jouer une alerte système sur un signal \"bell\"" #: guake/data/prefs.glade:304 msgid "Start Guake at login" msgstr "Lancer Guake au login" #: guake/data/prefs.glade:327 msgid "Prompt on close tab:" msgstr "Confirmer la fermeture d'onglet :" #: guake/data/prefs.glade:341 msgid "Never" msgstr "Jamais" #: guake/data/prefs.glade:342 msgid "With process running" msgstr "Avec le processus lancé" #: guake/data/prefs.glade:343 msgid "Always" msgstr "Toujours" #: guake/data/prefs.glade:362 msgid "Always prompt on quit" msgstr "Toujours confirmer pour quitter" #: guake/data/prefs.glade:378 msgid "Show tray icon" msgstr "Afficher l'icône de notification" #: guake/data/prefs.glade:394 msgid "_Flash terminal on bell" msgstr "_Flash du terminal lors d'un \"bell\"" #: guake/data/prefs.glade:409 msgid "Use workspace-specific tab sets (requires restart, only work on X11)" msgstr "" "Utiliser les lots d'onglets spécifiques par espace de travail (nécessite un " "redémarrage, supporté uniquement par X11)" #: guake/data/prefs.glade:426 msgid "Show close buttons for tabs" msgstr "Afficher les boutons fermeture d'onglet" #: guake/data/prefs.glade:450 guake/data/prefs.glade:1782 msgid "General" msgstr "Général" #: guake/data/prefs.glade:476 msgid "Gtk Theme:" msgstr "Thème Gtk :" #: guake/data/prefs.glade:500 msgid "Prefer dark theme" msgstr "Préférer le thème sombre" #: guake/data/prefs.glade:529 msgid "Custom command file path:" msgstr "Fichier de lignes de commande personnalisées :" #: guake/data/prefs.glade:541 msgid "Please select a json file" msgstr "Veuillez sélectionnez un fichier JSON" #: guake/data/prefs.glade:629 msgid "Refocus if open" msgstr "Reprendre le focus à l'affichage" #: guake/data/prefs.glade:646 msgid "Hide on lose focus" msgstr "Cacher lors de la perte du focus" #: guake/data/prefs.glade:663 msgid "Start fullscreen" msgstr "Active/Désactive le plein écran" #: guake/data/prefs.glade:679 msgid "Stay on top" msgstr "Reste au premier plan" #: guake/data/prefs.glade:697 msgid "Show tab bar" msgstr "Afficher la barre d'onglets" #: guake/data/prefs.glade:713 msgid "Use VTE titles for tab names" msgstr "Utiliser les titres VTE pour le nom des tabs" #: guake/data/prefs.glade:731 msgid "Abbreviate directories in tab names" msgstr "Réduit des noms de dossiers dans les onglets" #: guake/data/prefs.glade:756 msgid "Max tab name length:" msgstr "Longueur maximale du nom de l'onglet :" #: guake/data/prefs.glade:771 msgid "0" msgstr "0" #: guake/data/prefs.glade:793 msgid "Set window title to current tab name" msgstr "Mettre le titre de la fenêtre au nom de l'onglet courant" #: guake/data/prefs.glade:815 msgid "Main Window Options" msgstr "Option de la fenetre fenêtre" #: guake/data/prefs.glade:846 msgid "Bottom align window instead of top align" msgstr "Aligner la fenêtre par le bas au lieu de par le haut" #: guake/data/prefs.glade:862 msgid "Appear on mouse display" msgstr "Apparition sur la fenêtre de la souris" #: guake/data/prefs.glade:887 msgid "Appear on display:" msgstr "Apparition sur l'écran :" #: guake/data/prefs.glade:917 msgid "Place tabs on top" msgstr "Rester au premier plan" #: guake/data/prefs.glade:939 msgid "Placement" msgstr "Palette" #: guake/data/prefs.glade:975 msgid "Horizontal Alignment:" msgstr "Alignement horizontal :" #: guake/data/prefs.glade:991 msgid "Left" msgstr "Gauche" #: guake/data/prefs.glade:1011 msgid "Center" msgstr "Centre" #: guake/data/prefs.glade:1031 msgid "Right" msgstr "Droit" #: guake/data/prefs.glade:1060 msgid "Height:" msgstr "Hauteur :" #: guake/data/prefs.glade:1073 msgid "Width:" msgstr "Largeur :" #: guake/data/prefs.glade:1127 msgid "Displacement in pixels" msgstr "Espace en pixels" #: guake/data/prefs.glade:1155 msgid "Geometry" msgstr "Géometrie" #: guake/data/prefs.glade:1186 msgid "Main Window" msgstr "Fenêtre Principale" #: guake/data/prefs.glade:1231 msgid "Default interpreter:" msgstr "Interpréteur par défaut :" #: guake/data/prefs.glade:1271 msgid "_Run command as a login shell" msgstr "_Exécuter les commandes comme shell de connexion" #: guake/data/prefs.glade:1292 msgid "" "This might not work on all shells, make sure that your shell supports the --" "login option" msgstr "" "Ceci peut ne pas fonctionner pour tous les shell, veuillez vous assurer que " "votre shell support l'option --login" #: guake/data/prefs.glade:1307 msgid "_Open new tab in current directory" msgstr "_Ouvrir un nouvel onglet dans le dossier courant" #: guake/data/prefs.glade:1351 msgid "Shell" msgstr "Shell" #: guake/data/prefs.glade:1397 msgid "Show scrollbar" msgstr "Afficher la barre de défilement" #: guake/data/prefs.glade:1421 msgid "Scrollback lines:" msgstr "Nombres de lignes en mémoire :" #: guake/data/prefs.glade:1457 msgid "Infinite scrolling" msgstr "Défilement infini" #: guake/data/prefs.glade:1479 msgid "Scrollbar" msgstr "Défilement" #: guake/data/prefs.glade:1524 msgid "On output" msgstr "En sortie" #: guake/data/prefs.glade:1541 msgid "On key stroke" msgstr "Par raccourcis clavier" #: guake/data/prefs.glade:1564 msgid "Scroll to Bottom" msgstr "Défiler vers le bas" #: guake/data/prefs.glade:1588 msgid "Scrolling" msgstr "Défilement" #: guake/data/prefs.glade:1623 msgid "Use the system fixed width font" msgstr "Utiliser la taille de police définie par le système" #: guake/data/prefs.glade:1651 msgid "Font:" msgstr "Police de caractères :" #: guake/data/prefs.glade:1666 msgid "Choose some font" msgstr "Choisissez une police" #: guake/data/prefs.glade:1680 msgid "Cursor shape:" msgstr "Forme du curseur :" #: guake/data/prefs.glade:1695 msgid "Block" msgstr "Bloc" #: guake/data/prefs.glade:1696 msgid "I-Beam" msgstr "I-Beam" #: guake/data/prefs.glade:1697 msgid "Underline" msgstr "Souligné" #: guake/data/prefs.glade:1711 msgid "Cursor blink mode:" msgstr "Mode de clignotement du curseur :" #: guake/data/prefs.glade:1725 msgid "Follow GTK+ setting" msgstr "Suivant les paramètres GTK+" #: guake/data/prefs.glade:1726 msgid "Blink on" msgstr "Clignotement activé" #: guake/data/prefs.glade:1727 msgid "Blink off" msgstr "Clignotement désactivé" #: guake/data/prefs.glade:1744 msgid "Allow bold font" msgstr "Autoriser les polices grasses" #: guake/data/prefs.glade:1760 msgid "Bold text is also bright (VTE >=0.52)" msgstr "Les textes en gras sont aussi brillants (VTE >=0.52)" #: guake/data/prefs.glade:1817 msgid "Built-in schemes:" msgstr "Arrangements pré-définis :" #: guake/data/prefs.glade:1843 msgid "Color palette:" msgstr "Palette de couleurs :" #: guake/data/prefs.glade:1858 msgid "Demo:" msgstr "Démo :" #: guake/data/prefs.glade:2161 msgid "Palette" msgstr "Palette" #: guake/data/prefs.glade:2183 msgid "Effects" msgstr "Effets" #: guake/data/prefs.glade:2208 msgid "Transparency:" msgstr "Transparence :" #: guake/data/prefs.glade:2292 msgid "" "To change a shortcut simply click on its name.\n" "To disable a shortcut, press the \"Backspace\" key." msgstr "" "Pour changer un raccourcis, cliquer sur son nom.\n" "Pour désactiver un raccourcis, appuyer sur la touche \"Retour Arrière\"." #: guake/data/prefs.glade:2342 msgid "Keyboard shortcuts" msgstr "Raccourcis clavier" #: guake/data/prefs.glade:2394 msgid "" "Quick open is a feature allowing you to open a file directly into your " "favorite text editor by clicking on its filename when it appears in your " "terminal. See the list of currently supported text patterns used to extract " "filename below." msgstr "" "L'ouverture rapide est une fonctionnalité qui vous permet d'ouvrir un " "fichier directement dans votre éditeur de texte favori en cliquant sur son " "nom de fichier lorsqu'il apparaît dans votre terminal. Voir la liste des " "modèles de texte actuellement utilisés pour extraire le nom de fichier ci-" "dessous." #: guake/data/prefs.glade:2432 msgid "Enable Quick Open when Ctrl+clicking on a filename in the terminal" msgstr "" "Activer l'Ouverture Rapide lors d'un Ctrl+clic sur un nom de fichier dans le " "terminal" #: guake/data/prefs.glade:2457 msgid "Editor command line:" msgstr "Ligne de commande de l'éditeur :" #: guake/data/prefs.glade:2503 msgid "" "Use the following elements in the open editor command line:\n" "- %(file_path)s: path to the file that has been clicked\n" "- %(line_number)s: if your editor supports it, you can directly open " "the file to a given line number when found on the screen.\n" "\n" "For example, for sublime, use subl %(file_path)s:%(line_number)s\n" "" msgstr "" "Utilisez les éléments suivants dans la ligne de commande de " "l'éditeur:\n" "- %(file_path)s: chemin d'accès au fichier sur lequel vous avez " "cliqué\n" "- %(line_number)s: si votre éditeur le prend en charge, vous pouvez " "directement ouvrir le fichier à un numéro de ligne donné.\n" "\n" "Par exemple, pour sublime, utilisez subl%(file_path)s:%(line_number)s \n" "" #: guake/data/prefs.glade:2558 msgid "Quick open in current terminal" msgstr "Ouverture Rapide dans le terminal courant" #: guake/data/prefs.glade:2602 msgid "Quick Open" msgstr "Ouverture Rapide" #: guake/data/prefs.glade:2652 msgid "" "In this dialog you can attach your own command or script to various " "guake events" msgstr "Scripts à exécuter lors d’événement:" #: guake/data/prefs.glade:2674 msgid "On show:" msgstr "À l’affichage :" #: guake/data/prefs.glade:2686 msgid "On start:" msgstr "Au démarrage :" #: guake/data/prefs.glade:2752 msgid "Hooks" msgstr "Scripts" #: guake/data/prefs.glade:2781 msgid "" "Note: These options may cause some applications to behave " "incorrectly. They are only here to allow you to work around certain " "applications and operating systems that expect different terminal behavior." msgstr "" "Note : Ces options peuvent entrainer un comportement " "anormale. Elles ne sont disponible ici que pour des cas spécifiques où " "certains logiciels ou système d'exploitation attendent un comportement " "différent du terminal." #: guake/data/prefs.glade:2801 msgid "_Backspace key generates:" msgstr "La touche _Retour correspond à :" #: guake/data/prefs.glade:2814 msgid "_Delete key generates:" msgstr "La touche _Suppr correspond  à :" #: guake/data/prefs.glade:2829 guake/data/prefs.glade:2846 msgid "ASCII DEL" msgstr "ASCII DEL" #: guake/data/prefs.glade:2830 guake/data/prefs.glade:2847 msgid "Escape sequence" msgstr "Séquence d'échapement" #: guake/data/prefs.glade:2831 guake/data/prefs.glade:2848 msgid "Control-H" msgstr "Controle+H" #: guake/data/prefs.glade:2873 msgid "_Reset Compatibility Options to Defaults" msgstr "_Rétablir la configuration par défaut" #: guake/data/prefs.glade:2904 msgid "Compatibility" msgstr "Compatibilité" #: guake/data/search.glade:138 msgid "Search forward" msgstr "Rechercher en avant" #: guake/data/search.glade:153 msgid "Match case" msgstr "Respecter la casse" #: guake/data/search.glade:186 msgid "Current search direction: Backward" msgstr "Direction de la recherche: Arrière" #: guake/data/guake.template.desktop:4 guake/data/autostart-guake.desktop:31 #: guake/data/guake.desktop:37 msgid "Use the command line in a Quake-like terminal" msgstr "Exploitez la ligne command dans un terminal tel Quake" #: guake/data/guake.template.desktop:7 guake/data/autostart-guake.desktop:34 #: guake/data/guake-prefs.template.desktop:7 guake/data/guake-prefs.desktop:50 #: guake/data/guake.desktop:49 msgid "guake" msgstr "guake" #: guake/data/guake-prefs.template.desktop:4 guake/data/guake-prefs.desktop:38 msgid "Configure your Guake sessions" msgstr "Configurer vos sessions Guake" #: guake/data/guake-prefs.template.desktop:13 guake/data/guake-prefs.desktop:66 msgid "Terminal;Utility;" msgstr "Terminal;Utilitaires;" #~ msgid "Use workspace-specific tab sets (requires restart)" #~ msgstr "Utiliser les bureaux virtuels pour les onglets (redémarrage requis)" #~ msgid "" #~ "Your {session_filename} schema is broken, backup to {0}.bak,and error " #~ "message has been saved to {session_filename}.log.err" #~ msgstr "" #~ "Votre schema {session_filename} est invalide, sauvegarde vers " #~ "{session_filename}.back, et le message d'erreur a été sauver dans " #~ "{session_filename}.log.err." #~ msgid "Your session.json file is broken, backup to {session_filename}.bak" #~ msgstr "Votre fichier session.json est " #~ msgid "Bold text is also bright" #~ msgstr "Les textes en gras sont aussi brillants" #~ msgid "Rename Tab" #~ msgstr "Renommer l'onglet" #~ msgid "Close Tab" #~ msgstr "Fermer onglet" #~ msgid "Save to File..." #~ msgstr "Enregister..." #~ msgid "Split " #~ msgstr "Découpage " #~ msgid "Search on Web (no selection)" #~ msgstr "Rechercher sur le Web (pas de sélection)" #~ msgid "Open Link..." #~ msgstr "Ouvrir le lien..." #~ msgid "Specify the tab to rename. Default is 0." #~ msgstr "Spécifier un onglet à renommer. Defaut: 0." #~ msgid "" #~ "Rename the specified tab. Reset to default if TITLE is a single dash \"-" #~ "\"." #~ msgstr "" #~ "Renommer l'onglet spécifié. Pour remettre à la valeur par defaut, mettre " #~ "TITRE à \"-\"." #~ msgid "" #~ "WARNING: your system seems to have PCRE2 disabled for VTE, " #~ "preventing application such as Guake to register \"matchers\" using " #~ "regular expressions. Please contact your distribution to request a new " #~ "version of VTE with PCRE2 enabled ! To use Quick Open, you must select " #~ "the text before using Ctrl+click." #~ msgstr "" #~ "ATTENTION: votre systeme ne semble pas avoir PCRE2 active pour " #~ "VTE. Guake ne peut pas enregister de \"matchers\" pour detecter des liens " #~ "ou des noms de fichier. Veuillez contacter votre distribution pour leur " #~ "demander de mettre a disposition une version de VTE avec PCRE2 ! Pour " #~ "utiliser l'Ouverture Rapide, vous devez selectionner le text avant " #~ "d'effectuer Ctrl+clic." #~ msgid "Quick Open: '{!s}...'" #~ msgstr "Ouverture Rapide: {!s}..." #~ msgid "Open Link: '{}...'" #~ msgstr "Ouvrir le lien: '{}...'" #~ msgid "Open Link: {}" #~ msgstr "Ouvrir le lien: {}" #~ msgid "Guake properties" #~ msgstr "" #~ "Propriétés de Guake" #~ msgid "" #~ "Customize behavior and appearance of Guake!" #~ msgstr "Personnaliser Guake !" #~ msgid "Main Window" #~ msgstr "Fenêtre principale" #~ msgid "Main Window Horizontal Alignment" #~ msgstr "Alignement horizontal de la fenêtre principale" #~ msgid "Main Window Height" #~ msgstr "Hauteur de la fenêtre principale" #~ msgid "Main Window Width" #~ msgstr "Largeur de la fenêtre principale" #~ msgid "Show resizer" #~ msgstr "Permettre le redimensionnement" #~ msgid "" #~ "Quick open is a feature allowing you to open a file directly into " #~ "your favorite text editor by clicking on its filename when it appears in " #~ "your terminal. See the list of currently supported text patterns used to " #~ "extract filename below." #~ msgstr "" #~ "Ouverture Rapide vous permet d'ouvrir un fichier directement dans " #~ "votre éditeur de texte préféré lors d'un clic sur un nom de fichier dans " #~ "le terminal. Veuillez consulter ci-dessous la liste des motifs de texte " #~ "utilisé pour extraire les noms de fichiers." #~ msgid "About Guake" #~ msgstr "À propos de Guake" #~ msgid "Text color:" #~ msgstr "Couleur du texte :" #~ msgid "Background color:" #~ msgstr "Couleur d'arrière-plan " #~ msgid "Add a new tab" #~ msgstr "Ajouter un nouvel onglet" #~ msgid "" #~ "Path to a bash script that would be automatically executed when Guake " #~ "starts, unless you specify --no-startup-script.\n" #~ "\n" #~ "This would typically use the configuration by command line feature of " #~ "Guake:\n" #~ "\n" #~ "#!/bin/bash\n" #~ "\n" #~ "sleep 5 # it is advised to wait a bit before Guake has been successfully " #~ "started\n" #~ "\n" #~ "guake -r \"main\" -e \"cd ~/projects/myproject/main\"\n" #~ "guake -r \"prod\" -e \"cd ~/projects/myproject/prod\"\n" #~ msgstr "" #~ "Chemin vers un script bash qui sera automatiquement executé lors du " #~ "lancement de Guake, sauf si vous avez spécifié l'argument --no-startup-" #~ "script.\n" #~ "\n" #~ "Utilisez ce script pour configurer votre instance Guake par la ligne de " #~ "command, comme par exemple:\n" #~ "#!/bin/bash\n" #~ "\n" #~ "sleep 5 # it is advised to wait a bit before Guake has been successfully " #~ "started\n" #~ "\n" #~ "guake -r \"main\" -e \"cd ~/projects/myproject/main\"\n" #~ "guake -r \"prod\" -e \"cd ~/projects/myproject/prod\"\n" #~ msgid "Path to script executed on Guake start:" #~ msgstr "Chemin vers le script à executer lors du lancement de Guake:" #~ msgid "" #~ "Never\n" #~ "With process running\n" #~ "Always" #~ msgstr "" #~ "Jamais\n" #~ "Si des processus sont toujours en cours\n" #~ "Toujours" #~ msgid "Custom command file path: " #~ msgstr "Fichier de commandes personnalisées:" #~ msgid "Shell" #~ msgstr "Shell" #~ msgid "Scroll" #~ msgstr "Défilement" #~ msgid "" #~ "Block\n" #~ "I-Beam\n" #~ "Underline" #~ msgstr "" #~ "Block\n" #~ "Faisceau en forme de I\n" #~ "Souligner" #~ msgid "" #~ "Follow GTK+ setting\n" #~ "Blink on\n" #~ "Blink off" #~ msgstr "" #~ "Suivre les paramètres GTK\n" #~ "Activé\n" #~ "Désactivé" #~ msgid "Font color" #~ msgstr "Couleur du texte" #~ msgid "Background color" #~ msgstr "Couleur d'arrière-plan" #~ msgid "Use font and background color from the palette" #~ msgstr "Utiliser les couleurs de la palette pour la police et le fond" #~ msgid "Background image:" #~ msgstr "Image d'arrière-plan :" #~ msgid "Select A File" #~ msgstr "Sélectionner un fichier" #~ msgid "" #~ "Use the following elements in the open editor command line:\n" #~ " - %(file_path)s: path to the file that has been clicked\n" #~ " - %(line_number)s: if your editor supports it, you can directly " #~ "open the file to a given line number when found on the screen.\n" #~ "\n" #~ "For example, for sublime, use subl %(file_path)s:%(line_number)s\n" #~ "" #~ msgstr "" #~ "Utilisez les élements suivant dans votre ligne de commande::\n" #~ " - %(file_path)s: chemin vers le fichier qui a été cliqué\n" #~ " - %(line_number)s: si votre éditeur le supporte, vous pouvez lui " #~ "spécifier le numéro de la ligne dans le fichier, s'il a été trouvé par le " #~ "motif\n" #~ "\n" #~ "Par exemple, la ligne de command pour l'éditeur Sublime Text, est: " #~ "subl %(file_path)s:%(line_number)s\n" #~ "" #~ msgid "" #~ "Here is the list of supported patterns: (to add your own, please contact " #~ "the Guake's authors)" #~ msgstr "" #~ "Voici la liste des motifs supportés (pour ajouter votre propre motif, " #~ "contacter l'équipe de dévelopment)" #~ msgid "Quick Open" #~ msgstr "Ouverture Rapide" #~ msgid "" #~ "ASCII DEL\n" #~ "Escape sequence\n" #~ "Control-H" #~ msgstr "" #~ "ASCII DEL\n" #~ "Séquence d'échap.\n" #~ "Control-H" #~ msgid "Keyboard compatibility" #~ msgstr "Configuration clavier" #~ msgid "" #~ "Insert command or path to script.\n" #~ "For details, see https://github.com/Guake/guake/issues/793" #~ msgstr "" #~ "Scripts à exécuter.\n" #~ "Pour plus de détails, voir https://github.com/Guake/guake/issues/793." #~ msgid "Hooks" #~ msgstr "Scripts" #~ msgid "Set the background image of the selected tab." #~ msgstr "Choisir l’image de fond pour l'onglet sectionné" #~ msgid "Guake can not init!" #~ msgstr "Guake ne peux démarrer" #~ msgid "" #~ "Gconf Error.\n" #~ "Have you installed guake.schemas properly?" #~ msgstr "" #~ "Erreur Gconf.\n" #~ "Avez-vous installé guake.schemas correctement ?" #~ msgid "0 means no size limit" #~ msgstr "0 signifie pas de limite" #~ msgid "key binding error" #~ msgstr "Combinaison de touches invalide" #~ msgid "Unable to bind global %s key" #~ msgstr "Impossible de combiner la touche %s" #~ msgid "Quick Open configuration" #~ msgstr "Configuration de l'Ouverture Rapide" #~ msgid "{}{}." #~ msgstr "{}{}." #~ msgid "http://guake.org" #~ msgstr "http://guake.org" #~ msgid "" #~ "Tango\n" #~ "Linux console\n" #~ "XTerm\n" #~ "Rxvt\n" #~ "Custom\n" #~ msgstr "" #~ "Tango\n" #~ "Console Linux\n" #~ "XTerm\n" #~ "Rxvt\n" #~ "Personnalisé\n" #~ msgid "Rename the selected tab." #~ msgstr "Renommer l'onglet sélectionné." guake-3.6.3/po/gl.po000066400000000000000000000766731346623310400142240ustar00rootroot00000000000000# Translation of Guake to Galician # Copyright (C) 2012 Guake Translators # This file is distributed under the same license as the Guake package. # # Translators: # Antón Méixome , 2012 # osl , 2012 msgid "" msgstr "" "Project-Id-Version: Guake 0.4.5\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2016-08-18 17:32+0200\n" "PO-Revision-Date: 2018-09-15 00:17+0000\n" "Last-Translator: Nacho Vidal \n" "Language-Team: Galician \n" "Language: gl\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=n != 1;\n" "X-Generator: Weblate 3.2-dev\n" #: ../guake/data/about.glade.h:1 msgid "About Guake" msgstr "Sobre Guake" #: ../guake/data/about.glade.h:5 #, fuzzy msgid "" "Guake is an easy to access\n" "terminal based on FPS games terminal" msgstr "" "Guake é un terminal de acceso sinxelo baseado no tipo de terminal dos xogos " "fps" #: ../guake/data/guake.glade.h:1 msgid "Copy" msgstr "Copiar" #: ../guake/data/guake.glade.h:2 msgid "Paste" msgstr "Pegar" #: ../guake/data/guake.glade.h:3 ../src/guake/prefs.py:79 msgid "Toggle Fullscreen" msgstr "Alternar a pantalla completa" #: ../guake/data/guake.glade.h:4 msgid "Save to File..." msgstr "Gardar nun ficheiro..." #: ../guake/data/guake.glade.h:5 ../src/guake/prefs.py:85 #, fuzzy msgid "Reset terminal" msgstr "Terminal Guake" #: ../guake/data/guake.glade.h:6 msgid "Find..." msgstr "Procurar..." #: ../guake/data/guake.glade.h:7 #, fuzzy msgid "New Tab" msgstr "Nova lapela" #: ../guake/data/guake.glade.h:8 #, fuzzy msgid "Rename Tab" msgstr "Renomear lapela" #: ../guake/data/guake.glade.h:9 msgid "Close Tab" msgstr "Pechar lapela" #: ../guake/data/guake.glade.h:10 msgid "Open link..." msgstr "Abrir ligazón..." #: ../guake/data/guake.glade.h:11 msgid "Search on Web" msgstr "Procurar na Web" #: ../guake/data/guake.glade.h:12 ../src/guake/prefs.py:83 msgid "Quit" msgstr "Saír" #: ../guake/data/guake.glade.h:13 msgid "Rename" msgstr "Renomear" #: ../guake/data/guake.glade.h:14 msgid "Close" msgstr "Pechar" #: ../guake/data/guake.glade.h:15 msgid "Guake!" msgstr "Guake!" #: ../guake/data/guake.glade.h:16 #, fuzzy msgid "Add a new tab" msgstr "Engadir unha nova lapela" #: ../guake/data/prefs.glade.h:1 msgid "Guake Preferences" msgstr "Preferencias do Guake" #: ../guake/data/prefs.glade.h:2 msgid "Guake properties" msgstr "" "Propiedades de Guake" #: ../guake/data/prefs.glade.h:3 msgid "" "Customize behavior and appearance of Guake!" msgstr "" "Personalizar comportamento e aparencia do Guake!" #: ../guake/data/prefs.glade.h:4 msgid "" "Path to a bash script that would be automatically executed when Guake " "starts, unless you specify --no-startup-script.\n" "\n" "This would typically use the configuration by command line feature of " "Guake:\n" "\n" "#!/bin/bash\n" "\n" "sleep 5 # it is advised to wait a bit before Guake has been successfully " "started\n" "\n" "guake -r \"main\" -e \"cd ~/projects/myproject/main\"\n" "guake -r \"prod\" -e \"cd ~/projects/myproject/prod\"\n" msgstr "" #: ../guake/data/prefs.glade.h:15 msgid "Enable popup notifications on startup" msgstr "Activar notificacións mediante xanela emerxente no inicio" #: ../guake/data/prefs.glade.h:16 msgid "Show tray icon" msgstr "Amosar icona de notificación" #: ../guake/data/prefs.glade.h:17 #, fuzzy msgid "Always prompt on quit" msgstr "Preguntar ao saír" #: ../guake/data/prefs.glade.h:18 msgid "_Flash terminal on bell" msgstr "" #: ../guake/data/prefs.glade.h:19 msgid "_Play system alert sound on bell" msgstr "" #: ../guake/data/prefs.glade.h:20 msgid "Path to script executed on Guake start:" msgstr "Ruta do script de execución ao inicio:" #: ../guake/data/prefs.glade.h:21 #, fuzzy msgid "Prompt on close tab:" msgstr "Preguntar ao saír" #: ../guake/data/prefs.glade.h:22 msgid "" "Never\n" "With process running\n" "Always" msgstr "" "Xamais\n" "Só se hai un proceso correndo\n" "Sempre" #: ../guake/data/prefs.glade.h:25 msgid "General" msgstr "Xeral" #: ../guake/data/prefs.glade.h:26 msgid "Bottom align window instead of top align" msgstr "Alinear a ventá ao baixo" #: ../guake/data/prefs.glade.h:27 msgid "Appear on mouse display" msgstr "Aparecer na pantalla onde estea o rato" #: ../guake/data/prefs.glade.h:28 msgid "Appear on display:" msgstr "Aparecer na pantalla:" #: ../guake/data/prefs.glade.h:29 #, fuzzy msgid "Place tabs on top" msgstr "Manter á vista" #: ../guake/data/prefs.glade.h:30 #, fuzzy msgid "Placement" msgstr "Paleta" #: ../guake/data/prefs.glade.h:31 msgid "Stay on top" msgstr "Manter á vista" #: ../guake/data/prefs.glade.h:32 msgid "Use VTE titles for tab names" msgstr "" #: ../guake/data/prefs.glade.h:33 msgid "Max tab name length:" msgstr "" #: ../guake/data/prefs.glade.h:34 msgid "0 means no size limit" msgstr "Se é 0, significa que non existe límite algún" #: ../guake/data/prefs.glade.h:35 msgid "Abbreviate directories in tab names" msgstr "" #: ../guake/data/prefs.glade.h:36 msgid "Hide on lose focus" msgstr "Agochar ao perder o foco" #: ../guake/data/prefs.glade.h:37 msgid "Show tab bar" msgstr "Amosar barra de lapelas" #: ../guake/data/prefs.glade.h:38 #, fuzzy msgid "Start fullscreen" msgstr "Alternar a pantalla completa" #: ../guake/data/prefs.glade.h:39 msgid "Main Window" msgstr "Xanela principal" #: ../guake/data/prefs.glade.h:40 msgid "Left" msgstr "Á esquerda" #: ../guake/data/prefs.glade.h:41 msgid "Center" msgstr "Centrado" #: ../guake/data/prefs.glade.h:42 msgid "Right" msgstr "Á dereita" #: ../guake/data/prefs.glade.h:43 #, fuzzy msgid "Main Window Horizontal Alignment" msgstr "Altura da xanela principal" #: ../guake/data/prefs.glade.h:44 #, fuzzy msgid "Main Window Height" msgstr "Altura da xanela principal" #: ../guake/data/prefs.glade.h:45 #, fuzzy msgid "Main Window Width" msgstr "Altura da xanela principal" #: ../guake/data/prefs.glade.h:46 msgid "Custom command file path: " msgstr "" #: ../guake/data/prefs.glade.h:47 msgid "Please select a json file" msgstr "Selecciona un ficheiro json" #: ../guake/data/prefs.glade.h:48 ../src/guake/prefs.py:75 msgid "General" msgstr "Xeral" #: ../guake/data/prefs.glade.h:49 msgid "Default interpreter:" msgstr "Intérprete predeter.:" #: ../guake/data/prefs.glade.h:50 msgid "_Run command as a login shell" msgstr "_Executar a orde como intérprete de ordes de inicio de sesión " #: ../guake/data/prefs.glade.h:51 msgid "_Open new tab in current directory" msgstr "_Abrir unha nova lapela no cartafol actual" #: ../guake/data/prefs.glade.h:52 msgid "Shell" msgstr "Shell" #: ../guake/data/prefs.glade.h:53 msgid "Shell" msgstr "Intérprete de comandos" #: ../guake/data/prefs.glade.h:54 msgid "Show scrollbar" msgstr "Amosar barra de desprazamento" #: ../guake/data/prefs.glade.h:55 msgid "Scrollback lines:" msgstr "Liñas de historial:" #: ../guake/data/prefs.glade.h:56 msgid "On output" msgstr "Na saída" #: ../guake/data/prefs.glade.h:57 msgid "On key stroke" msgstr "Pulsacións de teclado" #: ../guake/data/prefs.glade.h:58 msgid "Scroll" msgstr "Desprazamento" #: ../guake/data/prefs.glade.h:59 msgid "Scrolling" msgstr "Desprazamento" #: ../guake/data/prefs.glade.h:60 msgid "Use the system fixed width font" msgstr "Usar o tamaño da letra definida no sistema" #: ../guake/data/prefs.glade.h:61 msgid "Font:" msgstr "Tipo de letra:" #: ../guake/data/prefs.glade.h:62 msgid "Choose some font" msgstr "Escoller un tipo de letra" #: ../guake/data/prefs.glade.h:63 msgid "Text color:" msgstr "Cor de texto:" #: ../guake/data/prefs.glade.h:64 msgid "Background color:" msgstr "Cor de fondo:" #: ../guake/data/prefs.glade.h:65 msgid "Cursor shape:" msgstr "Tipo de cursor:" #: ../guake/data/prefs.glade.h:66 msgid "" "Block\n" "I-Beam\n" "Underline" msgstr "" "Sólido\n" "Barra\n" "Guión baixo" #: ../guake/data/prefs.glade.h:69 msgid "" "Follow GTK+ setting\n" "Blink on\n" "Blink off" msgstr "" #: ../guake/data/prefs.glade.h:72 #, fuzzy msgid "Cursor blink mode:" msgstr "Parpadeo do cursor:" #: ../guake/data/prefs.glade.h:73 msgid "Allow bold font" msgstr "" #: ../guake/data/prefs.glade.h:74 msgid "Palette" msgstr "Paleta" #: ../guake/data/prefs.glade.h:75 msgid "Built-in schemes:" msgstr "Esquemas predefinidos:" #: ../guake/data/prefs.glade.h:76 msgid "Color palette:" msgstr "Paleta de cores:" #: ../guake/data/prefs.glade.h:77 #, fuzzy msgid "Font color" msgstr "Cor de texto:" #: ../guake/data/prefs.glade.h:78 #, fuzzy msgid "Background color" msgstr "Cor de fondo:" #: ../guake/data/prefs.glade.h:79 msgid "Use font and background color from the palette" msgstr "" #: ../guake/data/prefs.glade.h:80 msgid "Demo:" msgstr "Vista previa:" #: ../guake/data/prefs.glade.h:81 msgid "Effects" msgstr "Efectos" #: ../guake/data/prefs.glade.h:82 msgid "Transparency:" msgstr "Transparencia:" #: ../guake/data/prefs.glade.h:83 msgid "Background image:" msgstr "Imaxe de fondo:" #: ../guake/data/prefs.glade.h:84 ../src/guake/prefs.py:130 msgid "Appearance" msgstr "Aparencia" #: ../guake/data/prefs.glade.h:85 #, fuzzy msgid "" "Quick open is a feature allowing you to open a file directly into " "your favorite text editor by clicking on its filename when it appears in " "your terminal. See the list of currently supported text patterns used to " "extract filename below." msgstr "" "a Apertura Rápida permíteche abrir un ficheiro directamente no teu " "editor de texto favorito ao facer click no seu nome. Bótalle un ollo á lista " "de patróns aceptados." #: ../guake/data/prefs.glade.h:86 msgid "Enable Quick Open when Ctrl+clicking on a filename in the terminal" msgstr "Activar a Apertura Rápida facendo Ctrl + click no ficheiro" #: ../guake/data/prefs.glade.h:87 msgid "Editor command line:" msgstr "" #: ../guake/data/prefs.glade.h:89 #, no-c-format msgid "" "Use the following elements in the open editor command line:\n" " - %(file_path)s: path to the file that has been clicked\n" " - %(line_number)s: if your editor supports it, you can directly open " "the file to a given line number when found on the screen.\n" "\n" "For example, for sublime, use subl %(file_path)s:%(line_number)s\n" "" msgstr "" #: ../guake/data/prefs.glade.h:95 msgid "Quick open in current terminal" msgstr "" #: ../guake/data/prefs.glade.h:96 msgid "" "Here is the list of supported patterns: (to add your own, please contact the " "Guake's authors)" msgstr "" #: ../guake/data/prefs.glade.h:97 #, fuzzy msgid "Quick Open" msgstr "Paleta" #: ../guake/data/prefs.glade.h:98 msgid "Quick Open" msgstr "" #: ../guake/data/prefs.glade.h:99 msgid "" "To change a shortcut simply click on its name.\n" "To disable a shortcut, press the \"Backspace\" key." msgstr "" #: ../guake/data/prefs.glade.h:101 msgid "Keyboard shortcuts" msgstr "Atallos de teclado" #: ../guake/data/prefs.glade.h:102 msgid "" "Note: These options may cause some applications to behave " "incorrectly. They are only here to allow you to work around certain " "applications and operating systems that expect different terminal behavior." msgstr "" "Nota: Estas opcións poden producir que algúns aplicativos " "se comporten incorrectamente. Están aquí soamente para permitirlle traballar " "con certos aplicativos e sistemas operativos que se espera que teñan un " "comportamente diferencial no terminal." #: ../guake/data/prefs.glade.h:103 msgid "" "ASCII DEL\n" "Escape sequence\n" "Control-H" msgstr "" "ASCII DEL\n" "Secuencia de escape\n" "Control-H" #: ../guake/data/prefs.glade.h:106 msgid "_Backspace key generates:" msgstr "A tecla _Retroceso produce:" #: ../guake/data/prefs.glade.h:107 msgid "_Delete key generates:" msgstr "A tecla _Eliminar produce:" #: ../guake/data/prefs.glade.h:108 msgid "_Reset Compatibility Options to Defaults" msgstr "_Reiniciar as opcións de compatibilidade predeterminadas" #: ../guake/data/prefs.glade.h:109 msgid "Keyboard compatibility" msgstr "Compatibilidade co teclado" #: ../guake/data/prefs.glade.h:110 msgid "Compatibility" msgstr "Compatibilidade" #: ../src/guake/about.py:47 ../src/guake/gconfhandler.py:439 #: ../src/guake/guake_app.py:181 ../src/guake/guake_app.py:378 msgid "Guake Terminal" msgstr "Terminal Guake" #: ../src/guake/gconfhandler.py:369 ../src/guake/guake_app.py:1386 #, fuzzy msgid "Terminal" msgstr "Terminal %s" #: ../src/guake/gconfhandler.py:440 #, python-format msgid "" "A problem happened when binding %s key.\n" "Please use Guake Preferences dialog to choose another key" msgstr "" "Produciuse un problema ao combinar a clave %s.\n" "Use as preferencias do Guake para escoller outra tecla (A icona de " "notificación estaba activada)" #: ../src/guake/guake_app.py:132 #, fuzzy msgid "Do you want to close the tab?" msgstr "Confirma que quere saír do Guake?" #: ../src/guake/guake_app.py:135 #, fuzzy msgid "Do you really want to quit Guake?" msgstr "Confirma que quere saír do Guake?" #: ../src/guake/guake_app.py:137 #, fuzzy msgid " and one tab open" msgstr "Engadir unha nova lapela" #: ../src/guake/guake_app.py:139 #, python-brace-format msgid " and {0} tabs open" msgstr "" #: ../src/guake/guake_app.py:142 #, fuzzy msgid "There are no processes running" msgstr "Queda un proceso aínda en execución." #: ../src/guake/guake_app.py:144 #, fuzzy msgid "There is a process still running" msgstr "Queda un proceso aínda en execución." #: ../src/guake/guake_app.py:146 #, fuzzy, python-brace-format msgid "There are {0} processes still running" msgstr "Quedan %d procesos en execución." #: ../src/guake/guake_app.py:186 msgid "guake-indicator" msgstr "" #: ../src/guake/guake_app.py:186 msgid "guake-tray" msgstr "" #: ../src/guake/guake_app.py:190 msgid "Show" msgstr "" #: ../src/guake/guake_app.py:379 #, python-format msgid "" "Guake is now running,\n" "press {!s} to use it." msgstr "" "Guake está agora en execución,\n" "prema {!s} para usalo." #: ../src/guake/guake_app.py:670 #, python-format msgid "Search on Web: '%s'" msgstr "" #: ../src/guake/guake_app.py:675 msgid "Search on Web (no selection)" msgstr "" #: ../src/guake/guake_app.py:683 msgid "Open Link: '{}...'" msgstr "" #: ../src/guake/guake_app.py:685 msgid "Open Link: {}" msgstr "" #: ../src/guake/guake_app.py:688 msgid "Open Link..." msgstr "" #: ../src/guake/guake_app.py:1425 msgid "Rename tab" msgstr "Renomear lapela" #: ../src/guake/guake_app.py:1736 msgid "Save to..." msgstr "" #: ../src/guake/guake_app.py:1743 ../src/guake/prefs.py:973 msgid "All files" msgstr "" #: ../src/guake/guake_app.py:1748 msgid "Text and Logs" msgstr "" #: ../src/guake/guake_app.py:1766 msgid "Find" msgstr "" #: ../src/guake/guake_app.py:1768 msgid "Forward" msgstr "" #: ../src/guake/guake_app.py:1769 msgid "Backward" msgstr "" #: ../src/guake/main.py:68 msgid "Put Guake in fullscreen mode" msgstr "" #: ../src/guake/main.py:72 msgid "Toggles the visibility of the terminal window" msgstr "Alterna a visibilidade da xanela do terminal" #: ../src/guake/main.py:76 #, fuzzy msgid "Shows Guake main window" msgstr "Amosa a xanela de preferencias do Guake" #: ../src/guake/main.py:80 #, fuzzy msgid "Hides Guake main window" msgstr "Amosa a xanela de preferencias do Guake" #: ../src/guake/main.py:84 msgid "Shows Guake preference window" msgstr "Amosa a xanela de preferencias do Guake" #: ../src/guake/main.py:88 msgid "Shows Guake's about info" msgstr "Amosa info sobre o Guake!" #: ../src/guake/main.py:92 #, fuzzy msgid "Add a new tab (with current directory set to NEW_TAB)" msgstr "_Abrir unha nova lapela no cartafol actual" #: ../src/guake/main.py:96 msgid "Select a tab (SELECT_TAB is the index of the tab)" msgstr "" #: ../src/guake/main.py:100 msgid "Return the selected tab index." msgstr "Volver ao índice da lapela seleccionada." #: ../src/guake/main.py:104 msgid "Execute an arbitrary command in the selected tab." msgstr "Executar unha orde arbitraria na lapela seleccionada." #: ../src/guake/main.py:108 msgid "Specify the tab to rename. Default is 0." msgstr "" #: ../src/guake/main.py:112 msgid "Set the hexadecimal (#rrggbb) background color of the selected tab." msgstr "" #: ../src/guake/main.py:117 msgid "Set the hexadecimal (#rrggbb) foreground color of the selected tab." msgstr "" #: ../src/guake/main.py:123 msgid "" "Rename the specified tab. Reset to default if TITLE is a single dash \"-\"." msgstr "" #: ../src/guake/main.py:129 msgid "" "Rename the current tab. Reset to default if TITLE is a single dash \"-\"." msgstr "" #: ../src/guake/main.py:134 msgid "Says to Guake go away =(" msgstr "Despedirse do Guake =(" #: ../src/guake/main.py:138 msgid "Do not execute the start up script" msgstr "" #: ../src/guake/main.py:235 msgid "Guake can not init!" msgstr "Guake non pode iniciarse!" #: ../src/guake/main.py:236 #, fuzzy msgid "" "Gconf Error.\n" "Have you installed guake.schemas properly?" msgstr "" "Erro de Gconf.\n" "Instalou correctamente guake.schemas?" #. string to show in prefereces dialog for user shell option #: ../src/guake/prefs.py:67 msgid "" msgstr "" #: ../src/guake/prefs.py:77 msgid "Toggle Guake visibility" msgstr "Alternar a visibilidade do Guake" #: ../src/guake/prefs.py:81 #, fuzzy msgid "Toggle Hide on Lose Focus" msgstr "Agochar ao perder o foco" #: ../src/guake/prefs.py:88 msgid "Tab management" msgstr "Xestión de lapela" #: ../src/guake/prefs.py:90 #, fuzzy msgid "New tab" msgstr "Nova lapela" #: ../src/guake/prefs.py:92 msgid "Close tab" msgstr "Pechar lapela" #: ../src/guake/prefs.py:94 msgid "Rename current tab" msgstr "Renomear a lapela actual" #: ../src/guake/prefs.py:97 msgid "Navigation" msgstr "Navegación" #: ../src/guake/prefs.py:99 msgid "Go to previous tab" msgstr "Ir á lapela anterior" #: ../src/guake/prefs.py:101 msgid "Go to next tab" msgstr "Ir á lapela seguinte" #: ../src/guake/prefs.py:103 #, fuzzy msgid "Move current tab left" msgstr "Renomear a lapela actual" #: ../src/guake/prefs.py:105 #, fuzzy msgid "Move current tab right" msgstr "Renomear a lapela actual" #: ../src/guake/prefs.py:107 #, fuzzy msgid "Go to first tab" msgstr "Ir á lapela seguinte" #: ../src/guake/prefs.py:109 #, fuzzy msgid "Go to second tab" msgstr "Ir á lapela seguinte" #: ../src/guake/prefs.py:111 #, fuzzy msgid "Go to third tab" msgstr "Ir á lapela seguinte" #: ../src/guake/prefs.py:113 #, fuzzy msgid "Go to fourth tab" msgstr "Ir á lapela seguinte" #: ../src/guake/prefs.py:115 #, fuzzy msgid "Go to fifth tab" msgstr "Ir á lapela seguinte" #: ../src/guake/prefs.py:117 #, fuzzy msgid "Go to sixth tab" msgstr "Ir á lapela seguinte" #: ../src/guake/prefs.py:119 #, fuzzy msgid "Go to seventh tab" msgstr "Ir á lapela seguinte" #: ../src/guake/prefs.py:121 #, fuzzy msgid "Go to eighth tab" msgstr "Ir á lapela seguinte" #: ../src/guake/prefs.py:123 #, fuzzy msgid "Go to ninth tab" msgstr "Ir á lapela seguinte" #: ../src/guake/prefs.py:125 #, fuzzy msgid "Go to tenth tab" msgstr "Ir á lapela seguinte" #: ../src/guake/prefs.py:127 #, fuzzy msgid "Go to last tab" msgstr "Ir á lapela seguinte" #: ../src/guake/prefs.py:132 msgid "Zoom out" msgstr "" #: ../src/guake/prefs.py:134 msgid "Zoom in" msgstr "" #: ../src/guake/prefs.py:136 msgid "Zoom in (alternative)" msgstr "" #: ../src/guake/prefs.py:138 msgid "Increase height" msgstr "" #: ../src/guake/prefs.py:140 msgid "Decrease height" msgstr "" #: ../src/guake/prefs.py:142 #, fuzzy msgid "Increase transparency" msgstr "Transparencia:" #: ../src/guake/prefs.py:144 #, fuzzy msgid "Decrease transparency" msgstr "Transparencia:" #: ../src/guake/prefs.py:146 #, fuzzy msgid "Toggle transparency" msgstr "Transparencia:" #: ../src/guake/prefs.py:149 msgid "Clipboard" msgstr "Portapapeis" #: ../src/guake/prefs.py:151 msgid "Copy text to clipboard" msgstr "Copiar o texto ao portapapeis" #: ../src/guake/prefs.py:153 msgid "Paste text from clipboard" msgstr "Pegar o texto do portapapeis" #: ../src/guake/prefs.py:156 msgid "Extra features" msgstr "" #: ../src/guake/prefs.py:159 msgid "Search select text on web" msgstr "" #: ../src/guake/prefs.py:481 msgid "Action" msgstr "Acción" #: ../src/guake/prefs.py:491 msgid "Shortcut" msgstr "Atallo de teclado" #: ../src/guake/prefs.py:651 ../src/guake/prefs.py:697 msgid "Custom" msgstr "" #: ../src/guake/prefs.py:969 msgid "JSON files" msgstr "" #: ../src/guake/prefs.py:1063 #, python-format msgid "The shortcut \"%s\" is already in use." msgstr "O atallo «%s» xa está ocupado." #: ../src/guake/prefs.py:1064 msgid "Error setting keybinding." msgstr "Produciuse un erro na configuración da combinación de teclas." #: ../src/guake/prefs.py:1076 #, python-format msgid "" "The shortcut \"%s\" cannot be used because it will become impossible to type " "using this key.\n" "\n" "Please try with a key such as Control, Alt or Shift at the same time.\n" msgstr "" "O atallo «%s» non se pode utilizar porque faría imposíbel escribir usando " "esta tecla.\n" "Probe con algunha outra tecla como Control, Alt ou Maiús ao mesmo tempo.\n" #: guake/main.py:153 msgid "Return the selected tab label." msgstr "" #: guake/data/prefs.glade:264 msgid "Never" msgstr "" #: guake/data/prefs.glade:265 msgid "With process running" msgstr "" #: guake/data/prefs.glade:266 msgid "Always" msgstr "" #: guake/data/prefs.glade:499 msgid "Refocus if open" msgstr "" #: guake/data/prefs.glade:865 msgid "Custom command file path:" msgstr "" #: guake/data/prefs.glade:1315 msgid "Show resizer" msgstr "" #: guake/data/prefs.glade:1423 msgid "Block" msgstr "" #: guake/data/prefs.glade:1424 msgid "I-Beam" msgstr "" #: guake/data/prefs.glade:1425 msgid "Underline" msgstr "" #: guake/data/prefs.glade:1443 msgid "Follow GTK+ setting" msgstr "" #: guake/data/prefs.glade:1444 msgid "Blink on" msgstr "" #: guake/data/prefs.glade:1445 msgid "Blink off" msgstr "" #: guake/data/prefs.glade:2236 msgid "" "Use the following elements in the open editor command line:\n" "- %(file_path)s: path to the file that has been clicked\n" "- %(line_number)s: if your editor supports it, you can directly open " "the file to a given line number when found on the screen.\n" "\n" "For example, for sublime, use subl %(file_path)s:%(line_number)s\n" "" msgstr "" #: guake/data/prefs.glade:2442 guake/data/prefs.glade:2462 msgid "ASCII DEL" msgstr "" #: guake/data/prefs.glade:2443 guake/data/prefs.glade:2463 msgid "Escape sequence" msgstr "" #: guake/data/prefs.glade:2444 guake/data/prefs.glade:2464 msgid "Control-H" msgstr "" #: guake/data/prefs.glade:2600 msgid "" "In this dialog you can attach your own command or script to various " "guake events" msgstr "" #: guake/data/prefs.glade:2635 msgid "On show:" msgstr "" #: guake/data/prefs.glade:2665 msgid "On start:" msgstr "" #: guake/data/prefs.glade:2714 msgid "Hooks" msgstr "" #: guake/data/guake-prefs.desktop:8 msgid "Configure your Guake sessions" msgstr "" #: guake/data/guake-prefs.desktop:15 guake/data/guake.desktop:18 msgid "guake" msgstr "" #: guake/data/guake-prefs.desktop:20 msgid "Terminal;Utility;" msgstr "" #: guake/data/guake.desktop:10 msgid "Use the command line in a Quake-like terminal" msgstr "" #: guake/data/prefs.glade:770 msgid "Main Window Horizontal Alignment" msgstr "" #: guake/prefs.py:89 msgid "Show and focus Guake window" msgstr "" #: guake/data/prefs.glade:566 msgid "0" msgstr "" #: guake/data/prefs.glade:610 msgid "Main Window Options" msgstr "" #: guake/data/prefs.glade:770 msgid "Horizontal Alignment:" msgstr "" #: guake/data/prefs.glade:855 msgid "Height:" msgstr "" #: guake/data/prefs.glade:868 msgid "Width:" msgstr "" #: guake/data/prefs.glade:913 msgid "Geometry" msgstr "" #: guake/data/prefs.glade:944 msgid "Main Window" msgstr "" #: guake/data/prefs.glade:1197 msgid "Infinite scrolling" msgstr "" #: guake/data/prefs.glade:1219 msgid "Scrollbar" msgstr "" #: guake/data/prefs.glade:1304 msgid "Scroll to Bottom" msgstr "" #: guake/data/prefs.glade:2117 msgid "" "Quick open is a feature allowing you to open a file directly into your " "favorite text editor by clicking on its filename when it appears in your " "terminal. See the list of currently supported text patterns used to extract " "filename below." msgstr "" #: guake/main.py:64 msgid "Show Guake version number and exit" msgstr "" #: guake/data/prefs.glade:93 msgid "Guake properties" msgstr "Propiedades de Guake" #: guake/data/prefs.glade:107 msgid "Customize behavior and appearance of Guake!" msgstr "Personalizar comportamento e aparencia do Guake!" #: guake/data/prefs.glade:929 msgid "Displacement in pixels" msgstr "" #: guake/main.py:73 msgid "Enable verbose logging" msgstr "" #: guake/guake_app.py:680 msgid "Quick Open: '{!s}...'" msgstr "" #: guake/guake_app.py:683 msgid "Quick Open: {!s}" msgstr "" #: guake/guake_app.py:691 msgid "Open Link: '{!s}...'" msgstr "" #: guake/guake_app.py:694 msgid "Open Link: {!s}" msgstr "" #: guake/data/prefs.glade:2175 msgid "" "WARNING: your system seems to have PCRE2 disabled for VTE, " "preventing application such as Guake to register \"matchers\" using regular " "expressions. Please contact your distribution to request a new version of " "VTE with PCRE2 enabled ! To use Quick Open, you must select the text " "before using Ctrl+click." msgstr "" #: guake/guake_app.py:680 msgid "Quick Open: {!s}..." msgstr "" #: guake/guake_app.py:691 msgid "Open Link: {!s}..." msgstr "" #: guake/guake_app.py:688 msgid "Quick Open..." msgstr "" #: guake/data/prefs.glade:223 msgid "Start Guake at login" msgstr "" #: guake/data/prefs.glade:363 msgid "Gtk Theme:" msgstr "" #: guake/data/prefs.glade:387 msgid "Prefer dark theme" msgstr "" #: guake/guake_app.py:435 msgid "Custom Commands" msgstr "" #: guake/main.py:184 msgid "" "Specify the tab to rename. Default is 0. Can be used to select tab by UUID." msgstr "" #: guake/main.py:212 msgid "" "Rename the specified tab by --tab-index. Reset to default if TITLE is a " "single dash \"-\"." msgstr "" #: data/search.glade:138 msgid "Search forward" msgstr "" #: data/search.glade:153 msgid "Match case" msgstr "" #: data/search.glade:186 msgid "Current search direction: Backward" msgstr "" #: data/prefs.glade:680 msgid "Set window title to current tab name" msgstr "" #: guake/menus.py:48 msgid "Copy Url" msgstr "Copiar Url" #: guake/menus.py:62 msgid "Split ―" msgstr "" #: guake/menus.py:65 msgid "Split " msgstr "" #: guake/menus.py:68 guake/prefs.py:150 msgid "Close terminal" msgstr "" #: guake/prefs.py:137 msgid "Split management" msgstr "" #: guake/prefs.py:142 msgid "Split tab vertical" msgstr "" #: guake/prefs.py:146 msgid "Split tab horizontal" msgstr "" #: guake/prefs.py:154 msgid "Focus terminal above" msgstr "" #: guake/prefs.py:158 msgid "Focus terminal below" msgstr "" #: guake/prefs.py:162 msgid "Focus terminal on the left" msgstr "" #: guake/prefs.py:166 msgid "Focus terminal on the right" msgstr "" #: guake/prefs.py:170 msgid "Move the terminal split handle up" msgstr "" #: guake/prefs.py:174 msgid "Move the terminal split handle down" msgstr "" #: guake/prefs.py:178 msgid "Move the terminal split handle right" msgstr "" #: guake/prefs.py:182 msgid "Move the terminal split handle left" msgstr "" #: guake/menus.py:65 msgid "Split |" msgstr "" #: guake/menus.py:72 msgid "Save content..." msgstr "" #: data/prefs.glade:1182 msgid "" "This might not work on all shells, make sure that your shell supports the --" "login option" msgstr "" #: guake/prefs.py:128 msgid "New tab in home directory" msgstr "" #: guake/dialogs.py:56 #, python-brace-format msgid " on {0} workspaces" msgstr "" #: guake/main.py:211 msgid "Change Guake palette scheme" msgstr "" #: data/prefs.glade:331 msgid "Use workspace-specific tab sets (requires restart)" msgstr "" #: guake/main.py:175 msgid "Split the selected tab vertically." msgstr "" #: guake/main.py:183 msgid "Split the selected tab horizontally." msgstr "" #: data/prefs.glade:348 msgid "Show close buttons for tabs" msgstr "" #: data/prefs.glade:1682 msgid "Bold text is also bright" msgstr "" #: data/prefs.glade:1682 msgid "Bold text is also bright (VTE >=0.52)" msgstr "" #: guake/menus.py:42 msgid "Save Tabs" msgstr "" #: guake/menus.py:45 msgid "Restore Tabs" msgstr "" #: guake/prefs.py:113 msgid "Search terminal" msgstr "" #: guake/main.py:278 msgid "Save Guake preferences to this filename" msgstr "" #: guake/main.py:286 msgid "Restore Guake preferences from this file" msgstr "" #: guake/guake_app.py:1192 #, python-brace-format msgid "Your session.json file is broken, backup to {session_filename}.bak" msgstr "" #: guake/guake_app.py:1228 #, python-brace-format msgid "" "Your session.json schema is broken, backup to {0}.bak,and error message has " "been saved to {0}.log.err" msgstr "" #: guake/guake_app.py:1239 msgid "Your tabs has been restored!" msgstr "" #: data/prefs.glade:190 msgid "Restore previous session (tabs)" msgstr "" #: data/prefs.glade:204 msgid "Enable notification when restore tabs" msgstr "" #: data/prefs.glade:218 msgid "Automatically save session when the tabs has been modified" msgstr "" #: data/prefs.glade:238 msgid "Startup & Tabs (Experiment)" msgstr "" #: guake/guake_app.py:1192 #, python-brace-format msgid "" "Your {session_filename} file is broken, backup to {session_filename}.bak" msgstr "" #: guake/guake_app.py:1227 #, python-brace-format msgid "" "Your {session_filename} schema is broken, backup to {0}.bak,and error " "message has been saved to {session_filename}.log.err" msgstr "" #: guake/guake_app.py:1227 #, python-brace-format msgid "" "Your {session_filename} schema is broken, backup to {session_filename}.bak," "and error message has been saved to {session_filename}.log.err." msgstr "" #: guake/guake_app.py:1227 #, python-brace-format msgid "" "Your {session_filename} schema is broken, backup to {session_filename}.bak, " "and error message has been saved to {session_filename}.log.err." msgstr "" #: guake/notebook.py:317 msgid "" "You are going to restore *all* the tabs!\n" "which means all your terminals & pages will be replaced.\n" "\n" "Do you want to continue?" msgstr "" #: guake/main.py:296 msgid "Show support infomations" msgstr "" #: guake/guake_app.py:1240 #, python-brace-format msgid "" "Tabs session restore abort.\n" "Your session file ({session_filename}) missing schema_version as key" msgstr "" #: guake/guake_app.py:1252 #, python-brace-format msgid "" "Tabs session restore abort.\n" "Your session file schema version is higher than current version " "({session_file_schema_version} > {current_schema_version})." msgstr "" #: guake/data/prefs.glade:409 msgid "Use workspace-specific tab sets (requires restart, only work on X11)" msgstr "" #~ msgid "key binding error" #~ msgstr "erro de combinación de teclas" #~ msgid "Unable to bind global %s key" #~ msgstr "Non foi posíbel combinar a clave global %s " #~ msgid "http://guake.org" #~ msgstr "http://guake.org" #~ msgid "" #~ "Tango\n" #~ "Linux console\n" #~ "XTerm\n" #~ "Rxvt\n" #~ "Custom\n" #~ msgstr "" #~ "Tango\n" #~ "Consola Linux\n" #~ "XTerm\n" #~ "Rxvt\n" #~ "Personalizado\n" #~ msgid "Select a tab" #~ msgstr "Seleccionar unha lapela" #~ msgid "Rename the selected tab." #~ msgstr "Renomear a lapela seleccionada." guake-3.6.3/po/hr.po000066400000000000000000000752251346623310400142230ustar00rootroot00000000000000# Translation of Guake to Croatian # Copyright (C) 2013 Guake Translators # This file is distributed under the same license as the Guake package. # # Translators: # Notes and help by Igor (nick igorsub) , 2010 # Pavel Alexeev , 2010 # gogo , 2012 msgid "" msgstr "" "Project-Id-Version: Guake 0.4.5\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2016-08-18 17:32+0200\n" "PO-Revision-Date: 2018-01-25 21:03+0100\n" "Last-Translator: gogo \n" "Language-Team: Croatian (http://www.transifex.com/projects/p/guake/language/" "hr/)\n" "Language: hr\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && n" "%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n" "X-Generator: Poedit 2.0.6\n" #: ../guake/data/about.glade.h:1 msgid "About Guake" msgstr "О Guake" #: ../guake/data/about.glade.h:5 #, fuzzy msgid "" "Guake is an easy to access\n" "terminal based on FPS games terminal" msgstr "" "Guake je lako dostupan terminal,\n" "temeljen na terminalu iz FPS igre Quake" #: ../guake/data/guake.glade.h:1 msgid "Copy" msgstr "Kopiraj" #: ../guake/data/guake.glade.h:2 msgid "Paste" msgstr "Zalijepi" #: ../guake/data/guake.glade.h:3 ../src/guake/prefs.py:79 msgid "Toggle Fullscreen" msgstr "Cijelozaslonski prikaz" #: ../guake/data/guake.glade.h:4 msgid "Save to File..." msgstr "" #: ../guake/data/guake.glade.h:5 ../src/guake/prefs.py:85 #, fuzzy msgid "Reset terminal" msgstr "Guake Terminal" #: ../guake/data/guake.glade.h:6 msgid "Find..." msgstr "" #: ../guake/data/guake.glade.h:7 #, fuzzy msgid "New Tab" msgstr "Nova kartica" #: ../guake/data/guake.glade.h:8 #, fuzzy msgid "Rename Tab" msgstr "Preimenuj karticu" #: ../guake/data/guake.glade.h:9 msgid "Close Tab" msgstr "Zatvori karticu" #: ../guake/data/guake.glade.h:10 msgid "Open link..." msgstr "" #: ../guake/data/guake.glade.h:11 msgid "Search on Web" msgstr "" #: ../guake/data/guake.glade.h:12 ../src/guake/prefs.py:83 msgid "Quit" msgstr "Zatvori" #: ../guake/data/guake.glade.h:13 msgid "Rename" msgstr "Preimenuj" #: ../guake/data/guake.glade.h:14 msgid "Close" msgstr "Zatvori" #: ../guake/data/guake.glade.h:15 msgid "Guake!" msgstr "Guake!" #: ../guake/data/guake.glade.h:16 #, fuzzy msgid "Add a new tab" msgstr "Dodaj novu karticu" #: ../guake/data/prefs.glade.h:1 msgid "Guake Preferences" msgstr "Guake osobitosti" #: ../guake/data/prefs.glade.h:2 msgid "Guake properties" msgstr "Guake svojstva" #: ../guake/data/prefs.glade.h:3 msgid "" "Customize behavior and appearance of Guake!" msgstr "Prilagodite ponašanje i izgled Guakea!" #: ../guake/data/prefs.glade.h:4 msgid "" "Path to a bash script that would be automatically executed when Guake " "starts, unless you specify --no-startup-script.\n" "\n" "This would typically use the configuration by command line feature of " "Guake:\n" "\n" "#!/bin/bash\n" "\n" "sleep 5 # it is advised to wait a bit before Guake has been successfully " "started\n" "\n" "guake -r \"main\" -e \"cd ~/projects/myproject/main\"\n" "guake -r \"prod\" -e \"cd ~/projects/myproject/prod\"\n" msgstr "" #: ../guake/data/prefs.glade.h:15 msgid "Enable popup notifications on startup" msgstr "Omogući obavijesti skočnog prozora prilikom pokretanja" #: ../guake/data/prefs.glade.h:16 msgid "Show tray icon" msgstr "Prikaži ikonu u traci sustava" #: ../guake/data/prefs.glade.h:17 #, fuzzy msgid "Always prompt on quit" msgstr "Upozori pri zatvaranju" #: ../guake/data/prefs.glade.h:18 msgid "_Flash terminal on bell" msgstr "" #: ../guake/data/prefs.glade.h:19 msgid "_Play system alert sound on bell" msgstr "" #: ../guake/data/prefs.glade.h:20 msgid "Path to script executed on Guake start:" msgstr "" #: ../guake/data/prefs.glade.h:21 #, fuzzy msgid "Prompt on close tab:" msgstr "Upozori pri zatvaranju" #: ../guake/data/prefs.glade.h:22 msgid "" "Never\n" "With process running\n" "Always" msgstr "" #: ../guake/data/prefs.glade.h:25 msgid "General" msgstr "Općenito" #: ../guake/data/prefs.glade.h:26 msgid "Bottom align window instead of top align" msgstr "" #: ../guake/data/prefs.glade.h:27 msgid "Appear on mouse display" msgstr "" #: ../guake/data/prefs.glade.h:28 msgid "Appear on display:" msgstr "" #: ../guake/data/prefs.glade.h:29 #, fuzzy msgid "Place tabs on top" msgstr "Uvijek na vrhu" #: ../guake/data/prefs.glade.h:30 #, fuzzy msgid "Placement" msgstr "Boje" #: ../guake/data/prefs.glade.h:31 msgid "Stay on top" msgstr "Uvijek na vrhu" #: ../guake/data/prefs.glade.h:32 msgid "Use VTE titles for tab names" msgstr "" #: ../guake/data/prefs.glade.h:33 msgid "Max tab name length:" msgstr "" #: ../guake/data/prefs.glade.h:34 msgid "0 means no size limit" msgstr "" #: ../guake/data/prefs.glade.h:35 msgid "Abbreviate directories in tab names" msgstr "" #: ../guake/data/prefs.glade.h:36 msgid "Hide on lose focus" msgstr "Sakrij pri gubitku fokusa" #: ../guake/data/prefs.glade.h:37 msgid "Show tab bar" msgstr "Prikaži donju traku" #: ../guake/data/prefs.glade.h:38 #, fuzzy msgid "Start fullscreen" msgstr "Cijelozaslonski prikaz" #: ../guake/data/prefs.glade.h:39 msgid "Main Window" msgstr "Glavni prozor" #: ../guake/data/prefs.glade.h:40 msgid "Left" msgstr "" #: ../guake/data/prefs.glade.h:41 msgid "Center" msgstr "" #: ../guake/data/prefs.glade.h:42 msgid "Right" msgstr "" #: ../guake/data/prefs.glade.h:43 #, fuzzy msgid "Main Window Horizontal Alignment" msgstr "Visina glavnog prozora" #: ../guake/data/prefs.glade.h:44 #, fuzzy msgid "Main Window Height" msgstr "Visina glavnog prozora" #: ../guake/data/prefs.glade.h:45 #, fuzzy msgid "Main Window Width" msgstr "Visina glavnog prozora" #: ../guake/data/prefs.glade.h:46 msgid "Custom command file path: " msgstr "" #: ../guake/data/prefs.glade.h:47 msgid "Please select a json file" msgstr "" #: ../guake/data/prefs.glade.h:48 ../src/guake/prefs.py:75 msgid "General" msgstr "Općenito" #: ../guake/data/prefs.glade.h:49 msgid "Default interpreter:" msgstr "Zadani interpretator:" #: ../guake/data/prefs.glade.h:50 msgid "_Run command as a login shell" msgstr "_Pokreni naredbu kao ljusku prijave" #: ../guake/data/prefs.glade.h:51 msgid "_Open new tab in current directory" msgstr "_Оtvori novu karticu u trenutnom direktoriju" #: ../guake/data/prefs.glade.h:52 msgid "Shell" msgstr "Ljuska" #: ../guake/data/prefs.glade.h:53 msgid "Shell" msgstr "" #: ../guake/data/prefs.glade.h:54 msgid "Show scrollbar" msgstr "Prikaži traku pomicanja" #: ../guake/data/prefs.glade.h:55 msgid "Scrollback lines:" msgstr "Redci pomicanja:" #: ../guake/data/prefs.glade.h:56 msgid "On output" msgstr "Pri izlazu" #: ../guake/data/prefs.glade.h:57 msgid "On key stroke" msgstr "Pri pritisku tipke" #: ../guake/data/prefs.glade.h:58 msgid "Scroll" msgstr "Pomicanje kotačićem miša" #: ../guake/data/prefs.glade.h:59 msgid "Scrolling" msgstr "Pomicanje kotačićem miša" #: ../guake/data/prefs.glade.h:60 msgid "Use the system fixed width font" msgstr "Koristi širinu slova ispravljenu sustavom" #: ../guake/data/prefs.glade.h:61 msgid "Font:" msgstr "Slova:" #: ../guake/data/prefs.glade.h:62 msgid "Choose some font" msgstr "Odaberite neka slova" #: ../guake/data/prefs.glade.h:63 msgid "Text color:" msgstr "Boja teksta:" #: ../guake/data/prefs.glade.h:64 msgid "Background color:" msgstr "Boja pozadine:" #: ../guake/data/prefs.glade.h:65 msgid "Cursor shape:" msgstr "" #: ../guake/data/prefs.glade.h:66 msgid "" "Block\n" "I-Beam\n" "Underline" msgstr "" #: ../guake/data/prefs.glade.h:69 msgid "" "Follow GTK+ setting\n" "Blink on\n" "Blink off" msgstr "" #: ../guake/data/prefs.glade.h:72 msgid "Cursor blink mode:" msgstr "" #: ../guake/data/prefs.glade.h:73 msgid "Allow bold font" msgstr "" #: ../guake/data/prefs.glade.h:74 msgid "Palette" msgstr "Boje" #: ../guake/data/prefs.glade.h:75 msgid "Built-in schemes:" msgstr "Ugrađene sheme:" #: ../guake/data/prefs.glade.h:76 msgid "Color palette:" msgstr "Paleta boja:" #: ../guake/data/prefs.glade.h:77 #, fuzzy msgid "Font color" msgstr "Boja teksta:" #: ../guake/data/prefs.glade.h:78 #, fuzzy msgid "Background color" msgstr "Boja pozadine:" #: ../guake/data/prefs.glade.h:79 msgid "Use font and background color from the palette" msgstr "" #: ../guake/data/prefs.glade.h:80 msgid "Demo:" msgstr "" #: ../guake/data/prefs.glade.h:81 msgid "Effects" msgstr "Efekti" #: ../guake/data/prefs.glade.h:82 msgid "Transparency:" msgstr "Prozirnost:" #: ../guake/data/prefs.glade.h:83 msgid "Background image:" msgstr "Slika pozadine:" #: ../guake/data/prefs.glade.h:84 ../src/guake/prefs.py:130 msgid "Appearance" msgstr "Izgled" #: ../guake/data/prefs.glade.h:85 msgid "" "Quick open is a feature allowing you to open a file directly into " "your favorite text editor by clicking on its filename when it appears in " "your terminal. See the list of currently supported text patterns used to " "extract filename below." msgstr "" #: ../guake/data/prefs.glade.h:86 msgid "Enable Quick Open when Ctrl+clicking on a filename in the terminal" msgstr "" #: ../guake/data/prefs.glade.h:87 msgid "Editor command line:" msgstr "" #: ../guake/data/prefs.glade.h:89 #, no-c-format msgid "" "Use the following elements in the open editor command line:\n" " - %(file_path)s: path to the file that has been clicked\n" " - %(line_number)s: if your editor supports it, you can directly open " "the file to a given line number when found on the screen.\n" "\n" "For example, for sublime, use subl %(file_path)s:%(line_number)s\n" "" msgstr "" #: ../guake/data/prefs.glade.h:95 msgid "Quick open in current terminal" msgstr "" #: ../guake/data/prefs.glade.h:96 msgid "" "Here is the list of supported patterns: (to add your own, please contact the " "Guake's authors)" msgstr "" #: ../guake/data/prefs.glade.h:97 #, fuzzy msgid "Quick Open" msgstr "Boje" #: ../guake/data/prefs.glade.h:98 msgid "Quick Open" msgstr "" #: ../guake/data/prefs.glade.h:99 msgid "" "To change a shortcut simply click on its name.\n" "To disable a shortcut, press the \"Backspace\" key." msgstr "" #: ../guake/data/prefs.glade.h:101 msgid "Keyboard shortcuts" msgstr "Prečaci tipkovnice" #: ../guake/data/prefs.glade.h:102 msgid "" "Note: These options may cause some applications to behave " "incorrectly. They are only here to allow you to work around certain " "applications and operating systems that expect different terminal behavior." msgstr "" "Napomena: Ove mogućnosti mogu prouzrokovati neispravno " "ponašanje nekih aplikacija. Оne su ovdje samo za rad sa određenim " "aplikacijama i operativnim sustavima, to očekuje drugačije ponašanje " "terminala." #: ../guake/data/prefs.glade.h:103 msgid "" "ASCII DEL\n" "Escape sequence\n" "Control-H" msgstr "" "ASCII DEL\n" "Escape slijed\n" "Control-H" #: ../guake/data/prefs.glade.h:106 msgid "_Backspace key generates:" msgstr "_'Backspace' tipka generira:" #: ../guake/data/prefs.glade.h:107 msgid "_Delete key generates:" msgstr "_'Delete' tipka generira:" #: ../guake/data/prefs.glade.h:108 msgid "_Reset Compatibility Options to Defaults" msgstr "_Vrati mogućnosti kompatibilnosti na početno" #: ../guake/data/prefs.glade.h:109 msgid "Keyboard compatibility" msgstr "Кompatibilnost tipkovnice" #: ../guake/data/prefs.glade.h:110 msgid "Compatibility" msgstr "Kompatibilnost" #: ../src/guake/about.py:47 ../src/guake/gconfhandler.py:439 #: ../src/guake/guake_app.py:181 ../src/guake/guake_app.py:378 msgid "Guake Terminal" msgstr "Guake Terminal" #: ../src/guake/gconfhandler.py:369 ../src/guake/guake_app.py:1386 #, fuzzy msgid "Terminal" msgstr "Terminal %s" #: ../src/guake/gconfhandler.py:440 #, python-format msgid "" "A problem happened when binding %s key.\n" "Please use Guake Preferences dialog to choose another key" msgstr "" "Problem je nastao dodjeljivanjem %s tipke.\n" "Koristite Guake dijalog osobitosti za odabir druge tipke (ikona u traci " "sustava je omogućena)" #: ../src/guake/guake_app.py:132 #, fuzzy msgid "Do you want to close the tab?" msgstr "Sigurno želite zatvoriti Guake!?" #: ../src/guake/guake_app.py:135 #, fuzzy msgid "Do you really want to quit Guake?" msgstr "Sigurno želite zatvoriti Guake!?" #: ../src/guake/guake_app.py:137 #, fuzzy msgid " and one tab open" msgstr "Dodaj novu karticu" #: ../src/guake/guake_app.py:139 #, python-brace-format msgid " and {0} tabs open" msgstr "" #: ../src/guake/guake_app.py:142 #, fuzzy msgid "There are no processes running" msgstr "Jedan proces se još uvijek izvodi." #: ../src/guake/guake_app.py:144 #, fuzzy msgid "There is a process still running" msgstr "Jedan proces se još uvijek izvodi." #: ../src/guake/guake_app.py:146 #, fuzzy, python-brace-format msgid "There are {0} processes still running" msgstr "Još uvijek se %d procesa izvodi." #: ../src/guake/guake_app.py:186 msgid "guake-indicator" msgstr "" #: ../src/guake/guake_app.py:186 msgid "guake-tray" msgstr "" #: ../src/guake/guake_app.py:190 msgid "Show" msgstr "" #: ../src/guake/guake_app.py:379 #, python-format msgid "" "Guake is now running,\n" "press {!s} to use it." msgstr "" "Guake je pokrenut,\n" "pritisnite {!s} za korištenje." #: ../src/guake/guake_app.py:670 #, python-format msgid "Search on Web: '%s'" msgstr "" #: ../src/guake/guake_app.py:675 msgid "Search on Web (no selection)" msgstr "" #: ../src/guake/guake_app.py:683 msgid "Open Link: '{}...'" msgstr "" #: ../src/guake/guake_app.py:685 msgid "Open Link: {}" msgstr "" #: ../src/guake/guake_app.py:688 msgid "Open Link..." msgstr "" #: ../src/guake/guake_app.py:1425 msgid "Rename tab" msgstr "Preimenuj karticu" #: ../src/guake/guake_app.py:1736 msgid "Save to..." msgstr "" #: ../src/guake/guake_app.py:1743 ../src/guake/prefs.py:973 msgid "All files" msgstr "" #: ../src/guake/guake_app.py:1748 msgid "Text and Logs" msgstr "" #: ../src/guake/guake_app.py:1766 msgid "Find" msgstr "" #: ../src/guake/guake_app.py:1768 msgid "Forward" msgstr "" #: ../src/guake/guake_app.py:1769 msgid "Backward" msgstr "" #: ../src/guake/main.py:68 msgid "Put Guake in fullscreen mode" msgstr "" #: ../src/guake/main.py:72 msgid "Toggles the visibility of the terminal window" msgstr "Isključivanje/Uključivanje vidljivosti prozora terminala" #: ../src/guake/main.py:76 #, fuzzy msgid "Shows Guake main window" msgstr "Prikazuje Guake prozor osobitosti" #: ../src/guake/main.py:80 #, fuzzy msgid "Hides Guake main window" msgstr "Prikazuje Guake prozor osobitosti" #: ../src/guake/main.py:84 msgid "Shows Guake preference window" msgstr "Prikazuje Guake prozor osobitosti" #: ../src/guake/main.py:88 msgid "Shows Guake's about info" msgstr "Prikazuje Guake prozor informacija" #: ../src/guake/main.py:92 #, fuzzy msgid "Add a new tab (with current directory set to NEW_TAB)" msgstr "_Оtvori novu karticu u trenutnom direktoriju" #: ../src/guake/main.py:96 msgid "Select a tab (SELECT_TAB is the index of the tab)" msgstr "" #: ../src/guake/main.py:100 msgid "Return the selected tab index." msgstr "Vrati indeks odabrane kartice." #: ../src/guake/main.py:104 msgid "Execute an arbitrary command in the selected tab." msgstr "Izvrši proizvoljnu naredbu u odabranoj kartici." #: ../src/guake/main.py:108 msgid "Specify the tab to rename. Default is 0." msgstr "" #: ../src/guake/main.py:112 msgid "Set the hexadecimal (#rrggbb) background color of the selected tab." msgstr "" #: ../src/guake/main.py:117 msgid "Set the hexadecimal (#rrggbb) foreground color of the selected tab." msgstr "" #: ../src/guake/main.py:123 msgid "" "Rename the specified tab. Reset to default if TITLE is a single dash \"-\"." msgstr "" #: ../src/guake/main.py:129 msgid "" "Rename the current tab. Reset to default if TITLE is a single dash \"-\"." msgstr "" #: ../src/guake/main.py:134 msgid "Says to Guake go away =(" msgstr "Recite Guakeu, odlazi! =(" #: ../src/guake/main.py:138 msgid "Do not execute the start up script" msgstr "" #: ../src/guake/main.py:235 msgid "Guake can not init!" msgstr "Guake se ne može pokrenuti!" #: ../src/guake/main.py:236 #, fuzzy msgid "" "Gconf Error.\n" "Have you installed guake.schemas properly?" msgstr "" "Gconf greška.\n" "Jeste li instalirali guake.schemas ispravno?" #. string to show in prefereces dialog for user shell option #: ../src/guake/prefs.py:67 msgid "" msgstr "" #: ../src/guake/prefs.py:77 msgid "Toggle Guake visibility" msgstr "Prikaži/Sakrij Guake" #: ../src/guake/prefs.py:81 #, fuzzy msgid "Toggle Hide on Lose Focus" msgstr "Sakrij pri gubitku fokusa" #: ../src/guake/prefs.py:88 msgid "Tab management" msgstr "Upravljanje karticama" #: ../src/guake/prefs.py:90 #, fuzzy msgid "New tab" msgstr "Nova kartica" #: ../src/guake/prefs.py:92 msgid "Close tab" msgstr "Zatvori karticu" #: ../src/guake/prefs.py:94 msgid "Rename current tab" msgstr "Preimenuj trenutnu karticu" #: ../src/guake/prefs.py:97 msgid "Navigation" msgstr "Navigacija" #: ../src/guake/prefs.py:99 msgid "Go to previous tab" msgstr "Idi na prijašnju karticu" #: ../src/guake/prefs.py:101 msgid "Go to next tab" msgstr "Idi na sljedeću karticu" #: ../src/guake/prefs.py:103 #, fuzzy msgid "Move current tab left" msgstr "Preimenuj trenutnu karticu" #: ../src/guake/prefs.py:105 #, fuzzy msgid "Move current tab right" msgstr "Preimenuj trenutnu karticu" #: ../src/guake/prefs.py:107 #, fuzzy msgid "Go to first tab" msgstr "Idi na sljedeću karticu" #: ../src/guake/prefs.py:109 #, fuzzy msgid "Go to second tab" msgstr "Idi na sljedeću karticu" #: ../src/guake/prefs.py:111 #, fuzzy msgid "Go to third tab" msgstr "Idi na sljedeću karticu" #: ../src/guake/prefs.py:113 #, fuzzy msgid "Go to fourth tab" msgstr "Idi na sljedeću karticu" #: ../src/guake/prefs.py:115 #, fuzzy msgid "Go to fifth tab" msgstr "Idi na sljedeću karticu" #: ../src/guake/prefs.py:117 #, fuzzy msgid "Go to sixth tab" msgstr "Idi na sljedeću karticu" #: ../src/guake/prefs.py:119 #, fuzzy msgid "Go to seventh tab" msgstr "Idi na sljedeću karticu" #: ../src/guake/prefs.py:121 #, fuzzy msgid "Go to eighth tab" msgstr "Idi na sljedeću karticu" #: ../src/guake/prefs.py:123 #, fuzzy msgid "Go to ninth tab" msgstr "Idi na sljedeću karticu" #: ../src/guake/prefs.py:125 #, fuzzy msgid "Go to tenth tab" msgstr "Idi na sljedeću karticu" #: ../src/guake/prefs.py:127 #, fuzzy msgid "Go to last tab" msgstr "Idi na sljedeću karticu" #: ../src/guake/prefs.py:132 msgid "Zoom out" msgstr "" #: ../src/guake/prefs.py:134 msgid "Zoom in" msgstr "" #: ../src/guake/prefs.py:136 msgid "Zoom in (alternative)" msgstr "" #: ../src/guake/prefs.py:138 msgid "Increase height" msgstr "" #: ../src/guake/prefs.py:140 msgid "Decrease height" msgstr "" #: ../src/guake/prefs.py:142 #, fuzzy msgid "Increase transparency" msgstr "Prozirnost:" #: ../src/guake/prefs.py:144 #, fuzzy msgid "Decrease transparency" msgstr "Prozirnost:" #: ../src/guake/prefs.py:146 #, fuzzy msgid "Toggle transparency" msgstr "Prozirnost:" #: ../src/guake/prefs.py:149 msgid "Clipboard" msgstr "Međuspremnik" #: ../src/guake/prefs.py:151 msgid "Copy text to clipboard" msgstr "Kopiraj tekst u međuspremnik" #: ../src/guake/prefs.py:153 msgid "Paste text from clipboard" msgstr "Zalijepi tekst iz međuspremnika" #: ../src/guake/prefs.py:156 msgid "Extra features" msgstr "" #: ../src/guake/prefs.py:159 msgid "Search select text on web" msgstr "" #: ../src/guake/prefs.py:481 msgid "Action" msgstr "Radnja" #: ../src/guake/prefs.py:491 msgid "Shortcut" msgstr "Tipke prečaca" #: ../src/guake/prefs.py:651 ../src/guake/prefs.py:697 msgid "Custom" msgstr "" #: ../src/guake/prefs.py:969 msgid "JSON files" msgstr "" #: ../src/guake/prefs.py:1063 #, python-format msgid "The shortcut \"%s\" is already in use." msgstr "Prečac \"%s\" se već koristi." #: ../src/guake/prefs.py:1064 msgid "Error setting keybinding." msgstr "Greška u dodjeljivanju tipke." #: ../src/guake/prefs.py:1076 #, python-format msgid "" "The shortcut \"%s\" cannot be used because it will become impossible to type " "using this key.\n" "\n" "Please try with a key such as Control, Alt or Shift at the same time.\n" msgstr "" "Tipka prečaca \"%s\", se ne može koristiti zato jer ju je nemoguće upisati " "koristeći ovu tipku.\n" "\n" "Pokušajte sa tipkom poput 'Control', 'Alt' ili 'Shift'.\n" #: guake/main.py:153 msgid "Return the selected tab label." msgstr "" #: guake/data/prefs.glade:264 msgid "Never" msgstr "" #: guake/data/prefs.glade:265 msgid "With process running" msgstr "" #: guake/data/prefs.glade:266 msgid "Always" msgstr "" #: guake/data/prefs.glade:499 msgid "Refocus if open" msgstr "" #: guake/data/prefs.glade:865 msgid "Custom command file path:" msgstr "" #: guake/data/prefs.glade:1315 msgid "Show resizer" msgstr "" #: guake/data/prefs.glade:1423 msgid "Block" msgstr "" #: guake/data/prefs.glade:1424 msgid "I-Beam" msgstr "" #: guake/data/prefs.glade:1425 msgid "Underline" msgstr "" #: guake/data/prefs.glade:1443 msgid "Follow GTK+ setting" msgstr "" #: guake/data/prefs.glade:1444 msgid "Blink on" msgstr "" #: guake/data/prefs.glade:1445 msgid "Blink off" msgstr "" #: guake/data/prefs.glade:2236 msgid "" "Use the following elements in the open editor command line:\n" "- %(file_path)s: path to the file that has been clicked\n" "- %(line_number)s: if your editor supports it, you can directly open " "the file to a given line number when found on the screen.\n" "\n" "For example, for sublime, use subl %(file_path)s:%(line_number)s\n" "" msgstr "" #: guake/data/prefs.glade:2442 guake/data/prefs.glade:2462 msgid "ASCII DEL" msgstr "" #: guake/data/prefs.glade:2443 guake/data/prefs.glade:2463 msgid "Escape sequence" msgstr "" #: guake/data/prefs.glade:2444 guake/data/prefs.glade:2464 msgid "Control-H" msgstr "" #: guake/data/prefs.glade:2600 msgid "" "In this dialog you can attach your own command or script to various " "guake events" msgstr "" #: guake/data/prefs.glade:2635 msgid "On show:" msgstr "" #: guake/data/prefs.glade:2665 msgid "On start:" msgstr "" #: guake/data/prefs.glade:2714 msgid "Hooks" msgstr "" #: guake/data/guake-prefs.desktop:8 msgid "Configure your Guake sessions" msgstr "" #: guake/data/guake-prefs.desktop:15 guake/data/guake.desktop:18 msgid "guake" msgstr "" #: guake/data/guake-prefs.desktop:20 msgid "Terminal;Utility;" msgstr "" #: guake/data/guake.desktop:10 msgid "Use the command line in a Quake-like terminal" msgstr "" #: guake/data/prefs.glade:770 msgid "Main Window Horizontal Alignment" msgstr "" #: guake/prefs.py:89 msgid "Show and focus Guake window" msgstr "" #: guake/data/prefs.glade:566 msgid "0" msgstr "" #: guake/data/prefs.glade:610 msgid "Main Window Options" msgstr "" #: guake/data/prefs.glade:770 msgid "Horizontal Alignment:" msgstr "" #: guake/data/prefs.glade:855 msgid "Height:" msgstr "" #: guake/data/prefs.glade:868 msgid "Width:" msgstr "" #: guake/data/prefs.glade:913 msgid "Geometry" msgstr "" #: guake/data/prefs.glade:944 msgid "Main Window" msgstr "" #: guake/data/prefs.glade:1197 msgid "Infinite scrolling" msgstr "" #: guake/data/prefs.glade:1219 msgid "Scrollbar" msgstr "" #: guake/data/prefs.glade:1304 msgid "Scroll to Bottom" msgstr "" #: guake/data/prefs.glade:2117 msgid "" "Quick open is a feature allowing you to open a file directly into your " "favorite text editor by clicking on its filename when it appears in your " "terminal. See the list of currently supported text patterns used to extract " "filename below." msgstr "" #: guake/main.py:64 msgid "Show Guake version number and exit" msgstr "" #: guake/data/prefs.glade:93 msgid "Guake properties" msgstr "Guake svojstva" #: guake/data/prefs.glade:107 msgid "Customize behavior and appearance of Guake!" msgstr "Prilagodite ponašanje i izgled Guakea!" #: guake/data/prefs.glade:929 msgid "Displacement in pixels" msgstr "" #: guake/main.py:73 msgid "Enable verbose logging" msgstr "" #: guake/guake_app.py:680 msgid "Quick Open: '{!s}...'" msgstr "" #: guake/guake_app.py:683 msgid "Quick Open: {!s}" msgstr "" #: guake/guake_app.py:691 msgid "Open Link: '{!s}...'" msgstr "" #: guake/guake_app.py:694 msgid "Open Link: {!s}" msgstr "" #: guake/data/prefs.glade:2175 msgid "" "WARNING: your system seems to have PCRE2 disabled for VTE, " "preventing application such as Guake to register \"matchers\" using regular " "expressions. Please contact your distribution to request a new version of " "VTE with PCRE2 enabled ! To use Quick Open, you must select the text " "before using Ctrl+click." msgstr "" #: guake/guake_app.py:680 msgid "Quick Open: {!s}..." msgstr "" #: guake/guake_app.py:691 msgid "Open Link: {!s}..." msgstr "" #: guake/guake_app.py:688 msgid "Quick Open..." msgstr "" #: guake/data/prefs.glade:223 msgid "Start Guake at login" msgstr "" #: guake/data/prefs.glade:363 msgid "Gtk Theme:" msgstr "" #: guake/data/prefs.glade:387 msgid "Prefer dark theme" msgstr "" #: guake/guake_app.py:435 msgid "Custom Commands" msgstr "" #: guake/main.py:184 msgid "" "Specify the tab to rename. Default is 0. Can be used to select tab by UUID." msgstr "" #: guake/main.py:212 msgid "" "Rename the specified tab by --tab-index. Reset to default if TITLE is a " "single dash \"-\"." msgstr "" #: data/search.glade:138 msgid "Search forward" msgstr "" #: data/search.glade:153 msgid "Match case" msgstr "" #: data/search.glade:186 msgid "Current search direction: Backward" msgstr "" #: data/prefs.glade:680 msgid "Set window title to current tab name" msgstr "" #: guake/menus.py:48 msgid "Copy Url" msgstr "" #: guake/menus.py:62 msgid "Split ―" msgstr "" #: guake/menus.py:65 msgid "Split " msgstr "" #: guake/menus.py:68 guake/prefs.py:150 msgid "Close terminal" msgstr "" #: guake/prefs.py:137 msgid "Split management" msgstr "" #: guake/prefs.py:142 msgid "Split tab vertical" msgstr "" #: guake/prefs.py:146 msgid "Split tab horizontal" msgstr "" #: guake/prefs.py:154 msgid "Focus terminal above" msgstr "" #: guake/prefs.py:158 msgid "Focus terminal below" msgstr "" #: guake/prefs.py:162 msgid "Focus terminal on the left" msgstr "" #: guake/prefs.py:166 msgid "Focus terminal on the right" msgstr "" #: guake/prefs.py:170 msgid "Move the terminal split handle up" msgstr "" #: guake/prefs.py:174 msgid "Move the terminal split handle down" msgstr "" #: guake/prefs.py:178 msgid "Move the terminal split handle right" msgstr "" #: guake/prefs.py:182 msgid "Move the terminal split handle left" msgstr "" #: guake/menus.py:65 msgid "Split |" msgstr "" #: guake/menus.py:72 msgid "Save content..." msgstr "" #: data/prefs.glade:1182 msgid "" "This might not work on all shells, make sure that your shell supports the --" "login option" msgstr "" #: guake/prefs.py:128 msgid "New tab in home directory" msgstr "" #: guake/dialogs.py:56 #, python-brace-format msgid " on {0} workspaces" msgstr "" #: guake/main.py:211 msgid "Change Guake palette scheme" msgstr "" #: data/prefs.glade:331 msgid "Use workspace-specific tab sets (requires restart)" msgstr "" #: guake/main.py:175 msgid "Split the selected tab vertically." msgstr "" #: guake/main.py:183 msgid "Split the selected tab horizontally." msgstr "" #: data/prefs.glade:348 msgid "Show close buttons for tabs" msgstr "" #: data/prefs.glade:1682 msgid "Bold text is also bright" msgstr "" #: data/prefs.glade:1682 msgid "Bold text is also bright (VTE >=0.52)" msgstr "" #: guake/menus.py:42 msgid "Save Tabs" msgstr "" #: guake/menus.py:45 msgid "Restore Tabs" msgstr "" #: guake/prefs.py:113 msgid "Search terminal" msgstr "" #: guake/main.py:278 msgid "Save Guake preferences to this filename" msgstr "" #: guake/main.py:286 msgid "Restore Guake preferences from this file" msgstr "" #: guake/guake_app.py:1192 #, python-brace-format msgid "Your session.json file is broken, backup to {session_filename}.bak" msgstr "" #: guake/guake_app.py:1228 #, python-brace-format msgid "" "Your session.json schema is broken, backup to {0}.bak,and error message has " "been saved to {0}.log.err" msgstr "" #: guake/guake_app.py:1239 msgid "Your tabs has been restored!" msgstr "" #: data/prefs.glade:190 msgid "Restore previous session (tabs)" msgstr "" #: data/prefs.glade:204 msgid "Enable notification when restore tabs" msgstr "" #: data/prefs.glade:218 msgid "Automatically save session when the tabs has been modified" msgstr "" #: data/prefs.glade:238 msgid "Startup & Tabs (Experiment)" msgstr "" #: guake/guake_app.py:1192 #, python-brace-format msgid "" "Your {session_filename} file is broken, backup to {session_filename}.bak" msgstr "" #: guake/guake_app.py:1227 #, python-brace-format msgid "" "Your {session_filename} schema is broken, backup to {0}.bak,and error " "message has been saved to {session_filename}.log.err" msgstr "" #: guake/guake_app.py:1227 #, python-brace-format msgid "" "Your {session_filename} schema is broken, backup to {session_filename}.bak," "and error message has been saved to {session_filename}.log.err." msgstr "" #: guake/guake_app.py:1227 #, python-brace-format msgid "" "Your {session_filename} schema is broken, backup to {session_filename}.bak, " "and error message has been saved to {session_filename}.log.err." msgstr "" #: guake/notebook.py:317 msgid "" "You are going to restore *all* the tabs!\n" "which means all your terminals & pages will be replaced.\n" "\n" "Do you want to continue?" msgstr "" #: guake/main.py:296 msgid "Show support infomations" msgstr "" #: guake/guake_app.py:1240 #, python-brace-format msgid "" "Tabs session restore abort.\n" "Your session file ({session_filename}) missing schema_version as key" msgstr "" #: guake/guake_app.py:1252 #, python-brace-format msgid "" "Tabs session restore abort.\n" "Your session file schema version is higher than current version " "({session_file_schema_version} > {current_schema_version})." msgstr "" #: guake/data/prefs.glade:409 msgid "Use workspace-specific tab sets (requires restart, only work on X11)" msgstr "" #~ msgid "key binding error" #~ msgstr "Greška dodjeljivanja tipke" #~ msgid "Unable to bind global %s key" #~ msgstr "Nemoguće je dodjeliti globalnu %s tipku" #~ msgid "http://guake.org" #~ msgstr "http://guake.org" #~ msgid "" #~ "Tango\n" #~ "Linux console\n" #~ "XTerm\n" #~ "Rxvt\n" #~ "Custom\n" #~ msgstr "" #~ "Tango\n" #~ "Linux konzola\n" #~ "XTerm\n" #~ "Rxvt\n" #~ "Prilagođeno\n" #~ msgid "Select a tab" #~ msgstr "Odaberi karticu" #~ msgid "Rename the selected tab." #~ msgstr "Preimenuj odabranu karticu." guake-3.6.3/po/hu.po000066400000000000000000000747461346623310400142350ustar00rootroot00000000000000# Translation of Guake to Hungarian # Copyright (C) 2013 Guake Translators # This file is distributed under the same license as the Guake package. # # Translators: # Dávid Horváth ,2009 # Péter Trombitás , 2012 msgid "" msgstr "" "Project-Id-Version: Guake 0.4.5\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2016-08-18 17:32+0200\n" "PO-Revision-Date: 2018-01-25 21:05+0100\n" "Last-Translator: Péter Trombitás \n" "Language-Team: Hungarian (http://www.transifex.com/projects/p/guake/language/" "hu/)\n" "Language: hu\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" "X-Generator: Poedit 2.0.6\n" #: ../guake/data/about.glade.h:1 msgid "About Guake" msgstr "Guake-ről" #: ../guake/data/about.glade.h:5 #, fuzzy msgid "" "Guake is an easy to access\n" "terminal based on FPS games terminal" msgstr "" "Guake egy könnyen hozzáférhető\n" " FPS játékokban megszokott terminál" #: ../guake/data/guake.glade.h:1 msgid "Copy" msgstr "Másol" #: ../guake/data/guake.glade.h:2 msgid "Paste" msgstr "Beilleszt" #: ../guake/data/guake.glade.h:3 ../src/guake/prefs.py:79 msgid "Toggle Fullscreen" msgstr "Teljes képernyő" #: ../guake/data/guake.glade.h:4 msgid "Save to File..." msgstr "" #: ../guake/data/guake.glade.h:5 ../src/guake/prefs.py:85 #, fuzzy msgid "Reset terminal" msgstr "Guake Terminál" #: ../guake/data/guake.glade.h:6 msgid "Find..." msgstr "" #: ../guake/data/guake.glade.h:7 #, fuzzy msgid "New Tab" msgstr "Új lap" #: ../guake/data/guake.glade.h:8 #, fuzzy msgid "Rename Tab" msgstr "Lap átnevezése" #: ../guake/data/guake.glade.h:9 msgid "Close Tab" msgstr "Lap bezárása" #: ../guake/data/guake.glade.h:10 msgid "Open link..." msgstr "" #: ../guake/data/guake.glade.h:11 msgid "Search on Web" msgstr "" #: ../guake/data/guake.glade.h:12 ../src/guake/prefs.py:83 msgid "Quit" msgstr "Kilépés" #: ../guake/data/guake.glade.h:13 msgid "Rename" msgstr "Átnevez" #: ../guake/data/guake.glade.h:14 msgid "Close" msgstr "Bezárás" #: ../guake/data/guake.glade.h:15 msgid "Guake!" msgstr "Guake!" #: ../guake/data/guake.glade.h:16 #, fuzzy msgid "Add a new tab" msgstr "Új lap hozzáadása" #: ../guake/data/prefs.glade.h:1 msgid "Guake Preferences" msgstr "Guake beállítások" #: ../guake/data/prefs.glade.h:2 msgid "Guake properties" msgstr "Guake beállítások" #: ../guake/data/prefs.glade.h:3 msgid "" "Customize behavior and appearance of Guake!" msgstr "" "Guake viselkedésének és megjelenésének testreszabása" #: ../guake/data/prefs.glade.h:4 msgid "" "Path to a bash script that would be automatically executed when Guake " "starts, unless you specify --no-startup-script.\n" "\n" "This would typically use the configuration by command line feature of " "Guake:\n" "\n" "#!/bin/bash\n" "\n" "sleep 5 # it is advised to wait a bit before Guake has been successfully " "started\n" "\n" "guake -r \"main\" -e \"cd ~/projects/myproject/main\"\n" "guake -r \"prod\" -e \"cd ~/projects/myproject/prod\"\n" msgstr "" #: ../guake/data/prefs.glade.h:15 msgid "Enable popup notifications on startup" msgstr "Felugró üzenetek engedélyezése induláskor" #: ../guake/data/prefs.glade.h:16 msgid "Show tray icon" msgstr "Tálca ikon mutatása" #: ../guake/data/prefs.glade.h:17 #, fuzzy msgid "Always prompt on quit" msgstr "Figyelmeztetés kilépéskor" #: ../guake/data/prefs.glade.h:18 msgid "_Flash terminal on bell" msgstr "" #: ../guake/data/prefs.glade.h:19 msgid "_Play system alert sound on bell" msgstr "" #: ../guake/data/prefs.glade.h:20 msgid "Path to script executed on Guake start:" msgstr "" #: ../guake/data/prefs.glade.h:21 #, fuzzy msgid "Prompt on close tab:" msgstr "Figyelmeztetés kilépéskor" #: ../guake/data/prefs.glade.h:22 msgid "" "Never\n" "With process running\n" "Always" msgstr "" #: ../guake/data/prefs.glade.h:25 msgid "General" msgstr "Általános" #: ../guake/data/prefs.glade.h:26 msgid "Bottom align window instead of top align" msgstr "" #: ../guake/data/prefs.glade.h:27 msgid "Appear on mouse display" msgstr "" #: ../guake/data/prefs.glade.h:28 msgid "Appear on display:" msgstr "" #: ../guake/data/prefs.glade.h:29 #, fuzzy msgid "Place tabs on top" msgstr "Mindig felül" #: ../guake/data/prefs.glade.h:30 #, fuzzy msgid "Placement" msgstr "Paletta" #: ../guake/data/prefs.glade.h:31 msgid "Stay on top" msgstr "Mindig felül" #: ../guake/data/prefs.glade.h:32 msgid "Use VTE titles for tab names" msgstr "" #: ../guake/data/prefs.glade.h:33 msgid "Max tab name length:" msgstr "" #: ../guake/data/prefs.glade.h:34 msgid "0 means no size limit" msgstr "" #: ../guake/data/prefs.glade.h:35 msgid "Abbreviate directories in tab names" msgstr "" #: ../guake/data/prefs.glade.h:36 msgid "Hide on lose focus" msgstr "Fókusz elvesztésekor elrejtés" #: ../guake/data/prefs.glade.h:37 msgid "Show tab bar" msgstr "Lapok mutatása" #: ../guake/data/prefs.glade.h:38 #, fuzzy msgid "Start fullscreen" msgstr "Teljes képernyő" #: ../guake/data/prefs.glade.h:39 msgid "Main Window" msgstr "Fő ablak" #: ../guake/data/prefs.glade.h:40 msgid "Left" msgstr "" #: ../guake/data/prefs.glade.h:41 msgid "Center" msgstr "" #: ../guake/data/prefs.glade.h:42 msgid "Right" msgstr "" #: ../guake/data/prefs.glade.h:43 #, fuzzy msgid "Main Window Horizontal Alignment" msgstr "Főablak magassága" #: ../guake/data/prefs.glade.h:44 #, fuzzy msgid "Main Window Height" msgstr "Főablak magassága" #: ../guake/data/prefs.glade.h:45 #, fuzzy msgid "Main Window Width" msgstr "Főablak magassága" #: ../guake/data/prefs.glade.h:46 msgid "Custom command file path: " msgstr "" #: ../guake/data/prefs.glade.h:47 msgid "Please select a json file" msgstr "" #: ../guake/data/prefs.glade.h:48 ../src/guake/prefs.py:75 msgid "General" msgstr "Általános" #: ../guake/data/prefs.glade.h:49 msgid "Default interpreter:" msgstr "Alapértelmezett héj:" #: ../guake/data/prefs.glade.h:50 msgid "_Run command as a login shell" msgstr "_Parancs futtatása bejelentkező héjban (login shell)" #: ../guake/data/prefs.glade.h:51 msgid "_Open new tab in current directory" msgstr "Új lap megnyitása a _jelenlegi könyvtárban" #: ../guake/data/prefs.glade.h:52 msgid "Shell" msgstr "Héj (shell)" #: ../guake/data/prefs.glade.h:53 msgid "Shell" msgstr "" #: ../guake/data/prefs.glade.h:54 msgid "Show scrollbar" msgstr "Görgetősáv mutatása" #: ../guake/data/prefs.glade.h:55 msgid "Scrollback lines:" msgstr "Sor megtartása:" #: ../guake/data/prefs.glade.h:56 msgid "On output" msgstr "Kimenetnél" #: ../guake/data/prefs.glade.h:57 msgid "On key stroke" msgstr "Billentyűkombináció lenyomásakor" #: ../guake/data/prefs.glade.h:58 msgid "Scroll" msgstr "Görgetés" #: ../guake/data/prefs.glade.h:59 msgid "Scrolling" msgstr "Görgetés" #: ../guake/data/prefs.glade.h:60 msgid "Use the system fixed width font" msgstr "A rendszer rögzített szélességű betűtípusának használata" #: ../guake/data/prefs.glade.h:61 msgid "Font:" msgstr "Betűtípus:" #: ../guake/data/prefs.glade.h:62 msgid "Choose some font" msgstr "Betűtípus kiválasztása" #: ../guake/data/prefs.glade.h:63 msgid "Text color:" msgstr "Szövegszín:" #: ../guake/data/prefs.glade.h:64 msgid "Background color:" msgstr "Háttérszín:" #: ../guake/data/prefs.glade.h:65 msgid "Cursor shape:" msgstr "" #: ../guake/data/prefs.glade.h:66 msgid "" "Block\n" "I-Beam\n" "Underline" msgstr "" #: ../guake/data/prefs.glade.h:69 msgid "" "Follow GTK+ setting\n" "Blink on\n" "Blink off" msgstr "" #: ../guake/data/prefs.glade.h:72 msgid "Cursor blink mode:" msgstr "" #: ../guake/data/prefs.glade.h:73 msgid "Allow bold font" msgstr "" #: ../guake/data/prefs.glade.h:74 msgid "Palette" msgstr "Paletta" #: ../guake/data/prefs.glade.h:75 msgid "Built-in schemes:" msgstr "Beépített sémák:" #: ../guake/data/prefs.glade.h:76 msgid "Color palette:" msgstr "Színpaletta:" #: ../guake/data/prefs.glade.h:77 #, fuzzy msgid "Font color" msgstr "Szövegszín:" #: ../guake/data/prefs.glade.h:78 #, fuzzy msgid "Background color" msgstr "Háttérszín:" #: ../guake/data/prefs.glade.h:79 msgid "Use font and background color from the palette" msgstr "" #: ../guake/data/prefs.glade.h:80 msgid "Demo:" msgstr "" #: ../guake/data/prefs.glade.h:81 msgid "Effects" msgstr "Effektek" #: ../guake/data/prefs.glade.h:82 msgid "Transparency:" msgstr "Átlátszóság:" #: ../guake/data/prefs.glade.h:83 msgid "Background image:" msgstr "Háttérkép:" #: ../guake/data/prefs.glade.h:84 ../src/guake/prefs.py:130 msgid "Appearance" msgstr "Megjelenés" #: ../guake/data/prefs.glade.h:85 msgid "" "Quick open is a feature allowing you to open a file directly into " "your favorite text editor by clicking on its filename when it appears in " "your terminal. See the list of currently supported text patterns used to " "extract filename below." msgstr "" #: ../guake/data/prefs.glade.h:86 msgid "Enable Quick Open when Ctrl+clicking on a filename in the terminal" msgstr "" #: ../guake/data/prefs.glade.h:87 msgid "Editor command line:" msgstr "" #: ../guake/data/prefs.glade.h:89 #, no-c-format msgid "" "Use the following elements in the open editor command line:\n" " - %(file_path)s: path to the file that has been clicked\n" " - %(line_number)s: if your editor supports it, you can directly open " "the file to a given line number when found on the screen.\n" "\n" "For example, for sublime, use subl %(file_path)s:%(line_number)s\n" "" msgstr "" #: ../guake/data/prefs.glade.h:95 msgid "Quick open in current terminal" msgstr "" #: ../guake/data/prefs.glade.h:96 msgid "" "Here is the list of supported patterns: (to add your own, please contact the " "Guake's authors)" msgstr "" #: ../guake/data/prefs.glade.h:97 #, fuzzy msgid "Quick Open" msgstr "Paletta" #: ../guake/data/prefs.glade.h:98 msgid "Quick Open" msgstr "" #: ../guake/data/prefs.glade.h:99 msgid "" "To change a shortcut simply click on its name.\n" "To disable a shortcut, press the \"Backspace\" key." msgstr "" #: ../guake/data/prefs.glade.h:101 msgid "Keyboard shortcuts" msgstr "Gyorsbillentyűk" #: ../guake/data/prefs.glade.h:102 msgid "" "Note: These options may cause some applications to behave " "incorrectly. They are only here to allow you to work around certain " "applications and operating systems that expect different terminal behavior." msgstr "" "Megjegyzés: Ezek a beállítások hatással lehetnek más " "programokra, melyek nem biztos hogy helyesen fognak működni. Ezek csak a " "finomhangolás jellegük miatt maradtak itt." #: ../guake/data/prefs.glade.h:103 msgid "" "ASCII DEL\n" "Escape sequence\n" "Control-H" msgstr "" "ASCII DEL\n" "Escape szekvencia\n" "Control-H" #: ../guake/data/prefs.glade.h:106 msgid "_Backspace key generates:" msgstr "_Backspace működése:" #: ../guake/data/prefs.glade.h:107 msgid "_Delete key generates:" msgstr "_Delete működése:" #: ../guake/data/prefs.glade.h:108 msgid "_Reset Compatibility Options to Defaults" msgstr "_Kompatibilitási beállítások visszaállítása " #: ../guake/data/prefs.glade.h:109 msgid "Keyboard compatibility" msgstr "Billentyűkiosztás kompatibilitása " #: ../guake/data/prefs.glade.h:110 msgid "Compatibility" msgstr "Egyéb" #: ../src/guake/about.py:47 ../src/guake/gconfhandler.py:439 #: ../src/guake/guake_app.py:181 ../src/guake/guake_app.py:378 msgid "Guake Terminal" msgstr "Guake Terminál" #: ../src/guake/gconfhandler.py:369 ../src/guake/guake_app.py:1386 #, fuzzy msgid "Terminal" msgstr "Terminál %s" #: ../src/guake/gconfhandler.py:440 #, python-format msgid "" "A problem happened when binding %s key.\n" "Please use Guake Preferences dialog to choose another key" msgstr "" "Hiba történt a %s billentyűkombináció hozzárendelésekor.\n" "Kérlek állíts be egy másikat a Guake beállítások panelen." #: ../src/guake/guake_app.py:132 #, fuzzy msgid "Do you want to close the tab?" msgstr "Biztosan kilép a Guake-ből!?" #: ../src/guake/guake_app.py:135 #, fuzzy msgid "Do you really want to quit Guake?" msgstr "Biztosan kilép a Guake-ből!?" #: ../src/guake/guake_app.py:137 #, fuzzy msgid " and one tab open" msgstr "Új lap hozzáadása" #: ../src/guake/guake_app.py:139 #, python-brace-format msgid " and {0} tabs open" msgstr "" #: ../src/guake/guake_app.py:142 #, fuzzy msgid "There are no processes running" msgstr "Egy folyamat még fut." #: ../src/guake/guake_app.py:144 #, fuzzy msgid "There is a process still running" msgstr "Egy folyamat még fut." #: ../src/guake/guake_app.py:146 #, fuzzy, python-brace-format msgid "There are {0} processes still running" msgstr "%d folyamat még fut." #: ../src/guake/guake_app.py:186 msgid "guake-indicator" msgstr "" #: ../src/guake/guake_app.py:186 msgid "guake-tray" msgstr "" #: ../src/guake/guake_app.py:190 msgid "Show" msgstr "" #: ../src/guake/guake_app.py:379 #, python-format msgid "" "Guake is now running,\n" "press {!s} to use it." msgstr "" "A Guake fut,\n" "a használathoz nyomja meg a(z) {!s} gombot." #: ../src/guake/guake_app.py:670 #, python-format msgid "Search on Web: '%s'" msgstr "" #: ../src/guake/guake_app.py:675 msgid "Search on Web (no selection)" msgstr "" #: ../src/guake/guake_app.py:683 msgid "Open Link: '{}...'" msgstr "" #: ../src/guake/guake_app.py:685 msgid "Open Link: {}" msgstr "" #: ../src/guake/guake_app.py:688 msgid "Open Link..." msgstr "" #: ../src/guake/guake_app.py:1425 msgid "Rename tab" msgstr "Lap átnevezése" #: ../src/guake/guake_app.py:1736 msgid "Save to..." msgstr "" #: ../src/guake/guake_app.py:1743 ../src/guake/prefs.py:973 msgid "All files" msgstr "" #: ../src/guake/guake_app.py:1748 msgid "Text and Logs" msgstr "" #: ../src/guake/guake_app.py:1766 msgid "Find" msgstr "" #: ../src/guake/guake_app.py:1768 msgid "Forward" msgstr "" #: ../src/guake/guake_app.py:1769 msgid "Backward" msgstr "" #: ../src/guake/main.py:68 msgid "Put Guake in fullscreen mode" msgstr "" #: ../src/guake/main.py:72 msgid "Toggles the visibility of the terminal window" msgstr "Guake láthatóságának váltása" #: ../src/guake/main.py:76 #, fuzzy msgid "Shows Guake main window" msgstr "Guake beállításainak mutatása" #: ../src/guake/main.py:80 #, fuzzy msgid "Hides Guake main window" msgstr "Guake beállításainak mutatása" #: ../src/guake/main.py:84 msgid "Shows Guake preference window" msgstr "Guake beállításainak mutatása" #: ../src/guake/main.py:88 msgid "Shows Guake's about info" msgstr "Guake-ről" #: ../src/guake/main.py:92 #, fuzzy msgid "Add a new tab (with current directory set to NEW_TAB)" msgstr "Új lap megnyitása a _jelenlegi könyvtárban" #: ../src/guake/main.py:96 msgid "Select a tab (SELECT_TAB is the index of the tab)" msgstr "" #: ../src/guake/main.py:100 msgid "Return the selected tab index." msgstr "A kiválasztott lap indexének visszaadása." #: ../src/guake/main.py:104 msgid "Execute an arbitrary command in the selected tab." msgstr "Egyéni parancs végrehajtása a kiválasztott lapon" #: ../src/guake/main.py:108 msgid "Specify the tab to rename. Default is 0." msgstr "" #: ../src/guake/main.py:112 msgid "Set the hexadecimal (#rrggbb) background color of the selected tab." msgstr "" #: ../src/guake/main.py:117 msgid "Set the hexadecimal (#rrggbb) foreground color of the selected tab." msgstr "" #: ../src/guake/main.py:123 msgid "" "Rename the specified tab. Reset to default if TITLE is a single dash \"-\"." msgstr "" #: ../src/guake/main.py:129 msgid "" "Rename the current tab. Reset to default if TITLE is a single dash \"-\"." msgstr "" #: ../src/guake/main.py:134 msgid "Says to Guake go away =(" msgstr "Elbúcsúzás Guake-től =(" #: ../src/guake/main.py:138 msgid "Do not execute the start up script" msgstr "" #: ../src/guake/main.py:235 msgid "Guake can not init!" msgstr "Guake nem tud elindulni!" #: ../src/guake/main.py:236 #, fuzzy msgid "" "Gconf Error.\n" "Have you installed guake.schemas properly?" msgstr "" "Gconf hiba.\n" "Helyesen installáltad a guake.schemas-kat?" #. string to show in prefereces dialog for user shell option #: ../src/guake/prefs.py:67 msgid "" msgstr "" #: ../src/guake/prefs.py:77 msgid "Toggle Guake visibility" msgstr "Guake láthatósága" #: ../src/guake/prefs.py:81 #, fuzzy msgid "Toggle Hide on Lose Focus" msgstr "Fókusz elvesztésekor elrejtés" #: ../src/guake/prefs.py:88 msgid "Tab management" msgstr "Lapok kezelése" #: ../src/guake/prefs.py:90 #, fuzzy msgid "New tab" msgstr "Új lap" #: ../src/guake/prefs.py:92 msgid "Close tab" msgstr "Lap bezárása" #: ../src/guake/prefs.py:94 msgid "Rename current tab" msgstr "Lap átnevezése" #: ../src/guake/prefs.py:97 msgid "Navigation" msgstr "Navigáció" #: ../src/guake/prefs.py:99 msgid "Go to previous tab" msgstr "Előző lap" #: ../src/guake/prefs.py:101 msgid "Go to next tab" msgstr "Következő lap" #: ../src/guake/prefs.py:103 #, fuzzy msgid "Move current tab left" msgstr "Lap átnevezése" #: ../src/guake/prefs.py:105 #, fuzzy msgid "Move current tab right" msgstr "Lap átnevezése" #: ../src/guake/prefs.py:107 #, fuzzy msgid "Go to first tab" msgstr "Következő lap" #: ../src/guake/prefs.py:109 #, fuzzy msgid "Go to second tab" msgstr "Következő lap" #: ../src/guake/prefs.py:111 #, fuzzy msgid "Go to third tab" msgstr "Következő lap" #: ../src/guake/prefs.py:113 #, fuzzy msgid "Go to fourth tab" msgstr "Következő lap" #: ../src/guake/prefs.py:115 #, fuzzy msgid "Go to fifth tab" msgstr "Következő lap" #: ../src/guake/prefs.py:117 #, fuzzy msgid "Go to sixth tab" msgstr "Következő lap" #: ../src/guake/prefs.py:119 #, fuzzy msgid "Go to seventh tab" msgstr "Következő lap" #: ../src/guake/prefs.py:121 #, fuzzy msgid "Go to eighth tab" msgstr "Következő lap" #: ../src/guake/prefs.py:123 #, fuzzy msgid "Go to ninth tab" msgstr "Következő lap" #: ../src/guake/prefs.py:125 #, fuzzy msgid "Go to tenth tab" msgstr "Következő lap" #: ../src/guake/prefs.py:127 #, fuzzy msgid "Go to last tab" msgstr "Következő lap" #: ../src/guake/prefs.py:132 msgid "Zoom out" msgstr "" #: ../src/guake/prefs.py:134 msgid "Zoom in" msgstr "" #: ../src/guake/prefs.py:136 msgid "Zoom in (alternative)" msgstr "" #: ../src/guake/prefs.py:138 msgid "Increase height" msgstr "" #: ../src/guake/prefs.py:140 msgid "Decrease height" msgstr "" #: ../src/guake/prefs.py:142 #, fuzzy msgid "Increase transparency" msgstr "Átlátszóság:" #: ../src/guake/prefs.py:144 #, fuzzy msgid "Decrease transparency" msgstr "Átlátszóság:" #: ../src/guake/prefs.py:146 #, fuzzy msgid "Toggle transparency" msgstr "Átlátszóság:" #: ../src/guake/prefs.py:149 msgid "Clipboard" msgstr "Vágólap" #: ../src/guake/prefs.py:151 msgid "Copy text to clipboard" msgstr "Másolás vágólapra" #: ../src/guake/prefs.py:153 msgid "Paste text from clipboard" msgstr "Beillesztés vágólapról" #: ../src/guake/prefs.py:156 msgid "Extra features" msgstr "" #: ../src/guake/prefs.py:159 msgid "Search select text on web" msgstr "" #: ../src/guake/prefs.py:481 msgid "Action" msgstr "Művelet" #: ../src/guake/prefs.py:491 msgid "Shortcut" msgstr "Gyorsbillentyű" #: ../src/guake/prefs.py:651 ../src/guake/prefs.py:697 msgid "Custom" msgstr "" #: ../src/guake/prefs.py:969 msgid "JSON files" msgstr "" #: ../src/guake/prefs.py:1063 #, python-format msgid "The shortcut \"%s\" is already in use." msgstr "A \"%s\" gyorsbillentyű már használatban van." #: ../src/guake/prefs.py:1064 msgid "Error setting keybinding." msgstr "Hiba a billentyűkiosztás alkalmazásával" #: ../src/guake/prefs.py:1076 #, python-format msgid "" "The shortcut \"%s\" cannot be used because it will become impossible to type " "using this key.\n" "\n" "Please try with a key such as Control, Alt or Shift at the same time.\n" msgstr "" "A gyorsbillentyű \"%s\" nem használható, ellehetetlenítené a gépelést. \n" "\n" "Kérlek használj általános billentyűket mint a Control, Alt vagy Shift " "egyszerre.\n" #: guake/main.py:153 msgid "Return the selected tab label." msgstr "" #: guake/data/prefs.glade:264 msgid "Never" msgstr "" #: guake/data/prefs.glade:265 msgid "With process running" msgstr "" #: guake/data/prefs.glade:266 msgid "Always" msgstr "" #: guake/data/prefs.glade:499 msgid "Refocus if open" msgstr "" #: guake/data/prefs.glade:865 msgid "Custom command file path:" msgstr "" #: guake/data/prefs.glade:1315 msgid "Show resizer" msgstr "" #: guake/data/prefs.glade:1423 msgid "Block" msgstr "" #: guake/data/prefs.glade:1424 msgid "I-Beam" msgstr "" #: guake/data/prefs.glade:1425 msgid "Underline" msgstr "" #: guake/data/prefs.glade:1443 msgid "Follow GTK+ setting" msgstr "" #: guake/data/prefs.glade:1444 msgid "Blink on" msgstr "" #: guake/data/prefs.glade:1445 msgid "Blink off" msgstr "" #: guake/data/prefs.glade:2236 msgid "" "Use the following elements in the open editor command line:\n" "- %(file_path)s: path to the file that has been clicked\n" "- %(line_number)s: if your editor supports it, you can directly open " "the file to a given line number when found on the screen.\n" "\n" "For example, for sublime, use subl %(file_path)s:%(line_number)s\n" "" msgstr "" #: guake/data/prefs.glade:2442 guake/data/prefs.glade:2462 msgid "ASCII DEL" msgstr "" #: guake/data/prefs.glade:2443 guake/data/prefs.glade:2463 msgid "Escape sequence" msgstr "" #: guake/data/prefs.glade:2444 guake/data/prefs.glade:2464 msgid "Control-H" msgstr "" #: guake/data/prefs.glade:2600 msgid "" "In this dialog you can attach your own command or script to various " "guake events" msgstr "" #: guake/data/prefs.glade:2635 msgid "On show:" msgstr "" #: guake/data/prefs.glade:2665 msgid "On start:" msgstr "" #: guake/data/prefs.glade:2714 msgid "Hooks" msgstr "" #: guake/data/guake-prefs.desktop:8 msgid "Configure your Guake sessions" msgstr "" #: guake/data/guake-prefs.desktop:15 guake/data/guake.desktop:18 msgid "guake" msgstr "" #: guake/data/guake-prefs.desktop:20 msgid "Terminal;Utility;" msgstr "" #: guake/data/guake.desktop:10 msgid "Use the command line in a Quake-like terminal" msgstr "" #: guake/data/prefs.glade:770 msgid "Main Window Horizontal Alignment" msgstr "" #: guake/prefs.py:89 msgid "Show and focus Guake window" msgstr "" #: guake/data/prefs.glade:566 msgid "0" msgstr "" #: guake/data/prefs.glade:610 msgid "Main Window Options" msgstr "" #: guake/data/prefs.glade:770 msgid "Horizontal Alignment:" msgstr "" #: guake/data/prefs.glade:855 msgid "Height:" msgstr "" #: guake/data/prefs.glade:868 msgid "Width:" msgstr "" #: guake/data/prefs.glade:913 msgid "Geometry" msgstr "" #: guake/data/prefs.glade:944 msgid "Main Window" msgstr "" #: guake/data/prefs.glade:1197 msgid "Infinite scrolling" msgstr "" #: guake/data/prefs.glade:1219 msgid "Scrollbar" msgstr "" #: guake/data/prefs.glade:1304 msgid "Scroll to Bottom" msgstr "" #: guake/data/prefs.glade:2117 msgid "" "Quick open is a feature allowing you to open a file directly into your " "favorite text editor by clicking on its filename when it appears in your " "terminal. See the list of currently supported text patterns used to extract " "filename below." msgstr "" #: guake/main.py:64 msgid "Show Guake version number and exit" msgstr "" #: guake/data/prefs.glade:93 msgid "Guake properties" msgstr "Guake beállítások" #: guake/data/prefs.glade:107 msgid "Customize behavior and appearance of Guake!" msgstr "Guake viselkedésének és megjelenésének testreszabása" #: guake/data/prefs.glade:929 msgid "Displacement in pixels" msgstr "" #: guake/main.py:73 msgid "Enable verbose logging" msgstr "" #: guake/guake_app.py:680 msgid "Quick Open: '{!s}...'" msgstr "" #: guake/guake_app.py:683 msgid "Quick Open: {!s}" msgstr "" #: guake/guake_app.py:691 msgid "Open Link: '{!s}...'" msgstr "" #: guake/guake_app.py:694 msgid "Open Link: {!s}" msgstr "" #: guake/data/prefs.glade:2175 msgid "" "WARNING: your system seems to have PCRE2 disabled for VTE, " "preventing application such as Guake to register \"matchers\" using regular " "expressions. Please contact your distribution to request a new version of " "VTE with PCRE2 enabled ! To use Quick Open, you must select the text " "before using Ctrl+click." msgstr "" #: guake/guake_app.py:680 msgid "Quick Open: {!s}..." msgstr "" #: guake/guake_app.py:691 msgid "Open Link: {!s}..." msgstr "" #: guake/guake_app.py:688 msgid "Quick Open..." msgstr "" #: guake/data/prefs.glade:223 msgid "Start Guake at login" msgstr "" #: guake/data/prefs.glade:363 msgid "Gtk Theme:" msgstr "" #: guake/data/prefs.glade:387 msgid "Prefer dark theme" msgstr "" #: guake/guake_app.py:435 msgid "Custom Commands" msgstr "" #: guake/main.py:184 msgid "" "Specify the tab to rename. Default is 0. Can be used to select tab by UUID." msgstr "" #: guake/main.py:212 msgid "" "Rename the specified tab by --tab-index. Reset to default if TITLE is a " "single dash \"-\"." msgstr "" #: data/search.glade:138 msgid "Search forward" msgstr "" #: data/search.glade:153 msgid "Match case" msgstr "" #: data/search.glade:186 msgid "Current search direction: Backward" msgstr "" #: data/prefs.glade:680 msgid "Set window title to current tab name" msgstr "" #: guake/menus.py:48 msgid "Copy Url" msgstr "" #: guake/menus.py:62 msgid "Split ―" msgstr "" #: guake/menus.py:65 msgid "Split " msgstr "" #: guake/menus.py:68 guake/prefs.py:150 msgid "Close terminal" msgstr "" #: guake/prefs.py:137 msgid "Split management" msgstr "" #: guake/prefs.py:142 msgid "Split tab vertical" msgstr "" #: guake/prefs.py:146 msgid "Split tab horizontal" msgstr "" #: guake/prefs.py:154 msgid "Focus terminal above" msgstr "" #: guake/prefs.py:158 msgid "Focus terminal below" msgstr "" #: guake/prefs.py:162 msgid "Focus terminal on the left" msgstr "" #: guake/prefs.py:166 msgid "Focus terminal on the right" msgstr "" #: guake/prefs.py:170 msgid "Move the terminal split handle up" msgstr "" #: guake/prefs.py:174 msgid "Move the terminal split handle down" msgstr "" #: guake/prefs.py:178 msgid "Move the terminal split handle right" msgstr "" #: guake/prefs.py:182 msgid "Move the terminal split handle left" msgstr "" #: guake/menus.py:65 msgid "Split |" msgstr "" #: guake/menus.py:72 msgid "Save content..." msgstr "" #: data/prefs.glade:1182 msgid "" "This might not work on all shells, make sure that your shell supports the --" "login option" msgstr "" #: guake/prefs.py:128 msgid "New tab in home directory" msgstr "" #: guake/dialogs.py:56 #, python-brace-format msgid " on {0} workspaces" msgstr "" #: guake/main.py:211 msgid "Change Guake palette scheme" msgstr "" #: data/prefs.glade:331 msgid "Use workspace-specific tab sets (requires restart)" msgstr "" #: guake/main.py:175 msgid "Split the selected tab vertically." msgstr "" #: guake/main.py:183 msgid "Split the selected tab horizontally." msgstr "" #: data/prefs.glade:348 msgid "Show close buttons for tabs" msgstr "" #: data/prefs.glade:1682 msgid "Bold text is also bright" msgstr "" #: data/prefs.glade:1682 msgid "Bold text is also bright (VTE >=0.52)" msgstr "" #: guake/menus.py:42 msgid "Save Tabs" msgstr "" #: guake/menus.py:45 msgid "Restore Tabs" msgstr "" #: guake/prefs.py:113 msgid "Search terminal" msgstr "" #: guake/main.py:278 msgid "Save Guake preferences to this filename" msgstr "" #: guake/main.py:286 msgid "Restore Guake preferences from this file" msgstr "" #: guake/guake_app.py:1192 #, python-brace-format msgid "Your session.json file is broken, backup to {session_filename}.bak" msgstr "" #: guake/guake_app.py:1228 #, python-brace-format msgid "" "Your session.json schema is broken, backup to {0}.bak,and error message has " "been saved to {0}.log.err" msgstr "" #: guake/guake_app.py:1239 msgid "Your tabs has been restored!" msgstr "" #: data/prefs.glade:190 msgid "Restore previous session (tabs)" msgstr "" #: data/prefs.glade:204 msgid "Enable notification when restore tabs" msgstr "" #: data/prefs.glade:218 msgid "Automatically save session when the tabs has been modified" msgstr "" #: data/prefs.glade:238 msgid "Startup & Tabs (Experiment)" msgstr "" #: guake/guake_app.py:1192 #, python-brace-format msgid "" "Your {session_filename} file is broken, backup to {session_filename}.bak" msgstr "" #: guake/guake_app.py:1227 #, python-brace-format msgid "" "Your {session_filename} schema is broken, backup to {0}.bak,and error " "message has been saved to {session_filename}.log.err" msgstr "" #: guake/guake_app.py:1227 #, python-brace-format msgid "" "Your {session_filename} schema is broken, backup to {session_filename}.bak," "and error message has been saved to {session_filename}.log.err." msgstr "" #: guake/guake_app.py:1227 #, python-brace-format msgid "" "Your {session_filename} schema is broken, backup to {session_filename}.bak, " "and error message has been saved to {session_filename}.log.err." msgstr "" #: guake/notebook.py:317 msgid "" "You are going to restore *all* the tabs!\n" "which means all your terminals & pages will be replaced.\n" "\n" "Do you want to continue?" msgstr "" #: guake/main.py:296 msgid "Show support infomations" msgstr "" #: guake/guake_app.py:1240 #, python-brace-format msgid "" "Tabs session restore abort.\n" "Your session file ({session_filename}) missing schema_version as key" msgstr "" #: guake/guake_app.py:1252 #, python-brace-format msgid "" "Tabs session restore abort.\n" "Your session file schema version is higher than current version " "({session_file_schema_version} > {current_schema_version})." msgstr "" #: guake/data/prefs.glade:409 msgid "Use workspace-specific tab sets (requires restart, only work on X11)" msgstr "" #~ msgid "key binding error" #~ msgstr "Hiba történt a billentyűkombináció hozzárendelésekor" #~ msgid "Unable to bind global %s key" #~ msgstr "Globális billentyűkombináció hozzárendelése meghiúsult:%s." #~ msgid "http://guake.org" #~ msgstr "http://guake.org" #~ msgid "" #~ "Tango\n" #~ "Linux console\n" #~ "XTerm\n" #~ "Rxvt\n" #~ "Custom\n" #~ msgstr "" #~ "Tango\n" #~ "Linux konzol\n" #~ "XTerm\n" #~ "Rxvt\n" #~ "Egyéni\n" #~ msgid "Select a tab" #~ msgstr "Lap kiválasztása" #~ msgid "Rename the selected tab." #~ msgstr "A kiválasztott lap átnevezése." guake-3.6.3/po/id.po000066400000000000000000000653251346623310400142060ustar00rootroot00000000000000# Translation of Guake to Indonesian # Copyright (C) 2013 Guake Translators # This file is distributed under the same license as the Guake package. # # Translators: # operamaniac , 2013 msgid "" msgstr "" "Project-Id-Version: Guake 0.4.5\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2016-08-18 17:32+0200\n" "PO-Revision-Date: 2018-01-25 21:04+0100\n" "Last-Translator: operamaniac \n" "Language-Team: Indonesian (http://www.transifex.com/projects/p/guake/" "language/id/)\n" "Language: id\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=1; plural=0;\n" "X-Generator: Poedit 2.0.6\n" #: ../guake/data/about.glade.h:1 msgid "About Guake" msgstr "Tentang Guake" #: ../guake/data/about.glade.h:5 #, fuzzy msgid "" "Guake is an easy to access\n" "terminal based on FPS games terminal" msgstr "" "Guake adalah sebuah terminal yang mudah untuk di akses\n" "terminal ini didasari dari terminal pada game FPS" #: ../guake/data/guake.glade.h:1 msgid "Copy" msgstr "Gandakan" #: ../guake/data/guake.glade.h:2 msgid "Paste" msgstr "Tempelkan" #: ../guake/data/guake.glade.h:3 ../src/guake/prefs.py:79 msgid "Toggle Fullscreen" msgstr "" #: ../guake/data/guake.glade.h:4 msgid "Save to File..." msgstr "" #: ../guake/data/guake.glade.h:5 ../src/guake/prefs.py:85 msgid "Reset terminal" msgstr "" #: ../guake/data/guake.glade.h:6 msgid "Find..." msgstr "" #: ../guake/data/guake.glade.h:7 #, fuzzy msgid "New Tab" msgstr "Tutup Tab" #: ../guake/data/guake.glade.h:8 #, fuzzy msgid "Rename Tab" msgstr "Namai ulang" #: ../guake/data/guake.glade.h:9 msgid "Close Tab" msgstr "Tutup Tab" #: ../guake/data/guake.glade.h:10 msgid "Open link..." msgstr "" #: ../guake/data/guake.glade.h:11 msgid "Search on Web" msgstr "" #: ../guake/data/guake.glade.h:12 ../src/guake/prefs.py:83 msgid "Quit" msgstr "Keluar" #: ../guake/data/guake.glade.h:13 msgid "Rename" msgstr "Namai ulang" #: ../guake/data/guake.glade.h:14 msgid "Close" msgstr "Tutup" #: ../guake/data/guake.glade.h:15 msgid "Guake!" msgstr "Guake!" #: ../guake/data/guake.glade.h:16 #, fuzzy msgid "Add a new tab" msgstr "Tambah tab baru" #: ../guake/data/prefs.glade.h:1 msgid "Guake Preferences" msgstr "" #: ../guake/data/prefs.glade.h:2 msgid "Guake properties" msgstr "" #: ../guake/data/prefs.glade.h:3 msgid "" "Customize behavior and appearance of Guake!" msgstr "" #: ../guake/data/prefs.glade.h:4 msgid "" "Path to a bash script that would be automatically executed when Guake " "starts, unless you specify --no-startup-script.\n" "\n" "This would typically use the configuration by command line feature of " "Guake:\n" "\n" "#!/bin/bash\n" "\n" "sleep 5 # it is advised to wait a bit before Guake has been successfully " "started\n" "\n" "guake -r \"main\" -e \"cd ~/projects/myproject/main\"\n" "guake -r \"prod\" -e \"cd ~/projects/myproject/prod\"\n" msgstr "" #: ../guake/data/prefs.glade.h:15 msgid "Enable popup notifications on startup" msgstr "" #: ../guake/data/prefs.glade.h:16 msgid "Show tray icon" msgstr "" #: ../guake/data/prefs.glade.h:17 msgid "Always prompt on quit" msgstr "" #: ../guake/data/prefs.glade.h:18 msgid "_Flash terminal on bell" msgstr "" #: ../guake/data/prefs.glade.h:19 msgid "_Play system alert sound on bell" msgstr "" #: ../guake/data/prefs.glade.h:20 msgid "Path to script executed on Guake start:" msgstr "" #: ../guake/data/prefs.glade.h:21 msgid "Prompt on close tab:" msgstr "" #: ../guake/data/prefs.glade.h:22 msgid "" "Never\n" "With process running\n" "Always" msgstr "" #: ../guake/data/prefs.glade.h:25 msgid "General" msgstr "Umum" #: ../guake/data/prefs.glade.h:26 msgid "Bottom align window instead of top align" msgstr "" #: ../guake/data/prefs.glade.h:27 msgid "Appear on mouse display" msgstr "" #: ../guake/data/prefs.glade.h:28 msgid "Appear on display:" msgstr "" #: ../guake/data/prefs.glade.h:29 msgid "Place tabs on top" msgstr "" #: ../guake/data/prefs.glade.h:30 #, fuzzy msgid "Placement" msgstr "Palet" #: ../guake/data/prefs.glade.h:31 msgid "Stay on top" msgstr "" #: ../guake/data/prefs.glade.h:32 msgid "Use VTE titles for tab names" msgstr "" #: ../guake/data/prefs.glade.h:33 msgid "Max tab name length:" msgstr "" #: ../guake/data/prefs.glade.h:34 msgid "0 means no size limit" msgstr "" #: ../guake/data/prefs.glade.h:35 msgid "Abbreviate directories in tab names" msgstr "" #: ../guake/data/prefs.glade.h:36 msgid "Hide on lose focus" msgstr "" #: ../guake/data/prefs.glade.h:37 msgid "Show tab bar" msgstr "" #: ../guake/data/prefs.glade.h:38 msgid "Start fullscreen" msgstr "" #: ../guake/data/prefs.glade.h:39 msgid "Main Window" msgstr "Jendela Utama" #: ../guake/data/prefs.glade.h:40 msgid "Left" msgstr "" #: ../guake/data/prefs.glade.h:41 msgid "Center" msgstr "" #: ../guake/data/prefs.glade.h:42 msgid "Right" msgstr "" #: ../guake/data/prefs.glade.h:43 #, fuzzy msgid "Main Window Horizontal Alignment" msgstr "Tinggi Jendela utama" #: ../guake/data/prefs.glade.h:44 #, fuzzy msgid "Main Window Height" msgstr "Tinggi Jendela utama" #: ../guake/data/prefs.glade.h:45 #, fuzzy msgid "Main Window Width" msgstr "Tinggi Jendela utama" #: ../guake/data/prefs.glade.h:46 msgid "Custom command file path: " msgstr "" #: ../guake/data/prefs.glade.h:47 msgid "Please select a json file" msgstr "" #: ../guake/data/prefs.glade.h:48 ../src/guake/prefs.py:75 msgid "General" msgstr "" #: ../guake/data/prefs.glade.h:49 msgid "Default interpreter:" msgstr "" #: ../guake/data/prefs.glade.h:50 msgid "_Run command as a login shell" msgstr "" #: ../guake/data/prefs.glade.h:51 msgid "_Open new tab in current directory" msgstr "" #: ../guake/data/prefs.glade.h:52 msgid "Shell" msgstr "IntiScroll" msgstr "Gulir" #: ../guake/data/prefs.glade.h:59 msgid "Scrolling" msgstr "" #: ../guake/data/prefs.glade.h:60 msgid "Use the system fixed width font" msgstr "" #: ../guake/data/prefs.glade.h:61 msgid "Font:" msgstr "" #: ../guake/data/prefs.glade.h:62 msgid "Choose some font" msgstr "" #: ../guake/data/prefs.glade.h:63 msgid "Text color:" msgstr "" #: ../guake/data/prefs.glade.h:64 msgid "Background color:" msgstr "" #: ../guake/data/prefs.glade.h:65 msgid "Cursor shape:" msgstr "" #: ../guake/data/prefs.glade.h:66 msgid "" "Block\n" "I-Beam\n" "Underline" msgstr "" #: ../guake/data/prefs.glade.h:69 msgid "" "Follow GTK+ setting\n" "Blink on\n" "Blink off" msgstr "" #: ../guake/data/prefs.glade.h:72 msgid "Cursor blink mode:" msgstr "" #: ../guake/data/prefs.glade.h:73 msgid "Allow bold font" msgstr "" #: ../guake/data/prefs.glade.h:74 msgid "Palette" msgstr "Palet" #: ../guake/data/prefs.glade.h:75 msgid "Built-in schemes:" msgstr "" #: ../guake/data/prefs.glade.h:76 msgid "Color palette:" msgstr "" #: ../guake/data/prefs.glade.h:77 msgid "Font color" msgstr "" #: ../guake/data/prefs.glade.h:78 msgid "Background color" msgstr "" #: ../guake/data/prefs.glade.h:79 msgid "Use font and background color from the palette" msgstr "" #: ../guake/data/prefs.glade.h:80 msgid "Demo:" msgstr "" #: ../guake/data/prefs.glade.h:81 msgid "Effects" msgstr "Efek" #: ../guake/data/prefs.glade.h:82 msgid "Transparency:" msgstr "" #: ../guake/data/prefs.glade.h:83 msgid "Background image:" msgstr "" #: ../guake/data/prefs.glade.h:84 ../src/guake/prefs.py:130 msgid "Appearance" msgstr "" #: ../guake/data/prefs.glade.h:85 msgid "" "Quick open is a feature allowing you to open a file directly into " "your favorite text editor by clicking on its filename when it appears in " "your terminal. See the list of currently supported text patterns used to " "extract filename below." msgstr "" #: ../guake/data/prefs.glade.h:86 msgid "Enable Quick Open when Ctrl+clicking on a filename in the terminal" msgstr "" #: ../guake/data/prefs.glade.h:87 msgid "Editor command line:" msgstr "" #: ../guake/data/prefs.glade.h:89 #, no-c-format msgid "" "Use the following elements in the open editor command line:\n" " - %(file_path)s: path to the file that has been clicked\n" " - %(line_number)s: if your editor supports it, you can directly open " "the file to a given line number when found on the screen.\n" "\n" "For example, for sublime, use subl %(file_path)s:%(line_number)s\n" "" msgstr "" #: ../guake/data/prefs.glade.h:95 msgid "Quick open in current terminal" msgstr "" #: ../guake/data/prefs.glade.h:96 msgid "" "Here is the list of supported patterns: (to add your own, please contact the " "Guake's authors)" msgstr "" #: ../guake/data/prefs.glade.h:97 #, fuzzy msgid "Quick Open" msgstr "Palet" #: ../guake/data/prefs.glade.h:98 msgid "Quick Open" msgstr "" #: ../guake/data/prefs.glade.h:99 msgid "" "To change a shortcut simply click on its name.\n" "To disable a shortcut, press the \"Backspace\" key." msgstr "" #: ../guake/data/prefs.glade.h:101 msgid "Keyboard shortcuts" msgstr "" #: ../guake/data/prefs.glade.h:102 msgid "" "Note: These options may cause some applications to behave " "incorrectly. They are only here to allow you to work around certain " "applications and operating systems that expect different terminal behavior." msgstr "" #: ../guake/data/prefs.glade.h:103 msgid "" "ASCII DEL\n" "Escape sequence\n" "Control-H" msgstr "" #: ../guake/data/prefs.glade.h:106 msgid "_Backspace key generates:" msgstr "" #: ../guake/data/prefs.glade.h:107 msgid "_Delete key generates:" msgstr "" #: ../guake/data/prefs.glade.h:108 msgid "_Reset Compatibility Options to Defaults" msgstr "" #: ../guake/data/prefs.glade.h:109 msgid "Keyboard compatibility" msgstr "Kompabilitas papan ketik" #: ../guake/data/prefs.glade.h:110 msgid "Compatibility" msgstr "" #: ../src/guake/about.py:47 ../src/guake/gconfhandler.py:439 #: ../src/guake/guake_app.py:181 ../src/guake/guake_app.py:378 msgid "Guake Terminal" msgstr "" #: ../src/guake/gconfhandler.py:369 ../src/guake/guake_app.py:1386 msgid "Terminal" msgstr "" #: ../src/guake/gconfhandler.py:440 #, python-format msgid "" "A problem happened when binding %s key.\n" "Please use Guake Preferences dialog to choose another key" msgstr "" #: ../src/guake/guake_app.py:132 msgid "Do you want to close the tab?" msgstr "" #: ../src/guake/guake_app.py:135 msgid "Do you really want to quit Guake?" msgstr "" #: ../src/guake/guake_app.py:137 #, fuzzy msgid " and one tab open" msgstr "Tambah tab baru" #: ../src/guake/guake_app.py:139 #, python-brace-format msgid " and {0} tabs open" msgstr "" #: ../src/guake/guake_app.py:142 msgid "There are no processes running" msgstr "" #: ../src/guake/guake_app.py:144 msgid "There is a process still running" msgstr "" #: ../src/guake/guake_app.py:146 #, python-brace-format msgid "There are {0} processes still running" msgstr "" #: ../src/guake/guake_app.py:186 msgid "guake-indicator" msgstr "" #: ../src/guake/guake_app.py:186 msgid "guake-tray" msgstr "" #: ../src/guake/guake_app.py:190 msgid "Show" msgstr "" #: ../src/guake/guake_app.py:670 #, python-format msgid "Search on Web: '%s'" msgstr "" #: ../src/guake/guake_app.py:675 msgid "Search on Web (no selection)" msgstr "" #: ../src/guake/guake_app.py:683 msgid "Open Link: '{}...'" msgstr "" #: ../src/guake/guake_app.py:685 msgid "Open Link: {}" msgstr "" #: ../src/guake/guake_app.py:688 msgid "Open Link..." msgstr "" #: ../src/guake/guake_app.py:1425 msgid "Rename tab" msgstr "" #: ../src/guake/guake_app.py:1736 msgid "Save to..." msgstr "" #: ../src/guake/guake_app.py:1743 ../src/guake/prefs.py:973 msgid "All files" msgstr "" #: ../src/guake/guake_app.py:1748 msgid "Text and Logs" msgstr "" #: ../src/guake/guake_app.py:1766 msgid "Find" msgstr "" #: ../src/guake/guake_app.py:1768 msgid "Forward" msgstr "" #: ../src/guake/guake_app.py:1769 msgid "Backward" msgstr "" #: ../src/guake/main.py:68 msgid "Put Guake in fullscreen mode" msgstr "" #: ../src/guake/main.py:72 msgid "Toggles the visibility of the terminal window" msgstr "" #: ../src/guake/main.py:76 msgid "Shows Guake main window" msgstr "" #: ../src/guake/main.py:80 msgid "Hides Guake main window" msgstr "" #: ../src/guake/main.py:84 msgid "Shows Guake preference window" msgstr "" #: ../src/guake/main.py:88 msgid "Shows Guake's about info" msgstr "" #: ../src/guake/main.py:92 msgid "Add a new tab (with current directory set to NEW_TAB)" msgstr "" #: ../src/guake/main.py:96 msgid "Select a tab (SELECT_TAB is the index of the tab)" msgstr "" #: ../src/guake/main.py:100 msgid "Return the selected tab index." msgstr "" #: ../src/guake/main.py:104 msgid "Execute an arbitrary command in the selected tab." msgstr "" #: ../src/guake/main.py:108 msgid "Specify the tab to rename. Default is 0." msgstr "" #: ../src/guake/main.py:112 msgid "Set the hexadecimal (#rrggbb) background color of the selected tab." msgstr "" #: ../src/guake/main.py:117 msgid "Set the hexadecimal (#rrggbb) foreground color of the selected tab." msgstr "" #: ../src/guake/main.py:123 msgid "" "Rename the specified tab. Reset to default if TITLE is a single dash \"-\"." msgstr "" #: ../src/guake/main.py:129 msgid "" "Rename the current tab. Reset to default if TITLE is a single dash \"-\"." msgstr "" #: ../src/guake/main.py:134 msgid "Says to Guake go away =(" msgstr "" #: ../src/guake/main.py:138 msgid "Do not execute the start up script" msgstr "" #: ../src/guake/main.py:235 msgid "Guake can not init!" msgstr "" #: ../src/guake/main.py:236 msgid "" "Gconf Error.\n" "Have you installed guake.schemas properly?" msgstr "" #. string to show in prefereces dialog for user shell option #: ../src/guake/prefs.py:67 msgid "" msgstr "" #: ../src/guake/prefs.py:77 msgid "Toggle Guake visibility" msgstr "" #: ../src/guake/prefs.py:81 msgid "Toggle Hide on Lose Focus" msgstr "" #: ../src/guake/prefs.py:88 msgid "Tab management" msgstr "" #: ../src/guake/prefs.py:90 #, fuzzy msgid "New tab" msgstr "Tutup Tab" #: ../src/guake/prefs.py:92 #, fuzzy msgid "Close tab" msgstr "Tutup Tab" #: ../src/guake/prefs.py:94 #, fuzzy msgid "Rename current tab" msgstr "Namai ulang" #: ../src/guake/prefs.py:97 msgid "Navigation" msgstr "" #: ../src/guake/prefs.py:99 msgid "Go to previous tab" msgstr "" #: ../src/guake/prefs.py:101 msgid "Go to next tab" msgstr "" #: ../src/guake/prefs.py:103 msgid "Move current tab left" msgstr "" #: ../src/guake/prefs.py:105 msgid "Move current tab right" msgstr "" #: ../src/guake/prefs.py:107 msgid "Go to first tab" msgstr "" #: ../src/guake/prefs.py:109 msgid "Go to second tab" msgstr "" #: ../src/guake/prefs.py:111 msgid "Go to third tab" msgstr "" #: ../src/guake/prefs.py:113 msgid "Go to fourth tab" msgstr "" #: ../src/guake/prefs.py:115 msgid "Go to fifth tab" msgstr "" #: ../src/guake/prefs.py:117 msgid "Go to sixth tab" msgstr "" #: ../src/guake/prefs.py:119 msgid "Go to seventh tab" msgstr "" #: ../src/guake/prefs.py:121 msgid "Go to eighth tab" msgstr "" #: ../src/guake/prefs.py:123 msgid "Go to ninth tab" msgstr "" #: ../src/guake/prefs.py:125 msgid "Go to tenth tab" msgstr "" #: ../src/guake/prefs.py:127 msgid "Go to last tab" msgstr "" #: ../src/guake/prefs.py:132 msgid "Zoom out" msgstr "" #: ../src/guake/prefs.py:134 msgid "Zoom in" msgstr "" #: ../src/guake/prefs.py:136 msgid "Zoom in (alternative)" msgstr "" #: ../src/guake/prefs.py:138 msgid "Increase height" msgstr "" #: ../src/guake/prefs.py:140 msgid "Decrease height" msgstr "" #: ../src/guake/prefs.py:142 msgid "Increase transparency" msgstr "" #: ../src/guake/prefs.py:144 msgid "Decrease transparency" msgstr "" #: ../src/guake/prefs.py:146 msgid "Toggle transparency" msgstr "" #: ../src/guake/prefs.py:149 msgid "Clipboard" msgstr "" #: ../src/guake/prefs.py:151 msgid "Copy text to clipboard" msgstr "" #: ../src/guake/prefs.py:153 msgid "Paste text from clipboard" msgstr "" #: ../src/guake/prefs.py:156 msgid "Extra features" msgstr "" #: ../src/guake/prefs.py:159 msgid "Search select text on web" msgstr "" #: ../src/guake/prefs.py:481 msgid "Action" msgstr "" #: ../src/guake/prefs.py:491 msgid "Shortcut" msgstr "" #: ../src/guake/prefs.py:651 ../src/guake/prefs.py:697 msgid "Custom" msgstr "" #: ../src/guake/prefs.py:969 msgid "JSON files" msgstr "" #: ../src/guake/prefs.py:1063 #, python-format msgid "The shortcut \"%s\" is already in use." msgstr "" #: ../src/guake/prefs.py:1064 msgid "Error setting keybinding." msgstr "" #: ../src/guake/prefs.py:1076 #, python-format msgid "" "The shortcut \"%s\" cannot be used because it will become impossible to type " "using this key.\n" "\n" "Please try with a key such as Control, Alt or Shift at the same time.\n" msgstr "" #: guake/guake_app.py:491 msgid "" "Guake is now running,\n" "press {!s} to use it." msgstr "" #: guake/main.py:153 msgid "Return the selected tab label." msgstr "" #: guake/data/prefs.glade:264 msgid "Never" msgstr "" #: guake/data/prefs.glade:265 msgid "With process running" msgstr "" #: guake/data/prefs.glade:266 msgid "Always" msgstr "" #: guake/data/prefs.glade:499 msgid "Refocus if open" msgstr "" #: guake/data/prefs.glade:865 msgid "Custom command file path:" msgstr "" #: guake/data/prefs.glade:1315 msgid "Show resizer" msgstr "" #: guake/data/prefs.glade:1423 msgid "Block" msgstr "" #: guake/data/prefs.glade:1424 msgid "I-Beam" msgstr "" #: guake/data/prefs.glade:1425 msgid "Underline" msgstr "" #: guake/data/prefs.glade:1443 msgid "Follow GTK+ setting" msgstr "" #: guake/data/prefs.glade:1444 msgid "Blink on" msgstr "" #: guake/data/prefs.glade:1445 msgid "Blink off" msgstr "" #: guake/data/prefs.glade:2236 msgid "" "Use the following elements in the open editor command line:\n" "- %(file_path)s: path to the file that has been clicked\n" "- %(line_number)s: if your editor supports it, you can directly open " "the file to a given line number when found on the screen.\n" "\n" "For example, for sublime, use subl %(file_path)s:%(line_number)s\n" "" msgstr "" #: guake/data/prefs.glade:2442 guake/data/prefs.glade:2462 msgid "ASCII DEL" msgstr "" #: guake/data/prefs.glade:2443 guake/data/prefs.glade:2463 msgid "Escape sequence" msgstr "" #: guake/data/prefs.glade:2444 guake/data/prefs.glade:2464 msgid "Control-H" msgstr "" #: guake/data/prefs.glade:2600 msgid "" "In this dialog you can attach your own command or script to various " "guake events" msgstr "" #: guake/data/prefs.glade:2635 msgid "On show:" msgstr "" #: guake/data/prefs.glade:2665 msgid "On start:" msgstr "" #: guake/data/prefs.glade:2714 msgid "Hooks" msgstr "" #: guake/data/guake-prefs.desktop:8 msgid "Configure your Guake sessions" msgstr "" #: guake/data/guake-prefs.desktop:15 guake/data/guake.desktop:18 msgid "guake" msgstr "" #: guake/data/guake-prefs.desktop:20 msgid "Terminal;Utility;" msgstr "" #: guake/data/guake.desktop:10 msgid "Use the command line in a Quake-like terminal" msgstr "" #: guake/data/prefs.glade:770 msgid "Main Window Horizontal Alignment" msgstr "" #: guake/prefs.py:89 msgid "Show and focus Guake window" msgstr "" #: guake/data/prefs.glade:566 msgid "0" msgstr "" #: guake/data/prefs.glade:610 msgid "Main Window Options" msgstr "" #: guake/data/prefs.glade:770 msgid "Horizontal Alignment:" msgstr "" #: guake/data/prefs.glade:855 msgid "Height:" msgstr "" #: guake/data/prefs.glade:868 msgid "Width:" msgstr "" #: guake/data/prefs.glade:913 msgid "Geometry" msgstr "" #: guake/data/prefs.glade:944 msgid "Main Window" msgstr "" #: guake/data/prefs.glade:1197 msgid "Infinite scrolling" msgstr "" #: guake/data/prefs.glade:1219 msgid "Scrollbar" msgstr "" #: guake/data/prefs.glade:1304 msgid "Scroll to Bottom" msgstr "" #: guake/data/prefs.glade:2117 msgid "" "Quick open is a feature allowing you to open a file directly into your " "favorite text editor by clicking on its filename when it appears in your " "terminal. See the list of currently supported text patterns used to extract " "filename below." msgstr "" #: guake/main.py:64 msgid "Show Guake version number and exit" msgstr "" #: guake/data/prefs.glade:93 msgid "Guake properties" msgstr "" #: guake/data/prefs.glade:107 msgid "Customize behavior and appearance of Guake!" msgstr "" #: guake/data/prefs.glade:929 msgid "Displacement in pixels" msgstr "" #: guake/main.py:73 msgid "Enable verbose logging" msgstr "" #: guake/guake_app.py:680 msgid "Quick Open: '{!s}...'" msgstr "" #: guake/guake_app.py:683 msgid "Quick Open: {!s}" msgstr "" #: guake/guake_app.py:691 msgid "Open Link: '{!s}...'" msgstr "" #: guake/guake_app.py:694 msgid "Open Link: {!s}" msgstr "" #: guake/data/prefs.glade:2175 msgid "" "WARNING: your system seems to have PCRE2 disabled for VTE, " "preventing application such as Guake to register \"matchers\" using regular " "expressions. Please contact your distribution to request a new version of " "VTE with PCRE2 enabled ! To use Quick Open, you must select the text " "before using Ctrl+click." msgstr "" #: guake/guake_app.py:680 msgid "Quick Open: {!s}..." msgstr "" #: guake/guake_app.py:691 msgid "Open Link: {!s}..." msgstr "" #: guake/guake_app.py:688 msgid "Quick Open..." msgstr "" #: guake/data/prefs.glade:223 msgid "Start Guake at login" msgstr "" #: guake/data/prefs.glade:363 msgid "Gtk Theme:" msgstr "" #: guake/data/prefs.glade:387 msgid "Prefer dark theme" msgstr "" #: guake/guake_app.py:435 msgid "Custom Commands" msgstr "" #: guake/main.py:184 msgid "" "Specify the tab to rename. Default is 0. Can be used to select tab by UUID." msgstr "" #: guake/main.py:212 msgid "" "Rename the specified tab by --tab-index. Reset to default if TITLE is a " "single dash \"-\"." msgstr "" #: data/search.glade:138 msgid "Search forward" msgstr "" #: data/search.glade:153 msgid "Match case" msgstr "" #: data/search.glade:186 msgid "Current search direction: Backward" msgstr "" #: data/prefs.glade:680 msgid "Set window title to current tab name" msgstr "" #: guake/menus.py:48 msgid "Copy Url" msgstr "" #: guake/menus.py:62 msgid "Split ―" msgstr "" #: guake/menus.py:65 msgid "Split " msgstr "" #: guake/menus.py:68 guake/prefs.py:150 msgid "Close terminal" msgstr "" #: guake/prefs.py:137 msgid "Split management" msgstr "" #: guake/prefs.py:142 msgid "Split tab vertical" msgstr "" #: guake/prefs.py:146 msgid "Split tab horizontal" msgstr "" #: guake/prefs.py:154 msgid "Focus terminal above" msgstr "" #: guake/prefs.py:158 msgid "Focus terminal below" msgstr "" #: guake/prefs.py:162 msgid "Focus terminal on the left" msgstr "" #: guake/prefs.py:166 msgid "Focus terminal on the right" msgstr "" #: guake/prefs.py:170 msgid "Move the terminal split handle up" msgstr "" #: guake/prefs.py:174 msgid "Move the terminal split handle down" msgstr "" #: guake/prefs.py:178 msgid "Move the terminal split handle right" msgstr "" #: guake/prefs.py:182 msgid "Move the terminal split handle left" msgstr "" #: guake/menus.py:65 msgid "Split |" msgstr "" #: guake/menus.py:72 msgid "Save content..." msgstr "" #: data/prefs.glade:1182 msgid "" "This might not work on all shells, make sure that your shell supports the --" "login option" msgstr "" #: guake/prefs.py:128 msgid "New tab in home directory" msgstr "" #: guake/dialogs.py:56 #, python-brace-format msgid " on {0} workspaces" msgstr "" #: guake/main.py:211 msgid "Change Guake palette scheme" msgstr "" #: data/prefs.glade:331 msgid "Use workspace-specific tab sets (requires restart)" msgstr "" #: guake/main.py:175 msgid "Split the selected tab vertically." msgstr "" #: guake/main.py:183 msgid "Split the selected tab horizontally." msgstr "" #: data/prefs.glade:348 msgid "Show close buttons for tabs" msgstr "" #: data/prefs.glade:1682 msgid "Bold text is also bright" msgstr "" #: data/prefs.glade:1682 msgid "Bold text is also bright (VTE >=0.52)" msgstr "" #: guake/menus.py:42 msgid "Save Tabs" msgstr "" #: guake/menus.py:45 msgid "Restore Tabs" msgstr "" #: guake/prefs.py:113 msgid "Search terminal" msgstr "" #: guake/main.py:278 msgid "Save Guake preferences to this filename" msgstr "" #: guake/main.py:286 msgid "Restore Guake preferences from this file" msgstr "" #: guake/guake_app.py:1192 #, python-brace-format msgid "Your session.json file is broken, backup to {session_filename}.bak" msgstr "" #: guake/guake_app.py:1228 #, python-brace-format msgid "" "Your session.json schema is broken, backup to {0}.bak,and error message has " "been saved to {0}.log.err" msgstr "" #: guake/guake_app.py:1239 msgid "Your tabs has been restored!" msgstr "" #: data/prefs.glade:190 msgid "Restore previous session (tabs)" msgstr "" #: data/prefs.glade:204 msgid "Enable notification when restore tabs" msgstr "" #: data/prefs.glade:218 msgid "Automatically save session when the tabs has been modified" msgstr "" #: data/prefs.glade:238 msgid "Startup & Tabs (Experiment)" msgstr "" #: guake/guake_app.py:1192 #, python-brace-format msgid "" "Your {session_filename} file is broken, backup to {session_filename}.bak" msgstr "" #: guake/guake_app.py:1227 #, python-brace-format msgid "" "Your {session_filename} schema is broken, backup to {0}.bak,and error " "message has been saved to {session_filename}.log.err" msgstr "" #: guake/guake_app.py:1227 #, python-brace-format msgid "" "Your {session_filename} schema is broken, backup to {session_filename}.bak," "and error message has been saved to {session_filename}.log.err." msgstr "" #: guake/guake_app.py:1227 #, python-brace-format msgid "" "Your {session_filename} schema is broken, backup to {session_filename}.bak, " "and error message has been saved to {session_filename}.log.err." msgstr "" #: guake/notebook.py:317 msgid "" "You are going to restore *all* the tabs!\n" "which means all your terminals & pages will be replaced.\n" "\n" "Do you want to continue?" msgstr "" #: guake/main.py:296 msgid "Show support infomations" msgstr "" #: guake/guake_app.py:1240 #, python-brace-format msgid "" "Tabs session restore abort.\n" "Your session file ({session_filename}) missing schema_version as key" msgstr "" #: guake/guake_app.py:1252 #, python-brace-format msgid "" "Tabs session restore abort.\n" "Your session file schema version is higher than current version " "({session_file_schema_version} > {current_schema_version})." msgstr "" #: guake/data/prefs.glade:409 msgid "Use workspace-specific tab sets (requires restart, only work on X11)" msgstr "" #~ msgid "http://guake.org" #~ msgstr "http://guake.org" guake-3.6.3/po/it.po000066400000000000000000001110051346623310400142110ustar00rootroot00000000000000# Traduzione per Guake # Copyright (C) 2013 Guake Translators # This file is distributed under the same license as the Guake package. # # Translators: # Marco Leogrande , 2009 msgid "" msgstr "" "Project-Id-Version: Guake 0.4.5\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2016-08-18 17:32+0200\n" "PO-Revision-Date: 2018-07-13 22:39+0000\n" "Last-Translator: Maurizio De Santis \n" "Language-Team: Italian \n" "Language: it\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=n != 1;\n" "X-Generator: Weblate 3.1-dev\n" #: ../guake/data/about.glade.h:1 msgid "About Guake" msgstr "Informazioni su Guake" #: ../guake/data/about.glade.h:5 msgid "" "Guake is an easy to access\n" "terminal based on FPS games terminal" msgstr "" "Guake è un terminale semplice da usare\n" "basato sulle console da gioco degli FPS" #: ../guake/data/guake.glade.h:1 msgid "Copy" msgstr "Copia" #: ../guake/data/guake.glade.h:2 msgid "Paste" msgstr "Incolla" #: ../guake/data/guake.glade.h:3 ../src/guake/prefs.py:79 msgid "Toggle Fullscreen" msgstr "Alterna schermo intero" #: ../guake/data/guake.glade.h:4 msgid "Save to File..." msgstr "Salva su file..." #: ../guake/data/guake.glade.h:5 ../src/guake/prefs.py:85 msgid "Reset terminal" msgstr "Resetta il terminale" #: ../guake/data/guake.glade.h:6 msgid "Find..." msgstr "Cerca..." #: ../guake/data/guake.glade.h:7 msgid "New Tab" msgstr "Nuova scheda" #: ../guake/data/guake.glade.h:8 msgid "Rename Tab" msgstr "Rinomina scheda" #: ../guake/data/guake.glade.h:9 msgid "Close Tab" msgstr "Chiudi scheda" #: ../guake/data/guake.glade.h:10 msgid "Open link..." msgstr "Apri link..." #: ../guake/data/guake.glade.h:11 msgid "Search on Web" msgstr "Cerca nel Web" #: ../guake/data/guake.glade.h:12 ../src/guake/prefs.py:83 msgid "Quit" msgstr "Esci" #: ../guake/data/guake.glade.h:13 msgid "Rename" msgstr "Rinomina" #: ../guake/data/guake.glade.h:14 msgid "Close" msgstr "Chiudi" #: ../guake/data/guake.glade.h:15 msgid "Guake!" msgstr "Guake!" #: ../guake/data/guake.glade.h:16 msgid "Add a new tab" msgstr "Aggiungi una nuova scheda" #: ../guake/data/prefs.glade.h:1 msgid "Guake Preferences" msgstr "Preferenze di Guake" #: ../guake/data/prefs.glade.h:2 msgid "Guake properties" msgstr "Proprietà di Guake" #: ../guake/data/prefs.glade.h:3 msgid "" "Customize behavior and appearance of Guake!" msgstr "" "Personalizza il comportamento e l'aspetto di Guake!" #: ../guake/data/prefs.glade.h:4 msgid "" "Path to a bash script that would be automatically executed when Guake " "starts, unless you specify --no-startup-script.\n" "\n" "This would typically use the configuration by command line feature of " "Guake:\n" "\n" "#!/bin/bash\n" "\n" "sleep 5 # it is advised to wait a bit before Guake has been successfully " "started\n" "\n" "guake -r \"main\" -e \"cd ~/projects/myproject/main\"\n" "guake -r \"prod\" -e \"cd ~/projects/myproject/prod\"\n" msgstr "" "Percorso di uno script bash avviato automaticamente all'avvio di Guake, a " "meno che non venga utilizzato --no-startup-script.\n" "\n" "Questo utilizzerebbe la configurazione da linea di comando di Guake:\n" "\n" "#!/bin/bash\n" "\n" "sleep 5 # è consigliato attendere un po' per assicurarsi che Guake sia " "stato avviato correttamente\n" "\n" "guake -r \"main\" -e \"cd ~/projects/myproject/main\"\n" "guake -r \"prod\" -e \"cd ~/projects/myproject/prod\"\n" #: ../guake/data/prefs.glade.h:15 msgid "Enable popup notifications on startup" msgstr "Abilitare la notifica con popup all'avvio" #: ../guake/data/prefs.glade.h:16 msgid "Show tray icon" msgstr "Mostrare icona nel vassoio" #: ../guake/data/prefs.glade.h:17 msgid "Always prompt on quit" msgstr "Conferma sempre all'uscita" #: ../guake/data/prefs.glade.h:18 msgid "_Flash terminal on bell" msgstr "_Fai lampeggiare il terminale al carattere bell" #: ../guake/data/prefs.glade.h:19 msgid "_Play system alert sound on bell" msgstr "_Esegui il suono di allerta di sistema al carattere bell" #: ../guake/data/prefs.glade.h:20 msgid "Path to script executed on Guake start:" msgstr "Percorso dello script da eseguire all'avvio di Guake:" #: ../guake/data/prefs.glade.h:21 msgid "Prompt on close tab:" msgstr "Chiedi conferma alla chiusura di una scheda:" #: ../guake/data/prefs.glade.h:22 msgid "" "Never\n" "With process running\n" "Always" msgstr "" "Mai\n" "Con un processo in esecuzione\n" "Sempre" #: ../guake/data/prefs.glade.h:25 msgid "General" msgstr "Generale" #: ../guake/data/prefs.glade.h:26 msgid "Bottom align window instead of top align" msgstr "Allinea finestra in fondo anzichè in cima" #: ../guake/data/prefs.glade.h:27 msgid "Appear on mouse display" msgstr "Comparsa sul display col mouse" #: ../guake/data/prefs.glade.h:28 msgid "Appear on display:" msgstr "Comparsa sul display:" #: ../guake/data/prefs.glade.h:29 msgid "Place tabs on top" msgstr "Posiziona schede in cima" #: ../guake/data/prefs.glade.h:30 msgid "Placement" msgstr "Posizione" #: ../guake/data/prefs.glade.h:31 msgid "Stay on top" msgstr "Sempre in primo piano" #: ../guake/data/prefs.glade.h:32 msgid "Use VTE titles for tab names" msgstr "Usa i titoli VTE per i nomi delle schede" #: ../guake/data/prefs.glade.h:33 msgid "Max tab name length:" msgstr "Lunghezza massima nome scheda:" #: ../guake/data/prefs.glade.h:34 msgid "0 means no size limit" msgstr "0 disabilita il limite di dimensioni" #: ../guake/data/prefs.glade.h:35 msgid "Abbreviate directories in tab names" msgstr "Abbrevia le cartelle nei nomi delle schede" #: ../guake/data/prefs.glade.h:36 msgid "Hide on lose focus" msgstr "Nascondere alla perdita del focus" #: ../guake/data/prefs.glade.h:37 msgid "Show tab bar" msgstr "Mostrare barra delle schede" #: ../guake/data/prefs.glade.h:38 msgid "Start fullscreen" msgstr "Avvia in schermo intero" #: ../guake/data/prefs.glade.h:39 msgid "Main Window" msgstr "Finestra principale" #: ../guake/data/prefs.glade.h:40 msgid "Left" msgstr "Sinistra" #: ../guake/data/prefs.glade.h:41 msgid "Center" msgstr "Centro" #: ../guake/data/prefs.glade.h:42 msgid "Right" msgstr "Destra" #: ../guake/data/prefs.glade.h:43 msgid "Main Window Horizontal Alignment" msgstr "Allineamento Orizzontale Finestra Principale" #: ../guake/data/prefs.glade.h:44 msgid "Main Window Height" msgstr "Altezza Finestra Principale" #: ../guake/data/prefs.glade.h:45 msgid "Main Window Width" msgstr "Larghezza Finestra Principale" #: ../guake/data/prefs.glade.h:46 msgid "Custom command file path: " msgstr "Percorso file di comando personalizzato:" #: ../guake/data/prefs.glade.h:47 msgid "Please select a json file" msgstr "Per favore seleziona un file json" #: ../guake/data/prefs.glade.h:48 ../src/guake/prefs.py:75 msgid "General" msgstr "Generale" #: ../guake/data/prefs.glade.h:49 msgid "Default interpreter:" msgstr "Interprete predefinito:" #: ../guake/data/prefs.glade.h:50 msgid "_Run command as a login shell" msgstr "_Eseguire il comando come shell di login" #: ../guake/data/prefs.glade.h:51 msgid "_Open new tab in current directory" msgstr "_Apri nuova scheda nella directory corrente" #: ../guake/data/prefs.glade.h:52 msgid "Shell" msgstr "Shell" #: ../guake/data/prefs.glade.h:53 msgid "Shell" msgstr "Terminale" #: ../guake/data/prefs.glade.h:54 msgid "Show scrollbar" msgstr "Mostrare barra di scorrimento" #: ../guake/data/prefs.glade.h:55 msgid "Scrollback lines:" msgstr "Linee scorrimento:" #: ../guake/data/prefs.glade.h:56 msgid "On output" msgstr "In presenza di output" #: ../guake/data/prefs.glade.h:57 msgid "On key stroke" msgstr "Alla pressione dei tasti" #: ../guake/data/prefs.glade.h:58 msgid "Scroll" msgstr "Scorrimento" #: ../guake/data/prefs.glade.h:59 msgid "Scrolling" msgstr "Scorrimento" #: ../guake/data/prefs.glade.h:60 msgid "Use the system fixed width font" msgstr "Usa il carattere di sistema a larghezza fissa" #: ../guake/data/prefs.glade.h:61 msgid "Font:" msgstr "Carattere:" #: ../guake/data/prefs.glade.h:62 msgid "Choose some font" msgstr "Scegliere un carattere" #: ../guake/data/prefs.glade.h:63 msgid "Text color:" msgstr "Colore del testo:" #: ../guake/data/prefs.glade.h:64 msgid "Background color:" msgstr "Colore di sfondo:" #: ../guake/data/prefs.glade.h:65 msgid "Cursor shape:" msgstr "Forma del cursore:" #: ../guake/data/prefs.glade.h:66 msgid "" "Block\n" "I-Beam\n" "Underline" msgstr "" "Blocco\n" "I-Beam\n" "Carattere di sottolineatura" #: ../guake/data/prefs.glade.h:69 msgid "" "Follow GTK+ setting\n" "Blink on\n" "Blink off" msgstr "" "Utilizza l'impostazione GTK+\n" "Lampeggia sì\n" "Lampeggia no" #: ../guake/data/prefs.glade.h:72 msgid "Cursor blink mode:" msgstr "Modalità lampeggiamento cursore:" #: ../guake/data/prefs.glade.h:73 msgid "Allow bold font" msgstr "Permetti testo in grassetto" #: ../guake/data/prefs.glade.h:74 msgid "Palette" msgstr "Tavolozza" #: ../guake/data/prefs.glade.h:75 msgid "Built-in schemes:" msgstr "Schemi predefiniti:" #: ../guake/data/prefs.glade.h:76 msgid "Color palette:" msgstr "Tavolozza colori:" #: ../guake/data/prefs.glade.h:77 msgid "Font color" msgstr "Colore del testo" #: ../guake/data/prefs.glade.h:78 msgid "Background color" msgstr "Colore di sfondo" #: ../guake/data/prefs.glade.h:79 msgid "Use font and background color from the palette" msgstr "Usa font e colore di sfondo dalla palette" #: ../guake/data/prefs.glade.h:80 msgid "Demo:" msgstr "Dimostrazione:" #: ../guake/data/prefs.glade.h:81 msgid "Effects" msgstr "Effetti" #: ../guake/data/prefs.glade.h:82 msgid "Transparency:" msgstr "Trasparenza:" #: ../guake/data/prefs.glade.h:83 msgid "Background image:" msgstr "Immagine di sfondo:" #: ../guake/data/prefs.glade.h:84 ../src/guake/prefs.py:130 msgid "Appearance" msgstr "Aspetto" #: ../guake/data/prefs.glade.h:85 msgid "" "Quick open is a feature allowing you to open a file directly into " "your favorite text editor by clicking on its filename when it appears in " "your terminal. See the list of currently supported text patterns used to " "extract filename below." msgstr "" "Apertura rapida è una funzione che ti permette di aprire un file " "direttamente nel tuo editor di testo preferito cliccando sul nome di un file " "nel terminale. Controlla di seguito la lista dei pattern di testo " "attualmente supportati utilizzati per estrarre il nome del file." #: ../guake/data/prefs.glade.h:86 msgid "Enable Quick Open when Ctrl+clicking on a filename in the terminal" msgstr "" "Abilita Apertura rapida quando si Ctrl+clicca su un nome di un file nel " "terminale" #: ../guake/data/prefs.glade.h:87 msgid "Editor command line:" msgstr "Editor linea di comando:" #: ../guake/data/prefs.glade.h:89 #, no-c-format msgid "" "Use the following elements in the open editor command line:\n" " - %(file_path)s: path to the file that has been clicked\n" " - %(line_number)s: if your editor supports it, you can directly open " "the file to a given line number when found on the screen.\n" "\n" "For example, for sublime, use subl %(file_path)s:%(line_number)s\n" "" msgstr "" "Usa i seguenti elementi per aprire l'editor tramite linea di " "comando:\n" " - %(file_path)s: percorso del file che è stato cliccato\n" " - %(line_number)s: se il tuo editor lo supporta, puoi aprire " "direttamente il file ad una determinata riga quando trovata sullo schermo.\n" "\n" "Per esempio, per sublime, usa subl %(file_path)s:%(line_number)s\n" "" #: ../guake/data/prefs.glade.h:95 msgid "Quick open in current terminal" msgstr "Apertura rapida nel terminale corrente" #: ../guake/data/prefs.glade.h:96 msgid "" "Here is the list of supported patterns: (to add your own, please contact the " "Guake's authors)" msgstr "" "Ecco la lista dei pattern supportati: (per aggiungere il tuo, per favore " "contatta gli autori di Guake)" #: ../guake/data/prefs.glade.h:97 msgid "Quick Open" msgstr "Apertura rapida" #: ../guake/data/prefs.glade.h:98 msgid "Quick Open" msgstr "Apertura rapida" #: ../guake/data/prefs.glade.h:99 msgid "" "To change a shortcut simply click on its name.\n" "To disable a shortcut, press the \"Backspace\" key." msgstr "" "Per cambiare una scorciatoia, clicca sul suo nome.\n" "Per disabilitare una scorciatoia, premi il tasto \"Backspace\"." #: ../guake/data/prefs.glade.h:101 msgid "Keyboard shortcuts" msgstr "Scorciatoie da tastiera" #: ../guake/data/prefs.glade.h:102 msgid "" "Note: These options may cause some applications to behave " "incorrectly. They are only here to allow you to work around certain " "applications and operating systems that expect different terminal behavior." msgstr "" "Nota: Queste opzioni potrebbero provocare un funzionamento " "non corretto di alcune applicazioni. Sono state rese disponibili per quelle " "applicazioni e sistemi operativi che si aspettano un diverso funzionamento " "del terminale." #: ../guake/data/prefs.glade.h:103 msgid "" "ASCII DEL\n" "Escape sequence\n" "Control-H" msgstr "" "ASCII DEL\n" "Escape sequence\n" "Control-H" #: ../guake/data/prefs.glade.h:106 msgid "_Backspace key generates:" msgstr "Il tasto _Backspace genera:" #: ../guake/data/prefs.glade.h:107 msgid "_Delete key generates:" msgstr "Il tasto _Canc genera:" #: ../guake/data/prefs.glade.h:108 msgid "_Reset Compatibility Options to Defaults" msgstr "_Ripristina valori di default per le opzioni di compatibilità" #: ../guake/data/prefs.glade.h:109 msgid "Keyboard compatibility" msgstr "Compatibilità tastiera" #: ../guake/data/prefs.glade.h:110 msgid "Compatibility" msgstr "Compatibilità" #: ../src/guake/about.py:47 ../src/guake/gconfhandler.py:439 #: ../src/guake/guake_app.py:181 ../src/guake/guake_app.py:378 msgid "Guake Terminal" msgstr "Guake Terminal" #: ../src/guake/gconfhandler.py:369 ../src/guake/guake_app.py:1386 msgid "Terminal" msgstr "Terminale" #: ../src/guake/gconfhandler.py:440 #, python-format msgid "" "A problem happened when binding %s key.\n" "Please use Guake Preferences dialog to choose another key" msgstr "" "Problema durante l'impostazione del tasto %s.\n" "Per favore usa la finestra delle preferenze di Guake per scegliere un nuovo " "tasto (è stata abilitata l'icona nel vassoio)" #: ../src/guake/guake_app.py:132 msgid "Do you want to close the tab?" msgstr "Vuoi chiudere la scheda?" #: ../src/guake/guake_app.py:135 msgid "Do you really want to quit Guake?" msgstr "Vuoi davvero uscire da Guake?" #: ../src/guake/guake_app.py:137 msgid " and one tab open" msgstr "ed una scheda aperta" #: ../src/guake/guake_app.py:139 #, python-brace-format msgid " and {0} tabs open" msgstr "e {0} schede aperte" #: ../src/guake/guake_app.py:142 msgid "There are no processes running" msgstr "Non ci sono processi in esecuzione" #: ../src/guake/guake_app.py:144 msgid "There is a process still running" msgstr "Un processo è ancora in esecuzione" #: ../src/guake/guake_app.py:146 #, python-brace-format msgid "There are {0} processes still running" msgstr "Ci sono {0} processi in esecuzione" #: ../src/guake/guake_app.py:186 msgid "guake-indicator" msgstr "guake-indicator" #: ../src/guake/guake_app.py:186 msgid "guake-tray" msgstr "guake-tray" #: ../src/guake/guake_app.py:190 msgid "Show" msgstr "Mostra" #: ../src/guake/guake_app.py:379 #, python-format msgid "" "Guake is now running,\n" "press {!s} to use it." msgstr "" "Guake è in esecuzione,\n" "premere {!s} per usarlo." #: ../src/guake/guake_app.py:670 #, python-format msgid "Search on Web: '%s'" msgstr "Cerca sul Web: '%s'" #: ../src/guake/guake_app.py:675 msgid "Search on Web (no selection)" msgstr "Cerca sul Web (nessuna selezione)" #: ../src/guake/guake_app.py:683 msgid "Open Link: '{}...'" msgstr "Apri Link: '{}...'" #: ../src/guake/guake_app.py:685 msgid "Open Link: {}" msgstr "Apri Link: {}" #: ../src/guake/guake_app.py:688 msgid "Open Link..." msgstr "Apri Link..." #: ../src/guake/guake_app.py:1425 msgid "Rename tab" msgstr "Rinominare scheda" #: ../src/guake/guake_app.py:1736 msgid "Save to..." msgstr "Salva come..." #: ../src/guake/guake_app.py:1743 ../src/guake/prefs.py:973 msgid "All files" msgstr "Tutti i file" #: ../src/guake/guake_app.py:1748 msgid "Text and Logs" msgstr "Testi e Registri" #: ../src/guake/guake_app.py:1766 msgid "Find" msgstr "Cerca" #: ../src/guake/guake_app.py:1768 msgid "Forward" msgstr "Avanti" #: ../src/guake/guake_app.py:1769 msgid "Backward" msgstr "Indietro" #: ../src/guake/main.py:68 msgid "Put Guake in fullscreen mode" msgstr "Imposta Guake a schermo intero" #: ../src/guake/main.py:72 msgid "Toggles the visibility of the terminal window" msgstr "Alterna la visibilità della finestra del terminale" #: ../src/guake/main.py:76 msgid "Shows Guake main window" msgstr "Mostra la finestra principale di Guake" #: ../src/guake/main.py:80 msgid "Hides Guake main window" msgstr "Nasconde la finestra principale di Guake" #: ../src/guake/main.py:84 msgid "Shows Guake preference window" msgstr "Mostra la finestra delle preferenze di Guake" #: ../src/guake/main.py:88 msgid "Shows Guake's about info" msgstr "Mostra le informazioni su Guake" #: ../src/guake/main.py:92 msgid "Add a new tab (with current directory set to NEW_TAB)" msgstr "Apri una nuova scheda (con cartella corrente impostata a NEW_TAB)" #: ../src/guake/main.py:96 msgid "Select a tab (SELECT_TAB is the index of the tab)" msgstr "Seleziona una scheda (SELECT_TAB è l'indice della scheda)" #: ../src/guake/main.py:100 msgid "Return the selected tab index." msgstr "Restituisce l'indice della scheda selezionata." #: ../src/guake/main.py:104 msgid "Execute an arbitrary command in the selected tab." msgstr "Esegue un comando arbitrario nella scheda selezionata." #: ../src/guake/main.py:108 msgid "Specify the tab to rename. Default is 0." msgstr "Specifica la tabella da rinominare. La predefinita è la 0." #: ../src/guake/main.py:112 msgid "Set the hexadecimal (#rrggbb) background color of the selected tab." msgstr "" "Imposta il colore di sfondo in esadecimale (#rrggbb) per la scheda " "selezionata." #: ../src/guake/main.py:117 msgid "Set the hexadecimal (#rrggbb) foreground color of the selected tab." msgstr "" "Imposta il colore d'evidenza in esadecimale (#rrggbb) della scheda " "selezionata." #: ../src/guake/main.py:123 msgid "" "Rename the specified tab. Reset to default if TITLE is a single dash \"-\"." msgstr "" "Rinomina la scheda selezionata. Resetta al nome predefinito se TITLE è un " "trattino singolo \"-\"." #: ../src/guake/main.py:129 msgid "" "Rename the current tab. Reset to default if TITLE is a single dash \"-\"." msgstr "" "Rinomina la scheda corrent. Resetta al nome predefinito se TITLE è un " "trattino singolo \"-\"." #: ../src/guake/main.py:134 msgid "Says to Guake go away =(" msgstr "Chiude Guake =(" #: ../src/guake/main.py:138 msgid "Do not execute the start up script" msgstr "Non eseguire lo script d'avvio" #: ../src/guake/main.py:235 msgid "Guake can not init!" msgstr "Impossibile far partire Guake!" #: ../src/guake/main.py:236 msgid "" "Gconf Error.\n" "Have you installed guake.schemas properly?" msgstr "" "Errore Gconf.\n" "Hai installato guake.schemas correttamente?" #. string to show in prefereces dialog for user shell option #: ../src/guake/prefs.py:67 msgid "" msgstr "" #: ../src/guake/prefs.py:77 msgid "Toggle Guake visibility" msgstr "Alterna visibilità di Guake" #: ../src/guake/prefs.py:81 msgid "Toggle Hide on Lose Focus" msgstr "Abilita/disabilita la scomparsa alla perdita del focus" #: ../src/guake/prefs.py:88 msgid "Tab management" msgstr "Gestione schede" #: ../src/guake/prefs.py:90 msgid "New tab" msgstr "Nuova scheda" #: ../src/guake/prefs.py:92 msgid "Close tab" msgstr "Chiudi scheda" #: ../src/guake/prefs.py:94 msgid "Rename current tab" msgstr "Rinomina scheda corrente" #: ../src/guake/prefs.py:97 msgid "Navigation" msgstr "Navigazione" #: ../src/guake/prefs.py:99 msgid "Go to previous tab" msgstr "Vai alla scheda precedente" #: ../src/guake/prefs.py:101 msgid "Go to next tab" msgstr "Vai alla prossima scheda" #: ../src/guake/prefs.py:103 msgid "Move current tab left" msgstr "Sposta la scheda corrente a sinistra" #: ../src/guake/prefs.py:105 msgid "Move current tab right" msgstr "Sposta la scheda corrente a destra" #: ../src/guake/prefs.py:107 msgid "Go to first tab" msgstr "Vai alla prima scheda" #: ../src/guake/prefs.py:109 msgid "Go to second tab" msgstr "Vai alla seconda scheda" #: ../src/guake/prefs.py:111 msgid "Go to third tab" msgstr "Vai alla terza scheda" #: ../src/guake/prefs.py:113 msgid "Go to fourth tab" msgstr "Vai alla quarta scheda" #: ../src/guake/prefs.py:115 msgid "Go to fifth tab" msgstr "Vai alla quinta scheda" #: ../src/guake/prefs.py:117 msgid "Go to sixth tab" msgstr "Vai alla sesta scheda" #: ../src/guake/prefs.py:119 msgid "Go to seventh tab" msgstr "Vai alla settima scheda" #: ../src/guake/prefs.py:121 msgid "Go to eighth tab" msgstr "Vai all'ottava scheda" #: ../src/guake/prefs.py:123 msgid "Go to ninth tab" msgstr "Vai alla nona scheda" #: ../src/guake/prefs.py:125 msgid "Go to tenth tab" msgstr "Vai alla decima scheda" #: ../src/guake/prefs.py:127 msgid "Go to last tab" msgstr "Vai all'ultima scheda" #: ../src/guake/prefs.py:132 msgid "Zoom out" msgstr "Rimpicciolisci" #: ../src/guake/prefs.py:134 msgid "Zoom in" msgstr "Ingrandisci" #: ../src/guake/prefs.py:136 msgid "Zoom in (alternative)" msgstr "Ingrandisci (alternativo)" #: ../src/guake/prefs.py:138 msgid "Increase height" msgstr "Aumenta l'altezza" #: ../src/guake/prefs.py:140 msgid "Decrease height" msgstr "Diminuisci l'altezza" #: ../src/guake/prefs.py:142 msgid "Increase transparency" msgstr "Aumenta la trasparenza" #: ../src/guake/prefs.py:144 msgid "Decrease transparency" msgstr "Diminuisci la trasparenza" #: ../src/guake/prefs.py:146 msgid "Toggle transparency" msgstr "Abilita/disabilita la trasparenza" #: ../src/guake/prefs.py:149 msgid "Clipboard" msgstr "Appunti" #: ../src/guake/prefs.py:151 msgid "Copy text to clipboard" msgstr "Copia testo negli appunti" #: ../src/guake/prefs.py:153 msgid "Paste text from clipboard" msgstr "Incolla testo dagli appunti" #: ../src/guake/prefs.py:156 msgid "Extra features" msgstr "Funzionalità aggiuntive" #: ../src/guake/prefs.py:159 msgid "Search select text on web" msgstr "Cerca il testo selezionato nel Web" #: ../src/guake/prefs.py:481 msgid "Action" msgstr "Azione" #: ../src/guake/prefs.py:491 msgid "Shortcut" msgstr "Scorciatoia" #: ../src/guake/prefs.py:651 ../src/guake/prefs.py:697 msgid "Custom" msgstr "Personalizzato" #: ../src/guake/prefs.py:969 msgid "JSON files" msgstr "File JSON" #: ../src/guake/prefs.py:1063 #, python-format msgid "The shortcut \"%s\" is already in use." msgstr "La scorciatoia \"%s\" è già in uso." #: ../src/guake/prefs.py:1064 msgid "Error setting keybinding." msgstr "Errore impostazione scorciatoia." #: ../src/guake/prefs.py:1076 #, python-format msgid "" "The shortcut \"%s\" cannot be used because it will become impossible to type " "using this key.\n" "\n" "Please try with a key such as Control, Alt or Shift at the same time.\n" msgstr "" "La scorciatoia \"%s\" non può essere usata perchè altrimenti sarebbe " "impossibile digitare usando quel tasto.\n" "\n" "Per favore prova con una combinazione che includa anche Control, Alt o " "Shift.\n" #: guake/main.py:153 msgid "Return the selected tab label." msgstr "Ritorna l'etichetta della scheda selezionata." #: guake/data/prefs.glade:264 msgid "Never" msgstr "Mai" #: guake/data/prefs.glade:265 msgid "With process running" msgstr "Con un processo in esecuzione" #: guake/data/prefs.glade:266 msgid "Always" msgstr "Sempre" #: guake/data/prefs.glade:499 msgid "Refocus if open" msgstr "Ottieni il focus all'apertura" #: guake/data/prefs.glade:865 msgid "Custom command file path:" msgstr "Percorso del comando di shell:" #: guake/data/prefs.glade:1315 msgid "Show resizer" msgstr "Mostra il cursore del ridimensionamento" #: guake/data/prefs.glade:1423 msgid "Block" msgstr "Blocco" #: guake/data/prefs.glade:1424 msgid "I-Beam" msgstr "I-Beam" #: guake/data/prefs.glade:1425 msgid "Underline" msgstr "Carattere di sottolineatura" #: guake/data/prefs.glade:1443 msgid "Follow GTK+ setting" msgstr "Utilizza l'impostazione GTK+" #: guake/data/prefs.glade:1444 msgid "Blink on" msgstr "Lampeggia sì" #: guake/data/prefs.glade:1445 msgid "Blink off" msgstr "Lampeggia no" #: guake/data/prefs.glade:2236 msgid "" "Use the following elements in the open editor command line:\n" "- %(file_path)s: path to the file that has been clicked\n" "- %(line_number)s: if your editor supports it, you can directly open " "the file to a given line number when found on the screen.\n" "\n" "For example, for sublime, use subl %(file_path)s:%(line_number)s\n" "" msgstr "" "Usa i seguenti elementi per aprire l'editor tramite linea di " "comando:\n" " - %(file_path)s: percorso del file che è stato cliccato\n" " - %(line_number)s: se il tuo editor lo supporta, puoi aprire " "direttamente il file ad una determinata riga quando trovata sullo schermo.\n" "\n" "Per esempio, per sublime, usa subl %(file_path)s:%(line_number)s\n" "" #: guake/data/prefs.glade:2442 guake/data/prefs.glade:2462 msgid "ASCII DEL" msgstr "Canc" #: guake/data/prefs.glade:2443 guake/data/prefs.glade:2463 msgid "Escape sequence" msgstr "Esc" #: guake/data/prefs.glade:2444 guake/data/prefs.glade:2464 msgid "Control-H" msgstr "Ctrl-H" #: guake/data/prefs.glade:2600 msgid "" "In this dialog you can attach your own command or script to various " "guake events" msgstr "" "In questi campi di testo puoi impostare dei comandi o degli script " "che verranno lanciati in seguito agli eventi indicati" #: guake/data/prefs.glade:2635 msgid "On show:" msgstr "Alla comparsa:" #: guake/data/prefs.glade:2665 msgid "On start:" msgstr "All'avvio:" #: guake/data/prefs.glade:2714 msgid "Hooks" msgstr "Hooks" #: guake/data/guake-prefs.desktop:8 msgid "Configure your Guake sessions" msgstr "Configura le sessioni di Guake" #: guake/data/guake-prefs.desktop:15 guake/data/guake.desktop:18 msgid "guake" msgstr "guake" #: guake/data/guake-prefs.desktop:20 msgid "Terminal;Utility;" msgstr "Terminale;Utility;" #: guake/data/guake.desktop:10 msgid "Use the command line in a Quake-like terminal" msgstr "Gestisce la linea di comando in un terminale simil-Quake" #: guake/data/prefs.glade:770 msgid "Main Window Horizontal Alignment" msgstr "Allineamento orizzontale della finestra principale" #: guake/prefs.py:89 msgid "Show and focus Guake window" msgstr "Mostra ed ottieni il focus della finestra di Guake" #: guake/data/prefs.glade:566 msgid "0" msgstr "" #: guake/data/prefs.glade:610 msgid "Main Window Options" msgstr "Opzioni della finestra principale" #: guake/data/prefs.glade:770 msgid "Horizontal Alignment:" msgstr "Allineamento orizzontale:" #: guake/data/prefs.glade:855 msgid "Height:" msgstr "Altezza:" #: guake/data/prefs.glade:868 msgid "Width:" msgstr "Larghezza:" #: guake/data/prefs.glade:913 msgid "Geometry" msgstr "Geometria" #: guake/data/prefs.glade:944 msgid "Main Window" msgstr "Finestra principale" #: guake/data/prefs.glade:1197 msgid "Infinite scrolling" msgstr "Scorrimento infinito" #: guake/data/prefs.glade:1219 msgid "Scrollbar" msgstr "Barra di scorrimento" #: guake/data/prefs.glade:1304 msgid "Scroll to Bottom" msgstr "Scorri alla fine" #: guake/data/prefs.glade:2117 msgid "" "Quick open is a feature allowing you to open a file directly into your " "favorite text editor by clicking on its filename when it appears in your " "terminal. See the list of currently supported text patterns used to extract " "filename below." msgstr "" "Apertura rapida ti permette di aprire un file nel tuo editor di testo " "preferito semplicemente cliccando sul nome del file che appare nel " "terminale. Di seguito la lista dei patterns testuali che possono essere " "usati per estrarre i nomi dei file." #: guake/main.py:64 msgid "Show Guake version number and exit" msgstr "Mostra la versione di Guake ed esci" #: guake/data/prefs.glade:93 msgid "Guake properties" msgstr "Proprietà di Guake" #: guake/data/prefs.glade:107 msgid "Customize behavior and appearance of Guake!" msgstr "Personalizza il comportamento e l'aspetto di Guake!" #: guake/data/prefs.glade:929 msgid "Displacement in pixels" msgstr "Slittamento in pixel" #: guake/main.py:73 msgid "Enable verbose logging" msgstr "Abilita il logging esteso" #: guake/guake_app.py:680 msgid "Quick Open: '{!s}...'" msgstr "Apertura rapida: '{!s}...'" #: guake/guake_app.py:683 msgid "Quick Open: {!s}" msgstr "Apertura rapida: {!s}" #: guake/guake_app.py:691 msgid "Open Link: '{!s}...'" msgstr "Apri link nel browser: '{!s}...'" #: guake/guake_app.py:694 msgid "Open Link: {!s}" msgstr "Apri link nel browser: {!s}" #: guake/data/prefs.glade:2175 msgid "" "WARNING: your system seems to have PCRE2 disabled for VTE, " "preventing application such as Guake to register \"matchers\" using regular " "expressions. Please contact your distribution to request a new version of " "VTE with PCRE2 enabled ! To use Quick Open, you must select the text " "before using Ctrl+click." msgstr "" "WARNING: sembra che sul tuo sistema operativo PCRE2 sia " "disabilitato per VTE, impedendo ad applicazioni come Guake di registrare " "\"matchers\" utilizzando le espressioni regolari. Contatta gli autori del " "sistema operativo in uso per richiedere una versione di VTE con PCRE2 " "abilitato! Per usare l'Apertura rapida, devi selezionare un testo " "prima di usare Ctrl+click." #: guake/guake_app.py:680 msgid "Quick Open: {!s}..." msgstr "Apertura rapida: {!s}..." #: guake/guake_app.py:691 msgid "Open Link: {!s}..." msgstr "Apri link nel browser: {!s}..." #: guake/guake_app.py:688 msgid "Quick Open..." msgstr "Apertura rapida..." #: guake/data/prefs.glade:223 msgid "Start Guake at login" msgstr "Lancia Guake all'avvio" #: guake/data/prefs.glade:363 msgid "Gtk Theme:" msgstr "Tema GTK:" #: guake/data/prefs.glade:387 msgid "Prefer dark theme" msgstr "Dai priorità al tema scuro" #: guake/guake_app.py:435 msgid "Custom Commands" msgstr "Comandi personali" #: guake/main.py:184 msgid "" "Specify the tab to rename. Default is 0. Can be used to select tab by UUID." msgstr "" "Specifica la scheda da rinominare. Il valore di default è 0. Può essere " "usato per selezionare la scheda traimte UUID." #: guake/main.py:212 msgid "" "Rename the specified tab by --tab-index. Reset to default if TITLE is a " "single dash \"-\"." msgstr "" "Rinomina la scheda specificata tramite --tab-index. Usa il valore di default " "se TITLE è un trattino singolo \"-\"." #: data/search.glade:138 msgid "Search forward" msgstr "Trova l'occorrenza successiva del testo da cercare" #: data/search.glade:153 msgid "Match case" msgstr "Maiuscole/minuscole" #: data/search.glade:186 msgid "Current search direction: Backward" msgstr "Direzione della ricerca: indietro" #: data/prefs.glade:680 msgid "Set window title to current tab name" msgstr "" #: guake/menus.py:48 msgid "Copy Url" msgstr "" #: guake/menus.py:62 msgid "Split ―" msgstr "" #: guake/menus.py:65 msgid "Split " msgstr "" #: guake/menus.py:68 guake/prefs.py:150 msgid "Close terminal" msgstr "" #: guake/prefs.py:137 msgid "Split management" msgstr "" #: guake/prefs.py:142 msgid "Split tab vertical" msgstr "" #: guake/prefs.py:146 msgid "Split tab horizontal" msgstr "" #: guake/prefs.py:154 msgid "Focus terminal above" msgstr "" #: guake/prefs.py:158 msgid "Focus terminal below" msgstr "" #: guake/prefs.py:162 msgid "Focus terminal on the left" msgstr "" #: guake/prefs.py:166 msgid "Focus terminal on the right" msgstr "" #: guake/prefs.py:170 msgid "Move the terminal split handle up" msgstr "" #: guake/prefs.py:174 msgid "Move the terminal split handle down" msgstr "" #: guake/prefs.py:178 msgid "Move the terminal split handle right" msgstr "" #: guake/prefs.py:182 msgid "Move the terminal split handle left" msgstr "" #: guake/menus.py:65 msgid "Split |" msgstr "" #: guake/menus.py:72 msgid "Save content..." msgstr "" #: data/prefs.glade:1182 msgid "" "This might not work on all shells, make sure that your shell supports the --" "login option" msgstr "" #: guake/prefs.py:128 msgid "New tab in home directory" msgstr "" #: guake/dialogs.py:56 #, python-brace-format msgid " on {0} workspaces" msgstr "" #: guake/main.py:211 msgid "Change Guake palette scheme" msgstr "" #: data/prefs.glade:331 msgid "Use workspace-specific tab sets (requires restart)" msgstr "" #: guake/main.py:175 msgid "Split the selected tab vertically." msgstr "" #: guake/main.py:183 msgid "Split the selected tab horizontally." msgstr "" #: data/prefs.glade:348 msgid "Show close buttons for tabs" msgstr "" #: data/prefs.glade:1682 msgid "Bold text is also bright" msgstr "" #: data/prefs.glade:1682 msgid "Bold text is also bright (VTE >=0.52)" msgstr "" #: guake/menus.py:42 msgid "Save Tabs" msgstr "" #: guake/menus.py:45 msgid "Restore Tabs" msgstr "" #: guake/prefs.py:113 msgid "Search terminal" msgstr "" #: guake/main.py:278 msgid "Save Guake preferences to this filename" msgstr "" #: guake/main.py:286 msgid "Restore Guake preferences from this file" msgstr "" #: guake/guake_app.py:1192 #, python-brace-format msgid "Your session.json file is broken, backup to {session_filename}.bak" msgstr "" #: guake/guake_app.py:1228 #, python-brace-format msgid "" "Your session.json schema is broken, backup to {0}.bak,and error message has " "been saved to {0}.log.err" msgstr "" #: guake/guake_app.py:1239 msgid "Your tabs has been restored!" msgstr "" #: data/prefs.glade:190 msgid "Restore previous session (tabs)" msgstr "" #: data/prefs.glade:204 msgid "Enable notification when restore tabs" msgstr "" #: data/prefs.glade:218 msgid "Automatically save session when the tabs has been modified" msgstr "" #: data/prefs.glade:238 msgid "Startup & Tabs (Experiment)" msgstr "" #: guake/guake_app.py:1192 #, python-brace-format msgid "" "Your {session_filename} file is broken, backup to {session_filename}.bak" msgstr "" #: guake/guake_app.py:1227 #, python-brace-format msgid "" "Your {session_filename} schema is broken, backup to {0}.bak,and error " "message has been saved to {session_filename}.log.err" msgstr "" #: guake/guake_app.py:1227 #, python-brace-format msgid "" "Your {session_filename} schema is broken, backup to {session_filename}.bak," "and error message has been saved to {session_filename}.log.err." msgstr "" #: guake/guake_app.py:1227 #, python-brace-format msgid "" "Your {session_filename} schema is broken, backup to {session_filename}.bak, " "and error message has been saved to {session_filename}.log.err." msgstr "" #: guake/notebook.py:317 msgid "" "You are going to restore *all* the tabs!\n" "which means all your terminals & pages will be replaced.\n" "\n" "Do you want to continue?" msgstr "" #: guake/main.py:296 msgid "Show support infomations" msgstr "" #: guake/guake_app.py:1240 #, python-brace-format msgid "" "Tabs session restore abort.\n" "Your session file ({session_filename}) missing schema_version as key" msgstr "" #: guake/guake_app.py:1252 #, python-brace-format msgid "" "Tabs session restore abort.\n" "Your session file schema version is higher than current version " "({session_file_schema_version} > {current_schema_version})." msgstr "" #: guake/data/prefs.glade:409 msgid "Use workspace-specific tab sets (requires restart, only work on X11)" msgstr "" #~ msgid "key binding error" #~ msgstr "errore di assegnazione tasto" #~ msgid "Unable to bind global %s key" #~ msgstr "Impossibile impostare globalmente il tasto %s" #~ msgid "http://guake.org" #~ msgstr "http://guake.org" #~ msgid "" #~ "Tango\n" #~ "Linux console\n" #~ "XTerm\n" #~ "Rxvt\n" #~ "Custom\n" #~ msgstr "" #~ "Tango\n" #~ "Linux console\n" #~ "XTerm\n" #~ "Rxvt\n" #~ "Personalizzata\n" #~ msgid "Select a tab" #~ msgstr "Seleziona una scheda" #~ msgid "Rename the selected tab." #~ msgstr "Rinomina la scheda selezionata." #~ msgid "Background" #~ msgstr "Sfondo" #~ msgid "Choose some color" #~ msgstr "Scegliere un colore" #~ msgid "Image:" #~ msgstr "Immagine:" #~ msgid "Style:" #~ msgstr "Stile:" #~ msgid "Use system defaults" #~ msgstr "Usare valori di sistema" guake-3.6.3/po/ja.po000066400000000000000000000672051346623310400142030ustar00rootroot00000000000000# Japanese translation of the Guake software # Copyright (C) 2008-2018 Guake Translators # This file is distributed under the same license as the Guake package. # # Translators: # Nishio Futoshi , 2008, 2010. # IWAI, Masaharu , 2016. # KUSABA Takeshi , 2018 # msgid "" msgstr "" "Project-Id-Version: Guake 0.8.7\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2018-11-28 00:34+0900\n" "PO-Revision-Date: 2018-11-29 02:28+0900\n" "Last-Translator: KUSABA Takeshi\n" "Language-Team: Japanese \n" "Language: ja\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=1; plural=0;\n" "X-Generator: Poedit 1.8.11\n" #: guake/guake_app.py:155 guake/guake_app.py:274 guake/keybindings.py:99 #: guake/about.py:54 msgid "Guake Terminal" msgstr "Guake Terminal" #: guake/guake_app.py:161 msgid "guake-indicator" msgstr "guake-indicator" #: guake/guake_app.py:161 msgid "guake-tray" msgstr "guake-tray" #: guake/guake_app.py:166 msgid "Show" msgstr "表示する" #: guake/guake_app.py:275 msgid "" "Guake is now running,\n" "press {!s} to use it." msgstr "" "Guakeを起動しました。\n" "表示するには{!s}を押してください。" #: guake/guake_app.py:909 guake/notebook.py:205 msgid "Terminal" msgstr "端末" #: guake/guake_app.py:984 msgid "Find" msgstr "検索" #: guake/guake_app.py:986 msgid "Forward" msgstr "次へ" #: guake/guake_app.py:986 msgid "Backward" msgstr "前へ" #: guake/main.py:70 msgid "Show Guake version number and exit" msgstr "Guakeのバージョンを出力して終了します。" #: guake/main.py:79 msgid "Enable verbose logging" msgstr "冗長な(verbose)ログを出力します。" #: guake/main.py:88 msgid "Put Guake in fullscreen mode" msgstr "フルスクリーンモードにします。" #: guake/main.py:97 msgid "Toggles the visibility of the terminal window" msgstr "ウィンドウの表示/非表示を切り替えます。" #: guake/main.py:105 msgid "Shows Guake main window" msgstr "ウィンドウを表示します。" #: guake/main.py:113 msgid "Hides Guake main window" msgstr "ウィンドウを非表示にします。" #: guake/main.py:122 msgid "Shows Guake preference window" msgstr "設定画面を表示します。" #: guake/main.py:131 msgid "Shows Guake's about info" msgstr "Guakeの情報を表示します" #: guake/main.py:140 msgid "Add a new tab (with current directory set to NEW_TAB)" msgstr "カレントディレクトリがNEW_TABの新規タブを開きます。" #: guake/main.py:149 msgid "Select a tab (SELECT_TAB is the index of the tab)" msgstr "indexがSELECT_TABのタブを選択します。" #: guake/main.py:158 msgid "Return the selected tab index." msgstr "選択中のタブのindexを返します。" #: guake/main.py:167 msgid "Return the selected tab label." msgstr "選択中のタブ名を返します。" #: guake/main.py:176 msgid "Execute an arbitrary command in the selected tab." msgstr "選択中のタブでコマンドを実行します。" #: guake/main.py:185 msgid "" "Specify the tab to rename. Default is 0. Can be used to select tab by UUID." msgstr "" "名前を変更するタブを指定してください。(デフォルトは0) UUIDでもタブを指定でき" "ます。" #: guake/main.py:193 msgid "Set the hexadecimal (#rrggbb) background color of the selected tab." msgstr "選択中のタブの背景色を16進数(#rrggbb)で指定した色に変更します。" #: guake/main.py:202 msgid "Set the hexadecimal (#rrggbb) foreground color of the selected tab." msgstr "選択中のタブの文字色を16進数(#rrggbb)で指定した色に変更します。" #: guake/main.py:211 msgid "Change Guake palette scheme" msgstr "Guakeのパレットスキームを変更する" #: guake/main.py:221 msgid "" "Rename the specified tab by --tab-index. Reset to default if TITLE is a " "single dash \"-\"." msgstr "" "--tab-indexで指定したタブの名前を TITLE に変更します。TITLEに \"-\" を指定し" "た場合はデフォルトに戻します。" #: guake/main.py:233 msgid "" "Rename the current tab. Reset to default if TITLE is a single dash \"-\"." msgstr "" "選択中のタブの名前を TITLE に変更します。TITLEに \"-\" を指定した場合はデフォ" "ルトに戻します。" #: guake/main.py:243 msgid "Says to Guake go away =(" msgstr "Guakeを終了します(;_;)" #: guake/main.py:252 msgid "Do not execute the start up script" msgstr "スタートアップスクリプトの実行を抑止します。" #: guake/prefs.py:78 msgid "" msgstr "<ユーザのシェル>" #: guake/prefs.py:89 msgid "General" msgstr "全般" #: guake/prefs.py:94 msgid "Toggle Guake visibility" msgstr "端末表示の切り替え" #: guake/prefs.py:98 msgid "Show and focus Guake window" msgstr "ウィンドウを表示してフォーカスする" #: guake/prefs.py:102 guake/menus.py:58 msgid "Toggle Fullscreen" msgstr "全画面表示" #: guake/prefs.py:106 msgid "Toggle Hide on Lose Focus" msgstr "フォーカスを失ったら隠す" #: guake/prefs.py:110 guake/menus.py:146 msgid "Quit" msgstr "終了" #: guake/prefs.py:114 guake/menus.py:75 msgid "Reset terminal" msgstr "出力をリセット" #: guake/prefs.py:119 msgid "Tab management" msgstr "タブの管理" #: guake/prefs.py:124 msgid "New tab" msgstr "新規タブ" #: guake/prefs.py:128 msgid "New tab in home directory" msgstr "新規タブ(ホームディレクトリ)" #: guake/prefs.py:132 msgid "Close tab" msgstr "タブを閉じる" #: guake/prefs.py:136 msgid "Rename current tab" msgstr "現在のタブの名前を変更" #: guake/prefs.py:141 msgid "Split management" msgstr "ターミナル分割の管理" #: guake/prefs.py:146 msgid "Split tab vertical" msgstr "タブを垂直分割する" #: guake/prefs.py:150 msgid "Split tab horizontal" msgstr "タブを水平分割する" #: guake/prefs.py:154 guake/menus.py:68 msgid "Close terminal" msgstr "ターミナルを閉じる" #: guake/prefs.py:158 msgid "Focus terminal above" msgstr "フォーカスを上へ" #: guake/prefs.py:162 msgid "Focus terminal below" msgstr "フォーカスを下へ" #: guake/prefs.py:166 msgid "Focus terminal on the left" msgstr "フォーカスを左へ" #: guake/prefs.py:170 msgid "Focus terminal on the right" msgstr "フォーカスを右へ" #: guake/prefs.py:174 msgid "Move the terminal split handle up" msgstr "" #: guake/prefs.py:178 msgid "Move the terminal split handle down" msgstr "" #: guake/prefs.py:182 msgid "Move the terminal split handle right" msgstr "" #: guake/prefs.py:186 msgid "Move the terminal split handle left" msgstr "" #: guake/prefs.py:191 msgid "Navigation" msgstr "ナビゲーション" #: guake/prefs.py:196 msgid "Go to previous tab" msgstr "前のタブに移動" #: guake/prefs.py:200 msgid "Go to next tab" msgstr "次のタブに移動" #: guake/prefs.py:204 msgid "Move current tab left" msgstr "現在のタブを左に移動" #: guake/prefs.py:208 msgid "Move current tab right" msgstr "現在のタブの名前を右に移動" #: guake/prefs.py:212 msgid "Go to first tab" msgstr "最初のタブに移動" #: guake/prefs.py:216 msgid "Go to second tab" msgstr "2つめのタブに移動" #: guake/prefs.py:220 msgid "Go to third tab" msgstr "3つめタブに移動" #: guake/prefs.py:224 msgid "Go to fourth tab" msgstr "4つめタブに移動" #: guake/prefs.py:228 msgid "Go to fifth tab" msgstr "5つめのタブに移動" #: guake/prefs.py:232 msgid "Go to sixth tab" msgstr "6つめのタブに移動" #: guake/prefs.py:236 msgid "Go to seventh tab" msgstr "7つめのタブに移動" #: guake/prefs.py:240 msgid "Go to eighth tab" msgstr "8つめのタブに移動" #: guake/prefs.py:244 msgid "Go to ninth tab" msgstr "9つめのタブに移動" #: guake/prefs.py:248 msgid "Go to tenth tab" msgstr "10個目のタブに移動" #: guake/prefs.py:252 msgid "Go to last tab" msgstr "最後のタブに移動" #: guake/prefs.py:257 msgid "Appearance" msgstr "外観" #: guake/prefs.py:261 msgid "Zoom out" msgstr "縮小" #: guake/prefs.py:264 msgid "Zoom in" msgstr "拡大" #: guake/prefs.py:267 msgid "Zoom in (alternative)" msgstr "拡大(2つ目)" #: guake/prefs.py:270 msgid "Increase height" msgstr "高くする" #: guake/prefs.py:273 msgid "Decrease height" msgstr "低くする" #: guake/prefs.py:276 msgid "Increase transparency" msgstr "透明度を増やす" #: guake/prefs.py:279 msgid "Decrease transparency" msgstr "透明度を減らす" #: guake/prefs.py:282 msgid "Toggle transparency" msgstr "透明度:" #: guake/prefs.py:286 msgid "Clipboard" msgstr "クリップボード" #: guake/prefs.py:291 msgid "Copy text to clipboard" msgstr "テキストをクリップボードにコピー" #: guake/prefs.py:295 msgid "Paste text from clipboard" msgstr "クリップボードからテキストをペースト" #: guake/prefs.py:300 msgid "Extra features" msgstr "その他の機能" #: guake/prefs.py:304 msgid "Search select text on web" msgstr "選択したテキストをWebで検索" #: guake/prefs.py:741 msgid "Action" msgstr "動作" #: guake/prefs.py:749 msgid "Shortcut" msgstr "ショートカット" #: guake/prefs.py:910 guake/prefs.py:964 msgid "Custom" msgstr "カスタム" #: guake/prefs.py:1254 msgid "JSON files" msgstr "JSONファイル" #: guake/prefs.py:1258 guake/dialogs.py:106 msgid "All files" msgstr "すべてのファイル" #: guake/prefs.py:1353 #, python-format msgid "The shortcut \"%s\" is already in use." msgstr "ショートカット \"%s\" は既に使用されています." #: guake/prefs.py:1354 msgid "Error setting keybinding." msgstr "ショートカットの設定中にエラーが起きました" #: guake/prefs.py:1370 #, python-format msgid "" "The shortcut \"%s\" cannot be used because it will become impossible to type " "using this key.\n" "\n" "Please try with a key such as Control, Alt or Shift at the same time.\n" msgstr "" "このキーが入力不能になってしまうので、 \"%s\" はショートカットとして利用でき" "ません。\n" "\n" "[Control] や [Alt] や [Shift] といった修飾キーを一緒に使うようにしてみて下さ" "い。\n" #: guake/dialogs.py:11 msgid "Rename tab" msgstr "タブの名前を変更" #: guake/dialogs.py:46 msgid "Do you want to close the tab?" msgstr "タブを閉じますか?" #: guake/dialogs.py:49 msgid "Do you really want to quit Guake?" msgstr "本当に Guake を終了しますか?" #: guake/dialogs.py:51 msgid " and one tab open" msgstr "1個のタブが開いています" #: guake/dialogs.py:53 #, python-brace-format msgid " and {0} tabs open" msgstr "{0}個のタブが開いています" #: guake/dialogs.py:56 msgid "There are no processes running" msgstr "実行中のプロセスはありませんが、" #: guake/dialogs.py:58 msgid "There is a process still running" msgstr "まだ、1個のプロセスが実行中で、" #: guake/dialogs.py:60 #, python-brace-format msgid "There are {0} processes still running" msgstr "まだ、{0}個のプロセスが実行中で、" #: guake/dialogs.py:89 msgid "Save to..." msgstr "保存先を選択" #: guake/dialogs.py:111 msgid "Text and Logs" msgstr "テキストファイル、及びログファイル" #: guake/menus.py:20 msgid "New Tab" msgstr "新規TAB" #: guake/menus.py:23 msgid "Rename" msgstr "名前の変更" #: guake/menus.py:26 msgid "Close" msgstr "閉じる" #: guake/menus.py:44 msgid "Copy" msgstr "コピー" #: guake/menus.py:48 msgid "Copy Url" msgstr "URLをコピー" #: guake/menus.py:51 msgid "Paste" msgstr "貼り付け" #: guake/menus.py:62 msgid "Split ―" msgstr "水平に分割" #: guake/menus.py:65 msgid "Split |" msgstr "垂直に分割" #: guake/menus.py:72 msgid "Save content..." msgstr "出力内容を保存" #: guake/menus.py:79 msgid "Find..." msgstr "検索..." #: guake/menus.py:83 msgid "Open link..." msgstr "リンクを開く..." #: guake/menus.py:91 msgid "Open Link: {!s}..." msgstr "リンクを開く: {!s}..." #: guake/menus.py:93 msgid "Open Link: {!s}" msgstr "リンクを開く: {!s}" #: guake/menus.py:98 msgid "Search on Web" msgstr "Webで検索" #: guake/menus.py:105 #, python-format msgid "Search on Web: '%s'" msgstr "Webで検索: '%s'" #: guake/menus.py:110 msgid "Quick Open..." msgstr "Quick Open..." #: guake/menus.py:118 msgid "Quick Open: {!s}..." msgstr "Quick Open: {!s}..." #: guake/menus.py:121 msgid "Quick Open: {!s}" msgstr "Quick Open: {!s}" #: guake/menus.py:133 msgid "Custom Commands" msgstr "カスタムコマンド" #: guake/keybindings.py:101 #, python-format msgid "" "A problem happened when binding %s key.\n" "Please use Guake Preferences dialog to choose another key" msgstr "" "%sキーの割り当てで問題が発生しました。\n" "設定画面から別のキーを割り当ててください。" #: data/prefs.glade:43 msgid "Guake Preferences" msgstr "Guakeの設定" #: data/prefs.glade:96 msgid "Guake properties" msgstr "Guake の設定" #: data/prefs.glade:110 msgid "Customize behavior and appearance of Guake!" msgstr "Guake の動作や外観をカスタマイズします" #: data/prefs.glade:193 msgid "Enable popup notifications on startup" msgstr "起動時にポップアップ通知を表示する" #: data/prefs.glade:210 msgid "_Play system alert sound on bell" msgstr "ベルの代わりにシステムのアラートを使用する" #: data/prefs.glade:226 msgid "Start Guake at login" msgstr "ログイン時にGuakeを起動する" #: data/prefs.glade:249 msgid "Prompt on close tab:" msgstr "タブを閉じるときの確認" #: data/prefs.glade:263 msgid "Never" msgstr "常に確認しない" #: data/prefs.glade:264 msgid "With process running" msgstr "プロセス起動中のみ確認する" #: data/prefs.glade:265 msgid "Always" msgstr "常に確認" #: data/prefs.glade:284 msgid "Always prompt on quit" msgstr "終了時は常に確認する" #: data/prefs.glade:300 msgid "Show tray icon" msgstr "通知エリアにアイコンを表示する" #: data/prefs.glade:316 msgid "_Flash terminal on bell" msgstr "ベルの代わりにターミナルを点滅させる" #: data/prefs.glade:340 data/prefs.glade:1656 msgid "General" msgstr "一般" #: data/prefs.glade:366 msgid "Gtk Theme:" msgstr "GTKのテーマ" #: data/prefs.glade:390 msgid "Prefer dark theme" msgstr "ダークテーマにする" #: data/prefs.glade:419 msgid "Custom command file path:" msgstr "カスタムコマンドのパス" #: data/prefs.glade:431 msgid "Please select a json file" msgstr "JSONファイルを選択" #: data/prefs.glade:519 msgid "Refocus if open" msgstr "" #: data/prefs.glade:536 msgid "Hide on lose focus" msgstr "フォーカスを失ったら隠す" #: data/prefs.glade:553 msgid "Start fullscreen" msgstr "全画面表示で開始" #: data/prefs.glade:569 msgid "Stay on top" msgstr "常に前面に配置する" #: data/prefs.glade:587 msgid "Show tab bar" msgstr "タブバーを表示する" #: data/prefs.glade:603 msgid "Use VTE titles for tab names" msgstr "タブ名としてVTEのタイトルを使用する" #: data/prefs.glade:621 msgid "Abbreviate directories in tab names" msgstr "タブ名のディレクトリを省略して表示する" #: data/prefs.glade:646 msgid "Max tab name length:" msgstr "タブ名の最大長" #: data/prefs.glade:661 msgid "0" msgstr "0" #: data/prefs.glade:683 msgid "Set window title to current tab name" msgstr "タブ名をウィンドウタイトルにする" #: data/prefs.glade:705 msgid "Main Window Options" msgstr "メインウィンドウの設定" #: data/prefs.glade:736 msgid "Bottom align window instead of top align" msgstr "下寄せにする" #: data/prefs.glade:752 msgid "Appear on mouse display" msgstr "マウスカーソルがあるディスプレイに表示する" #: data/prefs.glade:777 msgid "Appear on display:" msgstr "次のディスプレイに表示" #: data/prefs.glade:807 msgid "Place tabs on top" msgstr "常に最前面で表示する" #: data/prefs.glade:829 msgid "Placement" msgstr "パレット" #: data/prefs.glade:865 msgid "Horizontal Alignment:" msgstr "水平方向の配置場所" #: data/prefs.glade:881 msgid "Left" msgstr "左寄せ" #: data/prefs.glade:901 msgid "Center" msgstr "中央寄せ" #: data/prefs.glade:921 msgid "Right" msgstr "右寄せ" #: data/prefs.glade:950 msgid "Height:" msgstr "高さ" #: data/prefs.glade:963 msgid "Width:" msgstr "幅" #: data/prefs.glade:1017 msgid "Displacement in pixels" msgstr "ずらして表示(ピクセル単位)" #: data/prefs.glade:1045 msgid "Geometry" msgstr "配置" #: data/prefs.glade:1076 msgid "Main Window" msgstr "メインウィンドウ" #: data/prefs.glade:1121 msgid "Default interpreter:" msgstr "デフォルトのシェル:" #: data/prefs.glade:1161 msgid "_Run command as a login shell" msgstr "ログインシェルとしてコマンドを実行する(_R)" #: data/prefs.glade:1182 msgid "" "This might not work on all shells, make sure that your shell supports the --" "login option" msgstr "" "シェルに依っては正常に動作しない場合があります。--login オプションが使用可能" "か確認してください。" #: data/prefs.glade:1197 msgid "_Open new tab in current directory" msgstr "カレントディレクトリを新しいタブに開く(_O)" #: data/prefs.glade:1241 msgid "Shell" msgstr "Shell" #: data/prefs.glade:1287 msgid "Show scrollbar" msgstr "スクロールバーを表示する" #: data/prefs.glade:1311 msgid "Scrollback lines:" msgstr "スクロール可能な行数:" #: data/prefs.glade:1347 msgid "Infinite scrolling" msgstr "どこまでもスクロール可能にする" #: data/prefs.glade:1369 msgid "Scrollbar" msgstr "スクロールバー" #: data/prefs.glade:1414 msgid "On output" msgstr "出力がある度に最下行へスクロールする" #: data/prefs.glade:1431 msgid "On key stroke" msgstr "キー入力の度に最下行へスクロールする" #: data/prefs.glade:1454 msgid "Scroll to Bottom" msgstr "最下行へスクロールする" #: data/prefs.glade:1478 msgid "Scrolling" msgstr "スクロール" #: data/prefs.glade:1513 msgid "Use the system fixed width font" msgstr "\"固定幅のフォント\" を使用する" #: data/prefs.glade:1541 msgid "Font:" msgstr "フォント:" #: data/prefs.glade:1556 msgid "Choose some font" msgstr "フォントの選択" #: data/prefs.glade:1570 msgid "Cursor shape:" msgstr "カーソルの形状:" #: data/prefs.glade:1585 msgid "Block" msgstr "矩形" #: data/prefs.glade:1586 msgid "I-Beam" msgstr "縦線" #: data/prefs.glade:1587 msgid "Underline" msgstr "下線" #: data/prefs.glade:1601 msgid "Cursor blink mode:" msgstr "カーソルの点滅" #: data/prefs.glade:1615 msgid "Follow GTK+ setting" msgstr "GTK+の設定に合わせる" #: data/prefs.glade:1616 msgid "Blink on" msgstr "点滅する" #: data/prefs.glade:1617 msgid "Blink off" msgstr "点滅しない" #: data/prefs.glade:1634 msgid "Allow bold font" msgstr "太字を使用可能にする" #: data/prefs.glade:1691 msgid "Built-in schemes:" msgstr "組み込みのスキーム:" #: data/prefs.glade:1717 msgid "Color palette:" msgstr "色:" #: data/prefs.glade:1732 msgid "Demo:" msgstr "サンプル:" #: data/prefs.glade:2035 msgid "Palette" msgstr "パレット" #: data/prefs.glade:2057 msgid "Effects" msgstr "効果" #: data/prefs.glade:2082 msgid "Transparency:" msgstr "透明度:" #: data/prefs.glade:2166 msgid "" "To change a shortcut simply click on its name.\n" "To disable a shortcut, press the \"Backspace\" key." msgstr "" "ショートカットを変更するには名前を選択してキーを入力してください。\n" "ショートカットを無効化する場合は\"Backspace\"キーを入力してください。" #: data/prefs.glade:2216 msgid "Keyboard shortcuts" msgstr "キーボードショートカット" #: data/prefs.glade:2268 msgid "" "Quick open is a feature allowing you to open a file directly into your " "favorite text editor by clicking on its filename when it appears in your " "terminal. See the list of currently supported text patterns used to extract " "filename below." msgstr "" "Quick Openはファイル名をクリックするだけで好きなエディタで開くことが出来る機" "能です。現在判別可能なファイル名の判定パターンについては下のリストを確認して" "ください。" #: data/prefs.glade:2306 msgid "Enable Quick Open when Ctrl+clicking on a filename in the terminal" msgstr "Quick Openを有効にする(Ctrl+クリック)" #: data/prefs.glade:2331 msgid "Editor command line:" msgstr "エディタのコマンド" #: data/prefs.glade:2377 msgid "" "Use the following elements in the open editor command line:\n" "- %(file_path)s: path to the file that has been clicked\n" "- %(line_number)s: if your editor supports it, you can directly open " "the file to a given line number when found on the screen.\n" "\n" "For example, for sublime, use subl %(file_path)s:%(line_number)s\n" "" msgstr "" "コマンドでは以下の要素を利用可能です。\n" " - %(file_path)s: クリックされたファイル名\n" " - %(line_number)s: エディタが対応していれば、該当行を直接開くことが出" "来ます。\n" "例えばSublime Textの場合は subl %(file_path)s:%(line_number)s としてく" "ださい。" #: data/prefs.glade:2432 msgid "Quick open in current terminal" msgstr "現在の端末で開く" #: data/prefs.glade:2476 msgid "Quick Open" msgstr "Quick Open" #: data/prefs.glade:2526 msgid "" "In this dialog you can attach your own command or script to various " "guake events" msgstr "" "イベント発生時にコマンドやスクリプトを実行することができます。" #: data/prefs.glade:2548 msgid "On show:" msgstr "表示時" #: data/prefs.glade:2560 msgid "On start:" msgstr "起動時" #: data/prefs.glade:2626 msgid "Hooks" msgstr "Hooks" #: data/prefs.glade:2655 msgid "" "Note: These options may cause some applications to behave " "incorrectly. They are only here to allow you to work around certain " "applications and operating systems that expect different terminal behavior." msgstr "" "注意: このオプションを変更するとアプリケーションが正常に動作" "しなくなる可能性があります。端末の挙動に変更が必要な一部のアプリケーションや" "OSを使用するためにのみ使用してください。" #: data/prefs.glade:2675 msgid "_Backspace key generates:" msgstr "[BS] キーが生成するコード(_B):" #: data/prefs.glade:2688 msgid "_Delete key generates:" msgstr "[DEL] キーが生成するコード(_D):" #: data/prefs.glade:2703 data/prefs.glade:2720 msgid "ASCII DEL" msgstr "ASCII DEL" #: data/prefs.glade:2704 data/prefs.glade:2721 msgid "Escape sequence" msgstr "エスケープシーケンス" #: data/prefs.glade:2705 data/prefs.glade:2722 msgid "Control-H" msgstr "Ctrl+h" #: data/prefs.glade:2747 msgid "_Reset Compatibility Options to Defaults" msgstr "互換性のオプションをデフォルトに戻す(_R)" #: data/prefs.glade:2778 msgid "Compatibility" msgstr "互換性" #: data/search.glade:138 msgid "Search forward" msgstr "前方検索" #: data/search.glade:153 msgid "Match case" msgstr "マッチした文字列" #: data/search.glade:186 msgid "Current search direction: Backward" msgstr "現在の検索方向: 逆向き" #: data/about.glade:14 msgid "" "Guake is an easy to access\n" "terminal based on FPS games terminal" msgstr "" "Guakeは、FPS ゲーム用端末をベースにした\n" "簡単にアクセスできる端末です" #: data/guake.glade:47 msgid "Guake!" msgstr "Guake!" #: data/autostart-guake.desktop:31 data/guake.desktop:36 #: data/guake.template.desktop:4 msgid "Use the command line in a Quake-like terminal" msgstr "Quake-likeなターミナルを使えます" #: data/autostart-guake.desktop:34 data/guake-prefs.desktop:48 #: data/guake-prefs.template.desktop:7 data/guake.desktop:47 #: data/guake.template.desktop:7 msgid "guake" msgstr "guake" #: data/guake-prefs.desktop:37 data/guake-prefs.template.desktop:4 msgid "Configure your Guake sessions" msgstr "Guake セッションの設定" #: data/guake-prefs.desktop:63 data/guake-prefs.template.desktop:13 msgid "Terminal;Utility;" msgstr "Terminal;Utility;" #: guake/dialogs.py:56 #, python-brace-format msgid " on {0} workspaces" msgstr "" #: data/prefs.glade:331 msgid "Use workspace-specific tab sets (requires restart)" msgstr "" #: guake/main.py:175 msgid "Split the selected tab vertically." msgstr "" #: guake/main.py:183 msgid "Split the selected tab horizontally." msgstr "" #: data/prefs.glade:348 msgid "Show close buttons for tabs" msgstr "" #: data/prefs.glade:1682 msgid "Bold text is also bright" msgstr "" #: data/prefs.glade:1682 msgid "Bold text is also bright (VTE >=0.52)" msgstr "" #: guake/menus.py:42 msgid "Save Tabs" msgstr "" #: guake/menus.py:45 msgid "Restore Tabs" msgstr "" #: guake/prefs.py:113 msgid "Search terminal" msgstr "" #: guake/main.py:278 msgid "Save Guake preferences to this filename" msgstr "" #: guake/main.py:286 msgid "Restore Guake preferences from this file" msgstr "" #: guake/guake_app.py:1192 #, python-brace-format msgid "Your session.json file is broken, backup to {session_filename}.bak" msgstr "" #: guake/guake_app.py:1228 #, python-brace-format msgid "" "Your session.json schema is broken, backup to {0}.bak,and error message has " "been saved to {0}.log.err" msgstr "" #: guake/guake_app.py:1239 msgid "Your tabs has been restored!" msgstr "" #: guake/tests/test_about.py:23 msgid "About Guake" msgstr "" #: data/prefs.glade:190 msgid "Restore previous session (tabs)" msgstr "" #: data/prefs.glade:204 msgid "Enable notification when restore tabs" msgstr "" #: data/prefs.glade:218 msgid "Automatically save session when the tabs has been modified" msgstr "" #: data/prefs.glade:238 msgid "Startup & Tabs (Experiment)" msgstr "" #: guake/guake_app.py:1192 #, python-brace-format msgid "" "Your {session_filename} file is broken, backup to {session_filename}.bak" msgstr "" #: guake/guake_app.py:1227 #, python-brace-format msgid "" "Your {session_filename} schema is broken, backup to {0}.bak,and error " "message has been saved to {session_filename}.log.err" msgstr "" #: guake/guake_app.py:1227 #, python-brace-format msgid "" "Your {session_filename} schema is broken, backup to {session_filename}.bak," "and error message has been saved to {session_filename}.log.err." msgstr "" #: guake/guake_app.py:1227 #, python-brace-format msgid "" "Your {session_filename} schema is broken, backup to {session_filename}.bak, " "and error message has been saved to {session_filename}.log.err." msgstr "" #: guake/notebook.py:317 msgid "" "You are going to restore *all* the tabs!\n" "which means all your terminals & pages will be replaced.\n" "\n" "Do you want to continue?" msgstr "" #: guake/main.py:296 msgid "Show support infomations" msgstr "" #: guake/guake_app.py:1240 #, python-brace-format msgid "" "Tabs session restore abort.\n" "Your session file ({session_filename}) missing schema_version as key" msgstr "" #: guake/guake_app.py:1252 #, python-brace-format msgid "" "Tabs session restore abort.\n" "Your session file schema version is higher than current version " "({session_file_schema_version} > {current_schema_version})." msgstr "" #: guake/data/prefs.glade:409 msgid "Use workspace-specific tab sets (requires restart, only work on X11)" msgstr "" guake-3.6.3/po/ko.po000066400000000000000000001027641346623310400142220ustar00rootroot00000000000000# Translation of Guake to Korean # Copyright (C) Guake Translators # This file is distributed under the same license as the Guake package. # # Translators: # Sangwoo Joo 2015 # Nessun Kim 2016 msgid "" msgstr "" "Project-Id-Version: Guake 0.4.5\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2016-08-18 17:32+0200\n" "PO-Revision-Date: 2018-01-25 20:57+0100\n" "Last-Translator: Nessun Kim \n" "Language-Team: \n" "Language: ko\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" "X-Generator: Poedit 2.0.6\n" #: ../guake/data/about.glade.h:1 msgid "About Guake" msgstr "Guake에 대해서" #: ../guake/data/about.glade.h:5 msgid "" "Guake is an easy to access\n" "terminal based on FPS games terminal" msgstr "" "Guake는 FPS 게임의 터미널에서 착안한\n" "접근이 편리한 터미널입니다." #: ../guake/data/guake.glade.h:1 msgid "Copy" msgstr "복사" #: ../guake/data/guake.glade.h:2 msgid "Paste" msgstr "붙여넣기" #: ../guake/data/guake.glade.h:3 ../src/guake/prefs.py:79 msgid "Toggle Fullscreen" msgstr "전체 화면 설정" #: ../guake/data/guake.glade.h:4 msgid "Save to File..." msgstr "파일로 저장" #: ../guake/data/guake.glade.h:5 ../src/guake/prefs.py:85 msgid "Reset terminal" msgstr "터미널 초기화" #: ../guake/data/guake.glade.h:6 msgid "Find..." msgstr "찾기" #: ../guake/data/guake.glade.h:7 msgid "New Tab" msgstr "새 탭" #: ../guake/data/guake.glade.h:8 msgid "Rename Tab" msgstr "탭 이름 변경" #: ../guake/data/guake.glade.h:9 msgid "Close Tab" msgstr "탭 닫기" #: ../guake/data/guake.glade.h:10 msgid "Open link..." msgstr "링크 열기" #: ../guake/data/guake.glade.h:11 msgid "Search on Web" msgstr "선택된 텍스트를 웹에 검색" #: ../guake/data/guake.glade.h:12 ../src/guake/prefs.py:83 msgid "Quit" msgstr "닫기" #: ../guake/data/guake.glade.h:13 msgid "Rename" msgstr "이름변경" #: ../guake/data/guake.glade.h:14 msgid "Close" msgstr "닫기" #: ../guake/data/guake.glade.h:15 msgid "Guake!" msgstr "Guake!" #: ../guake/data/guake.glade.h:16 msgid "Add a new tab" msgstr "새 탭 열기" #: ../guake/data/prefs.glade.h:1 msgid "Guake Preferences" msgstr "Guake 속성" #: ../guake/data/prefs.glade.h:2 msgid "Guake properties" msgstr "Guake 속성" #: ../guake/data/prefs.glade.h:3 msgid "" "Customize behavior and appearance of Guake!" msgstr "Guake의 행동 및 모양 사용자 정의 설정!" #: ../guake/data/prefs.glade.h:4 msgid "" "Path to a bash script that would be automatically executed when Guake " "starts, unless you specify --no-startup-script.\n" "\n" "This would typically use the configuration by command line feature of " "Guake:\n" "\n" "#!/bin/bash\n" "\n" "sleep 5 # it is advised to wait a bit before Guake has been successfully " "started\n" "\n" "guake -r \"main\" -e \"cd ~/projects/myproject/main\"\n" "guake -r \"prod\" -e \"cd ~/projects/myproject/prod\"\n" msgstr "" "Guake 시작시 자동으로 실행될 bash script 경로 (실행시 --no-startup-script를 " "붙이면 실행되지 않습니다)\n" "\n" "This would typically use the configuration by command line feature of " "Guake:\n" "\n" "#!/bin/bash\n" "\n" "sleep 5 # it is advised to wait a bit before Guake has been successfully " "started\n" "\n" "guake -r \"main\" -e \"cd ~/projects/myproject/main\"\n" "guake -r \"prod\" -e \"cd ~/projects/myproject/prod\"\n" #: ../guake/data/prefs.glade.h:15 msgid "Enable popup notifications on startup" msgstr "시작시 팝업 알림창 활성화" #: ../guake/data/prefs.glade.h:16 msgid "Show tray icon" msgstr "트래이 아이콘 보이기" #: ../guake/data/prefs.glade.h:17 msgid "Always prompt on quit" msgstr "Guake 종료시 알림" #: ../guake/data/prefs.glade.h:18 msgid "_Flash terminal on bell" msgstr "알림시 터미널 깜빡이기" #: ../guake/data/prefs.glade.h:19 msgid "_Play system alert sound on bell" msgstr "알림시 시스템 경고음 울리기" #: ../guake/data/prefs.glade.h:20 msgid "Path to script executed on Guake start:" msgstr "Guake 시작시 실행될 스크립트 경로:" #: ../guake/data/prefs.glade.h:21 msgid "Prompt on close tab:" msgstr "탭 종료시 알림:" #: ../guake/data/prefs.glade.h:22 msgid "" "Never\n" "With process running\n" "Always" msgstr "" "절대 알리지 않음\n" "프로세스 실행 중일 때만 알림\n" "항상 알림" #: ../guake/data/prefs.glade.h:25 msgid "General" msgstr "일반" #: ../guake/data/prefs.glade.h:26 msgid "Bottom align window instead of top align" msgstr "터미널을 아래에 붙이기" #: ../guake/data/prefs.glade.h:27 msgid "Appear on mouse display" msgstr "마우스 커서가 위치한 디스플레이에 보이기" #: ../guake/data/prefs.glade.h:28 msgid "Appear on display:" msgstr "창이 보일 디스플레이" #: ../guake/data/prefs.glade.h:29 msgid "Place tabs on top" msgstr "탭을 최상위로 배치하기" #: ../guake/data/prefs.glade.h:30 msgid "Placement" msgstr "배치" #: ../guake/data/prefs.glade.h:31 msgid "Stay on top" msgstr "항상위에 표시" #: ../guake/data/prefs.glade.h:32 msgid "Use VTE titles for tab names" msgstr "탭 이름에 VTE 타일 사용하기" #: ../guake/data/prefs.glade.h:33 msgid "Max tab name length:" msgstr "탭 이름 최대 길이:" #: ../guake/data/prefs.glade.h:34 msgid "0 means no size limit" msgstr "" #: ../guake/data/prefs.glade.h:35 msgid "Abbreviate directories in tab names" msgstr "" #: ../guake/data/prefs.glade.h:36 msgid "Hide on lose focus" msgstr "포커스를 잃을 때 감추기" #: ../guake/data/prefs.glade.h:37 msgid "Show tab bar" msgstr "탭바 보이기" #: ../guake/data/prefs.glade.h:38 msgid "Start fullscreen" msgstr "전체화면으로 시작하기" #: ../guake/data/prefs.glade.h:39 msgid "Main Window" msgstr "메인 윈도우" #: ../guake/data/prefs.glade.h:40 msgid "Left" msgstr "왼쪽" #: ../guake/data/prefs.glade.h:41 msgid "Center" msgstr "가운데" #: ../guake/data/prefs.glade.h:42 msgid "Right" msgstr "오른쪽" #: ../guake/data/prefs.glade.h:43 msgid "Main Window Horizontal Alignment" msgstr "메인 윈도우 수평 정렬" #: ../guake/data/prefs.glade.h:44 msgid "Main Window Height" msgstr "메인 윈도우 높이 설정" #: ../guake/data/prefs.glade.h:45 msgid "Main Window Width" msgstr "메인 윈도우 너미 설정" #: ../guake/data/prefs.glade.h:46 msgid "Custom command file path: " msgstr "사용자 정의 명령어 파일 위치:" #: ../guake/data/prefs.glade.h:47 msgid "Please select a json file" msgstr "json 파일 선택" #: ../guake/data/prefs.glade.h:48 ../src/guake/prefs.py:75 msgid "General" msgstr "일반" #: ../guake/data/prefs.glade.h:49 msgid "Default interpreter:" msgstr "기본 인터프리터:" #: ../guake/data/prefs.glade.h:50 msgid "_Run command as a login shell" msgstr "로그인 쉘 실행시 명령어 실행" #: ../guake/data/prefs.glade.h:51 msgid "_Open new tab in current directory" msgstr "새 탭 생성시 현재 디렉토리로 설정" #: ../guake/data/prefs.glade.h:52 msgid "Shell" msgstr "" #: ../guake/data/prefs.glade.h:53 msgid "Shell" msgstr "쉘" #: ../guake/data/prefs.glade.h:54 msgid "Show scrollbar" msgstr "스크롤바 보이기" #: ../guake/data/prefs.glade.h:55 msgid "Scrollback lines:" msgstr "스크롤 할 라인 수:" #: ../guake/data/prefs.glade.h:56 msgid "On output" msgstr "콘솔 출력시" #: ../guake/data/prefs.glade.h:57 msgid "On key stroke" msgstr "키가 눌렸을 때" #: ../guake/data/prefs.glade.h:58 msgid "Scroll" msgstr "스크롤" #: ../guake/data/prefs.glade.h:59 msgid "Scrolling" msgstr "스크롤" #: ../guake/data/prefs.glade.h:60 msgid "Use the system fixed width font" msgstr "시스템 폰트 사용" #: ../guake/data/prefs.glade.h:61 msgid "Font:" msgstr "글꼴:" #: ../guake/data/prefs.glade.h:62 msgid "Choose some font" msgstr "글꼴 선택" #: ../guake/data/prefs.glade.h:63 msgid "Text color:" msgstr "글자 색상:" #: ../guake/data/prefs.glade.h:64 msgid "Background color:" msgstr "배경색:" #: ../guake/data/prefs.glade.h:65 msgid "Cursor shape:" msgstr "커서 모양:" #: ../guake/data/prefs.glade.h:66 msgid "" "Block\n" "I-Beam\n" "Underline" msgstr "" "블록\n" "I-Beam\n" "밑줄" #: ../guake/data/prefs.glade.h:69 msgid "" "Follow GTK+ setting\n" "Blink on\n" "Blink off" msgstr "" "GTK+ 설정에 따름\n" "깜빡임\n" "깜빡이지 않음" #: ../guake/data/prefs.glade.h:72 msgid "Cursor blink mode:" msgstr "커서 깜빡임:" #: ../guake/data/prefs.glade.h:73 msgid "Allow bold font" msgstr "볼드체 허용" #: ../guake/data/prefs.glade.h:74 msgid "Palette" msgstr "팔레트" #: ../guake/data/prefs.glade.h:75 msgid "Built-in schemes:" msgstr "지정된 테마:" #: ../guake/data/prefs.glade.h:76 msgid "Color palette:" msgstr "색상 파레트:" #: ../guake/data/prefs.glade.h:77 msgid "Font color" msgstr "글자 색상:" #: ../guake/data/prefs.glade.h:78 msgid "Background color" msgstr "배경색:" #: ../guake/data/prefs.glade.h:79 msgid "Use font and background color from the palette" msgstr "글자색과 배경색을 팔레트에서 가져오기" #: ../guake/data/prefs.glade.h:80 msgid "Demo:" msgstr "미리 보기:" #: ../guake/data/prefs.glade.h:81 msgid "Effects" msgstr "효과" #: ../guake/data/prefs.glade.h:82 msgid "Transparency:" msgstr "투명도:" #: ../guake/data/prefs.glade.h:83 msgid "Background image:" msgstr "배경 이미지:" #: ../guake/data/prefs.glade.h:84 ../src/guake/prefs.py:130 msgid "Appearance" msgstr "모양" #: ../guake/data/prefs.glade.h:85 msgid "" "Quick open is a feature allowing you to open a file directly into " "your favorite text editor by clicking on its filename when it appears in " "your terminal. See the list of currently supported text patterns used to " "extract filename below." msgstr "" "빠른 열기는 파일명을 클릭하면 지정된 텍스트 에디터로 실행할 수 있는 기" "능입니다. 아래에서 현재 지원되는 패턴을 확인하실 수 있습니다." #: ../guake/data/prefs.glade.h:86 msgid "Enable Quick Open when Ctrl+clicking on a filename in the terminal" msgstr "빠른 열기 (파일 이름 위에서 Ctrl+클릭) 활성화" #: ../guake/data/prefs.glade.h:87 msgid "Editor command line:" msgstr "에디터 실행 명령어:" #: ../guake/data/prefs.glade.h:89 #, no-c-format msgid "" "Use the following elements in the open editor command line:\n" " - %(file_path)s: path to the file that has been clicked\n" " - %(line_number)s: if your editor supports it, you can directly open " "the file to a given line number when found on the screen.\n" "\n" "For example, for sublime, use subl %(file_path)s:%(line_number)s\n" "" msgstr "" "에디터 실행 명령어에 다음 요소를 사용할 수 있습니다:\n" " - %(file_path)s: 선택한 파일의 경로\n" " - %(line_number)s: 바로 보기 시작할 줄 번호(에디터에서 지원한다면)\n" "\n" "sublime의 경우, subl %(file_path)s:%(line_number)s를 사용할 수 있습니" "다.\n" "" #: ../guake/data/prefs.glade.h:95 msgid "Quick open in current terminal" msgstr "현재 터미널에서 빠른 열기 사용" #: ../guake/data/prefs.glade.h:96 msgid "" "Here is the list of supported patterns: (to add your own, please contact the " "Guake's authors)" msgstr "지원되는 패턴 목록: (추가하고 싶다면 Guake의 개발자에게 연락해 주세요)" #: ../guake/data/prefs.glade.h:97 msgid "Quick Open" msgstr "빠른 열기" #: ../guake/data/prefs.glade.h:98 msgid "Quick Open" msgstr "빠른 열기" #: ../guake/data/prefs.glade.h:99 msgid "" "To change a shortcut simply click on its name.\n" "To disable a shortcut, press the \"Backspace\" key." msgstr "" "단축키를 변경하려면 클릭하세요.\n" "해당 단축키를 비활성화하고 싶다면, Backspace 키를 누르세요." #: ../guake/data/prefs.glade.h:101 msgid "Keyboard shortcuts" msgstr "키보드 단축키" #: ../guake/data/prefs.glade.h:102 msgid "" "Note: These options may cause some applications to behave " "incorrectly. They are only here to allow you to work around certain " "applications and operating systems that expect different terminal behavior." msgstr "" "알림: 이 설정을 잘 못 변경시 다른 프로그램 동작에 영향을 끼" "칠 수 있습니다. 여기 옵션들은 프로그램과 운영체제 시스템의 터미널의 예상치 못" "한 행동을 유발 할 수 있기 때문에 확실한 경우에만 변경하시기 바랍니다." #: ../guake/data/prefs.glade.h:103 msgid "" "ASCII DEL\n" "Escape sequence\n" "Control-H" msgstr "" "ASCII DEL\n" "Escape sequence\n" "Control-H" #: ../guake/data/prefs.glade.h:106 msgid "_Backspace key generates:" msgstr "_Backspace 키가 생성:" #: ../guake/data/prefs.glade.h:107 msgid "_Delete key generates:" msgstr "_Delete 키가 생성:" #: ../guake/data/prefs.glade.h:108 msgid "_Reset Compatibility Options to Defaults" msgstr "호환성 옵션을 모두 초기화" #: ../guake/data/prefs.glade.h:109 msgid "Keyboard compatibility" msgstr "키보드 호환성" #: ../guake/data/prefs.glade.h:110 msgid "Compatibility" msgstr "호환성" #: ../src/guake/about.py:47 ../src/guake/gconfhandler.py:439 #: ../src/guake/guake_app.py:181 ../src/guake/guake_app.py:378 msgid "Guake Terminal" msgstr "Guake 터미널" #: ../src/guake/gconfhandler.py:369 ../src/guake/guake_app.py:1386 msgid "Terminal" msgstr "터미널 %s" #: ../src/guake/gconfhandler.py:440 #, python-format msgid "" "A problem happened when binding %s key.\n" "Please use Guake Preferences dialog to choose another key" msgstr "" "%s 키를 바인딩 할때 문제가 발생되었습니다.\n" "Guake 대화상자 설정 탭에서 다른키를 선택하여주세요." #: ../src/guake/guake_app.py:132 msgid "Do you want to close the tab?" msgstr "이 탭을 정말 닫습니까?" #: ../src/guake/guake_app.py:135 msgid "Do you really want to quit Guake?" msgstr "Guake를 정말로 종료합니까?" #: ../src/guake/guake_app.py:137 msgid " and one tab open" msgstr "새 탭 열기" #: ../src/guake/guake_app.py:139 #, python-brace-format msgid " and {0} tabs open" msgstr "탭 {0}개 열기" #: ../src/guake/guake_app.py:142 msgid "There are no processes running" msgstr "실행중인 프로세스가 없습니다." #: ../src/guake/guake_app.py:144 msgid "There is a process still running" msgstr "아직 프로세스가 실행중입니다." #: ../src/guake/guake_app.py:146 #, python-brace-format msgid "There are {0} processes still running" msgstr "아직 {0}개의 프로세스가 실행중입니다." #: ../src/guake/guake_app.py:186 msgid "guake-indicator" msgstr "guake 알림줄" #: ../src/guake/guake_app.py:186 msgid "guake-tray" msgstr "guake 트레이" #: ../src/guake/guake_app.py:190 msgid "Show" msgstr "보이기" #: ../src/guake/guake_app.py:379 #, python-format msgid "" "Guake is now running,\n" "press {!s} to use it." msgstr "" "Guake 가 실행중입니다.,\n" "{!s} 키를 눌러서 실행합니다." #: ../src/guake/guake_app.py:670 #, python-format msgid "Search on Web: '%s'" msgstr "'%s' 웹에서 검색" #: ../src/guake/guake_app.py:675 msgid "Search on Web (no selection)" msgstr "웹에서 검색 (선택 안 함)" #: ../src/guake/guake_app.py:683 #, fuzzy msgid "Open Link: '{}...'" msgstr "링크 열기: {}" #: ../src/guake/guake_app.py:685 msgid "Open Link: {}" msgstr "링크 열기: {}" #: ../src/guake/guake_app.py:688 msgid "Open Link..." msgstr "링크 열기" #: ../src/guake/guake_app.py:1425 msgid "Rename tab" msgstr "탭 이름변경" #: ../src/guake/guake_app.py:1736 msgid "Save to..." msgstr "다음으로 저장" #: ../src/guake/guake_app.py:1743 ../src/guake/prefs.py:973 msgid "All files" msgstr "모든 파일" #: ../src/guake/guake_app.py:1748 msgid "Text and Logs" msgstr "텍스트와 로그" #: ../src/guake/guake_app.py:1766 msgid "Find" msgstr "찾기" #: ../src/guake/guake_app.py:1768 msgid "Forward" msgstr "다음으로" #: ../src/guake/guake_app.py:1769 msgid "Backward" msgstr "이전으로" #: ../src/guake/main.py:68 msgid "Put Guake in fullscreen mode" msgstr "전체화면으로" #: ../src/guake/main.py:72 msgid "Toggles the visibility of the terminal window" msgstr "터미널 창 보이기/숨기기 토글" #: ../src/guake/main.py:76 msgid "Shows Guake main window" msgstr "Guake 메인 화면 보이기" #: ../src/guake/main.py:80 msgid "Hides Guake main window" msgstr "Guake 메인 화면 숨기기" #: ../src/guake/main.py:84 msgid "Shows Guake preference window" msgstr "Guake 설정 윈도우 보이기" #: ../src/guake/main.py:88 msgid "Shows Guake's about info" msgstr "Guake 정보 보기" #: ../src/guake/main.py:92 msgid "Add a new tab (with current directory set to NEW_TAB)" msgstr "새 탭 생성시 현재 디렉토리로 설정" #: ../src/guake/main.py:96 msgid "Select a tab (SELECT_TAB is the index of the tab)" msgstr "탭 선택 (SELECT_TAB은 탭의 번호입니다)" #: ../src/guake/main.py:100 msgid "Return the selected tab index." msgstr "선택된 탭으로 이동합니다." #: ../src/guake/main.py:104 msgid "Execute an arbitrary command in the selected tab." msgstr "선택된 탭에서 임의의 명령을 실행합니다." #: ../src/guake/main.py:108 msgid "Specify the tab to rename. Default is 0." msgstr "변경할 이름을 지정하세요. 기본값은 0입니다." #: ../src/guake/main.py:112 msgid "Set the hexadecimal (#rrggbb) background color of the selected tab." msgstr "선택된 탭의 배경색을 #rrggbb와 같이 지정하세요." #: ../src/guake/main.py:117 msgid "Set the hexadecimal (#rrggbb) foreground color of the selected tab." msgstr "선택된 탭의 전경색을 #rrggbb와 같이 지정하세요." #: ../src/guake/main.py:123 msgid "" "Rename the specified tab. Reset to default if TITLE is a single dash \"-\"." msgstr "지정된 탭의 이름을 변경합니다. -를 입력하면 기본값으로 되돌립니다." #: ../src/guake/main.py:129 msgid "" "Rename the current tab. Reset to default if TITLE is a single dash \"-\"." msgstr "현재 탭의 이름을 변경합니다. -를 입력하면 기본값으로 되돌립니다." #: ../src/guake/main.py:134 msgid "Says to Guake go away =(" msgstr "Guake 치워버리기 =(" #: ../src/guake/main.py:138 msgid "Do not execute the start up script" msgstr "시작 스크립트를 실행하지 않습니다." #: ../src/guake/main.py:235 msgid "Guake can not init!" msgstr "Guake 초기화에 실패했습니다." #: ../src/guake/main.py:236 msgid "" "Gconf Error.\n" "Have you installed guake.schemas properly?" msgstr "" "Gconf 에러.\n" "guake.schemas를 정상적으로 설치했나요?" #. string to show in prefereces dialog for user shell option #: ../src/guake/prefs.py:67 msgid "" msgstr "<사용자 쉘>" #: ../src/guake/prefs.py:77 msgid "Toggle Guake visibility" msgstr "Guake 보이기/감추기" #: ../src/guake/prefs.py:81 msgid "Toggle Hide on Lose Focus" msgstr "포커스를 잃을 때 감추기 기능 사용" #: ../src/guake/prefs.py:88 msgid "Tab management" msgstr "탭 관리" #: ../src/guake/prefs.py:90 #, fuzzy msgid "New tab" msgstr "새 탭" #: ../src/guake/prefs.py:92 msgid "Close tab" msgstr "탭 닫기" #: ../src/guake/prefs.py:94 msgid "Rename current tab" msgstr "현재 탭 이름변경" #: ../src/guake/prefs.py:97 msgid "Navigation" msgstr "네비게이션" #: ../src/guake/prefs.py:99 msgid "Go to previous tab" msgstr "이전탭으로 전환" #: ../src/guake/prefs.py:101 msgid "Go to next tab" msgstr "다음탭으로 전환" #: ../src/guake/prefs.py:103 #, fuzzy msgid "Move current tab left" msgstr "현재 탭 이름변경" #: ../src/guake/prefs.py:105 #, fuzzy msgid "Move current tab right" msgstr "현재 탭 이름변경" #: ../src/guake/prefs.py:107 msgid "Go to first tab" msgstr "첫 번째 탭으로 이동" #: ../src/guake/prefs.py:109 msgid "Go to second tab" msgstr "두 번째 탭으로 이동" #: ../src/guake/prefs.py:111 msgid "Go to third tab" msgstr "세 번째 탭으로 이동" #: ../src/guake/prefs.py:113 msgid "Go to fourth tab" msgstr "네 번째 탭으로 이동" #: ../src/guake/prefs.py:115 msgid "Go to fifth tab" msgstr "다섯 번째 탭으로 이동" #: ../src/guake/prefs.py:117 msgid "Go to sixth tab" msgstr "여섯 번째 탭으로 이동" #: ../src/guake/prefs.py:119 msgid "Go to seventh tab" msgstr "일곱 번째 탭으로 이동" #: ../src/guake/prefs.py:121 msgid "Go to eighth tab" msgstr "여덞 번째 탭으로 이동" #: ../src/guake/prefs.py:123 msgid "Go to ninth tab" msgstr "아홉 번째 탭으로 이동" #: ../src/guake/prefs.py:125 msgid "Go to tenth tab" msgstr "열 번째 탭으로 이동" #: ../src/guake/prefs.py:127 #, fuzzy msgid "Go to last tab" msgstr "첫 번째 탭으로 이동" #: ../src/guake/prefs.py:132 msgid "Zoom out" msgstr "화면 확대" #: ../src/guake/prefs.py:134 msgid "Zoom in" msgstr "화면 축소" #: ../src/guake/prefs.py:136 msgid "Zoom in (alternative)" msgstr "화면 축소 (추가 단축키)" #: ../src/guake/prefs.py:138 msgid "Increase height" msgstr "높이 키우기" #: ../src/guake/prefs.py:140 msgid "Decrease height" msgstr "높이 줄이기" #: ../src/guake/prefs.py:142 #, fuzzy msgid "Increase transparency" msgstr "투명도:" #: ../src/guake/prefs.py:144 #, fuzzy msgid "Decrease transparency" msgstr "투명도:" #: ../src/guake/prefs.py:146 #, fuzzy msgid "Toggle transparency" msgstr "투명도:" #: ../src/guake/prefs.py:149 msgid "Clipboard" msgstr "클립보드" #: ../src/guake/prefs.py:151 msgid "Copy text to clipboard" msgstr "글자를 클립보드로 복사" #: ../src/guake/prefs.py:153 msgid "Paste text from clipboard" msgstr "클립보드의 글자를 붙여넣기" #: ../src/guake/prefs.py:156 msgid "Extra features" msgstr "추가 기능" #: ../src/guake/prefs.py:159 #, fuzzy msgid "Search select text on web" msgstr "선택된 텍스트를 웹에 검색" #: ../src/guake/prefs.py:481 msgid "Action" msgstr "액션" #: ../src/guake/prefs.py:491 msgid "Shortcut" msgstr "단축키" #: ../src/guake/prefs.py:651 ../src/guake/prefs.py:697 msgid "Custom" msgstr "사용자 정의" #: ../src/guake/prefs.py:969 msgid "JSON files" msgstr "JSON 파일" #: ../src/guake/prefs.py:1063 #, python-format msgid "The shortcut \"%s\" is already in use." msgstr "지정된 \"%s\" 단축키는 이미 사용중입니다." #: ../src/guake/prefs.py:1064 msgid "Error setting keybinding." msgstr "키 바인딩에 에러가 발견되었습니다." #: ../src/guake/prefs.py:1076 #, python-format msgid "" "The shortcut \"%s\" cannot be used because it will become impossible to type " "using this key.\n" "\n" "Please try with a key such as Control, Alt or Shift at the same time.\n" msgstr "" "지정된 \"%s\" 키는 입력시 사용되기 때문에 단출키로 사용할 수 없습니다.\n" "\n" "Ctrl, Alt, Shift 등의 조합으로 사용해주세요.\n" #: guake/main.py:153 msgid "Return the selected tab label." msgstr "" #: guake/data/prefs.glade:264 msgid "Never" msgstr "" #: guake/data/prefs.glade:265 msgid "With process running" msgstr "" #: guake/data/prefs.glade:266 msgid "Always" msgstr "" #: guake/data/prefs.glade:499 msgid "Refocus if open" msgstr "" #: guake/data/prefs.glade:865 msgid "Custom command file path:" msgstr "" #: guake/data/prefs.glade:1315 msgid "Show resizer" msgstr "" #: guake/data/prefs.glade:1423 msgid "Block" msgstr "" #: guake/data/prefs.glade:1424 msgid "I-Beam" msgstr "" #: guake/data/prefs.glade:1425 msgid "Underline" msgstr "" #: guake/data/prefs.glade:1443 msgid "Follow GTK+ setting" msgstr "" #: guake/data/prefs.glade:1444 msgid "Blink on" msgstr "" #: guake/data/prefs.glade:1445 msgid "Blink off" msgstr "" #: guake/data/prefs.glade:2236 msgid "" "Use the following elements in the open editor command line:\n" "- %(file_path)s: path to the file that has been clicked\n" "- %(line_number)s: if your editor supports it, you can directly open " "the file to a given line number when found on the screen.\n" "\n" "For example, for sublime, use subl %(file_path)s:%(line_number)s\n" "" msgstr "" #: guake/data/prefs.glade:2442 guake/data/prefs.glade:2462 msgid "ASCII DEL" msgstr "" #: guake/data/prefs.glade:2443 guake/data/prefs.glade:2463 msgid "Escape sequence" msgstr "" #: guake/data/prefs.glade:2444 guake/data/prefs.glade:2464 msgid "Control-H" msgstr "" #: guake/data/prefs.glade:2600 msgid "" "In this dialog you can attach your own command or script to various " "guake events" msgstr "" #: guake/data/prefs.glade:2635 msgid "On show:" msgstr "" #: guake/data/prefs.glade:2665 msgid "On start:" msgstr "" #: guake/data/prefs.glade:2714 msgid "Hooks" msgstr "" #: guake/data/guake-prefs.desktop:8 msgid "Configure your Guake sessions" msgstr "" #: guake/data/guake-prefs.desktop:15 guake/data/guake.desktop:18 msgid "guake" msgstr "" #: guake/data/guake-prefs.desktop:20 msgid "Terminal;Utility;" msgstr "" #: guake/data/guake.desktop:10 msgid "Use the command line in a Quake-like terminal" msgstr "" #: guake/data/prefs.glade:770 msgid "Main Window Horizontal Alignment" msgstr "" #: guake/prefs.py:89 msgid "Show and focus Guake window" msgstr "" #: guake/data/prefs.glade:566 msgid "0" msgstr "" #: guake/data/prefs.glade:610 msgid "Main Window Options" msgstr "" #: guake/data/prefs.glade:770 msgid "Horizontal Alignment:" msgstr "" #: guake/data/prefs.glade:855 msgid "Height:" msgstr "" #: guake/data/prefs.glade:868 msgid "Width:" msgstr "" #: guake/data/prefs.glade:913 msgid "Geometry" msgstr "" #: guake/data/prefs.glade:944 msgid "Main Window" msgstr "" #: guake/data/prefs.glade:1197 msgid "Infinite scrolling" msgstr "" #: guake/data/prefs.glade:1219 msgid "Scrollbar" msgstr "" #: guake/data/prefs.glade:1304 msgid "Scroll to Bottom" msgstr "" #: guake/data/prefs.glade:2117 msgid "" "Quick open is a feature allowing you to open a file directly into your " "favorite text editor by clicking on its filename when it appears in your " "terminal. See the list of currently supported text patterns used to extract " "filename below." msgstr "" #: guake/main.py:64 msgid "Show Guake version number and exit" msgstr "" #: guake/data/prefs.glade:93 msgid "Guake properties" msgstr "Guake 속성" #: guake/data/prefs.glade:107 msgid "Customize behavior and appearance of Guake!" msgstr "Налаштування поведінки та вигляду Guake!" #: guake/data/prefs.glade:929 msgid "Displacement in pixels" msgstr "" #: guake/main.py:73 msgid "Enable verbose logging" msgstr "" #: guake/guake_app.py:680 msgid "Quick Open: '{!s}...'" msgstr "" #: guake/guake_app.py:683 msgid "Quick Open: {!s}" msgstr "" #: guake/guake_app.py:691 msgid "Open Link: '{!s}...'" msgstr "" #: guake/guake_app.py:694 msgid "Open Link: {!s}" msgstr "" #: guake/data/prefs.glade:2175 msgid "" "WARNING: your system seems to have PCRE2 disabled for VTE, " "preventing application such as Guake to register \"matchers\" using regular " "expressions. Please contact your distribution to request a new version of " "VTE with PCRE2 enabled ! To use Quick Open, you must select the text " "before using Ctrl+click." msgstr "" #: guake/guake_app.py:680 msgid "Quick Open: {!s}..." msgstr "" #: guake/guake_app.py:691 msgid "Open Link: {!s}..." msgstr "" #: guake/guake_app.py:688 msgid "Quick Open..." msgstr "" #: guake/data/prefs.glade:223 msgid "Start Guake at login" msgstr "" #: guake/data/prefs.glade:363 msgid "Gtk Theme:" msgstr "" #: guake/data/prefs.glade:387 msgid "Prefer dark theme" msgstr "" #: guake/guake_app.py:435 msgid "Custom Commands" msgstr "" #: guake/main.py:184 msgid "" "Specify the tab to rename. Default is 0. Can be used to select tab by UUID." msgstr "" #: guake/main.py:212 msgid "" "Rename the specified tab by --tab-index. Reset to default if TITLE is a " "single dash \"-\"." msgstr "" #: data/search.glade:138 msgid "Search forward" msgstr "" #: data/search.glade:153 msgid "Match case" msgstr "" #: data/search.glade:186 msgid "Current search direction: Backward" msgstr "" #: data/prefs.glade:680 msgid "Set window title to current tab name" msgstr "" #: guake/menus.py:48 msgid "Copy Url" msgstr "" #: guake/menus.py:62 msgid "Split ―" msgstr "" #: guake/menus.py:65 msgid "Split " msgstr "" #: guake/menus.py:68 guake/prefs.py:150 msgid "Close terminal" msgstr "" #: guake/prefs.py:137 msgid "Split management" msgstr "" #: guake/prefs.py:142 msgid "Split tab vertical" msgstr "" #: guake/prefs.py:146 msgid "Split tab horizontal" msgstr "" #: guake/prefs.py:154 msgid "Focus terminal above" msgstr "" #: guake/prefs.py:158 msgid "Focus terminal below" msgstr "" #: guake/prefs.py:162 msgid "Focus terminal on the left" msgstr "" #: guake/prefs.py:166 msgid "Focus terminal on the right" msgstr "" #: guake/prefs.py:170 msgid "Move the terminal split handle up" msgstr "" #: guake/prefs.py:174 msgid "Move the terminal split handle down" msgstr "" #: guake/prefs.py:178 msgid "Move the terminal split handle right" msgstr "" #: guake/prefs.py:182 msgid "Move the terminal split handle left" msgstr "" #: guake/menus.py:65 msgid "Split |" msgstr "" #: guake/menus.py:72 msgid "Save content..." msgstr "" #: data/prefs.glade:1182 msgid "" "This might not work on all shells, make sure that your shell supports the --" "login option" msgstr "" #: guake/prefs.py:128 msgid "New tab in home directory" msgstr "" #: guake/dialogs.py:56 #, python-brace-format msgid " on {0} workspaces" msgstr "" #: guake/main.py:211 msgid "Change Guake palette scheme" msgstr "" #: data/prefs.glade:331 msgid "Use workspace-specific tab sets (requires restart)" msgstr "" #: guake/main.py:175 msgid "Split the selected tab vertically." msgstr "" #: guake/main.py:183 msgid "Split the selected tab horizontally." msgstr "" #: data/prefs.glade:348 msgid "Show close buttons for tabs" msgstr "" #: data/prefs.glade:1682 msgid "Bold text is also bright" msgstr "" #: data/prefs.glade:1682 msgid "Bold text is also bright (VTE >=0.52)" msgstr "" #: guake/menus.py:42 msgid "Save Tabs" msgstr "" #: guake/menus.py:45 msgid "Restore Tabs" msgstr "" #: guake/prefs.py:113 msgid "Search terminal" msgstr "" #: guake/main.py:278 msgid "Save Guake preferences to this filename" msgstr "" #: guake/main.py:286 msgid "Restore Guake preferences from this file" msgstr "" #: guake/guake_app.py:1192 #, python-brace-format msgid "Your session.json file is broken, backup to {session_filename}.bak" msgstr "" #: guake/guake_app.py:1228 #, python-brace-format msgid "" "Your session.json schema is broken, backup to {0}.bak,and error message has " "been saved to {0}.log.err" msgstr "" #: guake/guake_app.py:1239 msgid "Your tabs has been restored!" msgstr "" #: data/prefs.glade:190 msgid "Restore previous session (tabs)" msgstr "" #: data/prefs.glade:204 msgid "Enable notification when restore tabs" msgstr "" #: data/prefs.glade:218 msgid "Automatically save session when the tabs has been modified" msgstr "" #: data/prefs.glade:238 msgid "Startup & Tabs (Experiment)" msgstr "" #: guake/guake_app.py:1192 #, python-brace-format msgid "" "Your {session_filename} file is broken, backup to {session_filename}.bak" msgstr "" #: guake/guake_app.py:1227 #, python-brace-format msgid "" "Your {session_filename} schema is broken, backup to {0}.bak,and error " "message has been saved to {session_filename}.log.err" msgstr "" #: guake/guake_app.py:1227 #, python-brace-format msgid "" "Your {session_filename} schema is broken, backup to {session_filename}.bak," "and error message has been saved to {session_filename}.log.err." msgstr "" #: guake/guake_app.py:1227 #, python-brace-format msgid "" "Your {session_filename} schema is broken, backup to {session_filename}.bak, " "and error message has been saved to {session_filename}.log.err." msgstr "" #: guake/notebook.py:317 msgid "" "You are going to restore *all* the tabs!\n" "which means all your terminals & pages will be replaced.\n" "\n" "Do you want to continue?" msgstr "" #: guake/main.py:296 msgid "Show support infomations" msgstr "" #: guake/guake_app.py:1240 #, python-brace-format msgid "" "Tabs session restore abort.\n" "Your session file ({session_filename}) missing schema_version as key" msgstr "" #: guake/guake_app.py:1252 #, python-brace-format msgid "" "Tabs session restore abort.\n" "Your session file schema version is higher than current version " "({session_file_schema_version} > {current_schema_version})." msgstr "" #: guake/data/prefs.glade:409 msgid "Use workspace-specific tab sets (requires restart, only work on X11)" msgstr "" #~ msgid "key binding error" #~ msgstr "키 바인딩 에러" #~ msgid "Unable to bind global %s key" #~ msgstr "글로벌 키 %s 바인딩을 실패했습니다." #~ msgid "Quick Open configuration" #~ msgstr "빠른 열기 설정" #~ msgid "http://guake.org" #~ msgstr "http://guake.org" #~ msgid "Main Window height" #~ msgstr "메인 윈도우 높이" #~ msgid "" #~ "Tango\n" #~ "Linux console\n" #~ "XTerm\n" #~ "Rxvt\n" #~ "Custom\n" #~ msgstr "" #~ "Tango\n" #~ "Consola de Linux\n" #~ "XTerm\n" #~ "Rxvt\n" #~ "Personalitzat\n" #~ msgid "Select a tab" #~ msgstr "탭 선택" #~ msgid "Rename the selected tab." #~ msgstr "선택된 탭의 이름을 변경합니다." guake-3.6.3/po/nb.po000066400000000000000000001132351346623310400142030ustar00rootroot00000000000000# Translation of Guake to Norwegian Bokmål # Copyright (C) 2013 Guake Translators # This file is distributed under the same license as the Guake package. # # Translators: # Håvard Havdal ,2009 msgid "" msgstr "" "Project-Id-Version: Guake 0.4.5\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2016-08-18 17:32+0200\n" "PO-Revision-Date: 2019-04-28 18:50+0000\n" "Last-Translator: Allan Nordhøy \n" "Language-Team: Norwegian Bokmål \n" "Language: nb\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=n != 1;\n" "X-Generator: Weblate 3.6.1\n" #: ../guake/data/about.glade.h:1 msgid "About Guake" msgstr "Om Guake" #: ../guake/data/about.glade.h:5 msgid "" "Guake is an easy to access\n" "terminal based on FPS games terminal" msgstr "" "Guake er en lett tilgjengelig\n" "terminal basert på FPS-spillterminal." #: ../guake/data/guake.glade.h:1 msgid "Copy" msgstr "Kopier" #: ../guake/data/guake.glade.h:2 msgid "Paste" msgstr "Lim inn" #: ../guake/data/guake.glade.h:3 ../src/guake/prefs.py:79 msgid "Toggle Fullscreen" msgstr "Veksle fullskjermsvisning" #: ../guake/data/guake.glade.h:4 #, fuzzy msgid "Save to File..." msgstr "Lagre til fil…" #: ../guake/data/guake.glade.h:5 ../src/guake/prefs.py:85 msgid "Reset terminal" msgstr "Tilbakestill terminal" #: ../guake/data/guake.glade.h:6 #, fuzzy msgid "Find..." msgstr "Finn…" #: ../guake/data/guake.glade.h:7 #, fuzzy msgid "New Tab" msgstr "Ny fane" #: ../guake/data/guake.glade.h:8 msgid "Rename Tab" msgstr "Gi fane nytt navn" #: ../guake/data/guake.glade.h:9 msgid "Close Tab" msgstr "Lukk fane" #: ../guake/data/guake.glade.h:10 #, fuzzy msgid "Open link..." msgstr "Åpne lenke…" #: ../guake/data/guake.glade.h:11 #, fuzzy msgid "Search on Web" msgstr "Søk på nettet" #: ../guake/data/guake.glade.h:12 ../src/guake/prefs.py:83 msgid "Quit" msgstr "Avslutt" #: ../guake/data/guake.glade.h:13 msgid "Rename" msgstr "Gi nytt navn" #: ../guake/data/guake.glade.h:14 msgid "Close" msgstr "Lukk" #: ../guake/data/guake.glade.h:15 msgid "Guake!" msgstr "Guake!" #: ../guake/data/guake.glade.h:16 #, fuzzy msgid "Add a new tab" msgstr "Legg til fane" #: ../guake/data/prefs.glade.h:1 msgid "Guake Preferences" msgstr "Guake-egenskaper" #: ../guake/data/prefs.glade.h:2 msgid "Guake properties" msgstr "Guake-egenskaper" #: ../guake/data/prefs.glade.h:3 #, fuzzy msgid "" "Customize behavior and appearance of Guake!" msgstr "Personaliser Guake!" #: ../guake/data/prefs.glade.h:4 #, fuzzy msgid "" "Path to a bash script that would be automatically executed when Guake " "starts, unless you specify --no-startup-script.\n" "\n" "This would typically use the configuration by command line feature of " "Guake:\n" "\n" "#!/bin/bash\n" "\n" "sleep 5 # it is advised to wait a bit before Guake has been successfully " "started\n" "\n" "guake -r \"main\" -e \"cd ~/projects/myproject/main\"\n" "guake -r \"prod\" -e \"cd ~/projects/myproject/prod\"\n" msgstr "" "Sti til Bash-skript som startes ved åpning av Guake, med mindre du angir --" "no-startup-script.\n" "\n" "Dette vil typisk bruke oppsettet i kommandolinjefuksjonen i Guake:\n" "\n" "#!/bin/bash\n" "\n" "sleep 5 # det anbefales å vente litt før Guake har startet\n" "\n" "guake -r \"main\" -e \"cd ~/projects/myproject/main\"\n" "guake -r \"prod\" -e \"cd ~/projects/myproject/prod\"\n" #: ../guake/data/prefs.glade.h:15 msgid "Enable popup notifications on startup" msgstr "Aktiver oppsprettsvarslinger ved oppstart" #: ../guake/data/prefs.glade.h:16 msgid "Show tray icon" msgstr "Vis systemkurvsikon" #: ../guake/data/prefs.glade.h:17 #, fuzzy msgid "Always prompt on quit" msgstr "Spør ved avslutning" #: ../guake/data/prefs.glade.h:18 #, fuzzy msgid "_Flash terminal on bell" msgstr "_Blink terminal ved bjelle" #: ../guake/data/prefs.glade.h:19 #, fuzzy msgid "_Play system alert sound on bell" msgstr "_Spill systemvarslinslyd ved bjelle" #: ../guake/data/prefs.glade.h:20 #, fuzzy msgid "Path to script executed on Guake start:" msgstr "Sti til skript som startes ved åpning av Guake:" #: ../guake/data/prefs.glade.h:21 #, fuzzy msgid "Prompt on close tab:" msgstr "Spør ved lukking av fane:" #: ../guake/data/prefs.glade.h:22 msgid "" "Never\n" "With process running\n" "Always" msgstr "" "Aldri\n" "Med prosess kjørende\n" "Alltid" #: ../guake/data/prefs.glade.h:25 msgid "General" msgstr "Generelt" #: ../guake/data/prefs.glade.h:26 msgid "Bottom align window instead of top align" msgstr "Fest vindu til bunnen istedenfor toppen" #: ../guake/data/prefs.glade.h:27 #, fuzzy msgid "Appear on mouse display" msgstr "Vises på museskjermen" #: ../guake/data/prefs.glade.h:28 msgid "Appear on display:" msgstr "Vises på skjerm:" #: ../guake/data/prefs.glade.h:29 msgid "Place tabs on top" msgstr "Plasser faner øverst" #: ../guake/data/prefs.glade.h:30 msgid "Placement" msgstr "Plassering" #: ../guake/data/prefs.glade.h:31 msgid "Stay on top" msgstr "Alltid øverst" #: ../guake/data/prefs.glade.h:32 msgid "Use VTE titles for tab names" msgstr "Bruk VTE-tittel for fanenavn" #: ../guake/data/prefs.glade.h:33 msgid "Max tab name length:" msgstr "Maksimal fanenavnslengde:" #: ../guake/data/prefs.glade.h:34 msgid "0 means no size limit" msgstr "0 betyr ingen størrelsesgrense" #: ../guake/data/prefs.glade.h:35 msgid "Abbreviate directories in tab names" msgstr "Forkort mappenavn i fanenavn" #: ../guake/data/prefs.glade.h:36 msgid "Hide on lose focus" msgstr "Skjul når ikke fokusert" #: ../guake/data/prefs.glade.h:37 msgid "Show tab bar" msgstr "Vis fanelinje" #: ../guake/data/prefs.glade.h:38 msgid "Start fullscreen" msgstr "Start i fullskjermsvisning" #: ../guake/data/prefs.glade.h:39 msgid "Main Window" msgstr "Hovedvindu" #: ../guake/data/prefs.glade.h:40 msgid "Left" msgstr "Venstre" #: ../guake/data/prefs.glade.h:41 msgid "Center" msgstr "Midten" #: ../guake/data/prefs.glade.h:42 msgid "Right" msgstr "Høyre" #: ../guake/data/prefs.glade.h:43 #, fuzzy msgid "Main Window Horizontal Alignment" msgstr "Vannrett justering for hovedvindu" #: ../guake/data/prefs.glade.h:44 msgid "Main Window Height" msgstr "Hovedvindushøyde" #: ../guake/data/prefs.glade.h:45 msgid "Main Window Width" msgstr "Hovedvindusbredde" #: ../guake/data/prefs.glade.h:46 msgid "Custom command file path: " msgstr "Egendefinert kommandofilsti: " #: ../guake/data/prefs.glade.h:47 #, fuzzy msgid "Please select a json file" msgstr "Velg en JSON-fil" #: ../guake/data/prefs.glade.h:48 ../src/guake/prefs.py:75 msgid "General" msgstr "Generelt" #: ../guake/data/prefs.glade.h:49 msgid "Default interpreter:" msgstr "Forvalgt fortolker:" #: ../guake/data/prefs.glade.h:50 msgid "_Run command as a login shell" msgstr "_Kjør kommando som innloggingsskall" #: ../guake/data/prefs.glade.h:51 msgid "_Open new tab in current directory" msgstr "_Åpne ny fane i aktiv mappe" #: ../guake/data/prefs.glade.h:52 msgid "Shell" msgstr "Skall" #: ../guake/data/prefs.glade.h:53 msgid "Shell" msgstr "Skall" #: ../guake/data/prefs.glade.h:54 msgid "Show scrollbar" msgstr "Vis rullefelt" #: ../guake/data/prefs.glade.h:55 msgid "Scrollback lines:" msgstr "Tilbakerullingslinjer:" #: ../guake/data/prefs.glade.h:56 msgid "On output" msgstr "Ved utdata" #: ../guake/data/prefs.glade.h:57 msgid "On key stroke" msgstr "Ved tastetrykk" #: ../guake/data/prefs.glade.h:58 msgid "Scroll" msgstr "Rulling" #: ../guake/data/prefs.glade.h:59 msgid "Scrolling" msgstr "Rulling" #: ../guake/data/prefs.glade.h:60 #, fuzzy msgid "Use the system fixed width font" msgstr "Bruk systemets fastbreddefont" #: ../guake/data/prefs.glade.h:61 msgid "Font:" msgstr "Skrift:" #: ../guake/data/prefs.glade.h:62 #, fuzzy msgid "Choose some font" msgstr "Velg skrift" #: ../guake/data/prefs.glade.h:63 msgid "Text color:" msgstr "Tekstfarge:" #: ../guake/data/prefs.glade.h:64 msgid "Background color:" msgstr "Bakgrunnsfarge:" #: ../guake/data/prefs.glade.h:65 msgid "Cursor shape:" msgstr "Pekerutseende:" #: ../guake/data/prefs.glade.h:66 msgid "" "Block\n" "I-Beam\n" "Underline" msgstr "" "Blokk\n" "Tekstinntastingsmarkør\n" "Understrek" #: ../guake/data/prefs.glade.h:69 msgid "" "Follow GTK+ setting\n" "Blink on\n" "Blink off" msgstr "" "Følg GTK+innstilling\n" "Blinking på\n" "Blinking av" #: ../guake/data/prefs.glade.h:72 msgid "Cursor blink mode:" msgstr "Pekerblinkemodus:" #: ../guake/data/prefs.glade.h:73 msgid "Allow bold font" msgstr "Tillat fet skrift" #: ../guake/data/prefs.glade.h:74 #, fuzzy msgid "Palette" msgstr "Palett" #: ../guake/data/prefs.glade.h:75 #, fuzzy msgid "Built-in schemes:" msgstr "Innebygde skjema:" #: ../guake/data/prefs.glade.h:76 msgid "Color palette:" msgstr "Fargepalett:" #: ../guake/data/prefs.glade.h:77 msgid "Font color" msgstr "Skriftfarge:" #: ../guake/data/prefs.glade.h:78 #, fuzzy msgid "Background color" msgstr "Bakgrunnsfarge:" #: ../guake/data/prefs.glade.h:79 msgid "Use font and background color from the palette" msgstr "Bruk skrift og bakgrunnsfarge fra paletten" #: ../guake/data/prefs.glade.h:80 msgid "Demo:" msgstr "Demo:" #: ../guake/data/prefs.glade.h:81 msgid "Effects" msgstr "Effekter" #: ../guake/data/prefs.glade.h:82 msgid "Transparency:" msgstr "Gjennomsiktighet:" #: ../guake/data/prefs.glade.h:83 msgid "Background image:" msgstr "Bakgrunnsbilde:" #: ../guake/data/prefs.glade.h:84 ../src/guake/prefs.py:130 msgid "Appearance" msgstr "Utseende" #: ../guake/data/prefs.glade.h:85 #, fuzzy msgid "" "Quick open is a feature allowing you to open a file directly into " "your favorite text editor by clicking on its filename when it appears in " "your terminal. See the list of currently supported text patterns used to " "extract filename below." msgstr "" "Rask åpning er en funksjon som lar deg åpne en fil direkte i din " "favorittekstbehandler ved å klikke på dens filnavn når den opptrer i " "terminalen din. Sjekk listen over tekstmønster som støttes brukt til " "utpakking av filnavn nedenfor." #: ../guake/data/prefs.glade.h:86 msgid "Enable Quick Open when Ctrl+clicking on a filename in the terminal" msgstr "Skru på rask åpning ved å Ctrl+klikke på et filnavn i terminalen" #: ../guake/data/prefs.glade.h:87 #, fuzzy msgid "Editor command line:" msgstr "Kommando for åpning av tekstbehandler:" #: ../guake/data/prefs.glade.h:89 #, fuzzy, no-c-format msgid "" "Use the following elements in the open editor command line:\n" " - %(file_path)s: path to the file that has been clicked\n" " - %(line_number)s: if your editor supports it, you can directly open " "the file to a given line number when found on the screen.\n" "\n" "For example, for sublime, use subl %(file_path)s:%(line_number)s\n" "" msgstr "" "Bruk følgende elementer i den åpne tekstbehandlerens " "kommandolinje:\n" " - %(file_path)s: Sti til filen som har blitt klikket\n" " - %(line_number)s: Hvis din tekstbehandler støtter det, kan du " "direkte åpne en fil til et gitt linjenummer når funnet på skjermen.\n" "\n" "For eksempel, for Sublime, bruk subl %(file_path)s:%(line_number)s\n" "" #: ../guake/data/prefs.glade.h:95 msgid "Quick open in current terminal" msgstr "Rask åpning i nåværende terminal" #: ../guake/data/prefs.glade.h:96 msgid "" "Here is the list of supported patterns: (to add your own, please contact the " "Guake's authors)" msgstr "" "Her er en liste over støttede mønster: (For å legge til ditt eget, kontakt " "utviklerne av Guake)." #: ../guake/data/prefs.glade.h:97 #, fuzzy msgid "Quick Open" msgstr "Palette" #: ../guake/data/prefs.glade.h:98 msgid "Quick Open" msgstr "Rask åpning" #: ../guake/data/prefs.glade.h:99 #, fuzzy msgid "" "To change a shortcut simply click on its name.\n" "To disable a shortcut, press the \"Backspace\" key." msgstr "" "Endre en snarvei ved å klikke på dens navn.\n" "Trykk \"rettetast\" for å fjerne den." #: ../guake/data/prefs.glade.h:101 msgid "Keyboard shortcuts" msgstr "Tastatursnarveier" #: ../guake/data/prefs.glade.h:102 msgid "" "Note: These options may cause some applications to behave " "incorrectly. They are only here to allow you to work around certain " "applications and operating systems that expect different terminal behavior." msgstr "" "Merk: Dette er alternativer som kan forårsake at noen " "programmer oppfører seg unøyaktig. De er kun her for å tillate deg å arbeide " "rundt visse programmer og operativsystemer som forventer forskjellig " "terminaloppførsel." #: ../guake/data/prefs.glade.h:103 #, fuzzy msgid "" "ASCII DEL\n" "Escape sequence\n" "Control-H" msgstr "" "ASCII DEL\n" "Skiftesekvens\n" "Ctrl+H" #: ../guake/data/prefs.glade.h:106 msgid "_Backspace key generates:" msgstr "_Rettestast genererer:" #: ../guake/data/prefs.glade.h:107 #, fuzzy msgid "_Delete key generates:" msgstr "_Del-tast genererer:" #: ../guake/data/prefs.glade.h:108 #, fuzzy msgid "_Reset Compatibility Options to Defaults" msgstr "_Tilbakestill kompabilitetsalternativer til forvalg" #: ../guake/data/prefs.glade.h:109 msgid "Keyboard compatibility" msgstr "Tastaturkompabilitet" #: ../guake/data/prefs.glade.h:110 msgid "Compatibility" msgstr "Kompabilitet" #: ../src/guake/about.py:47 ../src/guake/gconfhandler.py:439 #: ../src/guake/guake_app.py:181 ../src/guake/guake_app.py:378 msgid "Guake Terminal" msgstr "Guake-terminal" #: ../src/guake/gconfhandler.py:369 ../src/guake/guake_app.py:1386 msgid "Terminal" msgstr "Terminal" #: ../src/guake/gconfhandler.py:440 #, fuzzy, python-format msgid "" "A problem happened when binding %s key.\n" "Please use Guake Preferences dialog to choose another key" msgstr "" "Et problem har oppstått under lagring av %s-tasten.\n" "Benytt guake-egenskapsdialogen for å velge en annen tast." #: ../src/guake/guake_app.py:132 msgid "Do you want to close the tab?" msgstr "Vil du virkelig lukke fanen?" #: ../src/guake/guake_app.py:135 msgid "Do you really want to quit Guake?" msgstr "Vil du virkelig avslutte Guake?" #: ../src/guake/guake_app.py:137 msgid " and one tab open" msgstr " og én fane åpen" #: ../src/guake/guake_app.py:139 #, python-brace-format msgid " and {0} tabs open" msgstr " og {0} faner åpne" #: ../src/guake/guake_app.py:142 msgid "There are no processes running" msgstr "Ingen prosesser kjører" #: ../src/guake/guake_app.py:144 msgid "There is a process still running" msgstr "Én prosess kjører fremdeles" #: ../src/guake/guake_app.py:146 #, fuzzy, python-brace-format msgid "There are {0} processes still running" msgstr "{0} prosesser kjører fremdeles." #: ../src/guake/guake_app.py:186 #, fuzzy msgid "guake-indicator" msgstr "guake-indicator" #: ../src/guake/guake_app.py:186 #, fuzzy msgid "guake-tray" msgstr "guake-tray" #: ../src/guake/guake_app.py:190 msgid "Show" msgstr "Vis" #: ../src/guake/guake_app.py:379 #, python-format msgid "" "Guake is now running,\n" "press {!s} to use it." msgstr "" "Guake kjører,\n" "trykk {!s} for å ta den i bruk." #: ../src/guake/guake_app.py:670 #, fuzzy, python-format msgid "Search on Web: '%s'" msgstr "Søk på nettet: \"%s\"" #: ../src/guake/guake_app.py:675 #, fuzzy msgid "Search on Web (no selection)" msgstr "Søk på nettet (ingen markering)" #: ../src/guake/guake_app.py:683 #, fuzzy msgid "Open Link: '{}...'" msgstr "Åpne lenke: \"{}…\"" #: ../src/guake/guake_app.py:685 msgid "Open Link: {}" msgstr "Åpne lenke: {}" #: ../src/guake/guake_app.py:688 #, fuzzy msgid "Open Link..." msgstr "Åpne lenke…" #: ../src/guake/guake_app.py:1425 msgid "Rename tab" msgstr "Gi fane nytt navn" #: ../src/guake/guake_app.py:1736 #, fuzzy msgid "Save to..." msgstr "Lagre i…" #: ../src/guake/guake_app.py:1743 ../src/guake/prefs.py:973 msgid "All files" msgstr "Alle filer" #: ../src/guake/guake_app.py:1748 msgid "Text and Logs" msgstr "Tekst og loggføring" #: ../src/guake/guake_app.py:1766 msgid "Find" msgstr "Søk" #: ../src/guake/guake_app.py:1768 msgid "Forward" msgstr "Forover" #: ../src/guake/guake_app.py:1769 msgid "Backward" msgstr "Bakover" #: ../src/guake/main.py:68 #, fuzzy msgid "Put Guake in fullscreen mode" msgstr "Fullskjermsvisning av Guake" #: ../src/guake/main.py:72 msgid "Toggles the visibility of the terminal window" msgstr "Veksler terminalvinduets synlighet" #: ../src/guake/main.py:76 #, fuzzy msgid "Shows Guake main window" msgstr "Viser hovedvinduet i Guake" #: ../src/guake/main.py:80 msgid "Hides Guake main window" msgstr "Skjuler hovedvinduet i Guake" #: ../src/guake/main.py:84 msgid "Shows Guake preference window" msgstr "Viser innstillingsvinduet i Guake" #: ../src/guake/main.py:88 msgid "Shows Guake's about info" msgstr "Viser info om Guake" #: ../src/guake/main.py:92 msgid "Add a new tab (with current directory set to NEW_TAB)" msgstr "Legg til ny fane (med nåværende mappe satt til NEW_TAB)" #: ../src/guake/main.py:96 msgid "Select a tab (SELECT_TAB is the index of the tab)" msgstr "Velg en fane (SELECT_TAB er fanens indeks)" #: ../src/guake/main.py:100 msgid "Return the selected tab index." msgstr "Returner valgt faneindeks." #: ../src/guake/main.py:104 msgid "Execute an arbitrary command in the selected tab." msgstr "Utfør vilkårlig kommando i valgt fane." #: ../src/guake/main.py:108 msgid "Specify the tab to rename. Default is 0." msgstr "Angi fanen å gi nytt navn. Forvalget er 0." #: ../src/guake/main.py:112 msgid "Set the hexadecimal (#rrggbb) background color of the selected tab." msgstr "Sett heksadesimal (#rrggbb) bakgrunnsfarge for valgt fane." #: ../src/guake/main.py:117 msgid "Set the hexadecimal (#rrggbb) foreground color of the selected tab." msgstr "Sett heksadesimal (#rrggbb) forgrunnsfarge for valgt fane." #: ../src/guake/main.py:123 msgid "" "Rename the specified tab. Reset to default if TITLE is a single dash \"-\"." msgstr "" "Gi angitt fane nytt navn. Tilbakestill til forvalg hvis TITLE er én " "bindestrek \"-\"." #: ../src/guake/main.py:129 msgid "" "Rename the current tab. Reset to default if TITLE is a single dash \"-\"." msgstr "" "Gi gjeldende fane nytt navn. Tilbakestill til forvalg hvis TITLE er én " "bindestrek \"-\"." #: ../src/guake/main.py:134 msgid "Says to Guake go away =(" msgstr "Ber Guake om å dra sin vei =(" #: ../src/guake/main.py:138 #, fuzzy msgid "Do not execute the start up script" msgstr "Ikke kjør oppstartsskriptet" #: ../src/guake/main.py:235 #, fuzzy msgid "Guake can not init!" msgstr "Guake kan ikke starte!" #: ../src/guake/main.py:236 msgid "" "Gconf Error.\n" "Have you installed guake.schemas properly?" msgstr "" "Gconf-feil.\n" "Har du installert guake.schemas ordentlig?" #. string to show in prefereces dialog for user shell option #: ../src/guake/prefs.py:67 msgid "" msgstr "" #: ../src/guake/prefs.py:77 msgid "Toggle Guake visibility" msgstr "Veksler Guakes synlighet" #: ../src/guake/prefs.py:81 msgid "Toggle Hide on Lose Focus" msgstr "Veksle skjuling ved tap av fokus" #: ../src/guake/prefs.py:88 msgid "Tab management" msgstr "Fanebehandling" #: ../src/guake/prefs.py:90 msgid "New tab" msgstr "Ny fane" #: ../src/guake/prefs.py:92 msgid "Close tab" msgstr "Lukk fane" #: ../src/guake/prefs.py:94 msgid "Rename current tab" msgstr "Gi gjeldende fane nytt navn" #: ../src/guake/prefs.py:97 msgid "Navigation" msgstr "Navigasjon" #: ../src/guake/prefs.py:99 msgid "Go to previous tab" msgstr "Gå til forrige fane" #: ../src/guake/prefs.py:101 msgid "Go to next tab" msgstr "Gå til neste fane" #: ../src/guake/prefs.py:103 msgid "Move current tab left" msgstr "Flytt nåværende fane til venstre" #: ../src/guake/prefs.py:105 msgid "Move current tab right" msgstr "Flytt nåværende fane til høyre" #: ../src/guake/prefs.py:107 msgid "Go to first tab" msgstr "Gå til første fane" #: ../src/guake/prefs.py:109 msgid "Go to second tab" msgstr "Gå til andre fane" #: ../src/guake/prefs.py:111 msgid "Go to third tab" msgstr "Gå til tredje fane" #: ../src/guake/prefs.py:113 msgid "Go to fourth tab" msgstr "Gå til fjerde fane" #: ../src/guake/prefs.py:115 msgid "Go to fifth tab" msgstr "Gå til femte fane" #: ../src/guake/prefs.py:117 msgid "Go to sixth tab" msgstr "Gå til sjette fane" #: ../src/guake/prefs.py:119 msgid "Go to seventh tab" msgstr "Gå til syvende fane" #: ../src/guake/prefs.py:121 msgid "Go to eighth tab" msgstr "Gå til åttende fane" #: ../src/guake/prefs.py:123 msgid "Go to ninth tab" msgstr "Gå til niende fane" #: ../src/guake/prefs.py:125 msgid "Go to tenth tab" msgstr "Gå til tiende fane" #: ../src/guake/prefs.py:127 msgid "Go to last tab" msgstr "Gå til siste fane" #: ../src/guake/prefs.py:132 msgid "Zoom out" msgstr "Forminsk" #: ../src/guake/prefs.py:134 msgid "Zoom in" msgstr "Forstørr" #: ../src/guake/prefs.py:136 msgid "Zoom in (alternative)" msgstr "Forstørr (alternativ)" #: ../src/guake/prefs.py:138 msgid "Increase height" msgstr "Øk høyde" #: ../src/guake/prefs.py:140 msgid "Decrease height" msgstr "Senk høyde" #: ../src/guake/prefs.py:142 msgid "Increase transparency" msgstr "Øk gjennomsiktighet" #: ../src/guake/prefs.py:144 msgid "Decrease transparency" msgstr "Senk gjennomsiktighet" #: ../src/guake/prefs.py:146 msgid "Toggle transparency" msgstr "Veksle gjennomsiktighet" #: ../src/guake/prefs.py:149 msgid "Clipboard" msgstr "Utklippstavle" #: ../src/guake/prefs.py:151 msgid "Copy text to clipboard" msgstr "Kopier tekst til utklippstavle" #: ../src/guake/prefs.py:153 msgid "Paste text from clipboard" msgstr "Lim inn tekst fra utklippstavle" #: ../src/guake/prefs.py:156 msgid "Extra features" msgstr "Ekstrafunksjoner" #: ../src/guake/prefs.py:159 #, fuzzy msgid "Search select text on web" msgstr "Søk etter markert tekst på nettet" #: ../src/guake/prefs.py:481 msgid "Action" msgstr "Handling" #: ../src/guake/prefs.py:491 msgid "Shortcut" msgstr "Snarvei" #: ../src/guake/prefs.py:651 ../src/guake/prefs.py:697 msgid "Custom" msgstr "Tilpasset" #: ../src/guake/prefs.py:969 msgid "JSON files" msgstr "JSON-filer" #: ../src/guake/prefs.py:1063 #, python-format msgid "The shortcut \"%s\" is already in use." msgstr "Hurtigtasten \"%s\" er allerede i bruk." #: ../src/guake/prefs.py:1064 msgid "Error setting keybinding." msgstr "Kunne ikke lagre hurtigtasten." #: ../src/guake/prefs.py:1076 #, python-format msgid "" "The shortcut \"%s\" cannot be used because it will become impossible to type " "using this key.\n" "\n" "Please try with a key such as Control, Alt or Shift at the same time.\n" msgstr "" "Hurtigtast \"%s\" kan ikke bli benyttes, det vil bli umulig å skrive ved " "bruk av denne tasten.\n" "\n" "Prøv med en tast som for eksempel Ctrl, Alt eller Shift samtidig.\n" #: guake/main.py:153 msgid "Return the selected tab label." msgstr "Returner valgt faneetikett." #: guake/data/prefs.glade:264 msgid "Never" msgstr "Aldri" #: guake/data/prefs.glade:265 #, fuzzy msgid "With process running" msgstr "Når prosessen kjører" #: guake/data/prefs.glade:266 msgid "Always" msgstr "Alltid" #: guake/data/prefs.glade:499 msgid "Refocus if open" msgstr "Refokuser hvis åpen" #: guake/data/prefs.glade:865 msgid "Custom command file path:" msgstr "Egendefinert kommandofilsti:" #: guake/data/prefs.glade:1315 msgid "Show resizer" msgstr "Vis størrelsesendrer" #: guake/data/prefs.glade:1423 msgid "Block" msgstr "Blokk" #: guake/data/prefs.glade:1424 msgid "I-Beam" msgstr "Tekstinntastingsmarkør" #: guake/data/prefs.glade:1425 msgid "Underline" msgstr "Understrek" #: guake/data/prefs.glade:1443 msgid "Follow GTK+ setting" msgstr "Følg GTK+innstilling" #: guake/data/prefs.glade:1444 msgid "Blink on" msgstr "Blinking på" #: guake/data/prefs.glade:1445 msgid "Blink off" msgstr "Blinking av" #: guake/data/prefs.glade:2236 #, fuzzy msgid "" "Use the following elements in the open editor command line:\n" "- %(file_path)s: path to the file that has been clicked\n" "- %(line_number)s: if your editor supports it, you can directly open " "the file to a given line number when found on the screen.\n" "\n" "For example, for sublime, use subl %(file_path)s:%(line_number)s\n" "" msgstr "" "Bruk følgende elementer i den åpne tekstbehandlerens " "kommandolinje:\n" " - %(file_path)s: Sti til filen som har blitt klikket\n" " - %(line_number)s: Hvis din tekstbehandler støtter det, kan du " "direkte åpne en fil til et gitt linjenummer når funnet på skjermen.\n" "\n" "For eksempel, for Sublime, bruk subl %(file_path)s:%(line_number)s\n" "" #: guake/data/prefs.glade:2442 guake/data/prefs.glade:2462 msgid "ASCII DEL" msgstr "ASCII DEL" #: guake/data/prefs.glade:2443 guake/data/prefs.glade:2463 msgid "Escape sequence" msgstr "Skiftesekvens" #: guake/data/prefs.glade:2444 guake/data/prefs.glade:2464 #, fuzzy msgid "Control-H" msgstr "Ctrl+H" #: guake/data/prefs.glade:2600 #, fuzzy msgid "" "In this dialog you can attach your own command or script to various " "guake events" msgstr "" "I denne dialogen kan du legge ved din egen kommando eller skript for " "forskjellige Guake-hendelser." #: guake/data/prefs.glade:2635 msgid "On show:" msgstr "Ved visning:" #: guake/data/prefs.glade:2665 msgid "On start:" msgstr "Ved start:" #: guake/data/prefs.glade:2714 msgid "Hooks" msgstr "Kroker" #: guake/data/guake-prefs.desktop:8 msgid "Configure your Guake sessions" msgstr "Sett opp dine Guake-økter" #: guake/data/guake-prefs.desktop:15 guake/data/guake.desktop:18 #, fuzzy msgid "guake" msgstr "guake" #: guake/data/guake-prefs.desktop:20 msgid "Terminal;Utility;" msgstr "Terminal;Verktøy;" #: guake/data/guake.desktop:10 msgid "Use the command line in a Quake-like terminal" msgstr "Bruk kommandolinjen i en Quake-lignende terminal" #: guake/data/prefs.glade:770 #, fuzzy msgid "Main Window Horizontal Alignment" msgstr "Vannrett justering av hovedvindu" #: guake/prefs.py:89 msgid "Show and focus Guake window" msgstr "Vis og fokuser Guake-vindu" #: guake/data/prefs.glade:566 #, fuzzy msgid "0" msgstr "0" #: guake/data/prefs.glade:610 msgid "Main Window Options" msgstr "Hovedvindusvalg" #: guake/data/prefs.glade:770 msgid "Horizontal Alignment:" msgstr "Vannrett tilpasning:" #: guake/data/prefs.glade:855 msgid "Height:" msgstr "Høyde:" #: guake/data/prefs.glade:868 msgid "Width:" msgstr "Bredde:" #: guake/data/prefs.glade:913 msgid "Geometry" msgstr "Geometri" #: guake/data/prefs.glade:944 msgid "Main Window" msgstr "Hovedvindu" #: guake/data/prefs.glade:1197 msgid "Infinite scrolling" msgstr "Uendelig rulling" #: guake/data/prefs.glade:1219 msgid "Scrollbar" msgstr "Rullefelt" #: guake/data/prefs.glade:1304 msgid "Scroll to Bottom" msgstr "Rull til bunnen" #: guake/data/prefs.glade:2117 #, fuzzy msgid "" "Quick open is a feature allowing you to open a file directly into your " "favorite text editor by clicking on its filename when it appears in your " "terminal. See the list of currently supported text patterns used to extract " "filename below." msgstr "" "Rask åpning er en funksjon som lar deg åpne en fil direkte i din " "favorittekstbehandler ved å klikke på dens filnavn når den opptrer i " "terminalen din. Sjekk listen over tekstmønster som støttes brukt til " "utpakking av filnavn nedenfor." #: guake/main.py:64 msgid "Show Guake version number and exit" msgstr "Vis Guake-versjonsnummer og avslutt" #: guake/data/prefs.glade:93 msgid "Guake properties" msgstr "Guake-egenskaper" #: guake/data/prefs.glade:107 #, fuzzy msgid "Customize behavior and appearance of Guake!" msgstr "Personaliser Guake." #: guake/data/prefs.glade:929 msgid "Displacement in pixels" msgstr "Forskyvning i piksler" #: guake/main.py:73 msgid "Enable verbose logging" msgstr "Skru på sirlig loggføring" #: guake/guake_app.py:680 #, fuzzy msgid "Quick Open: '{!s}...'" msgstr "Rask åpning: \"{!s}…\"" #: guake/guake_app.py:683 #, fuzzy msgid "Quick Open: {!s}" msgstr "Rask åpning: {!s}" #: guake/guake_app.py:691 #, fuzzy msgid "Open Link: '{!s}...'" msgstr "Åpne lenke: \"{!s}…\"" #: guake/guake_app.py:694 #, fuzzy msgid "Open Link: {!s}" msgstr "Åpne lenke: {!s}" #: guake/data/prefs.glade:2175 #, fuzzy msgid "" "WARNING: your system seems to have PCRE2 disabled for VTE, " "preventing application such as Guake to register \"matchers\" using regular " "expressions. Please contact your distribution to request a new version of " "VTE with PCRE2 enabled ! To use Quick Open, you must select the text " "before using Ctrl+click." msgstr "" "ADVARSEL: Systemet ditt ser ut til å ha PCRE2 avskrudd for VTE, " "noe som forhindrer programmer som Guake fra å registrere \"treffende\" ved " "bruk av regulære uttrykk. Kontakt din distribusjon for å forespørre en ny " "versjon av VTE med PCRE2 påskrudd. For å bruke rask åpning, må du velge " "teksten før du bruker Ctrl+klikk." #: guake/guake_app.py:680 #, fuzzy msgid "Quick Open: {!s}..." msgstr "Rask åpning: {!s}…" #: guake/guake_app.py:691 #, fuzzy msgid "Open Link: {!s}..." msgstr "Åpne lenke: {!s}…" #: guake/guake_app.py:688 #, fuzzy msgid "Quick Open..." msgstr "Rask åpning…" #: guake/data/prefs.glade:223 msgid "Start Guake at login" msgstr "Start Guake ved innlogging" #: guake/data/prefs.glade:363 #, fuzzy msgid "Gtk Theme:" msgstr "GTK+drakt" #: guake/data/prefs.glade:387 msgid "Prefer dark theme" msgstr "Foretrekk mørk drakt" #: guake/guake_app.py:435 msgid "Custom Commands" msgstr "Egendefinerte kommandoer" #: guake/main.py:184 msgid "" "Specify the tab to rename. Default is 0. Can be used to select tab by UUID." msgstr "" "Angi fanen å gi nytt navn. Forvalget er 0. Kan brukes for å velge fane etter " "UUID." #: guake/main.py:212 #, fuzzy msgid "" "Rename the specified tab by --tab-index. Reset to default if TITLE is a " "single dash \"-\"." msgstr "" "Gi angitt fane nytt navn med --tab-index. Tilbalestill til forvalg hvis " "TITLE er én bindestrek \"-\"." #: data/search.glade:138 msgid "Search forward" msgstr "Søk forover" #: data/search.glade:153 #, fuzzy msgid "Match case" msgstr "Tilpass til bokstavshøyde" #: data/search.glade:186 msgid "Current search direction: Backward" msgstr "Nåværende søkeretning: Bakover" #: data/prefs.glade:680 msgid "Set window title to current tab name" msgstr "Sett vindustittel til gjeldende fanenavn" #: guake/menus.py:48 #, fuzzy msgid "Copy Url" msgstr "Kopier nettadresse" #: guake/menus.py:62 #, fuzzy msgid "Split ―" msgstr "Splitt ―" #: guake/menus.py:65 #, fuzzy msgid "Split " msgstr "Splitt " #: guake/menus.py:68 guake/prefs.py:150 msgid "Close terminal" msgstr "Lukk terminal" #: guake/prefs.py:137 #, fuzzy msgid "Split management" msgstr "Splitt-behandling" #: guake/prefs.py:142 msgid "Split tab vertical" msgstr "Splitt fane loddrett" #: guake/prefs.py:146 msgid "Split tab horizontal" msgstr "Splitt fane vannrett" #: guake/prefs.py:154 msgid "Focus terminal above" msgstr "Fokuser terminal ovenfor" #: guake/prefs.py:158 msgid "Focus terminal below" msgstr "Fokuser terminal nedenfor" #: guake/prefs.py:162 msgid "Focus terminal on the left" msgstr "Fokuser terminal til venstre" #: guake/prefs.py:166 msgid "Focus terminal on the right" msgstr "Fokuser terminal til høyre" #: guake/prefs.py:170 msgid "Move the terminal split handle up" msgstr "Flytt terminalsplitthendelen oppover" #: guake/prefs.py:174 msgid "Move the terminal split handle down" msgstr "Flytt terminalsplitthendelen nedover" #: guake/prefs.py:178 msgid "Move the terminal split handle right" msgstr "Flytt terminalsplitthendelen til høyre" #: guake/prefs.py:182 msgid "Move the terminal split handle left" msgstr "Flytt terminalsplitthendelen til venstre" #: guake/menus.py:65 #, fuzzy msgid "Split |" msgstr "Splitt |" #: guake/menus.py:72 #, fuzzy msgid "Save content..." msgstr "Lagre innhold…" #: data/prefs.glade:1182 #, fuzzy msgid "" "This might not work on all shells, make sure that your shell supports the --" "login option" msgstr "" "Dette fungerer kanskje ikke på alle skall, forsikre deg om at ditt skall " "støtter --login valget" #: guake/prefs.py:128 msgid "New tab in home directory" msgstr "Ny fane i hjemmemappe" #: guake/dialogs.py:56 #, python-brace-format msgid " on {0} workspaces" msgstr " på {0} arbeidsområder" #: guake/main.py:211 #, fuzzy msgid "Change Guake palette scheme" msgstr "Endre Guake palett-valg" #: data/prefs.glade:331 msgid "Use workspace-specific tab sets (requires restart)" msgstr "Bruk arbeidsområdespesifikke fanesett (omstart kreves)" #: guake/main.py:175 msgid "Split the selected tab vertically." msgstr "Del valgt fane loddrett." #: guake/main.py:183 msgid "Split the selected tab horizontally." msgstr "Del valft fane vannrett." #: data/prefs.glade:348 msgid "Show close buttons for tabs" msgstr "Vis lukkeknapper for faner" #: data/prefs.glade:1682 msgid "Bold text is also bright" msgstr "Fet tekst er også lysnet" #: data/prefs.glade:1682 msgid "Bold text is also bright (VTE >=0.52)" msgstr "Fet tekst er også lysnet (VTE >=0.52)" #: guake/menus.py:42 msgid "Save Tabs" msgstr "Lagre faner" #: guake/menus.py:45 msgid "Restore Tabs" msgstr "Gjenopprett faner" #: guake/prefs.py:113 #, fuzzy msgid "Search terminal" msgstr "Søk i terminalen" #: guake/main.py:278 #, fuzzy msgid "Save Guake preferences to this filename" msgstr "Lagre Guake-innstillinger til denne filen" #: guake/main.py:286 msgid "Restore Guake preferences from this file" msgstr "Gjenopprett Guake-innstillinger fra denne filen" #: guake/guake_app.py:1192 #, python-brace-format msgid "Your session.json file is broken, backup to {session_filename}.bak" msgstr "" "Din session.json-fil er ødelagt, sikkerhetskopier til {session_filename}.bak" #: guake/guake_app.py:1228 #, fuzzy, python-brace-format msgid "" "Your session.json schema is broken, backup to {0}.bak,and error message has " "been saved to {0}.log.err" msgstr "" "Din session.json-fil er ødelagt, sikkerhetskopier til {0}.bag, og " "feilmeldingen har blitt lagret til {0}.log.err" #: guake/guake_app.py:1239 #, fuzzy msgid "Your tabs has been restored!" msgstr "Fanene dine har blitt gjenopprettet." #: data/prefs.glade:190 msgid "Restore previous session (tabs)" msgstr "Gjenopprett forrige økt (faner)" #: data/prefs.glade:204 msgid "Enable notification when restore tabs" msgstr "Skru på merknader når faner gjenopprettes" #: data/prefs.glade:218 msgid "Automatically save session when the tabs has been modified" msgstr "Lagre økt automatisk når fanene har blitt endret" #: data/prefs.glade:238 #, fuzzy msgid "Startup & Tabs (Experiment)" msgstr "Oppstart og faner (eksperimentelt)" #: guake/guake_app.py:1192 #, python-brace-format msgid "" "Your {session_filename} file is broken, backup to {session_filename}.bak" msgstr "" "Din {session_filename}-fil er ødelagt, sikkerhetskopier til " "{session_filename}.bak" #: guake/guake_app.py:1227 #, fuzzy, python-brace-format msgid "" "Your {session_filename} schema is broken, backup to {0}.bak,and error " "message has been saved to {session_filename}.log.err" msgstr "" "Din {session_filename}-fil er ødelagt, sikkerhetskopier til {0}.bak. " "Feilmledingen har blitt lagret i {session_filename}.log.err" #: guake/guake_app.py:1227 #, python-brace-format msgid "" "Your {session_filename} schema is broken, backup to {session_filename}.bak," "and error message has been saved to {session_filename}.log.err." msgstr "" "Din {session_filename}-fil er ødelagt, sikkerhetskopier til " "{session_filename}.bak. Feilmledingen har blitt lagret i {session_filename}." "log.err" #: guake/guake_app.py:1227 #, python-brace-format msgid "" "Your {session_filename} schema is broken, backup to {session_filename}.bak, " "and error message has been saved to {session_filename}.log.err." msgstr "" "Din {session_filename}-fil er ødelagt, sikkerhetskopier til " "{session_filename}.bak. Feilmledingen har blitt lagret i {session_filename}." "log.err" #: guake/notebook.py:317 msgid "" "You are going to restore *all* the tabs!\n" "which means all your terminals & pages will be replaced.\n" "\n" "Do you want to continue?" msgstr "" "Du vil gjenopprette *alle* fanene.\n" "Dette betyr at alle dine terminaler og sider vil bli erstattet.\n" "\n" "Ønsker du å fortsette?" #: guake/main.py:296 msgid "Show support infomations" msgstr "Vis støtteinfo" #: guake/guake_app.py:1240 #, python-brace-format msgid "" "Tabs session restore abort.\n" "Your session file ({session_filename}) missing schema_version as key" msgstr "" #: guake/guake_app.py:1252 #, python-brace-format msgid "" "Tabs session restore abort.\n" "Your session file schema version is higher than current version " "({session_file_schema_version} > {current_schema_version})." msgstr "" #: guake/data/prefs.glade:409 msgid "Use workspace-specific tab sets (requires restart, only work on X11)" msgstr "" #~ msgid "key binding error" #~ msgstr "Hurtigtast error" #~ msgid "Unable to bind global %s key" #~ msgstr "Kunne ikke lagre %s tasten" #~ msgid "http://guake.org" #~ msgstr "http://guake.org" #~ msgid "" #~ "Tango\n" #~ "Linux console\n" #~ "XTerm\n" #~ "Rxvt\n" #~ "Custom\n" #~ msgstr "" #~ "Tango\n" #~ "Linux console\n" #~ "XTerm\n" #~ "Rxvt\n" #~ "Custom\n" #~ msgid "Select a tab" #~ msgstr "Velg en fane" #~ msgid "Rename the selected tab." #~ msgstr "Gi nytt navn til aktiv fane." #~ msgid "Background" #~ msgstr "Bakgrunn" #~ msgid "Choose some color" #~ msgstr "Velg en farge" #~ msgid "Image:" #~ msgstr "Bildet:" #~ msgid "Style:" #~ msgstr "Stil:" #~ msgid "Use system defaults" #~ msgstr "Bruk systeminstillinger" guake-3.6.3/po/nl.po000066400000000000000000001153421346623310400142160ustar00rootroot00000000000000# Translation of Guake to Dutch # Copyright (C) 2013 Guake Translators # This file is distributed under the same license as the Guake package. # # Translators: # Robert van Drunen , 2011 msgid "" msgstr "" "Project-Id-Version: Guake 0.4.5\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2017-04-14 12:33+0200\n" "PO-Revision-Date: 2019-04-28 18:50+0000\n" "Last-Translator: Heimen Stoffels \n" "Language-Team: Dutch \n" "Language: nl\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=n != 1;\n" "X-Generator: Weblate 3.6.1\n" #: ../guake/data/about.glade.h:1 msgid "About Guake" msgstr "Over Guake" #: ../guake/data/about.glade.h:5 msgid "" "Guake is an easy to access\n" "terminal based on FPS games terminal" msgstr "" "Guake is een makkelijk toegankelijke\n" "terminal, gebaseerd op de terminal van FPS-spellen" #: ../guake/data/guake.glade.h:1 msgid "Copy" msgstr "Kopiëren" #: ../guake/data/guake.glade.h:2 msgid "Paste" msgstr "Plakken" #: ../guake/data/guake.glade.h:3 ../src/guake/prefs.py:79 msgid "Toggle Fullscreen" msgstr "Volledig scherm aan/uit" #: ../guake/data/guake.glade.h:4 msgid "Save to File..." msgstr "Opslaan naar bestand..." #: ../guake/data/guake.glade.h:5 ../src/guake/prefs.py:85 msgid "Reset terminal" msgstr "Standaardwaarden" #: ../guake/data/guake.glade.h:6 msgid "Find..." msgstr "Zoeken..." #: ../guake/data/guake.glade.h:7 msgid "New Tab" msgstr "Nieuw tabblad" #: ../guake/data/guake.glade.h:8 msgid "Rename Tab" msgstr "Tabbladnaam wijzigen" #: ../guake/data/guake.glade.h:9 msgid "Close Tab" msgstr "Tabblad sluiten" #: ../guake/data/guake.glade.h:10 msgid "Open link..." msgstr "Link openen..." #: ../guake/data/guake.glade.h:11 msgid "Search on Web" msgstr "Zoeken op internet" #: ../guake/data/guake.glade.h:12 ../src/guake/prefs.py:83 msgid "Quit" msgstr "Afsluiten" #: ../guake/data/guake.glade.h:13 msgid "Rename" msgstr "Naam wijzigen" #: ../guake/data/guake.glade.h:14 msgid "Close" msgstr "Sluiten" #: ../guake/data/guake.glade.h:15 msgid "Guake!" msgstr "Guake!" #: ../guake/data/guake.glade.h:16 msgid "Add a new tab" msgstr "Nieuw tabblad toevoegen" #: ../guake/data/prefs.glade.h:1 msgid "Guake Preferences" msgstr "Guake-voorkeuren" #: ../guake/data/prefs.glade.h:2 msgid "Guake properties" msgstr "Guake-voorkeuren" #: ../guake/data/prefs.glade.h:3 msgid "" "Customize behavior and appearance of Guake!" msgstr "Pas Guake's gedrag en uiterlijk aan" #: ../guake/data/prefs.glade.h:4 msgid "" "Path to a bash script that would be automatically executed when Guake " "starts, unless you specify --no-startup-script.\n" "\n" "This would typically use the configuration by command line feature of " "Guake:\n" "\n" "#!/bin/bash\n" "\n" "sleep 5 # it is advised to wait a bit before Guake has been successfully " "started\n" "\n" "guake -r \"main\" -e \"cd ~/projects/myproject/main\"\n" "guake -r \"prod\" -e \"cd ~/projects/myproject/prod\"\n" msgstr "" "Pad naar een bash-script dat automatisch moet worden uitgevoerd zodra Guake " "start, tenzij u --no-startup-script opgeeft.\n" "\n" "Dit gebruikt meestal de configuratie van de Guake-opdrachtregelfunctie:\n" "#!/bin/bash\n" "\n" "sleep 5 # aangeraden wordt om even te wachten voordat Guake succesvol is " "opgestart\n" "\n" "guake -r \"main\" -e \"cd ~/projecten/mijnproject/main\"\n" "guake -r \"prod\" -e \"cd ~/projecten/mijnproject/prod\"\n" #: ../guake/data/prefs.glade.h:15 msgid "Enable popup notifications on startup" msgstr "Pop-upmeldingen tonen bij opstarten" #: ../guake/data/prefs.glade.h:16 msgid "Show tray icon" msgstr "Systeemvakpictogram tonen" #: ../guake/data/prefs.glade.h:17 msgid "Always prompt on quit" msgstr "Altijd om bevestiging vragen bij afsluiten" #: ../guake/data/prefs.glade.h:18 msgid "_Flash terminal on bell" msgstr "Terminal _knipperen bij bel" #: ../guake/data/prefs.glade.h:19 msgid "_Play system alert sound on bell" msgstr "Systeem-meldingsgeluid afs_pelen bij bel" #: ../guake/data/prefs.glade.h:20 msgid "Path to script executed on Guake start:" msgstr "Pad naar bij opstarten uit te voeren script:" #: ../guake/data/prefs.glade.h:21 msgid "Prompt on close tab:" msgstr "Sluiten van tabblad bevestigen:" #: ../guake/data/prefs.glade.h:22 msgid "" "Never\n" "With process running\n" "Always" msgstr "" "Nooit\n" "Als er een proces wordt uitgevoerd\n" "Altijd" #: ../guake/data/prefs.glade.h:25 msgid "General" msgstr "Algemeen" #: ../guake/data/prefs.glade.h:26 msgid "Bottom align window instead of top align" msgstr "Venster uitlijnen aan onderkant i.p.v. bovenkant" #: ../guake/data/prefs.glade.h:27 msgid "Appear on mouse display" msgstr "Verschijnen op scherm waar muis aanwezig is" #: ../guake/data/prefs.glade.h:28 msgid "Appear on display:" msgstr "Verschijnen op scherm:" #: ../guake/data/prefs.glade.h:29 msgid "Place tabs on top" msgstr "Tabbladen bovenaan plaatsen" #: ../guake/data/prefs.glade.h:30 msgid "Placement" msgstr "Plaatsing" #: ../guake/data/prefs.glade.h:31 msgid "Stay on top" msgstr "Altijd bovenop" #: ../guake/data/prefs.glade.h:32 msgid "Hide on lose focus" msgstr "Verbergen bij verliezen van focus" #: ../guake/data/prefs.glade.h:33 msgid "Show tab bar" msgstr "Tabbladbalk tonen" #: ../guake/data/prefs.glade.h:34 msgid "Start fullscreen" msgstr "In volledig scherm-modus starten" #: ../guake/data/prefs.glade.h:35 msgid "Use VTE titles for tab names" msgstr "VTE-titels gebruiken voor tabbladnamen" #: ../guake/data/prefs.glade.h:36 msgid "Abbreviate directories in tab names" msgstr "Mapnamen inkorten in tabbladnamen" #: ../guake/data/prefs.glade.h:37 msgid "Max tab name length:" msgstr "Max. lengte van tabbladnaam:" #: ../guake/data/prefs.glade.h:38 msgid "Main Window" msgstr "Hoofdvenster" #: ../guake/data/prefs.glade.h:39 msgid "Left" msgstr "Links" #: ../guake/data/prefs.glade.h:40 msgid "Center" msgstr "Gecentreerd" #: ../guake/data/prefs.glade.h:41 msgid "Right" msgstr "Rechts" #: ../guake/data/prefs.glade.h:42 msgid "Main Window Horizontal Alignment" msgstr "Hoofdvenster - Horizontale uitlijning" #: ../guake/data/prefs.glade.h:43 msgid "Main Window Height" msgstr "Hoofdvenster - Hoogte" #: ../guake/data/prefs.glade.h:44 msgid "Main Window Width" msgstr "Hoofdvenster - Breedte" #: ../guake/data/prefs.glade.h:45 msgid "Custom command file path: " msgstr "Bestandspad aangepaste opdracht: " #: ../guake/data/prefs.glade.h:46 msgid "Please select a json file" msgstr "Kies een JSON-bestand" #: ../guake/data/prefs.glade.h:47 ../src/guake/prefs.py:75 msgid "General" msgstr "Algemeen" #: ../guake/data/prefs.glade.h:48 msgid "Default interpreter:" msgstr "Standaard interpreter:" #: ../guake/data/prefs.glade.h:49 msgid "_Run command as a login shell" msgstr "Opdracht uitvoe_ren als aanmeldshell" #: ../guake/data/prefs.glade.h:50 msgid "_Open new tab in current directory" msgstr "Nieuw tabblad _openen in huidige map" #: ../guake/data/prefs.glade.h:51 msgid "Shell" msgstr "Shell" #: ../guake/data/prefs.glade.h:52 msgid "Shell" msgstr "Shell" #: ../guake/data/prefs.glade.h:53 msgid "Show scrollbar" msgstr "Schuifbalk tonen" #: ../guake/data/prefs.glade.h:54 msgid "Scrollback lines:" msgstr "Aantal terug te scrollen regels:" #: ../guake/data/prefs.glade.h:55 msgid "On output" msgstr "Bij uitvoer" #: ../guake/data/prefs.glade.h:56 msgid "On key stroke" msgstr "Na toetsaanslag" #: ../guake/data/prefs.glade.h:57 msgid "Scroll" msgstr "Scrollen" #: ../guake/data/prefs.glade.h:58 msgid "Scrolling" msgstr "Scrollen" #: ../guake/data/prefs.glade.h:59 msgid "Use the system fixed width font" msgstr "Vaste breedte-lettertype van systeem gebruiken" #: ../guake/data/prefs.glade.h:60 msgid "Font:" msgstr "Lettertype:" #: ../guake/data/prefs.glade.h:61 msgid "Show resizer" msgstr "Herschaler tonen" #: ../guake/data/prefs.glade.h:62 msgid "Choose some font" msgstr "Kies een lettertype" #: ../guake/data/prefs.glade.h:63 msgid "Text color:" msgstr "Tekstkleur:" #: ../guake/data/prefs.glade.h:64 msgid "Background color:" msgstr "Achtergrondkleur:" #: ../guake/data/prefs.glade.h:65 msgid "Cursor shape:" msgstr "Cursorvorm:" #: ../guake/data/prefs.glade.h:66 msgid "" "Block\n" "I-Beam\n" "Underline" msgstr "" "Blokje\n" "I-Streepje\n" "Onderstrepen" #: ../guake/data/prefs.glade.h:69 msgid "" "Follow GTK+ setting\n" "Blink on\n" "Blink off" msgstr "" "GTK+-instelling volgen\n" "Knipperen aan\n" "Knipperen uit" #: ../guake/data/prefs.glade.h:72 msgid "Cursor blink mode:" msgstr "Knippermodus van cursor:" #: ../guake/data/prefs.glade.h:73 msgid "Allow bold font" msgstr "Vetgedrukt lettertype toestaan" #: ../guake/data/prefs.glade.h:74 msgid "Palette" msgstr "Palet" #: ../guake/data/prefs.glade.h:75 msgid "Built-in schemes:" msgstr "Ingebouwde schema's:" #: ../guake/data/prefs.glade.h:76 msgid "Color palette:" msgstr "Kleurenpalet:" #: ../guake/data/prefs.glade.h:77 msgid "Font color" msgstr "Tekstkleur" #: ../guake/data/prefs.glade.h:78 msgid "Background color" msgstr "Achtergrondkleur" #: ../guake/data/prefs.glade.h:79 msgid "Use font and background color from the palette" msgstr "Lettertype- en achtergrondkleur uit het palet gebruiken" #: ../guake/data/prefs.glade.h:80 msgid "Demo:" msgstr "Demo:" #: ../guake/data/prefs.glade.h:81 msgid "Effects" msgstr "Effecten" #: ../guake/data/prefs.glade.h:82 msgid "Transparency:" msgstr "Doorzichtigheid:" #: ../guake/data/prefs.glade.h:83 msgid "Background image:" msgstr "Achtergrondafbeelding:" #: ../guake/data/prefs.glade.h:84 msgid "Select A File" msgstr "Kies een bestand" #: ../guake/data/prefs.glade.h:85 ../src/guake/prefs.py:130 msgid "Appearance" msgstr "Uiterlijk" #: ../guake/data/prefs.glade.h:86 msgid "" "Quick open is a feature allowing you to open a file directly into " "your favorite text editor by clicking on its filename when it appears in " "your terminal. See the list of currently supported text patterns used to " "extract filename below." msgstr "" "Snel openen is een functie die je in staat stelt een bestand direct " "te openen in je favoriete tekstbewerker door te klikken op de bestandsnaam " "van een genoemd bestand in je terminal. Hieronder vindt je een lijst van " "momenteel ondersteunde tekstpatronen die kunnen worden gebruikt om de " "bestandsnaam te achterhalen." #: ../guake/data/prefs.glade.h:87 msgid "Enable Quick Open when Ctrl+clicking on a filename in the terminal" msgstr "" "Snel openen inschakelen door Ctrl+klik te gebruiken op een bestandsnaam in " "de terminal" #: ../guake/data/prefs.glade.h:88 msgid "Editor command line:" msgstr "Tekstbewerker-opdrachtregel:" #: ../guake/data/prefs.glade.h:90 #, no-c-format msgid "" "Use the following elements in the open editor command line:\n" " - %(file_path)s: path to the file that has been clicked\n" " - %(line_number)s: if your editor supports it, you can directly open " "the file to a given line number when found on the screen.\n" "\n" "For example, for sublime, use subl %(file_path)s:%(line_number)s\n" "" msgstr "" "Gebruik de volgende elementen in het tekstbewerker-" "opdrachtregelveld:\n" " - %(file_path)s: pad naar het aangeklikte bestand\n" " - %(line_number)s: je kunt, als je tekstbewerker dit ondersteunt, " "het bestand direct openen op een opgegeven regelnummer indien dit " "overeenkomt.\n" "\n" "Gebruik bijv. voor Sublime subl %(file_path)s:%(line_number)s\n" "" #: ../guake/data/prefs.glade.h:96 msgid "Quick open in current terminal" msgstr "Snel openen in huidige terminal" #: ../guake/data/prefs.glade.h:97 msgid "" "Here is the list of supported patterns: (to add your own, please contact the " "Guake's authors)" msgstr "" "Hier vindt je een lijst van ondersteunde patronen: (als je je eigen patronen " "wilt toevoegen, neem dan contact op met de Guake-ontwikkelaars)" #: ../guake/data/prefs.glade.h:98 msgid "Quick Open" msgstr "Snel openen" #: ../guake/data/prefs.glade.h:99 msgid "Quick Open" msgstr "Snel openen" #: ../guake/data/prefs.glade.h:100 msgid "" "To change a shortcut simply click on its name.\n" "To disable a shortcut, press the \"Backspace\" key." msgstr "" "Klik op de naam van een sneltoets om deze te wijzigen.\n" "Druk op de \"Backspace\"-toets om een sneltoets uit te schakelen." #: ../guake/data/prefs.glade.h:102 msgid "Keyboard shortcuts" msgstr "Sneltoetsen" #: ../guake/data/prefs.glade.h:103 msgid "" "Note: These options may cause some applications to behave " "incorrectly. They are only here to allow you to work around certain " "applications and operating systems that expect different terminal behavior." msgstr "" "Waarschuwing: Deze instellingen kunnen ongewenst gedrag van " "applicaties veroorzaken. Ze zijn hier alleen beschikbaar zodat applicaties " "en besturingssystemen die ander terminal-gedrag verwachten omzeild kunnen " "worden." #: ../guake/data/prefs.glade.h:104 msgid "" "ASCII DEL\n" "Escape sequence\n" "Control-H" msgstr "" "ASCII DEL\n" "Escape-sequentie\n" "Control-H" #: ../guake/data/prefs.glade.h:107 msgid "_Backspace key generates:" msgstr "Resultaat _backspace-toets:" #: ../guake/data/prefs.glade.h:108 msgid "_Delete key generates:" msgstr "Resultaat _delete-toets:" #: ../guake/data/prefs.glade.h:109 msgid "_Reset Compatibility Options to Defaults" msgstr "Standaardwaarden he_rstellen" #: ../guake/data/prefs.glade.h:110 msgid "Keyboard compatibility" msgstr "Toetsenbord-compatibiliteit" #: ../guake/data/prefs.glade.h:111 msgid "Compatibility" msgstr "Compatibiliteit" #: ../guake/data/prefs.glade.h:112 msgid "" "In this dialog you can attach your own command or script to various " "guake events" msgstr "" "In dit dialoogvenster kun je je eigen opdracht of script toevoegen " "aan allerlei Guake-gebeurtenissen" #: ../guake/data/prefs.glade.h:113 msgid "" "Insert command or path to script.\n" "For details, see https://github.com/Guake/guake/issues/793" msgstr "" "Voer de opdracht of het pad naar het script in.\n" "Meer informatie: https://github.com/Guake/guake/issues/793" #: ../guake/data/prefs.glade.h:115 msgid "On show:" msgstr "Na tonen:" #: ../guake/data/prefs.glade.h:116 msgid "Hooks" msgstr "Extra's" #: ../guake/data/prefs.glade.h:117 msgid "Hooks" msgstr "Extra's" #: ../src/guake/about.py:47 ../src/guake/gconfhandler.py:429 #: ../src/guake/guake_app.py:185 ../src/guake/guake_app.py:365 msgid "Guake Terminal" msgstr "Guake Terminal" #: ../src/guake/gconfhandler.py:430 #, python-format msgid "" "A problem happened when binding %s key.\n" "Please use Guake Preferences dialog to choose another key" msgstr "" "Er heeft zich een probleem voorgedaan bij het binden van toets %s.\n" "Gebruik het Guake Voorkeuren-dialoogvenster om een andere toets te kiezen." #: ../src/guake/guake_app.py:133 msgid "Do you want to close the tab?" msgstr "Weet je zeker dat je dit tabblad wilt sluiten?" #: ../src/guake/guake_app.py:136 msgid "Do you really want to quit Guake?" msgstr "Weet je zeker dat je Guake wilt afsluiten?" #: ../src/guake/guake_app.py:138 msgid " and one tab open" msgstr " en één geopend tabblad" #: ../src/guake/guake_app.py:140 #, python-brace-format msgid " and {0} tabs open" msgstr " en {0} geopende tabbladen" #: ../src/guake/guake_app.py:143 msgid "There are no processes running" msgstr "Er worden geen processen uitgevoerd" #: ../src/guake/guake_app.py:145 msgid "There is a process still running" msgstr "Er wordt nog steeds een proces uitgevoerd" #: ../src/guake/guake_app.py:147 #, python-brace-format msgid "There are {0} processes still running" msgstr "Er worden nog steeds {0} processen uitgevoerd" #: ../src/guake/guake_app.py:190 msgid "guake-indicator" msgstr "guake-indicator" #: ../src/guake/guake_app.py:190 msgid "guake-tray" msgstr "guake-tray" #: ../src/guake/guake_app.py:194 msgid "Show" msgstr "Tonen" #: ../src/guake/guake_app.py:366 msgid "" "Guake is now running,\n" "press {!s} to use it." msgstr "" "Guake is nu actief!\n" "Druk op {!s} om Guake te gebruiken." #: ../src/guake/guake_app.py:669 #, python-format msgid "Search on Web: '%s'" msgstr "Zoeken op internet: '%s'" #: ../src/guake/guake_app.py:674 msgid "Search on Web (no selection)" msgstr "Zoeken op internet (geen selectie)" #: ../src/guake/guake_app.py:682 msgid "Open Link: '{}...'" msgstr "Link openen: '{}...'" #: ../src/guake/guake_app.py:684 msgid "Open Link: {}" msgstr "Link openen: {}" #: ../src/guake/guake_app.py:687 msgid "Open Link..." msgstr "Link openen..." #: ../src/guake/guake_app.py:1407 msgid "Terminal" msgstr "Terminal" #: ../src/guake/guake_app.py:1451 msgid "Rename tab" msgstr "Tabbladnaam wijzigen" #: ../src/guake/guake_app.py:1776 msgid "Save to..." msgstr "Opslaan naar..." #: ../src/guake/guake_app.py:1783 ../src/guake/prefs.py:997 msgid "All files" msgstr "Alle bestanden" #: ../src/guake/guake_app.py:1788 msgid "Text and Logs" msgstr "Tekst- en logbestanden" #: ../src/guake/guake_app.py:1806 msgid "Find" msgstr "Zoeken" #: ../src/guake/guake_app.py:1808 msgid "Forward" msgstr "Voorwaarts" #: ../src/guake/guake_app.py:1809 msgid "Backward" msgstr "Achterwaarts" #: ../src/guake/main.py:69 msgid "Put Guake in fullscreen mode" msgstr "Overschakelen naar volledig scherm-modus" #: ../src/guake/main.py:73 msgid "Toggles the visibility of the terminal window" msgstr "Schakel zichtbaarheid van terminal-scherm aan of uit" #: ../src/guake/main.py:77 msgid "Shows Guake main window" msgstr "Toont het Guake-hoofdvenster" #: ../src/guake/main.py:81 msgid "Hides Guake main window" msgstr "Verbergt het Guake-hoofdvenster" #: ../src/guake/main.py:85 msgid "Shows Guake preference window" msgstr "Toont het Guake voorkeuren-scherm" #: ../src/guake/main.py:89 msgid "Shows Guake's about info" msgstr "Toont informatie over Guake" #: ../src/guake/main.py:93 msgid "Add a new tab (with current directory set to NEW_TAB)" msgstr "Nieuw tabblad toevoegen (met huidige map ingesteld op NEW_TAB)" #: ../src/guake/main.py:97 msgid "Select a tab (SELECT_TAB is the index of the tab)" msgstr "Kies een tabblad (SELECT_TAB is de index van het tabblad)" #: ../src/guake/main.py:101 msgid "Return the selected tab index." msgstr "Toon de geselecteerde tabindex." #: ../src/guake/main.py:105 msgid "Execute an arbitrary command in the selected tab." msgstr "Voer een willekeurige opdracht uit op het geselecteerde tabblad." #: ../src/guake/main.py:109 msgid "Specify the tab to rename. Default is 0." msgstr "" "Geef het tabblad op waarvan de naam moet worden gewijzigd. Standaard is dit " "0." #: ../src/guake/main.py:113 msgid "Set the background image of the selected tab." msgstr "Stel de achtergrondafbeelding in van het huidig geselecteerde tabblad." #: ../src/guake/main.py:118 msgid "Set the hexadecimal (#rrggbb) background color of the selected tab." msgstr "" "Stelt de hexadecimale (#rrggbb) achtergrondkleur in van het geselecteerde " "tabblad." #: ../src/guake/main.py:123 msgid "Set the hexadecimal (#rrggbb) foreground color of the selected tab." msgstr "" "Stelt de hexadecimale (#rrggbb) voorgrondkleur in van het geselecteerde " "tabblad." #: ../src/guake/main.py:129 msgid "" "Rename the specified tab. Reset to default if TITLE is a single dash \"-\"." msgstr "" "Opgegeven tabbladnaam wijzigen. Herstellen naar standaardwaarde als de TITEL " "een enkel streepje is \"-\"." #: ../src/guake/main.py:135 msgid "" "Rename the current tab. Reset to default if TITLE is a single dash \"-\"." msgstr "" "Huidige tabbladnaam wijzigen. Herstellen naar standaardwaarde als de TITEL " "een enkel streepje is \"-\"." #: ../src/guake/main.py:140 msgid "Says to Guake go away =(" msgstr "Zegt tegen Guake: ga weg =(" #: ../src/guake/main.py:144 msgid "Do not execute the start up script" msgstr "Opstartscript niet uitvoeren" #: ../src/guake/main.py:245 msgid "Guake can not init!" msgstr "Guake kan niet worden geïnitialiseerd!" #: ../src/guake/main.py:246 msgid "" "Gconf Error.\n" "Have you installed guake.schemas properly?" msgstr "" "Gconf-fout.\n" "Heb je guake.schemas op de juiste wijze geïnstalleerd?" #. string to show in prefereces dialog for user shell option #: ../src/guake/prefs.py:67 msgid "" msgstr "" #: ../src/guake/prefs.py:77 msgid "Toggle Guake visibility" msgstr "Guake tonen/verbergen" #: ../src/guake/prefs.py:81 msgid "Toggle Hide on Lose Focus" msgstr "Verbergen bij verliezen van focus" #: ../src/guake/prefs.py:88 msgid "Tab management" msgstr "Tabbladbeheer" #: ../src/guake/prefs.py:90 msgid "New tab" msgstr "Nieuw tabblad" #: ../src/guake/prefs.py:92 msgid "Close tab" msgstr "Tabblad sluiten" #: ../src/guake/prefs.py:94 msgid "Rename current tab" msgstr "Huidige tabbladnaam wijzigen" #: ../src/guake/prefs.py:97 msgid "Navigation" msgstr "Navigatie" #: ../src/guake/prefs.py:99 msgid "Go to previous tab" msgstr "Ga naar vorige tabblad" #: ../src/guake/prefs.py:101 msgid "Go to next tab" msgstr "Ga naar volgende tabblad" #: ../src/guake/prefs.py:103 msgid "Move current tab left" msgstr "Huidig tabblad naar links verplaatsen" #: ../src/guake/prefs.py:105 msgid "Move current tab right" msgstr "Huidig tabblad naar rechts verplaatsen" #: ../src/guake/prefs.py:107 msgid "Go to first tab" msgstr "Ga naar eerste tabblad" #: ../src/guake/prefs.py:109 msgid "Go to second tab" msgstr "Ga naar tweede tabblad" #: ../src/guake/prefs.py:111 msgid "Go to third tab" msgstr "Ga naar derde tabblad" #: ../src/guake/prefs.py:113 msgid "Go to fourth tab" msgstr "Ga naar vierde tabblad" #: ../src/guake/prefs.py:115 msgid "Go to fifth tab" msgstr "Ga naar vijfde tabblad" #: ../src/guake/prefs.py:117 msgid "Go to sixth tab" msgstr "Ga naar zesde tabblad" #: ../src/guake/prefs.py:119 msgid "Go to seventh tab" msgstr "Ga naar zevende tabblad" #: ../src/guake/prefs.py:121 msgid "Go to eighth tab" msgstr "Ga naar achtste tabblad" #: ../src/guake/prefs.py:123 msgid "Go to ninth tab" msgstr "Ga naar negende tabblad" #: ../src/guake/prefs.py:125 msgid "Go to tenth tab" msgstr "Ga naar tiende tabblad" #: ../src/guake/prefs.py:127 msgid "Go to last tab" msgstr "Ga naar laatste tabblad" #: ../src/guake/prefs.py:132 msgid "Zoom out" msgstr "Uitzoomen" #: ../src/guake/prefs.py:134 msgid "Zoom in" msgstr "Inzoomen" #: ../src/guake/prefs.py:136 msgid "Zoom in (alternative)" msgstr "Inzoomen (alternatief)" #: ../src/guake/prefs.py:138 msgid "Increase height" msgstr "Venster hoger maken" #: ../src/guake/prefs.py:140 msgid "Decrease height" msgstr "Venster lager maken" #: ../src/guake/prefs.py:142 msgid "Increase transparency" msgstr "Doorzichtigheid vergroten" #: ../src/guake/prefs.py:144 msgid "Decrease transparency" msgstr "Doorzichtigheid verlagen" #: ../src/guake/prefs.py:146 msgid "Toggle transparency" msgstr "Doorzichtigheid aan/uit" #: ../src/guake/prefs.py:149 msgid "Clipboard" msgstr "Klembord" #: ../src/guake/prefs.py:151 msgid "Copy text to clipboard" msgstr "Tekst kopiëren naar klembord" #: ../src/guake/prefs.py:153 msgid "Paste text from clipboard" msgstr "Tekst plakken vanuit klembord" #: ../src/guake/prefs.py:156 msgid "Extra features" msgstr "Extra mogelijkheden" #: ../src/guake/prefs.py:159 msgid "Search select text on web" msgstr "Geselecteerde tekst zoeken op het internet" #: ../src/guake/prefs.py:489 msgid "Action" msgstr "Actie" #: ../src/guake/prefs.py:499 msgid "Shortcut" msgstr "Sneltoets" #: ../src/guake/prefs.py:657 ../src/guake/prefs.py:703 msgid "Custom" msgstr "Aangepast" #: ../src/guake/prefs.py:993 msgid "JSON files" msgstr "JSON-bestanden" #: ../src/guake/prefs.py:1091 #, python-format msgid "The shortcut \"%s\" is already in use." msgstr "De sneltoets \"%s\" is al in gebruik." #: ../src/guake/prefs.py:1092 msgid "Error setting keybinding." msgstr "Fout bij instellen van toets-binding." #: ../src/guake/prefs.py:1104 #, python-format msgid "" "The shortcut \"%s\" cannot be used because it will become impossible to type " "using this key.\n" "\n" "Please try with a key such as Control, Alt or Shift at the same time.\n" msgstr "" "De sneltoets \"%s\" kan niet worden gebruikt omdat het zonder deze toets " "onmogelijk wordt om te typen.\n" "\n" "Probeer een combinatie met een toets zoals Ctrl, Alt of Shift.\n" #: guake/main.py:153 msgid "Return the selected tab label." msgstr "Toont het geselecteerde tabbladlabel." #: guake/data/prefs.glade:264 msgid "Never" msgstr "Nooit" #: guake/data/prefs.glade:265 msgid "With process running" msgstr "Als er een proces wordt uitgevoerd" #: guake/data/prefs.glade:266 msgid "Always" msgstr "Altijd" #: guake/data/prefs.glade:499 msgid "Refocus if open" msgstr "Opnieuw focussen indien geopend" #: guake/data/prefs.glade:865 msgid "Custom command file path:" msgstr "Aangepaste bestandspad voor opdracht:" #: guake/data/prefs.glade:1423 msgid "Block" msgstr "Blokkeren" #: guake/data/prefs.glade:1424 msgid "I-Beam" msgstr "I-Streepje" #: guake/data/prefs.glade:1425 msgid "Underline" msgstr "Onderstrepen" #: guake/data/prefs.glade:1443 msgid "Follow GTK+ setting" msgstr "GTK+-instelling volgen" #: guake/data/prefs.glade:1444 msgid "Blink on" msgstr "Knipperen" #: guake/data/prefs.glade:1445 msgid "Blink off" msgstr "Niet knipperen" #: guake/data/prefs.glade:2236 msgid "" "Use the following elements in the open editor command line:\n" "- %(file_path)s: path to the file that has been clicked\n" "- %(line_number)s: if your editor supports it, you can directly open " "the file to a given line number when found on the screen.\n" "\n" "For example, for sublime, use subl %(file_path)s:%(line_number)s\n" "" msgstr "" "Gebruik de volgende elementen in de geopende bewerker:\n" "- %(file_path)s: pad naar het aangeklikte bestand\n" "- %(line_number)s: als je bewerker dit ondersteunt, dan kun je het " "bestand direct openen op een opgegeven regelnummer, indien aanwezig.\n" "\n" "Gebruik bijv. voor Sublime subl %(file_path)s:%(line_number)s\n" "" #: guake/data/prefs.glade:2442 guake/data/prefs.glade:2462 msgid "ASCII DEL" msgstr "ASCII DEL" #: guake/data/prefs.glade:2443 guake/data/prefs.glade:2463 msgid "Escape sequence" msgstr "Escape-sequentie" #: guake/data/prefs.glade:2444 guake/data/prefs.glade:2464 msgid "Control-H" msgstr "Ctrl-H" #: guake/data/prefs.glade:2665 msgid "On start:" msgstr "Bij opstarten:" #: guake/data/guake-prefs.desktop:8 msgid "Configure your Guake sessions" msgstr "Stel je Guake-sessies in" #: guake/data/guake-prefs.desktop:15 guake/data/guake.desktop:18 msgid "guake" msgstr "guake" #: guake/data/guake-prefs.desktop:20 msgid "Terminal;Utility;" msgstr "Terminal;Hulpmiddel;" #: guake/data/guake.desktop:10 msgid "Use the command line in a Quake-like terminal" msgstr "Gebruik de opdrachtregel in een Quake-achtige terminal" #: guake/data/prefs.glade:770 msgid "Main Window Horizontal Alignment" msgstr "Hoofdvenster - horizontale uitlijning" #: guake/prefs.py:89 msgid "Show and focus Guake window" msgstr "Guake-venster tonen en focusen" #: guake/data/prefs.glade:566 msgid "0" msgstr "0" #: guake/data/prefs.glade:610 msgid "Main Window Options" msgstr "Hoofdvenster-opties" #: guake/data/prefs.glade:770 msgid "Horizontal Alignment:" msgstr "Horizontale uitlijning:" #: guake/data/prefs.glade:855 msgid "Height:" msgstr "Hoogte:" #: guake/data/prefs.glade:868 msgid "Width:" msgstr "Breedte:" #: guake/data/prefs.glade:913 msgid "Geometry" msgstr "Afmetingen" #: guake/data/prefs.glade:944 msgid "Main Window" msgstr "Hoofdvenster" #: guake/data/prefs.glade:1197 msgid "Infinite scrolling" msgstr "Oneindig terugscrollen" #: guake/data/prefs.glade:1219 msgid "Scrollbar" msgstr "Schuifbalk" #: guake/data/prefs.glade:1304 msgid "Scroll to Bottom" msgstr "Naar onderkant schuiven" #: guake/data/prefs.glade:2117 msgid "" "Quick open is a feature allowing you to open a file directly into your " "favorite text editor by clicking on its filename when it appears in your " "terminal. See the list of currently supported text patterns used to extract " "filename below." msgstr "" "Snel openen is een functie die je in staat stelt een bestand direct te " "openen in je favoriete tekstbewerker door te klikken op de bestandsnaam van " "een genoemd bestand in je terminal. Hieronder vindt je een lijst van " "momenteel ondersteunde tekstpatronen die kunnen worden gebruikt om de " "bestandsnaam te achterhalen." #: guake/main.py:64 msgid "Show Guake version number and exit" msgstr "Guake-versienummer tonen en afsluiten" #: guake/data/prefs.glade:93 msgid "Guake properties" msgstr "Guake-voorkeuren" #: guake/data/prefs.glade:107 msgid "Customize behavior and appearance of Guake!" msgstr "Pas Guake's gedrag en uiterlijk aan" #: guake/data/prefs.glade:929 msgid "Displacement in pixels" msgstr "Verschuiving in pixels" #: guake/main.py:73 msgid "Enable verbose logging" msgstr "Uitgebreid loggen inschakelen" #: guake/guake_app.py:680 msgid "Quick Open: '{!s}...'" msgstr "Snel openen: '{!s}...'" #: guake/guake_app.py:683 msgid "Quick Open: {!s}" msgstr "Snel openen: {!s}" #: guake/guake_app.py:691 msgid "Open Link: '{!s}...'" msgstr "Link openen: '{!s}...'" #: guake/guake_app.py:694 msgid "Open Link: {!s}" msgstr "Link openen: {!s}" #: guake/data/prefs.glade:2175 msgid "" "WARNING: your system seems to have PCRE2 disabled for VTE, " "preventing application such as Guake to register \"matchers\" using regular " "expressions. Please contact your distribution to request a new version of " "VTE with PCRE2 enabled ! To use Quick Open, you must select the text " "before using Ctrl+click." msgstr "" "WAARSCHUWING: het lijkt erop dat je systeem PCRE2 heeft " "uitgeschakeld voor VTE. Dit voorkomt dat applicaties zoals Guake " "\"overeenkomsten\" met behulp van reguliere expressies kunnen vastleggen. " "Neem contact op met de beheerders van je distributie om een nieuwe versie " "van VTE met PCRE2 aan te vragen! Om Snel openen te gebruiken moet je de " "tekst selecteren vóórdat je op Ctrl+klik gebruikt." #: guake/guake_app.py:680 msgid "Quick Open: {!s}..." msgstr "Snel openen: {!s}..." #: guake/guake_app.py:691 msgid "Open Link: {!s}..." msgstr "Link openen: {!s}..." #: guake/guake_app.py:688 msgid "Quick Open..." msgstr "Snel openen..." #: guake/data/prefs.glade:223 msgid "Start Guake at login" msgstr "Guake opstarten bij inloggen" #: guake/data/prefs.glade:363 msgid "Gtk Theme:" msgstr "Gtk-thema:" #: guake/data/prefs.glade:387 msgid "Prefer dark theme" msgstr "Voorkeur voor donker thema" #: guake/guake_app.py:435 msgid "Custom Commands" msgstr "Aangepaste opdrachten" #: guake/main.py:184 msgid "" "Specify the tab to rename. Default is 0. Can be used to select tab by UUID." msgstr "" "Geef het tabblad op waarvan je de naam wilt wijzigen. Standaard is dit 0. " "Kan worden gebruikt om te selecteren op UUID." #: guake/main.py:212 msgid "" "Rename the specified tab by --tab-index. Reset to default if TITLE is a " "single dash \"-\"." msgstr "" "Wijzig de naam van het opgegeven tabblad met --tab-index. Herstel naar " "standaardwaarden als TITEL een enkel streepje \"-\" is." #: data/search.glade:138 msgid "Search forward" msgstr "Voorwaarts zoeken" #: data/search.glade:153 msgid "Match case" msgstr "Lettergrootte moet overeen komen" #: data/search.glade:186 msgid "Current search direction: Backward" msgstr "Huidige zoekrichting: achterwaarts" #: data/prefs.glade:680 msgid "Set window title to current tab name" msgstr "Venstertitel instellen op huidige tabbladnaam" #: guake/menus.py:48 msgid "Copy Url" msgstr "URL kopiëren" #: guake/menus.py:62 msgid "Split ―" msgstr "― splitsen" #: guake/menus.py:65 msgid "Split " msgstr "Splitsen " #: guake/menus.py:68 guake/prefs.py:150 msgid "Close terminal" msgstr "Terminal sluiten" #: guake/prefs.py:137 msgid "Split management" msgstr "Splitsbeheer" #: guake/prefs.py:142 msgid "Split tab vertical" msgstr "Tabblad verticaal splitsen" #: guake/prefs.py:146 msgid "Split tab horizontal" msgstr "Tabblad horizontaal splitsen" #: guake/prefs.py:154 msgid "Focus terminal above" msgstr "Terminal hierboven focussen" #: guake/prefs.py:158 msgid "Focus terminal below" msgstr "Terminal hieronder focussen" #: guake/prefs.py:162 msgid "Focus terminal on the left" msgstr "Terminal links focussen" #: guake/prefs.py:166 msgid "Focus terminal on the right" msgstr "Terminal rechts focussen" #: guake/prefs.py:170 msgid "Move the terminal split handle up" msgstr "Terminal-splitshandgreep omhoog verplaatsen" #: guake/prefs.py:174 msgid "Move the terminal split handle down" msgstr "Terminal-splitshandgreep omlaag verplaatsen" #: guake/prefs.py:178 msgid "Move the terminal split handle right" msgstr "Terminal-splitshandgreep naar rechts verplaatsen" #: guake/prefs.py:182 msgid "Move the terminal split handle left" msgstr "Terminal-splitshandgreep naar links verplaatsen" #: guake/menus.py:65 msgid "Split |" msgstr "| splitsen" #: guake/menus.py:72 msgid "Save content..." msgstr "Inhoud opslaan..." #: data/prefs.glade:1182 msgid "" "This might not work on all shells, make sure that your shell supports the --" "login option" msgstr "" "Dit werkt mogelijk niet in alle shells; zorg dat je shell ondersteuning " "heeft voor de optie --login" #: guake/prefs.py:128 msgid "New tab in home directory" msgstr "Nieuw tabblad in persoonlijke map" #: guake/dialogs.py:56 #, python-brace-format msgid " on {0} workspaces" msgstr " op {0} werkbladen" #: guake/main.py:211 msgid "Change Guake palette scheme" msgstr "Guake-paletschema aanpassen" #: data/prefs.glade:331 msgid "Use workspace-specific tab sets (requires restart)" msgstr "Werkblad-specifieke tabbladsets gebruiken (herstart vereist)" #: guake/main.py:175 msgid "Split the selected tab vertically." msgstr "Geselecteerd tabblad verticaal splitsen" #: guake/main.py:183 msgid "Split the selected tab horizontally." msgstr "Geselecteerd tabblad horizontaal splitsen" #: data/prefs.glade:348 msgid "Show close buttons for tabs" msgstr "Sluiknop tonen op tabbladen" #: data/prefs.glade:1682 msgid "Bold text is also bright" msgstr "Vetgedrukte tekst ook helder maken" #: data/prefs.glade:1682 msgid "Bold text is also bright (VTE >=0.52)" msgstr "Vetgedrukte tekst ook helder maken (VTE >=0.52)" #: guake/menus.py:42 msgid "Save Tabs" msgstr "Tabbladen opslaan" #: guake/menus.py:45 msgid "Restore Tabs" msgstr "Tabbladen herstellen" #: guake/prefs.py:113 msgid "Search terminal" msgstr "Terminal doorzoeken" #: guake/main.py:278 msgid "Save Guake preferences to this filename" msgstr "Guake-voorkeuren opslaan onder deze bestandsnaam" #: guake/main.py:286 msgid "Restore Guake preferences from this file" msgstr "Guake-voorkeuren herstellen uit dit bestand" #: guake/guake_app.py:1192 #, python-brace-format msgid "Your session.json file is broken, backup to {session_filename}.bak" msgstr "" "Je session.json-bestand is beschadigd; maak een back-up onder de naam " "{session_bestandsnaam}.bak" #: guake/guake_app.py:1228 #, python-brace-format msgid "" "Your session.json schema is broken, backup to {0}.bak,and error message has " "been saved to {0}.log.err" msgstr "" "Je session.json-schema is beschadigd; maak een back-up onder de naam {0}.bak " "- foumeldingen zijn opgeslagen als {0}.log.err" #: guake/guake_app.py:1239 msgid "Your tabs has been restored!" msgstr "Je tabbladen zijn hersteld!" #: data/prefs.glade:190 msgid "Restore previous session (tabs)" msgstr "Vorige sessie (tabbladen) herstellen" #: data/prefs.glade:204 msgid "Enable notification when restore tabs" msgstr "Melding tonen na herstellen van tabbladen" #: data/prefs.glade:218 msgid "Automatically save session when the tabs has been modified" msgstr "Sessie automatisch opslaan als de tabbladinhoud is gewijzigd" #: data/prefs.glade:238 msgid "Startup & Tabs (Experiment)" msgstr "Opstarten en tabbladen (experimenteel)" #: guake/guake_app.py:1192 #, python-brace-format msgid "" "Your {session_filename} file is broken, backup to {session_filename}.bak" msgstr "" "Je {session_bestandsnaam}-bestand is beschadigd; maak een back-up onder de " "naam {session_bestandsnaam}.bak" #: guake/guake_app.py:1227 #, python-brace-format msgid "" "Your {session_filename} schema is broken, backup to {0}.bak,and error " "message has been saved to {session_filename}.log.err" msgstr "" "Je {session_bestandsnaam}-schema is beschadigd; maak een back-up onder de " "naam {0}.bak - foumeldingen zijn opgeslagen als {session_bestandsnaam}.log." "err" #: guake/guake_app.py:1227 #, python-brace-format msgid "" "Your {session_filename} schema is broken, backup to {session_filename}.bak," "and error message has been saved to {session_filename}.log.err." msgstr "" "Je {session_bestandsnaam}-schema is beschadigd; maak een back-up onder de " "naam {session_bestandsnaam}.bak - foumeldingen zijn opgeslagen als " "{session_bestandsnaam}.log.err" #: guake/guake_app.py:1227 #, python-brace-format msgid "" "Your {session_filename} schema is broken, backup to {session_filename}.bak, " "and error message has been saved to {session_filename}.log.err." msgstr "" "Je {session_bestandsnaam}-schema is beschadigd; maak een back-up onder de " "naam {session_bestandsnaam}.bak - foumeldingen zijn opgeslagen als " "{session_bestandsnaam}.log.err" #: guake/notebook.py:317 msgid "" "You are going to restore *all* the tabs!\n" "which means all your terminals & pages will be replaced.\n" "\n" "Do you want to continue?" msgstr "" "Je staat op het punt om alle tabbladen te herstellen.\n" "Dit betekent dat al je terminals en pagina's worden vervangen.\n" "\n" "Weet je zeker dat je wilt doorgaan?" #: guake/main.py:296 msgid "Show support infomations" msgstr "Ondersteuningsinformatie tonen" #: guake/guake_app.py:1240 #, python-brace-format msgid "" "Tabs session restore abort.\n" "Your session file ({session_filename}) missing schema_version as key" msgstr "" #: guake/guake_app.py:1252 #, python-brace-format msgid "" "Tabs session restore abort.\n" "Your session file schema version is higher than current version " "({session_file_schema_version} > {current_schema_version})." msgstr "" #: guake/data/prefs.glade:409 msgid "Use workspace-specific tab sets (requires restart, only work on X11)" msgstr "" #~ msgid "key binding error" #~ msgstr "Fout bij toets-binding" #~ msgid "Unable to bind global %s key" #~ msgstr "Globale toets %s kan niet worden gebonden" #~ msgid "http://guake.org" #~ msgstr "http://guake.org" #~ msgid "" #~ "Tango\n" #~ "Linux console\n" #~ "XTerm\n" #~ "Rxvt\n" #~ "Custom\n" #~ msgstr "" #~ "Tango\n" #~ "Linux console\n" #~ "XTerm\n" #~ "Rxvt\n" #~ "Aangepast\n" #~ msgid "Rename the selected tab." #~ msgstr "Hernoem de geselecteerde tab." guake-3.6.3/po/pa.po000066400000000000000000001006311346623310400142000ustar00rootroot00000000000000# Translation of Guake to Punjabi/Panjabi # Copyright (C) 2012 Guake Translators # This file is distributed under the same license as the Guake package. # # Translators: # A S Alam , 2010. msgid "" msgstr "" "Project-Id-Version: Guake 0.4.5\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2016-08-18 17:32+0200\n" "PO-Revision-Date: 2018-01-25 21:07+0100\n" "Last-Translator: A S Alam \n" "Language-Team: Punjabi/Panjabi \n" "Language: pa\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "X-Generator: Poedit 2.0.6\n" "Plural-Forms: nplurals=2; plural=n != 1;\n" #: ../guake/data/about.glade.h:1 msgid "About Guake" msgstr "ਗੁਆਕੀ ਬਾਰੇ" #: ../guake/data/about.glade.h:5 #, fuzzy msgid "" "Guake is an easy to access\n" "terminal based on FPS games terminal" msgstr "" "ਗੁਆਕੀ fps ਖੇਡ ਟਰਮੀਨਲ ਅਧਾਰਿਤ\n" "ਟਰਮੀਨਲ ਲਈ ਸੌਖੀ ਵਰਤੋਂ ਦਾ ਢੰਗ ਹੈ" #: ../guake/data/guake.glade.h:1 msgid "Copy" msgstr "ਕਾਪੀ ਕਰੋ" #: ../guake/data/guake.glade.h:2 msgid "Paste" msgstr "ਚੇਪੋ" #: ../guake/data/guake.glade.h:3 ../src/guake/prefs.py:79 msgid "Toggle Fullscreen" msgstr "ਪੂਰੀ ਸਕਰੀਨ ਬਦਲੋ" #: ../guake/data/guake.glade.h:4 msgid "Save to File..." msgstr "" #: ../guake/data/guake.glade.h:5 ../src/guake/prefs.py:85 #, fuzzy msgid "Reset terminal" msgstr "ਗੁਆਕੀ ਟਰਮੀਨਲ" #: ../guake/data/guake.glade.h:6 msgid "Find..." msgstr "" #: ../guake/data/guake.glade.h:7 #, fuzzy msgid "New Tab" msgstr "ਨਵੀਂ ਟੈਬ" #: ../guake/data/guake.glade.h:8 #, fuzzy msgid "Rename Tab" msgstr "ਟੈਬ ਨਾਂ ਬਦਲੋ" #: ../guake/data/guake.glade.h:9 msgid "Close Tab" msgstr "ਟੈਬ ਬੰਦ ਕਰੋ" #: ../guake/data/guake.glade.h:10 msgid "Open link..." msgstr "" #: ../guake/data/guake.glade.h:11 msgid "Search on Web" msgstr "" #: ../guake/data/guake.glade.h:12 ../src/guake/prefs.py:83 msgid "Quit" msgstr "ਬਾਹਰ" #: ../guake/data/guake.glade.h:13 msgid "Rename" msgstr "ਨਾਂ ਬਦਲੋ" #: ../guake/data/guake.glade.h:14 msgid "Close" msgstr "ਬੰਦ ਕਰੋ" #: ../guake/data/guake.glade.h:15 msgid "Guake!" msgstr "ਗੁਆਕੀ!" #: ../guake/data/guake.glade.h:16 #, fuzzy msgid "Add a new tab" msgstr "ਨਵੀਂ ਟੈਬ ਸ਼ਾਮਲ" #: ../guake/data/prefs.glade.h:1 msgid "Guake Preferences" msgstr "ਗੁਆਕੀ ਪਸੰਦ" #: ../guake/data/prefs.glade.h:2 msgid "Guake properties" msgstr "ਗੁਆਕੀ ਵਿਸ਼ੇਸ਼ਤਾ" #: ../guake/data/prefs.glade.h:3 msgid "" "Customize behavior and appearance of Guake!" msgstr "ਗੁਆਕੀ ਦੀ ਰਵੱਈਆ ਤੇ ਦਿੱਖ ਬਦਲੋ" #: ../guake/data/prefs.glade.h:4 msgid "" "Path to a bash script that would be automatically executed when Guake " "starts, unless you specify --no-startup-script.\n" "\n" "This would typically use the configuration by command line feature of " "Guake:\n" "\n" "#!/bin/bash\n" "\n" "sleep 5 # it is advised to wait a bit before Guake has been successfully " "started\n" "\n" "guake -r \"main\" -e \"cd ~/projects/myproject/main\"\n" "guake -r \"prod\" -e \"cd ~/projects/myproject/prod\"\n" msgstr "" #: ../guake/data/prefs.glade.h:15 msgid "Enable popup notifications on startup" msgstr "ਸ਼ੁਰੂ ਸਮੇਂ ਪੋਪਅੱਪ ਨੋਟੀਫਿਕੇਸ਼ਨ ਦਿਓ" #: ../guake/data/prefs.glade.h:16 msgid "Show tray icon" msgstr "ਟਰੇ ਆਈਕਾਨ ਵੇਖੋ" #: ../guake/data/prefs.glade.h:17 #, fuzzy msgid "Always prompt on quit" msgstr "ਬੰਦ ਕਰਨ ਸਮੇਂ ਪੁੱਛੋ" #: ../guake/data/prefs.glade.h:18 msgid "_Flash terminal on bell" msgstr "" #: ../guake/data/prefs.glade.h:19 msgid "_Play system alert sound on bell" msgstr "" #: ../guake/data/prefs.glade.h:20 msgid "Path to script executed on Guake start:" msgstr "" #: ../guake/data/prefs.glade.h:21 #, fuzzy msgid "Prompt on close tab:" msgstr "ਬੰਦ ਕਰਨ ਸਮੇਂ ਪੁੱਛੋ" #: ../guake/data/prefs.glade.h:22 msgid "" "Never\n" "With process running\n" "Always" msgstr "" #: ../guake/data/prefs.glade.h:25 msgid "General" msgstr "ਆਮ" #: ../guake/data/prefs.glade.h:26 msgid "Bottom align window instead of top align" msgstr "" #: ../guake/data/prefs.glade.h:27 msgid "Appear on mouse display" msgstr "" #: ../guake/data/prefs.glade.h:28 msgid "Appear on display:" msgstr "" #: ../guake/data/prefs.glade.h:29 #, fuzzy msgid "Place tabs on top" msgstr "ਹਮੇਸ਼ਾ ਉੱਤੇ ਰੱਖੋ" #: ../guake/data/prefs.glade.h:30 #, fuzzy msgid "Placement" msgstr "ਰੰਗ-ਪੱਟੀ" #: ../guake/data/prefs.glade.h:31 msgid "Stay on top" msgstr "ਹਮੇਸ਼ਾ ਉੱਤੇ ਰੱਖੋ" #: ../guake/data/prefs.glade.h:32 msgid "Use VTE titles for tab names" msgstr "" #: ../guake/data/prefs.glade.h:33 msgid "Max tab name length:" msgstr "" #: ../guake/data/prefs.glade.h:34 msgid "0 means no size limit" msgstr "" #: ../guake/data/prefs.glade.h:35 msgid "Abbreviate directories in tab names" msgstr "" #: ../guake/data/prefs.glade.h:36 msgid "Hide on lose focus" msgstr "ਫੋਕਸ ਖਤਮ ਹੋਣ ਉੱਤੇ ਓਹਲੇ ਕਰੋ" #: ../guake/data/prefs.glade.h:37 msgid "Show tab bar" msgstr "ਟੈਬ ਪੱਟੀ ਵੇਖੋ" #: ../guake/data/prefs.glade.h:38 #, fuzzy msgid "Start fullscreen" msgstr "ਪੂਰੀ ਸਕਰੀਨ ਬਦਲੋ" #: ../guake/data/prefs.glade.h:39 msgid "Main Window" msgstr "ਮੇਨ ਵਿੰਡੋ" #: ../guake/data/prefs.glade.h:40 msgid "Left" msgstr "" #: ../guake/data/prefs.glade.h:41 msgid "Center" msgstr "" #: ../guake/data/prefs.glade.h:42 msgid "Right" msgstr "" #: ../guake/data/prefs.glade.h:43 #, fuzzy msgid "Main Window Horizontal Alignment" msgstr "ਮੇਨ ਵਿੰਡੋ ਉਚਾਈ" #: ../guake/data/prefs.glade.h:44 #, fuzzy msgid "Main Window Height" msgstr "ਮੇਨ ਵਿੰਡੋ ਉਚਾਈ" #: ../guake/data/prefs.glade.h:45 #, fuzzy msgid "Main Window Width" msgstr "ਮੇਨ ਵਿੰਡੋ ਉਚਾਈ" #: ../guake/data/prefs.glade.h:46 msgid "Custom command file path: " msgstr "" #: ../guake/data/prefs.glade.h:47 msgid "Please select a json file" msgstr "" #: ../guake/data/prefs.glade.h:48 ../src/guake/prefs.py:75 msgid "General" msgstr "ਆਮ" #: ../guake/data/prefs.glade.h:49 msgid "Default interpreter:" msgstr "ਡਿਫਾਲਟ ਇੰਟਰਪਰੇਟਰ:" #: ../guake/data/prefs.glade.h:50 msgid "_Run command as a login shell" msgstr "ਕਮਾਂਡ ਲਾਗਇਨ ਸ਼ੈੱਲ ਵਜੋਂ ਚਲਾਓ(_R)" #: ../guake/data/prefs.glade.h:51 msgid "_Open new tab in current directory" msgstr "ਮੌਜੂਦਾ ਡਾਇਰੈਕਟਰੀ ਵਿੱਚ ਨਵੀਂ ਟੈਬ ਖੋਲ੍ਹੋ(_O)" #: ../guake/data/prefs.glade.h:52 msgid "Shell" msgstr "ਸ਼ੈੱਲ" #: ../guake/data/prefs.glade.h:53 msgid "Shell" msgstr "" #: ../guake/data/prefs.glade.h:54 msgid "Show scrollbar" msgstr "ਸਕਰੋਲਬਾਰ ਵੇਖੋ" #: ../guake/data/prefs.glade.h:55 msgid "Scrollback lines:" msgstr "ਸਕਰੋਲਬੈਕ ਲਾਈਨਾਂ:" #: ../guake/data/prefs.glade.h:56 msgid "On output" msgstr "ਆਉਟਪੁੱਟ ਉੱਤੇ" #: ../guake/data/prefs.glade.h:57 msgid "On key stroke" msgstr "ਕੁੰਜੀ ਦੱਬਣ ਉੱਤੇ" #: ../guake/data/prefs.glade.h:58 msgid "Scroll" msgstr "ਸਕਰੋਲ" #: ../guake/data/prefs.glade.h:59 msgid "Scrolling" msgstr "ਸਕਰੋਲਿੰਗ" #: ../guake/data/prefs.glade.h:60 msgid "Use the system fixed width font" msgstr "ਸਿਸਟਮ ਸਥਿਰ ਚੌੜਾਈ ਫੋਂਟ ਵਰਤੋਂ" #: ../guake/data/prefs.glade.h:61 msgid "Font:" msgstr "ਫੋਂਟ:" #: ../guake/data/prefs.glade.h:62 msgid "Choose some font" msgstr "ਕੁਝ ਫੋਟ ਚੁਣੋ" #: ../guake/data/prefs.glade.h:63 msgid "Text color:" msgstr "ਟੈਕਸਟ ਰੰਗ:" #: ../guake/data/prefs.glade.h:64 msgid "Background color:" msgstr "ਬੈਕਗਰਾਊਂਡ ਰੰਗ:" #: ../guake/data/prefs.glade.h:65 msgid "Cursor shape:" msgstr "" #: ../guake/data/prefs.glade.h:66 msgid "" "Block\n" "I-Beam\n" "Underline" msgstr "" #: ../guake/data/prefs.glade.h:69 msgid "" "Follow GTK+ setting\n" "Blink on\n" "Blink off" msgstr "" #: ../guake/data/prefs.glade.h:72 msgid "Cursor blink mode:" msgstr "" #: ../guake/data/prefs.glade.h:73 msgid "Allow bold font" msgstr "" #: ../guake/data/prefs.glade.h:74 msgid "Palette" msgstr "ਰੰਗ-ਪੱਟੀ" #: ../guake/data/prefs.glade.h:75 msgid "Built-in schemes:" msgstr "ਬਿਲਟ-ਇਨ ਸਕੀਮ:" #: ../guake/data/prefs.glade.h:76 msgid "Color palette:" msgstr "ਰੰਗ ਪਲੇਅਟ:" #: ../guake/data/prefs.glade.h:77 #, fuzzy msgid "Font color" msgstr "ਟੈਕਸਟ ਰੰਗ:" #: ../guake/data/prefs.glade.h:78 #, fuzzy msgid "Background color" msgstr "ਬੈਕਗਰਾਊਂਡ ਰੰਗ:" #: ../guake/data/prefs.glade.h:79 msgid "Use font and background color from the palette" msgstr "" #: ../guake/data/prefs.glade.h:80 msgid "Demo:" msgstr "" #: ../guake/data/prefs.glade.h:81 msgid "Effects" msgstr "ਪਰਭਾਵ" #: ../guake/data/prefs.glade.h:82 msgid "Transparency:" msgstr "ਟਰਾਂਸਪਰੇਸੀ:" #: ../guake/data/prefs.glade.h:83 msgid "Background image:" msgstr "ਬੈਕਗਰਾਊਂਡ ਚਿੱਤਰ:" #: ../guake/data/prefs.glade.h:84 ../src/guake/prefs.py:130 msgid "Appearance" msgstr "ਦਿੱਖ" #: ../guake/data/prefs.glade.h:85 msgid "" "Quick open is a feature allowing you to open a file directly into " "your favorite text editor by clicking on its filename when it appears in " "your terminal. See the list of currently supported text patterns used to " "extract filename below." msgstr "" #: ../guake/data/prefs.glade.h:86 msgid "Enable Quick Open when Ctrl+clicking on a filename in the terminal" msgstr "" #: ../guake/data/prefs.glade.h:87 msgid "Editor command line:" msgstr "" #: ../guake/data/prefs.glade.h:89 #, no-c-format msgid "" "Use the following elements in the open editor command line:\n" " - %(file_path)s: path to the file that has been clicked\n" " - %(line_number)s: if your editor supports it, you can directly open " "the file to a given line number when found on the screen.\n" "\n" "For example, for sublime, use subl %(file_path)s:%(line_number)s\n" "" msgstr "" #: ../guake/data/prefs.glade.h:95 msgid "Quick open in current terminal" msgstr "" #: ../guake/data/prefs.glade.h:96 msgid "" "Here is the list of supported patterns: (to add your own, please contact the " "Guake's authors)" msgstr "" #: ../guake/data/prefs.glade.h:97 #, fuzzy msgid "Quick Open" msgstr "ਰੰਗ-ਪੱਟੀ" #: ../guake/data/prefs.glade.h:98 msgid "Quick Open" msgstr "" #: ../guake/data/prefs.glade.h:99 msgid "" "To change a shortcut simply click on its name.\n" "To disable a shortcut, press the \"Backspace\" key." msgstr "" #: ../guake/data/prefs.glade.h:101 msgid "Keyboard shortcuts" msgstr "ਕੀਬੋਰਡ ਸ਼ਾਰਟਕੱਟ" #: ../guake/data/prefs.glade.h:102 msgid "" "Note: These options may cause some applications to behave " "incorrectly. They are only here to allow you to work around certain " "applications and operating systems that expect different terminal behavior." msgstr "" #: ../guake/data/prefs.glade.h:103 msgid "" "ASCII DEL\n" "Escape sequence\n" "Control-H" msgstr "" "ASCII DEL\n" "Escape sequence\n" "Control-H" #: ../guake/data/prefs.glade.h:106 msgid "_Backspace key generates:" msgstr "ਬੈਕਸਪੇ ਕੁੰਜੀ ਤਿਆਰ ਕਰੇ(_B):" #: ../guake/data/prefs.glade.h:107 msgid "_Delete key generates:" msgstr "" #: ../guake/data/prefs.glade.h:108 msgid "_Reset Compatibility Options to Defaults" msgstr "ਅਨੁਕੂਲਤਾ ਚੋਣਾਂ ਡਿਫਾਲਟ ਲਈ ਮੁੜ-ਸੈੱਟ ਕਰੋ(_R)" #: ../guake/data/prefs.glade.h:109 msgid "Keyboard compatibility" msgstr "ਕੀਬੋਰਡ ਅਨੁਕੂਲਤਾ" #: ../guake/data/prefs.glade.h:110 msgid "Compatibility" msgstr "ਅਨੁਕੂਲਤਾ" #: ../src/guake/about.py:47 ../src/guake/gconfhandler.py:439 #: ../src/guake/guake_app.py:181 ../src/guake/guake_app.py:378 msgid "Guake Terminal" msgstr "ਗੁਆਕੀ ਟਰਮੀਨਲ" #: ../src/guake/gconfhandler.py:369 ../src/guake/guake_app.py:1386 #, fuzzy msgid "Terminal" msgstr "%s ਟਰਮੀਨਲ" #: ../src/guake/gconfhandler.py:440 #, python-format msgid "" "A problem happened when binding %s key.\n" "Please use Guake Preferences dialog to choose another key" msgstr "" #: ../src/guake/guake_app.py:132 #, fuzzy msgid "Do you want to close the tab?" msgstr "ਕੀ ਤੁਸੀਂ ਗੁਆਕੀ ਬੰਦ ਕਰਨਾ ਚਾਹੁੰਦੇ ਹੋ?" #: ../src/guake/guake_app.py:135 #, fuzzy msgid "Do you really want to quit Guake?" msgstr "ਕੀ ਤੁਸੀਂ ਗੁਆਕੀ ਬੰਦ ਕਰਨਾ ਚਾਹੁੰਦੇ ਹੋ?" #: ../src/guake/guake_app.py:137 #, fuzzy msgid " and one tab open" msgstr "ਨਵੀਂ ਟੈਬ ਸ਼ਾਮਲ" #: ../src/guake/guake_app.py:139 #, python-brace-format msgid " and {0} tabs open" msgstr "" #: ../src/guake/guake_app.py:142 #, fuzzy msgid "There are no processes running" msgstr "ਹਾਲੇ ਇੱਕ ਕਾਰਵਾਈ ਚੱਲ ਰਹੀ ਹੈ।" #: ../src/guake/guake_app.py:144 #, fuzzy msgid "There is a process still running" msgstr "ਹਾਲੇ ਇੱਕ ਕਾਰਵਾਈ ਚੱਲ ਰਹੀ ਹੈ।" #: ../src/guake/guake_app.py:146 #, fuzzy, python-brace-format msgid "There are {0} processes still running" msgstr "%d ਪਰੋਸੈਸ ਚੱਲ ਰਹੇ ਹਨ।" #: ../src/guake/guake_app.py:186 msgid "guake-indicator" msgstr "" #: ../src/guake/guake_app.py:186 msgid "guake-tray" msgstr "" #: ../src/guake/guake_app.py:190 msgid "Show" msgstr "" #: ../src/guake/guake_app.py:379 #, python-format msgid "" "Guake is now running,\n" "press {!s} to use it." msgstr "" "ਗੁਆਕੀ ਹੁਣ ਚੱਲ ਰਿਹਾ ਹੈ।\n" "ਇਸ ਨੂੰ ਵਰਤਣ ਲਈ {!s} ਦੱਬੋ।" #: ../src/guake/guake_app.py:670 #, python-format msgid "Search on Web: '%s'" msgstr "" #: ../src/guake/guake_app.py:675 msgid "Search on Web (no selection)" msgstr "" #: ../src/guake/guake_app.py:683 msgid "Open Link: '{}...'" msgstr "" #: ../src/guake/guake_app.py:685 msgid "Open Link: {}" msgstr "" #: ../src/guake/guake_app.py:688 msgid "Open Link..." msgstr "" #: ../src/guake/guake_app.py:1425 msgid "Rename tab" msgstr "ਟੈਬ ਨਾਂ ਬਦਲੋ" #: ../src/guake/guake_app.py:1736 msgid "Save to..." msgstr "" #: ../src/guake/guake_app.py:1743 ../src/guake/prefs.py:973 msgid "All files" msgstr "" #: ../src/guake/guake_app.py:1748 msgid "Text and Logs" msgstr "" #: ../src/guake/guake_app.py:1766 msgid "Find" msgstr "" #: ../src/guake/guake_app.py:1768 msgid "Forward" msgstr "" #: ../src/guake/guake_app.py:1769 msgid "Backward" msgstr "" #: ../src/guake/main.py:68 msgid "Put Guake in fullscreen mode" msgstr "" #: ../src/guake/main.py:72 msgid "Toggles the visibility of the terminal window" msgstr "ਟਰਮੀਨਲ ਵਿੰਡੋ ਦੀ ਦਿੱਖ ਬਦਲੋ" #: ../src/guake/main.py:76 #, fuzzy msgid "Shows Guake main window" msgstr "ਗੁਆਕੀ ਪਸੰਦ ਵਿੰਡੋ ਵੇਖੋ" #: ../src/guake/main.py:80 #, fuzzy msgid "Hides Guake main window" msgstr "ਗੁਆਕੀ ਪਸੰਦ ਵਿੰਡੋ ਵੇਖੋ" #: ../src/guake/main.py:84 msgid "Shows Guake preference window" msgstr "ਗੁਆਕੀ ਪਸੰਦ ਵਿੰਡੋ ਵੇਖੋ" #: ../src/guake/main.py:88 msgid "Shows Guake's about info" msgstr "ਗੁਆਕੀ ਬਾਰੇ ਜਾਣਕਾਰੀ ਵੇਖੋ" #: ../src/guake/main.py:92 #, fuzzy msgid "Add a new tab (with current directory set to NEW_TAB)" msgstr "ਮੌਜੂਦਾ ਡਾਇਰੈਕਟਰੀ ਵਿੱਚ ਨਵੀਂ ਟੈਬ ਖੋਲ੍ਹੋ(_O)" #: ../src/guake/main.py:96 msgid "Select a tab (SELECT_TAB is the index of the tab)" msgstr "" #: ../src/guake/main.py:100 msgid "Return the selected tab index." msgstr "ਚੁਣੇ ਟੈਬ ਇੰਡੈਕਸ ਉੱਤੇ ਵਾਪਸ ਜਾਉ।" #: ../src/guake/main.py:104 msgid "Execute an arbitrary command in the selected tab." msgstr "" #: ../src/guake/main.py:108 msgid "Specify the tab to rename. Default is 0." msgstr "" #: ../src/guake/main.py:112 msgid "Set the hexadecimal (#rrggbb) background color of the selected tab." msgstr "" #: ../src/guake/main.py:117 msgid "Set the hexadecimal (#rrggbb) foreground color of the selected tab." msgstr "" #: ../src/guake/main.py:123 msgid "" "Rename the specified tab. Reset to default if TITLE is a single dash \"-\"." msgstr "" #: ../src/guake/main.py:129 msgid "" "Rename the current tab. Reset to default if TITLE is a single dash \"-\"." msgstr "" #: ../src/guake/main.py:134 msgid "Says to Guake go away =(" msgstr "ਗੁਆਕੀ ਨੂੰ ਦੂਰ ਜਾਣ ਲਈ ਕਰੋ =(" #: ../src/guake/main.py:138 msgid "Do not execute the start up script" msgstr "" #: ../src/guake/main.py:235 msgid "Guake can not init!" msgstr "" #: ../src/guake/main.py:236 msgid "" "Gconf Error.\n" "Have you installed guake.schemas properly?" msgstr "" #. string to show in prefereces dialog for user shell option #: ../src/guake/prefs.py:67 msgid "" msgstr "" #: ../src/guake/prefs.py:77 msgid "Toggle Guake visibility" msgstr "ਗੁਆਕੀ ਦਿੱਖ ਬਦਲੋ" #: ../src/guake/prefs.py:81 #, fuzzy msgid "Toggle Hide on Lose Focus" msgstr "ਫੋਕਸ ਖਤਮ ਹੋਣ ਉੱਤੇ ਓਹਲੇ ਕਰੋ" #: ../src/guake/prefs.py:88 msgid "Tab management" msgstr "ਟੈਬ ਪਰਬੰਧ" #: ../src/guake/prefs.py:90 #, fuzzy msgid "New tab" msgstr "ਨਵੀਂ ਟੈਬ" #: ../src/guake/prefs.py:92 msgid "Close tab" msgstr "ਟੈਬ ਬੰਦ ਕਰੋ" #: ../src/guake/prefs.py:94 msgid "Rename current tab" msgstr "ਮੌਜੂਦਾ ਟੈਬ ਦਾ ਨਾਂ ਬਦਲੋ" #: ../src/guake/prefs.py:97 msgid "Navigation" msgstr "ਨੈਵੀਗੇਸ਼ਨ" #: ../src/guake/prefs.py:99 msgid "Go to previous tab" msgstr "ਪਿਛਲੀ ਟੈਬ ਉੱਤੇ ਜਾਓ" #: ../src/guake/prefs.py:101 msgid "Go to next tab" msgstr "ਅਗਲੀ ਟੈਬ ਉੱਤੇ ਜਾਓ" #: ../src/guake/prefs.py:103 #, fuzzy msgid "Move current tab left" msgstr "ਮੌਜੂਦਾ ਟੈਬ ਦਾ ਨਾਂ ਬਦਲੋ" #: ../src/guake/prefs.py:105 #, fuzzy msgid "Move current tab right" msgstr "ਮੌਜੂਦਾ ਟੈਬ ਦਾ ਨਾਂ ਬਦਲੋ" #: ../src/guake/prefs.py:107 #, fuzzy msgid "Go to first tab" msgstr "ਅਗਲੀ ਟੈਬ ਉੱਤੇ ਜਾਓ" #: ../src/guake/prefs.py:109 #, fuzzy msgid "Go to second tab" msgstr "ਅਗਲੀ ਟੈਬ ਉੱਤੇ ਜਾਓ" #: ../src/guake/prefs.py:111 #, fuzzy msgid "Go to third tab" msgstr "ਅਗਲੀ ਟੈਬ ਉੱਤੇ ਜਾਓ" #: ../src/guake/prefs.py:113 #, fuzzy msgid "Go to fourth tab" msgstr "ਅਗਲੀ ਟੈਬ ਉੱਤੇ ਜਾਓ" #: ../src/guake/prefs.py:115 #, fuzzy msgid "Go to fifth tab" msgstr "ਅਗਲੀ ਟੈਬ ਉੱਤੇ ਜਾਓ" #: ../src/guake/prefs.py:117 #, fuzzy msgid "Go to sixth tab" msgstr "ਅਗਲੀ ਟੈਬ ਉੱਤੇ ਜਾਓ" #: ../src/guake/prefs.py:119 #, fuzzy msgid "Go to seventh tab" msgstr "ਅਗਲੀ ਟੈਬ ਉੱਤੇ ਜਾਓ" #: ../src/guake/prefs.py:121 #, fuzzy msgid "Go to eighth tab" msgstr "ਅਗਲੀ ਟੈਬ ਉੱਤੇ ਜਾਓ" #: ../src/guake/prefs.py:123 #, fuzzy msgid "Go to ninth tab" msgstr "ਅਗਲੀ ਟੈਬ ਉੱਤੇ ਜਾਓ" #: ../src/guake/prefs.py:125 #, fuzzy msgid "Go to tenth tab" msgstr "ਅਗਲੀ ਟੈਬ ਉੱਤੇ ਜਾਓ" #: ../src/guake/prefs.py:127 #, fuzzy msgid "Go to last tab" msgstr "ਅਗਲੀ ਟੈਬ ਉੱਤੇ ਜਾਓ" #: ../src/guake/prefs.py:132 msgid "Zoom out" msgstr "" #: ../src/guake/prefs.py:134 msgid "Zoom in" msgstr "" #: ../src/guake/prefs.py:136 msgid "Zoom in (alternative)" msgstr "" #: ../src/guake/prefs.py:138 msgid "Increase height" msgstr "" #: ../src/guake/prefs.py:140 msgid "Decrease height" msgstr "" #: ../src/guake/prefs.py:142 #, fuzzy msgid "Increase transparency" msgstr "ਟਰਾਂਸਪਰੇਸੀ:" #: ../src/guake/prefs.py:144 #, fuzzy msgid "Decrease transparency" msgstr "ਟਰਾਂਸਪਰੇਸੀ:" #: ../src/guake/prefs.py:146 #, fuzzy msgid "Toggle transparency" msgstr "ਟਰਾਂਸਪਰੇਸੀ:" #: ../src/guake/prefs.py:149 msgid "Clipboard" msgstr "ਕਲਿੱਪਬੋਰਡ" #: ../src/guake/prefs.py:151 msgid "Copy text to clipboard" msgstr "ਟੈਕਸਟ ਕਲਿੱਪਬੋਰਡ 'ਚ ਕਾਪੀ ਕਰੋ" #: ../src/guake/prefs.py:153 msgid "Paste text from clipboard" msgstr "ਕਲਿੱਪਬੋਰਡ 'ਚ ਟੈਕਸਟ ਚੇਪੋ" #: ../src/guake/prefs.py:156 msgid "Extra features" msgstr "" #: ../src/guake/prefs.py:159 msgid "Search select text on web" msgstr "" #: ../src/guake/prefs.py:481 msgid "Action" msgstr "ਐਕਸ਼ਨ" #: ../src/guake/prefs.py:491 msgid "Shortcut" msgstr "ਸ਼ਾਰਟਕੱਟ" #: ../src/guake/prefs.py:651 ../src/guake/prefs.py:697 msgid "Custom" msgstr "" #: ../src/guake/prefs.py:969 msgid "JSON files" msgstr "" #: ../src/guake/prefs.py:1063 #, python-format msgid "The shortcut \"%s\" is already in use." msgstr "ਸ਼ਾਰਟਕੱਟ \"%s\" ਪਹਿਲਾਂ ਹੀ ਵਰਤੋਂ ਅਧੀਨ ਹੈ।" #: ../src/guake/prefs.py:1064 msgid "Error setting keybinding." msgstr "ਸੈਟਿੰਗ ਕੀ-ਬਾਈਡਿੰਗ ਦੌਰਾਨ ਗਲਤੀ।" #: ../src/guake/prefs.py:1076 #, python-format msgid "" "The shortcut \"%s\" cannot be used because it will become impossible to type " "using this key.\n" "\n" "Please try with a key such as Control, Alt or Shift at the same time.\n" msgstr "" #: guake/main.py:153 msgid "Return the selected tab label." msgstr "" #: guake/data/prefs.glade:264 msgid "Never" msgstr "" #: guake/data/prefs.glade:265 msgid "With process running" msgstr "" #: guake/data/prefs.glade:266 msgid "Always" msgstr "" #: guake/data/prefs.glade:499 msgid "Refocus if open" msgstr "" #: guake/data/prefs.glade:865 msgid "Custom command file path:" msgstr "" #: guake/data/prefs.glade:1315 msgid "Show resizer" msgstr "" #: guake/data/prefs.glade:1423 msgid "Block" msgstr "" #: guake/data/prefs.glade:1424 msgid "I-Beam" msgstr "" #: guake/data/prefs.glade:1425 msgid "Underline" msgstr "" #: guake/data/prefs.glade:1443 msgid "Follow GTK+ setting" msgstr "" #: guake/data/prefs.glade:1444 msgid "Blink on" msgstr "" #: guake/data/prefs.glade:1445 msgid "Blink off" msgstr "" #: guake/data/prefs.glade:2236 msgid "" "Use the following elements in the open editor command line:\n" "- %(file_path)s: path to the file that has been clicked\n" "- %(line_number)s: if your editor supports it, you can directly open " "the file to a given line number when found on the screen.\n" "\n" "For example, for sublime, use subl %(file_path)s:%(line_number)s\n" "" msgstr "" #: guake/data/prefs.glade:2442 guake/data/prefs.glade:2462 msgid "ASCII DEL" msgstr "" #: guake/data/prefs.glade:2443 guake/data/prefs.glade:2463 msgid "Escape sequence" msgstr "" #: guake/data/prefs.glade:2444 guake/data/prefs.glade:2464 msgid "Control-H" msgstr "" #: guake/data/prefs.glade:2600 msgid "" "In this dialog you can attach your own command or script to various " "guake events" msgstr "" #: guake/data/prefs.glade:2635 msgid "On show:" msgstr "" #: guake/data/prefs.glade:2665 msgid "On start:" msgstr "" #: guake/data/prefs.glade:2714 msgid "Hooks" msgstr "" #: guake/data/guake-prefs.desktop:8 msgid "Configure your Guake sessions" msgstr "" #: guake/data/guake-prefs.desktop:15 guake/data/guake.desktop:18 msgid "guake" msgstr "" #: guake/data/guake-prefs.desktop:20 msgid "Terminal;Utility;" msgstr "" #: guake/data/guake.desktop:10 msgid "Use the command line in a Quake-like terminal" msgstr "" #: guake/data/prefs.glade:770 msgid "Main Window Horizontal Alignment" msgstr "" #: guake/prefs.py:89 msgid "Show and focus Guake window" msgstr "" #: guake/data/prefs.glade:566 msgid "0" msgstr "" #: guake/data/prefs.glade:610 msgid "Main Window Options" msgstr "" #: guake/data/prefs.glade:770 msgid "Horizontal Alignment:" msgstr "" #: guake/data/prefs.glade:855 msgid "Height:" msgstr "" #: guake/data/prefs.glade:868 msgid "Width:" msgstr "" #: guake/data/prefs.glade:913 msgid "Geometry" msgstr "" #: guake/data/prefs.glade:944 msgid "Main Window" msgstr "" #: guake/data/prefs.glade:1197 msgid "Infinite scrolling" msgstr "" #: guake/data/prefs.glade:1219 msgid "Scrollbar" msgstr "" #: guake/data/prefs.glade:1304 msgid "Scroll to Bottom" msgstr "" #: guake/data/prefs.glade:2117 msgid "" "Quick open is a feature allowing you to open a file directly into your " "favorite text editor by clicking on its filename when it appears in your " "terminal. See the list of currently supported text patterns used to extract " "filename below." msgstr "" #: guake/main.py:64 msgid "Show Guake version number and exit" msgstr "" #: guake/data/prefs.glade:93 msgid "Guake properties" msgstr "ਗੁਆਕੀ ਵਿਸ਼ੇਸ਼ਤਾ" #: guake/data/prefs.glade:107 msgid "Customize behavior and appearance of Guake!" msgstr "ਗੁਆਕੀ ਦੀ ਰਵੱਈਆ ਤੇ ਦਿੱਖ ਬਦਲੋ" #: guake/data/prefs.glade:929 msgid "Displacement in pixels" msgstr "" #: guake/main.py:73 msgid "Enable verbose logging" msgstr "" #: guake/guake_app.py:680 msgid "Quick Open: '{!s}...'" msgstr "" #: guake/guake_app.py:683 msgid "Quick Open: {!s}" msgstr "" #: guake/guake_app.py:691 msgid "Open Link: '{!s}...'" msgstr "" #: guake/guake_app.py:694 msgid "Open Link: {!s}" msgstr "" #: guake/data/prefs.glade:2175 msgid "" "WARNING: your system seems to have PCRE2 disabled for VTE, " "preventing application such as Guake to register \"matchers\" using regular " "expressions. Please contact your distribution to request a new version of " "VTE with PCRE2 enabled ! To use Quick Open, you must select the text " "before using Ctrl+click." msgstr "" #: guake/guake_app.py:680 msgid "Quick Open: {!s}..." msgstr "" #: guake/guake_app.py:691 msgid "Open Link: {!s}..." msgstr "" #: guake/guake_app.py:688 msgid "Quick Open..." msgstr "" #: guake/data/prefs.glade:223 msgid "Start Guake at login" msgstr "" #: guake/data/prefs.glade:363 msgid "Gtk Theme:" msgstr "" #: guake/data/prefs.glade:387 msgid "Prefer dark theme" msgstr "" #: guake/guake_app.py:435 msgid "Custom Commands" msgstr "" #: guake/main.py:184 msgid "" "Specify the tab to rename. Default is 0. Can be used to select tab by UUID." msgstr "" #: guake/main.py:212 msgid "" "Rename the specified tab by --tab-index. Reset to default if TITLE is a " "single dash \"-\"." msgstr "" #: data/search.glade:138 msgid "Search forward" msgstr "" #: data/search.glade:153 msgid "Match case" msgstr "" #: data/search.glade:186 msgid "Current search direction: Backward" msgstr "" #: data/prefs.glade:680 msgid "Set window title to current tab name" msgstr "" #: guake/menus.py:48 msgid "Copy Url" msgstr "" #: guake/menus.py:62 msgid "Split ―" msgstr "" #: guake/menus.py:65 msgid "Split " msgstr "" #: guake/menus.py:68 guake/prefs.py:150 msgid "Close terminal" msgstr "" #: guake/prefs.py:137 msgid "Split management" msgstr "" #: guake/prefs.py:142 msgid "Split tab vertical" msgstr "" #: guake/prefs.py:146 msgid "Split tab horizontal" msgstr "" #: guake/prefs.py:154 msgid "Focus terminal above" msgstr "" #: guake/prefs.py:158 msgid "Focus terminal below" msgstr "" #: guake/prefs.py:162 msgid "Focus terminal on the left" msgstr "" #: guake/prefs.py:166 msgid "Focus terminal on the right" msgstr "" #: guake/prefs.py:170 msgid "Move the terminal split handle up" msgstr "" #: guake/prefs.py:174 msgid "Move the terminal split handle down" msgstr "" #: guake/prefs.py:178 msgid "Move the terminal split handle right" msgstr "" #: guake/prefs.py:182 msgid "Move the terminal split handle left" msgstr "" #: guake/menus.py:65 msgid "Split |" msgstr "" #: guake/menus.py:72 msgid "Save content..." msgstr "" #: data/prefs.glade:1182 msgid "" "This might not work on all shells, make sure that your shell supports the --" "login option" msgstr "" #: guake/prefs.py:128 msgid "New tab in home directory" msgstr "" #: guake/dialogs.py:56 #, python-brace-format msgid " on {0} workspaces" msgstr "" #: guake/main.py:211 msgid "Change Guake palette scheme" msgstr "" #: data/prefs.glade:331 msgid "Use workspace-specific tab sets (requires restart)" msgstr "" #: guake/main.py:175 msgid "Split the selected tab vertically." msgstr "" #: guake/main.py:183 msgid "Split the selected tab horizontally." msgstr "" #: data/prefs.glade:348 msgid "Show close buttons for tabs" msgstr "" #: data/prefs.glade:1682 msgid "Bold text is also bright" msgstr "" #: data/prefs.glade:1682 msgid "Bold text is also bright (VTE >=0.52)" msgstr "" #: guake/menus.py:42 msgid "Save Tabs" msgstr "" #: guake/menus.py:45 msgid "Restore Tabs" msgstr "" #: guake/prefs.py:113 msgid "Search terminal" msgstr "" #: guake/main.py:278 msgid "Save Guake preferences to this filename" msgstr "" #: guake/main.py:286 msgid "Restore Guake preferences from this file" msgstr "" #: guake/guake_app.py:1192 #, python-brace-format msgid "Your session.json file is broken, backup to {session_filename}.bak" msgstr "" #: guake/guake_app.py:1228 #, python-brace-format msgid "" "Your session.json schema is broken, backup to {0}.bak,and error message has " "been saved to {0}.log.err" msgstr "" #: guake/guake_app.py:1239 msgid "Your tabs has been restored!" msgstr "" #: data/prefs.glade:190 msgid "Restore previous session (tabs)" msgstr "" #: data/prefs.glade:204 msgid "Enable notification when restore tabs" msgstr "" #: data/prefs.glade:218 msgid "Automatically save session when the tabs has been modified" msgstr "" #: data/prefs.glade:238 msgid "Startup & Tabs (Experiment)" msgstr "" #: guake/guake_app.py:1192 #, python-brace-format msgid "" "Your {session_filename} file is broken, backup to {session_filename}.bak" msgstr "" #: guake/guake_app.py:1227 #, python-brace-format msgid "" "Your {session_filename} schema is broken, backup to {0}.bak,and error " "message has been saved to {session_filename}.log.err" msgstr "" #: guake/guake_app.py:1227 #, python-brace-format msgid "" "Your {session_filename} schema is broken, backup to {session_filename}.bak," "and error message has been saved to {session_filename}.log.err." msgstr "" #: guake/guake_app.py:1227 #, python-brace-format msgid "" "Your {session_filename} schema is broken, backup to {session_filename}.bak, " "and error message has been saved to {session_filename}.log.err." msgstr "" #: guake/notebook.py:317 msgid "" "You are going to restore *all* the tabs!\n" "which means all your terminals & pages will be replaced.\n" "\n" "Do you want to continue?" msgstr "" #: guake/main.py:296 msgid "Show support infomations" msgstr "" #: guake/guake_app.py:1240 #, python-brace-format msgid "" "Tabs session restore abort.\n" "Your session file ({session_filename}) missing schema_version as key" msgstr "" #: guake/guake_app.py:1252 #, python-brace-format msgid "" "Tabs session restore abort.\n" "Your session file schema version is higher than current version " "({session_file_schema_version} > {current_schema_version})." msgstr "" #: guake/data/prefs.glade:409 msgid "Use workspace-specific tab sets (requires restart, only work on X11)" msgstr "" #~ msgid "key binding error" #~ msgstr "ਕੁੰਜੀ ਬਾਈਡਿੰਗ ਗਲਤੀ" #~ msgid "Unable to bind global %s key" #~ msgstr "ਗਲੋਬਲ %s ਕੁੰਜੀ ਬਾਈਡਿੰਗ ਲਈ ਅਸਮਰੱਥ" #~ msgid "http://guake.org" #~ msgstr "http://guake.org" #~ msgid "" #~ "Tango\n" #~ "Linux console\n" #~ "XTerm\n" #~ "Rxvt\n" #~ "Custom\n" #~ msgstr "" #~ "Tango\n" #~ "Linux console\n" #~ "XTerm\n" #~ "Rxvt\n" #~ "ਪਸੰਦੀਦਾ\n" #~ msgid "Select a tab" #~ msgstr "ਟੈਬ ਚੁਣੋ" #~ msgid "Rename the selected tab." #~ msgstr "ਚੁਣੀ ਟੈਬ ਦਾ ਨਾਂ ਬਦਲੋ।" guake-3.6.3/po/pl.po000066400000000000000000000721501346623310400142170ustar00rootroot00000000000000# Translation of Guake to Polish # Copyright (C) 2008-2010, 2015-2018 Guake Translators # This file is distributed under the same license as the Guake package. # # Translators: # Mieszko Ślusarczyk , 2008. # Piotr Drąg , 2008-2010, 2015-2018. msgid "" msgstr "" "Project-Id-Version: guake\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2018-04-22 19:49+0200\n" "PO-Revision-Date: 2019-04-28 18:50+0000\n" "Last-Translator: Piotr Drąg \n" "Language-Team: Polish \n" "Language: pl\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=3; plural=n==1 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 " "|| n%100>=20) ? 1 : 2;\n" "X-Generator: Weblate 3.6.1\n" #: guake/keybindings.py:94 guake/guake_app.py:191 guake/guake_app.py:403 #: guake/about.py:54 msgid "Guake Terminal" msgstr "Terminal Guake" #: guake/keybindings.py:96 #, python-format msgid "" "A problem happened when binding %s key.\n" "Please use Guake Preferences dialog to choose another key" msgstr "" "Wystąpił problem podczas dowiązywania klawisza %s.\n" "Proszę użyć okna preferencji programu Guake, aby wybrać inny klawisz" #: guake/guake_app.py:131 msgid "Do you want to close the tab?" msgstr "Zamknąć kartę?" #: guake/guake_app.py:134 msgid "Do you really want to quit Guake?" msgstr "Na pewno zakończyć program Guake?" #: guake/guake_app.py:136 msgid " and one tab open" msgstr " i jest jedna otwarta karta" #: guake/guake_app.py:138 #, python-brace-format msgid " and {0} tabs open" msgstr " i więcej kart jest otwartych: {0}" #: guake/guake_app.py:141 msgid "There are no processes running" msgstr "Żaden proces nie jest uruchomiony" #: guake/guake_app.py:143 msgid "There is a process still running" msgstr "Jeden proces jest nadal uruchomiony" #: guake/guake_app.py:145 #, python-brace-format msgid "There are {0} processes still running" msgstr "Nadal uruchomione procesy: {0}" #: guake/guake_app.py:197 msgid "guake-indicator" msgstr "guake-indicator" #: guake/guake_app.py:197 msgid "guake-tray" msgstr "guake-tray" #: guake/guake_app.py:202 msgid "Show" msgstr "Wyświetl" #: guake/guake_app.py:404 msgid "" "Guake is now running,\n" "press {!s} to use it." msgstr "" "Program Guake jest teraz uruchomiony,\n" "naciśnięcie {!s} go aktywuje." #: guake/guake_app.py:441 msgid "Custom Commands" msgstr "Inne polecenia" #: guake/guake_app.py:694 #, python-format msgid "Search on Web: '%s'" msgstr "Wyszukiwanie w Internecie: „%s”" #: guake/guake_app.py:698 msgid "Search on Web (no selection)" msgstr "Wyszukiwanie w Internecie (bez zaznaczenia)" #: guake/guake_app.py:710 msgid "Quick Open: {!s}..." msgstr "Szybkie otwieranie: {!s}…" #: guake/guake_app.py:713 msgid "Quick Open: {!s}" msgstr "Szybkie otwieranie: {!s}" #: guake/guake_app.py:716 msgid "Quick Open..." msgstr "Szybko otwórz…" #: guake/guake_app.py:724 msgid "Open Link: {!s}..." msgstr "Otwieranie odnośnika: {!s}…" #: guake/guake_app.py:727 msgid "Open Link: {!s}" msgstr "Otwieranie odnośnika: {!s}" #: guake/guake_app.py:730 msgid "Open Link..." msgstr "Otwórz odnośnik…" #: guake/guake_app.py:1469 msgid "Terminal" msgstr "Terminal" #: guake/guake_app.py:1525 msgid "Rename tab" msgstr "Zmiana nazwy karty" #: guake/guake_app.py:1860 msgid "Save to..." msgstr "Zapisanie do…" #: guake/guake_app.py:1865 guake/prefs.py:1198 msgid "All files" msgstr "Wszystkie pliki" #: guake/guake_app.py:1870 msgid "Text and Logs" msgstr "Pliki tekstowe i dzienniki" #: guake/guake_app.py:1890 msgid "Find" msgstr "Znajdź" #: guake/guake_app.py:1892 msgid "Forward" msgstr "Dalej" #: guake/guake_app.py:1892 msgid "Backward" msgstr "Wstecz" #: guake/main.py:67 msgid "Show Guake version number and exit" msgstr "Wyświetla wersję programu Guake i kończy działanie" #: guake/main.py:76 msgid "Enable verbose logging" msgstr "Włącza więcej komunikatów dziennika" #: guake/main.py:85 msgid "Put Guake in fullscreen mode" msgstr "Umieszcza program Guake w trybie pełnoekranowym" #: guake/main.py:94 msgid "Toggles the visibility of the terminal window" msgstr "Przełącza widoczność okna terminala" #: guake/main.py:102 msgid "Shows Guake main window" msgstr "Wyświetla główne okno programu Guake" #: guake/main.py:110 msgid "Hides Guake main window" msgstr "Ukrywa główne okno programu Guake" #: guake/main.py:119 msgid "Shows Guake preference window" msgstr "Wyświetla okno preferencji programu Guake" #: guake/main.py:128 msgid "Shows Guake's about info" msgstr "Wyświetla informacje o programie Guake" #: guake/main.py:137 msgid "Add a new tab (with current directory set to NEW_TAB)" msgstr "Dodaje nową kartę (z bieżącym katalogiem ustawionym na NEW_TAB)" #: guake/main.py:146 msgid "Select a tab (SELECT_TAB is the index of the tab)" msgstr "Wybiera kartę (SELECT_TAB jest indeksem kart)" #: guake/main.py:155 msgid "Return the selected tab index." msgstr "Wyświetla indeks wybranej karty." #: guake/main.py:164 msgid "Return the selected tab label." msgstr "Wyświetla etykietę wybranej karty." #: guake/main.py:173 msgid "Execute an arbitrary command in the selected tab." msgstr "Wykonuje podane polecenie w wybranej karcie." #: guake/main.py:182 msgid "" "Specify the tab to rename. Default is 0. Can be used to select tab by UUID." msgstr "" "Podaje kartę do zmiany nazwy. Domyślnie 0. Można używać do wybrania karty " "według UUID." #: guake/main.py:190 msgid "Set the hexadecimal (#rrggbb) background color of the selected tab." msgstr "Ustawia szesnastkowy (#rrggbb) kolor tła wybranej karty." #: guake/main.py:199 msgid "Set the hexadecimal (#rrggbb) foreground color of the selected tab." msgstr "Ustawia szesnastkowy (#rrggbb) kolor tekstu wybranej karty." #: guake/main.py:210 msgid "" "Rename the specified tab by --tab-index. Reset to default if TITLE is a " "single dash \"-\"." msgstr "" "Zmienia nazwę karty podanej przez parametr --tab-index. Przywraca domyślą, " "jeśli TITLE jest pojedynczym myślnikiem „-”." #: guake/main.py:222 msgid "" "Rename the current tab. Reset to default if TITLE is a single dash \"-\"." msgstr "" "Zmienia nazwę bieżącej karty. Przywraca domyślą, jeśli TITLE jest " "pojedynczym myślnikiem „-”." #: guake/main.py:232 msgid "Says to Guake go away =(" msgstr "Mówi programowi Guake, aby sobie poszedł =(" #: guake/main.py:241 msgid "Do not execute the start up script" msgstr "Bez wykonywania skryptu startowego" #: guake/prefs.py:78 msgid "" msgstr "" #: guake/prefs.py:89 msgid "General" msgstr "Ogólne" #: guake/prefs.py:94 msgid "Toggle Guake visibility" msgstr "Przełącz widoczność terminala Guake" #: guake/prefs.py:98 msgid "Show and focus Guake window" msgstr "Wyświetl i aktywuj okno Guake" #: guake/prefs.py:102 msgid "Toggle Fullscreen" msgstr "Przełącz pełny ekran" #: guake/prefs.py:106 msgid "Toggle Hide on Lose Focus" msgstr "Przełącz ukrycie po utracie aktywności" #: guake/prefs.py:110 msgid "Quit" msgstr "Zakończ" #: guake/prefs.py:114 msgid "Reset terminal" msgstr "Przywróć terminal" #: guake/prefs.py:119 msgid "Tab management" msgstr "Zarządzanie kartami" #: guake/prefs.py:124 msgid "New tab" msgstr "Nowa karta" #: guake/prefs.py:128 msgid "Close tab" msgstr "Zamknij kartę" #: guake/prefs.py:132 msgid "Rename current tab" msgstr "Zmień nazwę bieżącej karty" #: guake/prefs.py:137 msgid "Navigation" msgstr "Nawigacja" #: guake/prefs.py:142 msgid "Go to previous tab" msgstr "Przejdź do poprzedniej karty" #: guake/prefs.py:146 msgid "Go to next tab" msgstr "Przejdź do następnej karty" #: guake/prefs.py:150 msgid "Move current tab left" msgstr "Przenieś bieżącą kartę w lewo" #: guake/prefs.py:154 msgid "Move current tab right" msgstr "Przenieś bieżącą kartę w prawo" #: guake/prefs.py:158 msgid "Go to first tab" msgstr "Przejdź do pierwszej karty" #: guake/prefs.py:162 msgid "Go to second tab" msgstr "Przejdź do drugiej karty" #: guake/prefs.py:166 msgid "Go to third tab" msgstr "Przejdź do trzeciej karty" #: guake/prefs.py:170 msgid "Go to fourth tab" msgstr "Przejdź do czwartej karty" #: guake/prefs.py:174 msgid "Go to fifth tab" msgstr "Przejdź do piątej karty" #: guake/prefs.py:178 msgid "Go to sixth tab" msgstr "Przejdź do szóstej karty" #: guake/prefs.py:182 msgid "Go to seventh tab" msgstr "Przejdź do siódmej karty" #: guake/prefs.py:186 msgid "Go to eighth tab" msgstr "Przejdź do ósmej karty" #: guake/prefs.py:190 msgid "Go to ninth tab" msgstr "Przejdź do dziewiątej karty" #: guake/prefs.py:194 msgid "Go to tenth tab" msgstr "Przejdź do dziesiątej karty" #: guake/prefs.py:198 msgid "Go to last tab" msgstr "Przejdź do ostatniej karty" #: guake/prefs.py:203 msgid "Appearance" msgstr "Wygląd" #: guake/prefs.py:207 msgid "Zoom out" msgstr "Pomniejsz" #: guake/prefs.py:210 msgid "Zoom in" msgstr "Powiększ" #: guake/prefs.py:213 msgid "Zoom in (alternative)" msgstr "Powiększ (alternatywne)" #: guake/prefs.py:216 msgid "Increase height" msgstr "Zwiększ wysokość" #: guake/prefs.py:219 msgid "Decrease height" msgstr "Zmniejsz wysokość" #: guake/prefs.py:222 msgid "Increase transparency" msgstr "Zwiększ przezroczystość" #: guake/prefs.py:225 msgid "Decrease transparency" msgstr "Zmniejsz przezroczystość" #: guake/prefs.py:228 msgid "Toggle transparency" msgstr "Przełącz przezroczystość" #: guake/prefs.py:232 msgid "Clipboard" msgstr "Schowek" #: guake/prefs.py:237 msgid "Copy text to clipboard" msgstr "Skopiuj tekst do schowka" #: guake/prefs.py:241 msgid "Paste text from clipboard" msgstr "Wklej tekst ze schowka" #: guake/prefs.py:246 msgid "Extra features" msgstr "Dodatkowe funkcje" #: guake/prefs.py:250 msgid "Search select text on web" msgstr "Znajdź zaznaczony tekst w Internecie" #: guake/prefs.py:686 msgid "Action" msgstr "Działanie" #: guake/prefs.py:694 msgid "Shortcut" msgstr "Skrót" #: guake/prefs.py:849 guake/prefs.py:903 msgid "Custom" msgstr "Inne" #: guake/prefs.py:1194 msgid "JSON files" msgstr "Pliki JSON" #: guake/prefs.py:1293 #, python-format msgid "The shortcut \"%s\" is already in use." msgstr "Skrót „%s” jest już używany." #: guake/prefs.py:1294 msgid "Error setting keybinding." msgstr "Błąd podczas ustawiania dowiązania klawiszy." #: guake/prefs.py:1310 #, python-format msgid "" "The shortcut \"%s\" cannot be used because it will become impossible to type " "using this key.\n" "\n" "Please try with a key such as Control, Alt or Shift at the same time.\n" msgstr "" "Skrót „%s” nie może być używany, ponieważ niemożliwe będzie pisanie za " "pomocą tego klawisza.\n" "\n" "Proszę spróbować z klawiszem takim jak Ctrl, Alt lub Shift w tym samym " "czasie.\n" #: data/prefs.glade:43 msgid "Guake Preferences" msgstr "Preferencje programu Guake" #: data/prefs.glade:93 msgid "Guake properties" msgstr "Właściwości programu Guake" #: data/prefs.glade:107 msgid "Customize behavior and appearance of Guake!" msgstr "Dostosowanie zachowania i wyglądu programu Guake!" #: data/prefs.glade:190 msgid "Enable popup notifications on startup" msgstr "Wyskakujące powiadomienia podczas uruchamiania" #: data/prefs.glade:207 msgid "_Play system alert sound on bell" msgstr "Systemowy _dźwięk alarmu jako dzwonek" #: data/prefs.glade:223 msgid "Start Guake at login" msgstr "Uruchamianie programu Guake podczas logowania" #: data/prefs.glade:246 msgid "Prompt on close tab:" msgstr "Potwierdzenie podczas zamykania karty:" #: data/prefs.glade:260 msgid "Never" msgstr "Nigdy" #: data/prefs.glade:261 msgid "With process running" msgstr "Kiedy jest uruchomiony proces" #: data/prefs.glade:262 msgid "Always" msgstr "Zawsze" #: data/prefs.glade:281 msgid "Always prompt on quit" msgstr "Potwierdzenie podczas kończenia działania" #: data/prefs.glade:297 msgid "Show tray icon" msgstr "Ikona obszaru powiadamiania" #: data/prefs.glade:313 msgid "_Flash terminal on bell" msgstr "_Miganie terminalem jako dzwonek" #: data/prefs.glade:337 data/prefs.glade:1635 msgid "General" msgstr "Ogólne" #: data/prefs.glade:363 msgid "Gtk Theme:" msgstr "Motyw biblioteki GTK+:" #: data/prefs.glade:387 msgid "Prefer dark theme" msgstr "Ciemny motyw" #: data/prefs.glade:416 msgid "Custom command file path:" msgstr "Inna ścieżka do pliku polecenia:" #: data/prefs.glade:428 msgid "Please select a json file" msgstr "Proszę wybrać plik JSON" #: data/prefs.glade:516 msgid "Refocus if open" msgstr "Ponowna aktywacja, jeśli jest otwarty" #: data/prefs.glade:533 msgid "Hide on lose focus" msgstr "Ukrycie po utracie aktywności" #: data/prefs.glade:550 msgid "Start fullscreen" msgstr "Uruchamianie w trybie pełnoekranowym" #: data/prefs.glade:566 msgid "Stay on top" msgstr "Zawsze na wierzchu" #: data/prefs.glade:584 msgid "Show tab bar" msgstr "Pasek kart" #: data/prefs.glade:600 msgid "Use VTE titles for tab names" msgstr "Tytuły VTE dla nazw kart" #: data/prefs.glade:618 msgid "Abbreviate directories in tab names" msgstr "Skracanie nazw katalogów w nazwach kart" #: data/prefs.glade:643 msgid "Max tab name length:" msgstr "Maksymalna długość nazwy karty:" #: data/prefs.glade:658 msgid "0" msgstr "0" #: data/prefs.glade:702 msgid "Main Window Options" msgstr "Opcje głównego okna" #: data/prefs.glade:733 msgid "Bottom align window instead of top align" msgstr "Okno na dole zamiast na górze" #: data/prefs.glade:749 msgid "Appear on mouse display" msgstr "Wyświetlanie na ekranie z kursorem" #: data/prefs.glade:774 msgid "Appear on display:" msgstr "Wyświetlanie na ekranie:" #: data/prefs.glade:804 msgid "Place tabs on top" msgstr "Karty na górze" #: data/prefs.glade:826 msgid "Placement" msgstr "Umieszczenie" #: data/prefs.glade:862 msgid "Horizontal Alignment:" msgstr "Wyrównanie poziome:" #: data/prefs.glade:878 msgid "Left" msgstr "Po lewej" #: data/prefs.glade:898 msgid "Center" msgstr "Na środku" #: data/prefs.glade:918 msgid "Right" msgstr "Po prawej" #: data/prefs.glade:947 msgid "Height:" msgstr "Wysokość:" #: data/prefs.glade:960 msgid "Width:" msgstr "Szerokość:" #: data/prefs.glade:1014 msgid "Displacement in pixels" msgstr "Przesunięcie w pikselach" #: data/prefs.glade:1042 msgid "Geometry" msgstr "Geometria" #: data/prefs.glade:1073 msgid "Main Window" msgstr "Główne okno" #: data/prefs.glade:1118 msgid "Default interpreter:" msgstr "Domyślna powłoka:" #: data/prefs.glade:1157 msgid "_Run command as a login shell" msgstr "U_ruchamianie polecenia jako powłokę logowania" #: data/prefs.glade:1175 msgid "_Open new tab in current directory" msgstr "_Otwieranie nowych kart w bieżącym katalogu" #: data/prefs.glade:1220 msgid "Shell" msgstr "Powłoka" #: data/prefs.glade:1266 msgid "Show scrollbar" msgstr "Pasek przewijania" #: data/prefs.glade:1290 msgid "Scrollback lines:" msgstr "Przewijanie:" #: data/prefs.glade:1326 msgid "Infinite scrolling" msgstr "Nieograniczone przewijanie" #: data/prefs.glade:1348 msgid "Scrollbar" msgstr "Pasek przewijania" #: data/prefs.glade:1393 msgid "On output" msgstr "Po wyjściu" #: data/prefs.glade:1410 msgid "On key stroke" msgstr "Po wciśnięciu klawisza" #: data/prefs.glade:1433 msgid "Scroll to Bottom" msgstr "Przewijanie na dół" #: data/prefs.glade:1457 msgid "Scrolling" msgstr "Przewijanie" #: data/prefs.glade:1492 msgid "Use the system fixed width font" msgstr "Systemowa czcionka o stałej szerokości" #: data/prefs.glade:1520 msgid "Font:" msgstr "Czcionka:" #: data/prefs.glade:1535 msgid "Choose some font" msgstr "Wybór czcionki" #: data/prefs.glade:1549 msgid "Cursor shape:" msgstr "Kształt kursora:" #: data/prefs.glade:1564 msgid "Block" msgstr "Blokowy" #: data/prefs.glade:1565 msgid "I-Beam" msgstr "Linia pionowa" #: data/prefs.glade:1566 msgid "Underline" msgstr "Podkreślenie" #: data/prefs.glade:1580 msgid "Cursor blink mode:" msgstr "Tryb migania kursora:" #: data/prefs.glade:1594 msgid "Follow GTK+ setting" msgstr "Ustawienie biblioteki GTK+" #: data/prefs.glade:1595 msgid "Blink on" msgstr "Miganie" #: data/prefs.glade:1596 msgid "Blink off" msgstr "Bez migania" #: data/prefs.glade:1613 msgid "Allow bold font" msgstr "Zezwolenie na pogrubioną czcionkę" #: data/prefs.glade:1670 msgid "Built-in schemes:" msgstr "Wbudowane schematy:" #: data/prefs.glade:1696 msgid "Color palette:" msgstr "Paleta kolorów:" #: data/prefs.glade:1711 msgid "Demo:" msgstr "Demo:" #: data/prefs.glade:2014 msgid "Palette" msgstr "Paleta" #: data/prefs.glade:2036 msgid "Effects" msgstr "Efekty" #: data/prefs.glade:2061 msgid "Transparency:" msgstr "Przezroczystość:" #: data/prefs.glade:2145 msgid "" "To change a shortcut simply click on its name.\n" "To disable a shortcut, press the \"Backspace\" key." msgstr "" "Klikając nazwę skrótu można go zmienić.\n" "Naciśnięcie klawisza „Backspace” wyłącza skrót." #: data/prefs.glade:2195 msgid "Keyboard shortcuts" msgstr "Skróty klawiszowe" #: data/prefs.glade:2247 msgid "" "Quick open is a feature allowing you to open a file directly into your " "favorite text editor by clicking on its filename when it appears in your " "terminal. See the list of currently supported text patterns used to extract " "filename below." msgstr "" "Szybkie otwieranie jest funkcją umożliwiającą otwieranie plików bezpośrednio " "w wybranym edytorze tekstu przez kliknięcie nazwy pliku w terminalu. Poniżej " "znajduje się lista obecnie obsługiwanych wzorców używanych do wyodrębniania " "nazw plików." #: data/prefs.glade:2285 msgid "Enable Quick Open when Ctrl+clicking on a filename in the terminal" msgstr "" "Szybkie otwieranie po kliknięciu na nazwie pliku w terminalu przytrzymując " "klawisz Ctrl" #: data/prefs.glade:2310 msgid "Editor command line:" msgstr "Polecenie edytora:" #: data/prefs.glade:2356 msgid "" "Use the following elements in the open editor command line:\n" "- %(file_path)s: path to the file that has been clicked\n" "- %(line_number)s: if your editor supports it, you can directly open " "the file to a given line number when found on the screen.\n" "\n" "For example, for sublime, use subl %(file_path)s:%(line_number)s\n" "" msgstr "" "Można używać następujących elementów w poleceniu otwierania " "edytora:\n" " • %(file_path)s: ścieżka do pliku, który został kliknięty\n" " • %(line_number)s: jeśli edytor to obsługuje, można otwierać plik na " "podanym wierszu, jeśli znajduje się na ekranie.\n" "\n" "Na przykład dla edytora sublime należy użyć subl %(file_path)s:" "%(line_number)s\n" "" #: data/prefs.glade:2411 msgid "Quick open in current terminal" msgstr "Szybkie otwieranie w bieżącym terminalu" #: data/prefs.glade:2455 data/guake.glade:134 msgid "Quick Open" msgstr "Szybkie otwieranie" #: data/prefs.glade:2505 msgid "" "In this dialog you can attach your own command or script to various " "guake events" msgstr "" "W tym oknie można dołączyć własne polecenie lub skrypt do różnych " "zdarzeń programu Guake" #: data/prefs.glade:2527 msgid "On show:" msgstr "Podczas wyświetlania:" #: data/prefs.glade:2539 msgid "On start:" msgstr "Podczas uruchamiania:" #: data/prefs.glade:2605 msgid "Hooks" msgstr "Zaczepy" #: data/prefs.glade:2634 msgid "" "Note: These options may cause some applications to behave " "incorrectly. They are only here to allow you to work around certain " "applications and operating systems that expect different terminal behavior." msgstr "" "Uwaga: te opcje mogą spowodować nieprawidłowe zachowanie " "niektórych programów. Istnieją one wyłączenie w celu obejścia problemów " "z określonymi programami i systemami operacyjnymi, które oczekują innego " "zachowania terminala." #: data/prefs.glade:2654 msgid "_Backspace key generates:" msgstr "Klawisz _Backspace generuje:" #: data/prefs.glade:2667 msgid "_Delete key generates:" msgstr "Klawisz _Delete generuje:" #: data/prefs.glade:2682 data/prefs.glade:2699 msgid "ASCII DEL" msgstr "ASCII DEL" #: data/prefs.glade:2683 data/prefs.glade:2700 msgid "Escape sequence" msgstr "Sekwencja Escape" #: data/prefs.glade:2684 data/prefs.glade:2701 msgid "Control-H" msgstr "Ctrl-H" #: data/prefs.glade:2726 msgid "_Reset Compatibility Options to Defaults" msgstr "P_rzywróć domyślne opcje zgodności" #: data/prefs.glade:2757 msgid "Compatibility" msgstr "Zgodność" #: data/guake.glade:11 msgid "Copy" msgstr "Skopiuj" #: data/guake.glade:20 msgid "Paste" msgstr "Wklej" #: data/guake.glade:50 msgid "Save to File..." msgstr "Zapisz do pliku…" #: data/guake.glade:68 msgid "Find..." msgstr "Znajdź…" #: data/guake.glade:83 data/guake.glade:188 msgid "New Tab" msgstr "Nowa karta" #: data/guake.glade:92 msgid "Rename Tab" msgstr "Zmień nazwę karty" #: data/guake.glade:101 msgid "Close Tab" msgstr "Zamknij kartę" #: data/guake.glade:116 msgid "Open link..." msgstr "Otwórz odnośnik…" #: data/guake.glade:125 msgid "Search on Web" msgstr "Znajdź w Internecie" #: data/guake.glade:197 msgid "Rename" msgstr "Zmień nazwę" #: data/guake.glade:206 data/search.glade:22 msgid "Close" msgstr "Zamknij" #: data/guake.glade:256 msgid "Guake!" msgstr "Guake!" #: data/about.glade:14 msgid "" "Guake is an easy to access\n" "terminal based on FPS games terminal" msgstr "" "Guake jest łatwo dostępnym\n" "terminalem opartym na grach FPS" #: data/search.glade:138 msgid "Search forward" msgstr "Wyszukiwanie naprzód" #: data/search.glade:153 msgid "Match case" msgstr "Rozróżnianie małych i wielkich liter" #: data/search.glade:186 msgid "Current search direction: Backward" msgstr "Obecny kierunek wyszukiwania: wstecz" #: data/autostart-guake.desktop:31 data/guake.template.desktop:4 msgid "Use the command line in a Quake-like terminal" msgstr "Używanie wiersza poleceń w terminalu w stylu gry Quake" #: data/autostart-guake.desktop:39 data/guake-prefs.template.desktop:7 #: data/guake.template.desktop:7 msgid "guake" msgstr "guake" #: data/guake-prefs.template.desktop:4 msgid "Configure your Guake sessions" msgstr "Konfiguracja sesji programu Guake" #: data/guake-prefs.template.desktop:13 msgid "Terminal;Utility;" msgstr "Terminal;Utility;" #: data/prefs.glade:680 msgid "Set window title to current tab name" msgstr "Ustawianie tytułu okna na nazwę obecnej karty" #: guake/menus.py:48 msgid "Copy Url" msgstr "Skopiuj adres URL" #: guake/menus.py:62 msgid "Split ―" msgstr "Podziel ―" #: guake/menus.py:65 msgid "Split " msgstr "Podziel " #: guake/menus.py:68 guake/prefs.py:150 msgid "Close terminal" msgstr "Zamknij terminal" #: guake/prefs.py:137 msgid "Split management" msgstr "Zarządzanie podziałem" #: guake/prefs.py:142 msgid "Split tab vertical" msgstr "Pionowy podział karty" #: guake/prefs.py:146 msgid "Split tab horizontal" msgstr "Poziomy podział karty" #: guake/prefs.py:154 msgid "Focus terminal above" msgstr "Aktywacja terminala na górze" #: guake/prefs.py:158 msgid "Focus terminal below" msgstr "Aktywacja terminala na dole" #: guake/prefs.py:162 msgid "Focus terminal on the left" msgstr "Aktywacja terminala po lewej" #: guake/prefs.py:166 msgid "Focus terminal on the right" msgstr "Aktywacja terminala po prawej" #: guake/prefs.py:170 msgid "Move the terminal split handle up" msgstr "Przeniesienie uchwytu podziału terminala w górę" #: guake/prefs.py:174 msgid "Move the terminal split handle down" msgstr "Przeniesienie uchwytu podziału terminala w dół" #: guake/prefs.py:178 msgid "Move the terminal split handle right" msgstr "Przeniesienie uchwytu podziału terminala w prawo" #: guake/prefs.py:182 msgid "Move the terminal split handle left" msgstr "Przeniesienie uchwytu podziału terminala w lewo" #: guake/menus.py:65 msgid "Split |" msgstr "Podziel |" #: guake/menus.py:72 msgid "Save content..." msgstr "Zapisz zawartość…" #: data/prefs.glade:1182 msgid "" "This might not work on all shells, make sure that your shell supports the --" "login option" msgstr "" "To może nie działać we wszystkich powłokach, proszę się upewnić, że używana " "powłoka obsługuje opcję --login" #: guake/prefs.py:128 msgid "New tab in home directory" msgstr "Nowa karta w katalogu domowym" #: guake/dialogs.py:56 #, python-brace-format msgid " on {0} workspaces" msgstr " na obszarach roboczych: {0}" #: guake/main.py:211 msgid "Change Guake palette scheme" msgstr "Zmienia schemat palety Guake" #: data/prefs.glade:331 msgid "Use workspace-specific tab sets (requires restart)" msgstr "" "Używa zestawów kart dla konkretnych obszarów roboczych (wymaga ponownego " "uruchomienia)" #: guake/main.py:175 msgid "Split the selected tab vertically." msgstr "Dzieli wybraną kartę w pionie." #: guake/main.py:183 msgid "Split the selected tab horizontally." msgstr "Dzieli wybraną kartę w poziomie." #: data/prefs.glade:348 msgid "Show close buttons for tabs" msgstr "Przyciski zamknięcia kart" #: data/prefs.glade:1682 msgid "Bold text is also bright" msgstr "Pogrubiony tekst jest także jasny" #: data/prefs.glade:1682 msgid "Bold text is also bright (VTE >=0.52)" msgstr "" "Pogrubiony tekst jest także jasny (biblioteka VTE w wersji co najmniej 0.52)" #: guake/menus.py:42 msgid "Save Tabs" msgstr "Zapisz karty" #: guake/menus.py:45 msgid "Restore Tabs" msgstr "Przywróć karty" #: guake/prefs.py:113 msgid "Search terminal" msgstr "Wyszukaj w terminalu" #: guake/main.py:278 msgid "Save Guake preferences to this filename" msgstr "Zapisywanie preferencji programu Guake do tego pliku" #: guake/main.py:286 msgid "Restore Guake preferences from this file" msgstr "Przywracanie preferencji programu Guake z tego pliku" #: guake/guake_app.py:1192 #, python-brace-format msgid "Your session.json file is broken, backup to {session_filename}.bak" msgstr "" "Plik session.json jest uszkodzony, kopia zapasowa w {session_filename}.bak" #: guake/guake_app.py:1228 #, python-brace-format msgid "" "Your session.json schema is broken, backup to {0}.bak,and error message has " "been saved to {0}.log.err" msgstr "" "Schemat session.json jest uszkodzony, kopia zapasowa w {0}.bak, a komunikat " "o błędzie został zapisany w {0}.log.err" #: guake/guake_app.py:1239 msgid "Your tabs has been restored!" msgstr "Przywrócono karty" #: guake/tests/test_about.py:23 msgid "About Guake" msgstr "O programie" #: data/prefs.glade:190 msgid "Restore previous session (tabs)" msgstr "Przywracanie poprzedniej sesji (kart)" #: data/prefs.glade:204 msgid "Enable notification when restore tabs" msgstr "Powiadomienie po przywróceniu kart" #: data/prefs.glade:218 msgid "Automatically save session when the tabs has been modified" msgstr "Automatyczne zapisywanie sesji po modyfikacji kart" #: data/prefs.glade:238 msgid "Startup & Tabs (Experiment)" msgstr "Uruchamianie i karty (eksperymentalne)" #: guake/guake_app.py:1192 #, python-brace-format msgid "" "Your {session_filename} file is broken, backup to {session_filename}.bak" msgstr "" "Plik {session_filename} jest uszkodzony, kopia zapasowa w {session_filename}." "bak" #: guake/guake_app.py:1227 #, python-brace-format msgid "" "Your {session_filename} schema is broken, backup to {0}.bak,and error " "message has been saved to {session_filename}.log.err" msgstr "" "Schemat {session_filename} jest uszkodzony, kopia zapasowa w {0}.bak, " "a komunikat o błędzie został zapisany w {session_filename}.log.err" #: guake/guake_app.py:1227 #, python-brace-format msgid "" "Your {session_filename} schema is broken, backup to {session_filename}.bak," "and error message has been saved to {session_filename}.log.err." msgstr "" "Schemat {session_filename} jest uszkodzony, kopia zapasowa " "w {session_filename}.bak, a komunikat o błędzie został zapisany " "w {session_filename}.log.err." #: guake/guake_app.py:1227 #, python-brace-format msgid "" "Your {session_filename} schema is broken, backup to {session_filename}.bak, " "and error message has been saved to {session_filename}.log.err." msgstr "" "Schemat {session_filename} jest uszkodzony, kopia zapasowa " "w {session_filename}.bak, a komunikat o błędzie został zapisany " "w {session_filename}.log.err." #: guake/notebook.py:317 msgid "" "You are going to restore *all* the tabs!\n" "which means all your terminals & pages will be replaced.\n" "\n" "Do you want to continue?" msgstr "" "Zostaną przywrócone *wszystkie* karty, co oznacza,\n" "że wszystkie obecne terminale i strony zostaną zastąpione.\n" "\n" "Kontynuować?" #: guake/main.py:296 msgid "Show support infomations" msgstr "Wyświetla informacje wsparcia" #: guake/guake_app.py:1240 #, python-brace-format msgid "" "Tabs session restore abort.\n" "Your session file ({session_filename}) missing schema_version as key" msgstr "" #: guake/guake_app.py:1252 #, python-brace-format msgid "" "Tabs session restore abort.\n" "Your session file schema version is higher than current version " "({session_file_schema_version} > {current_schema_version})." msgstr "" #: guake/data/prefs.glade:409 msgid "Use workspace-specific tab sets (requires restart, only work on X11)" msgstr "" guake-3.6.3/po/pt_BR.po000066400000000000000000001046651346623310400146210ustar00rootroot00000000000000# Brasilian Portuguese translation of Guake. # Copyright (C) 2013 Guake Translators # This file is distributed under the same license as the Guake package. # # Translators: # Lincoln de Sousa , 2008. # Djavan Fagundes , 2009. # Matheus Manoel , 2016. msgid "" msgstr "" "Project-Id-Version: Guake 0.4.5\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2016-08-18 17:32+0200\n" "PO-Revision-Date: 2018-01-25 20:36+0100\n" "Last-Translator: Matheus Manoel \n" "Language-Team: Portuguese/Brazil \n" "Language: pt_BR\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "X-Generator: Poedit 2.0.6\n" #: ../guake/data/about.glade.h:1 msgid "About Guake" msgstr "Sobre o Guake" #: ../guake/data/about.glade.h:5 msgid "" "Guake is an easy to access\n" "terminal based on FPS games terminal" msgstr "" "Guake é um terminal de fácil acesso\n" "baseado em terminais de jogos de FPS" #: ../guake/data/guake.glade.h:1 msgid "Copy" msgstr "Copiar" #: ../guake/data/guake.glade.h:2 msgid "Paste" msgstr "Colar" #: ../guake/data/guake.glade.h:3 ../src/guake/prefs.py:79 msgid "Toggle Fullscreen" msgstr "Alternar tela cheia" #: ../guake/data/guake.glade.h:4 msgid "Save to File..." msgstr "Salvar no Arquivo..." #: ../guake/data/guake.glade.h:5 ../src/guake/prefs.py:85 msgid "Reset terminal" msgstr "Resetar terminal" #: ../guake/data/guake.glade.h:6 msgid "Find..." msgstr "Procurar..." #: ../guake/data/guake.glade.h:7 msgid "New Tab" msgstr "Nova aba" #: ../guake/data/guake.glade.h:8 msgid "Rename Tab" msgstr "Renomear aba" #: ../guake/data/guake.glade.h:9 msgid "Close Tab" msgstr "Fechar aba" #: ../guake/data/guake.glade.h:10 msgid "Open link..." msgstr "Abrir link..." #: ../guake/data/guake.glade.h:11 msgid "Search on Web" msgstr "Procurar na Web" #: ../guake/data/guake.glade.h:12 ../src/guake/prefs.py:83 msgid "Quit" msgstr "Sair" #: ../guake/data/guake.glade.h:13 msgid "Rename" msgstr "Renomear" #: ../guake/data/guake.glade.h:14 msgid "Close" msgstr "Fechar" #: ../guake/data/guake.glade.h:15 msgid "Guake!" msgstr "Guake!" #: ../guake/data/guake.glade.h:16 msgid "Add a new tab" msgstr "Adicionar uma nova aba" #: ../guake/data/prefs.glade.h:1 msgid "Guake Preferences" msgstr "Preferências do Guake" #: ../guake/data/prefs.glade.h:2 msgid "Guake properties" msgstr "" "Propriedades do Guake" #: ../guake/data/prefs.glade.h:3 msgid "" "Customize behavior and appearance of Guake!" msgstr "" "Customize o comportamento e a aparência do Guake!" #: ../guake/data/prefs.glade.h:4 msgid "" "Path to a bash script that would be automatically executed when Guake " "starts, unless you specify --no-startup-script.\n" "\n" "This would typically use the configuration by command line feature of " "Guake:\n" "\n" "#!/bin/bash\n" "\n" "sleep 5 # it is advised to wait a bit before Guake has been successfully " "started\n" "\n" "guake -r \"main\" -e \"cd ~/projects/myproject/main\"\n" "guake -r \"prod\" -e \"cd ~/projects/myproject/prod\"\n" msgstr "" "Caminho para um script bash que seria executado automaticamente quando Guake " "for iniciado, a não ser que você especifique --no-startup-script.\n" "\n" "Isso tipicamente usaria a configuração por linha de comando do Guake:\n" "\n" "#!/bin/bash\n" "\n" "sleep 5 # é aconselhável esperar um pouco antes do Guake ter sido " "corretamente iniciado\n" "\n" "guake -r \"main\" -e \"cd ~/projects/myproject/main\"\n" "guake -r \"prod\" -e \"cd ~/projects/myproject/prod\"\n" #: ../guake/data/prefs.glade.h:15 msgid "Enable popup notifications on startup" msgstr "Habilitar notificações ao iniciar" #: ../guake/data/prefs.glade.h:16 msgid "Show tray icon" msgstr "Mostrar ícone na bandeja" #: ../guake/data/prefs.glade.h:17 #, fuzzy msgid "Always prompt on quit" msgstr "Perguntar ao sair" #: ../guake/data/prefs.glade.h:18 msgid "_Flash terminal on bell" msgstr "_Piscar terminal na campainha" #: ../guake/data/prefs.glade.h:19 msgid "_Play system alert sound on bell" msgstr "_Tocar som de alerta do systema na campainha" #: ../guake/data/prefs.glade.h:20 msgid "Path to script executed on Guake start:" msgstr "Caminho para script executado ao iniciar Guake:" #: ../guake/data/prefs.glade.h:21 #, fuzzy msgid "Prompt on close tab:" msgstr "Perguntar ao fechar aba:" #: ../guake/data/prefs.glade.h:22 msgid "" "Never\n" "With process running\n" "Always" msgstr "" "Nunca\n" "Com processo em execução\n" "Sempre" #: ../guake/data/prefs.glade.h:25 msgid "General" msgstr "Geral" #: ../guake/data/prefs.glade.h:26 msgid "Bottom align window instead of top align" msgstr "Alinhar janela à parte inferior em vez de superior" #: ../guake/data/prefs.glade.h:27 msgid "Appear on mouse display" msgstr "" #: ../guake/data/prefs.glade.h:28 msgid "Appear on display:" msgstr "Aparecer no display:" #: ../guake/data/prefs.glade.h:29 msgid "Place tabs on top" msgstr "Colocar abas no topo" #: ../guake/data/prefs.glade.h:30 msgid "Placement" msgstr "Posicionamento" #: ../guake/data/prefs.glade.h:31 msgid "Stay on top" msgstr "Ficar acima" #: ../guake/data/prefs.glade.h:32 msgid "Use VTE titles for tab names" msgstr "Usar títulos VTE para os nomes das abas" #: ../guake/data/prefs.glade.h:33 msgid "Max tab name length:" msgstr "Tamanho máximo para nome da aba:" #: ../guake/data/prefs.glade.h:34 msgid "0 means no size limit" msgstr "" #: ../guake/data/prefs.glade.h:35 msgid "Abbreviate directories in tab names" msgstr "" #: ../guake/data/prefs.glade.h:36 msgid "Hide on lose focus" msgstr "Esconder ao perder o foco" #: ../guake/data/prefs.glade.h:37 msgid "Show tab bar" msgstr "Mostrar barra de abas" #: ../guake/data/prefs.glade.h:38 msgid "Start fullscreen" msgstr "Iniciar com tela cheia" #: ../guake/data/prefs.glade.h:39 msgid "Main Window" msgstr "Janela principal" #: ../guake/data/prefs.glade.h:40 msgid "Left" msgstr "Esquerda" #: ../guake/data/prefs.glade.h:41 msgid "Center" msgstr "Centro" #: ../guake/data/prefs.glade.h:42 msgid "Right" msgstr "Direita" #: ../guake/data/prefs.glade.h:43 msgid "Main Window Horizontal Alignment" msgstr "Alinhamento horizontal da janela principal" #: ../guake/data/prefs.glade.h:44 msgid "Main Window Height" msgstr "Altura da janela principal" #: ../guake/data/prefs.glade.h:45 msgid "Main Window Width" msgstr "Largura da janela principal" #: ../guake/data/prefs.glade.h:46 msgid "Custom command file path: " msgstr "Caminho do arquivo de comandos personalizados: " #: ../guake/data/prefs.glade.h:47 msgid "Please select a json file" msgstr "Por favor selecione um arquivo json" #: ../guake/data/prefs.glade.h:48 ../src/guake/prefs.py:75 msgid "General" msgstr "Geral" #: ../guake/data/prefs.glade.h:49 msgid "Default interpreter:" msgstr "Interpretador padrão:" #: ../guake/data/prefs.glade.h:50 msgid "_Run command as a login shell" msgstr "_Executar comando como shell de login" #: ../guake/data/prefs.glade.h:51 msgid "_Open new tab in current directory" msgstr "_Abrir nova aba no diretório atual" #: ../guake/data/prefs.glade.h:52 msgid "Shell" msgstr "Shell" #: ../guake/data/prefs.glade.h:53 msgid "Shell" msgstr "Shell" #: ../guake/data/prefs.glade.h:54 msgid "Show scrollbar" msgstr "Mostrar barra de rolagem" #: ../guake/data/prefs.glade.h:55 msgid "Scrollback lines:" msgstr "Linhas de rolagem:" #: ../guake/data/prefs.glade.h:56 msgid "On output" msgstr "Com a saída" #: ../guake/data/prefs.glade.h:57 msgid "On key stroke" msgstr "Ao pressionar tecla" #: ../guake/data/prefs.glade.h:58 msgid "Scroll" msgstr "Rolagem" #: ../guake/data/prefs.glade.h:59 msgid "Scrolling" msgstr "Rolagem" #: ../guake/data/prefs.glade.h:60 msgid "Use the system fixed width font" msgstr "Usar a largura da fonte fixada pelo sistema:" #: ../guake/data/prefs.glade.h:61 msgid "Font:" msgstr "Fonte:" #: ../guake/data/prefs.glade.h:62 msgid "Choose some font" msgstr "Escolha uma fonte" #: ../guake/data/prefs.glade.h:63 msgid "Text color:" msgstr "Cor do texto:" #: ../guake/data/prefs.glade.h:64 msgid "Background color:" msgstr "Cor de fundo:" #: ../guake/data/prefs.glade.h:65 msgid "Cursor shape:" msgstr "Forma do cursor:" #: ../guake/data/prefs.glade.h:66 msgid "" "Block\n" "I-Beam\n" "Underline" msgstr "" #: ../guake/data/prefs.glade.h:69 msgid "" "Follow GTK+ setting\n" "Blink on\n" "Blink off" msgstr "" "Usar configuração do GTK+\n" "Blink(piscar) ligado\n" "Blink(piscar) desligado" #: ../guake/data/prefs.glade.h:72 msgid "Cursor blink mode:" msgstr "Modo de cursor piscante:" #: ../guake/data/prefs.glade.h:73 msgid "Allow bold font" msgstr "Permitir negrito" #: ../guake/data/prefs.glade.h:74 msgid "Palette" msgstr "Paleta" #: ../guake/data/prefs.glade.h:75 msgid "Built-in schemes:" msgstr "Esquemas embutidos:" #: ../guake/data/prefs.glade.h:76 msgid "Color palette:" msgstr "Paleta de cor:" #: ../guake/data/prefs.glade.h:77 msgid "Font color" msgstr "Cor do texto:" #: ../guake/data/prefs.glade.h:78 msgid "Background color" msgstr "Cor de fundo:" #: ../guake/data/prefs.glade.h:79 msgid "Use font and background color from the palette" msgstr "Usar fonte e cor de background da paleta" #: ../guake/data/prefs.glade.h:80 msgid "Demo:" msgstr "Demonstração:" #: ../guake/data/prefs.glade.h:81 msgid "Effects" msgstr "Efeitos" #: ../guake/data/prefs.glade.h:82 msgid "Transparency:" msgstr "Transparência:" #: ../guake/data/prefs.glade.h:83 msgid "Background image:" msgstr "Imagem de fundo:" #: ../guake/data/prefs.glade.h:84 ../src/guake/prefs.py:130 msgid "Appearance" msgstr "Aparência" #: ../guake/data/prefs.glade.h:85 msgid "" "Quick open is a feature allowing you to open a file directly into " "your favorite text editor by clicking on its filename when it appears in " "your terminal. See the list of currently supported text patterns used to " "extract filename below." msgstr "" "Quick open é um recurso que te permite abrir um diretório de arquivo " "no seu editor de texto favorito clicando no nome do arquivo quando este " "aparece no seu terminal. Veja a lista de padrões de texto atualmente usados " "para extrair nomes de arquivo abaixo." #: ../guake/data/prefs.glade.h:86 msgid "Enable Quick Open when Ctrl+clicking on a filename in the terminal" msgstr "Habilitar Quick Open quando Ctrl+click num nome de arquivo no terminal" #: ../guake/data/prefs.glade.h:87 msgid "Editor command line:" msgstr "Editor de linha de comando:" #: ../guake/data/prefs.glade.h:89 #, no-c-format msgid "" "Use the following elements in the open editor command line:\n" " - %(file_path)s: path to the file that has been clicked\n" " - %(line_number)s: if your editor supports it, you can directly open " "the file to a given line number when found on the screen.\n" "\n" "For example, for sublime, use subl %(file_path)s:%(line_number)s\n" "" msgstr "" "Use os seguintes elementos no editor de linha de comando aberto:\n" " - %(caminho_arquivo)s: caminho para o arquivo clicado\n" " - %(line_number)s: se seu editor oferece suporte, você pode abrir " "diretamente em um número de linha fornecido quando encontrada na tela.\n" "\n" "Por exemplo, para o sublime, use subl %(caminho_arquivo)s:" "%(numero_linha)s\n" "" #: ../guake/data/prefs.glade.h:95 msgid "Quick open in current terminal" msgstr "Quick open no terminal atual" #: ../guake/data/prefs.glade.h:96 msgid "" "Here is the list of supported patterns: (to add your own, please contact the " "Guake's authors)" msgstr "" "Aqui está uma lista de padrões suportados: (para adicionar o seu, por favor " "faça contato com os autores do Guake)" #: ../guake/data/prefs.glade.h:97 #, fuzzy msgid "Quick Open" msgstr "Quick Open" #: ../guake/data/prefs.glade.h:98 msgid "Quick Open" msgstr "Quick Open" #: ../guake/data/prefs.glade.h:99 msgid "" "To change a shortcut simply click on its name.\n" "To disable a shortcut, press the \"Backspace\" key." msgstr "" "Para mudar um atalho simplesmente clique em seu nome.\n" "Para desabilitar um atalho, aperte a tecla \"Backspace\"" #: ../guake/data/prefs.glade.h:101 msgid "Keyboard shortcuts" msgstr "Atalhos de teclado" #: ../guake/data/prefs.glade.h:102 msgid "" "Note: These options may cause some applications to behave " "incorrectly. They are only here to allow you to work around certain " "applications and operating systems that expect different terminal behavior." msgstr "" "Nota: Estas opções podem levar alguns aplicativos a se " "comportarem incorretamente. Elas existem apenas para permitir que você " "contorne certos aplicativos e sistemas operacionais que esperam um " "comportamento diferente do terminal." #: ../guake/data/prefs.glade.h:103 msgid "" "ASCII DEL\n" "Escape sequence\n" "Control-H" msgstr "" "ASCII DEL\n" "Escape sequence\n" "Control-H" #: ../guake/data/prefs.glade.h:106 msgid "_Backspace key generates:" msgstr "Tecla _backspace gera:" #: ../guake/data/prefs.glade.h:107 msgid "_Delete key generates:" msgstr "Tecla _delete gera:" #: ../guake/data/prefs.glade.h:108 msgid "_Reset Compatibility Options to Defaults" msgstr "_Restaurar as opções de compatibilidade padrão" #: ../guake/data/prefs.glade.h:109 msgid "Keyboard compatibility" msgstr "Compatibilidade do teclado" #: ../guake/data/prefs.glade.h:110 msgid "Compatibility" msgstr "Compatibilidade" #: ../src/guake/about.py:47 ../src/guake/gconfhandler.py:439 #: ../src/guake/guake_app.py:181 ../src/guake/guake_app.py:378 msgid "Guake Terminal" msgstr "Terminal Guake" #: ../src/guake/gconfhandler.py:369 ../src/guake/guake_app.py:1386 msgid "Terminal" msgstr "Terminal" #: ../src/guake/gconfhandler.py:440 #, python-format msgid "" "A problem happened when binding %s key.\n" "Please use Guake Preferences dialog to choose another key" msgstr "" "Um problema aconteceu ao tentar associar a tecla %s.\n" "Por favor use a janela de preferências do Guake para escolher outra tecla." #: ../src/guake/guake_app.py:132 msgid "Do you want to close the tab?" msgstr "Você deseja fechar a aba?" #: ../src/guake/guake_app.py:135 msgid "Do you really want to quit Guake?" msgstr "Você realmente deseja sair do Guake?" #: ../src/guake/guake_app.py:137 msgid " and one tab open" msgstr " e uma aba aberta" #: ../src/guake/guake_app.py:139 #, python-brace-format msgid " and {0} tabs open" msgstr " and {0} abas abertas" #: ../src/guake/guake_app.py:142 msgid "There are no processes running" msgstr "Não há nenhum processo sendo executado." #: ../src/guake/guake_app.py:144 msgid "There is a process still running" msgstr "Há um processo sendo executado." #: ../src/guake/guake_app.py:146 #, fuzzy, python-brace-format msgid "There are {0} processes still running" msgstr "Há %d processos sendo executados." #: ../src/guake/guake_app.py:186 msgid "guake-indicator" msgstr "" #: ../src/guake/guake_app.py:186 msgid "guake-tray" msgstr "" #: ../src/guake/guake_app.py:190 msgid "Show" msgstr "Mostrar" #: ../src/guake/guake_app.py:379 #, python-format msgid "" "Guake is now running,\n" "press {!s} to use it." msgstr "" "O Guake está em execução,\n" "aperte {!s} para usá-lo." #: ../src/guake/guake_app.py:670 #, python-format msgid "Search on Web: '%s'" msgstr "Procurar na Web: '%s'" #: ../src/guake/guake_app.py:675 msgid "Search on Web (no selection)" msgstr "Procurar na Web (sem seleção)" #: ../src/guake/guake_app.py:683 #, fuzzy msgid "Open Link: '{}...'" msgstr "Abrir Link: {}" #: ../src/guake/guake_app.py:685 msgid "Open Link: {}" msgstr "Abrir Link: {}" #: ../src/guake/guake_app.py:688 msgid "Open Link..." msgstr "Abrir Link..." #: ../src/guake/guake_app.py:1425 msgid "Rename tab" msgstr "Renomear aba" #: ../src/guake/guake_app.py:1736 msgid "Save to..." msgstr "Salvar em..." #: ../src/guake/guake_app.py:1743 ../src/guake/prefs.py:973 msgid "All files" msgstr "Todos arquivos" #: ../src/guake/guake_app.py:1748 msgid "Text and Logs" msgstr "Texto e Logs" #: ../src/guake/guake_app.py:1766 msgid "Find" msgstr "Encontrar" #: ../src/guake/guake_app.py:1768 msgid "Forward" msgstr "Avançar" #: ../src/guake/guake_app.py:1769 msgid "Backward" msgstr "Voltar" #: ../src/guake/main.py:68 msgid "Put Guake in fullscreen mode" msgstr "Colocar Guake em modo de tela cheia" #: ../src/guake/main.py:72 msgid "Toggles the visibility of the terminal window" msgstr "Alterna a visibilidade da janela do terminal" #: ../src/guake/main.py:76 msgid "Shows Guake main window" msgstr "Exibe a janela principal do Guake" #: ../src/guake/main.py:80 msgid "Hides Guake main window" msgstr "Exibe a janela principal do Guake" #: ../src/guake/main.py:84 msgid "Shows Guake preference window" msgstr "Exibe a janela de preferências do Guake" #: ../src/guake/main.py:88 msgid "Shows Guake's about info" msgstr "Mostra a janela \"Sobre o Guake\"" #: ../src/guake/main.py:92 #, fuzzy msgid "Add a new tab (with current directory set to NEW_TAB)" msgstr "Abrir nova aba no diretório atual" #: ../src/guake/main.py:96 msgid "Select a tab (SELECT_TAB is the index of the tab)" msgstr "Selecione uma aba (SELECT_TAB é a posição da aba)" #: ../src/guake/main.py:100 msgid "Return the selected tab index." msgstr "Retornar a posição da tabela selecionada." #: ../src/guake/main.py:104 msgid "Execute an arbitrary command in the selected tab." msgstr "Executar um comando arbitrário na aba selecionada." #: ../src/guake/main.py:108 msgid "Specify the tab to rename. Default is 0." msgstr "Especifique a aba para renomear. O padrão é 0." #: ../src/guake/main.py:112 msgid "Set the hexadecimal (#rrggbb) background color of the selected tab." msgstr "Escolha a cor hexadecimal (#rrggbb) do fundo da aba selecionada." #: ../src/guake/main.py:117 msgid "Set the hexadecimal (#rrggbb) foreground color of the selected tab." msgstr "" "Escolha a cor hexadecimal (#rrggbb) do primeiro plano da aba selecionada." #: ../src/guake/main.py:123 msgid "" "Rename the specified tab. Reset to default if TITLE is a single dash \"-\"." msgstr "" "Renomeia a aba especificada. Reseta para o padrão se o TÍTULO for um hífen " "\"-\"." #: ../src/guake/main.py:129 msgid "" "Rename the current tab. Reset to default if TITLE is a single dash \"-\"." msgstr "" "Renomeia a aba atual. Reseta para o padrão se o TÍTULO for um hífen \"-\"." #: ../src/guake/main.py:134 msgid "Says to Guake go away =(" msgstr "Diz ao Guake para ir embora =(" #: ../src/guake/main.py:138 msgid "Do not execute the start up script" msgstr "Não execute o script de inicialização" #: ../src/guake/main.py:235 msgid "Guake can not init!" msgstr "Guake não pode iniciar!" #: ../src/guake/main.py:236 msgid "" "Gconf Error.\n" "Have you installed guake.schemas properly?" msgstr "" "Erro no GConf.\n" "Você instalou o arquivo guake.schemas corretamente?" #. string to show in prefereces dialog for user shell option #: ../src/guake/prefs.py:67 msgid "" msgstr "" #: ../src/guake/prefs.py:77 msgid "Toggle Guake visibility" msgstr "Alternar a visibilidade do Guake" #: ../src/guake/prefs.py:81 #, fuzzy msgid "Toggle Hide on Lose Focus" msgstr "Esconder ao perder o foco" #: ../src/guake/prefs.py:88 msgid "Tab management" msgstr "Gerenciamento das abas" #: ../src/guake/prefs.py:90 #, fuzzy msgid "New tab" msgstr "Nova aba" #: ../src/guake/prefs.py:92 msgid "Close tab" msgstr "Fechar aba" #: ../src/guake/prefs.py:94 msgid "Rename current tab" msgstr "Renomear aba atual" #: ../src/guake/prefs.py:97 msgid "Navigation" msgstr "Navegação" #: ../src/guake/prefs.py:99 msgid "Go to previous tab" msgstr "Ir para a aba anterior" #: ../src/guake/prefs.py:101 msgid "Go to next tab" msgstr "Ir para a próxima aba" #: ../src/guake/prefs.py:103 #, fuzzy msgid "Move current tab left" msgstr "Renomear aba atual" #: ../src/guake/prefs.py:105 #, fuzzy msgid "Move current tab right" msgstr "Renomear aba atual" #: ../src/guake/prefs.py:107 #, fuzzy msgid "Go to first tab" msgstr "Ir para a próxima aba" #: ../src/guake/prefs.py:109 #, fuzzy msgid "Go to second tab" msgstr "Ir para a próxima aba" #: ../src/guake/prefs.py:111 #, fuzzy msgid "Go to third tab" msgstr "Ir para a próxima aba" #: ../src/guake/prefs.py:113 #, fuzzy msgid "Go to fourth tab" msgstr "Ir para a próxima aba" #: ../src/guake/prefs.py:115 #, fuzzy msgid "Go to fifth tab" msgstr "Ir para a próxima aba" #: ../src/guake/prefs.py:117 #, fuzzy msgid "Go to sixth tab" msgstr "Ir para a próxima aba" #: ../src/guake/prefs.py:119 #, fuzzy msgid "Go to seventh tab" msgstr "Ir para a próxima aba" #: ../src/guake/prefs.py:121 #, fuzzy msgid "Go to eighth tab" msgstr "Ir para a próxima aba" #: ../src/guake/prefs.py:123 #, fuzzy msgid "Go to ninth tab" msgstr "Ir para a próxima aba" #: ../src/guake/prefs.py:125 #, fuzzy msgid "Go to tenth tab" msgstr "Ir para a próxima aba" #: ../src/guake/prefs.py:127 #, fuzzy msgid "Go to last tab" msgstr "Ir para a próxima aba" #: ../src/guake/prefs.py:132 msgid "Zoom out" msgstr "" #: ../src/guake/prefs.py:134 msgid "Zoom in" msgstr "" #: ../src/guake/prefs.py:136 msgid "Zoom in (alternative)" msgstr "" #: ../src/guake/prefs.py:138 msgid "Increase height" msgstr "" #: ../src/guake/prefs.py:140 msgid "Decrease height" msgstr "" #: ../src/guake/prefs.py:142 #, fuzzy msgid "Increase transparency" msgstr "Transparência:" #: ../src/guake/prefs.py:144 #, fuzzy msgid "Decrease transparency" msgstr "Transparência:" #: ../src/guake/prefs.py:146 #, fuzzy msgid "Toggle transparency" msgstr "Transparência:" #: ../src/guake/prefs.py:149 msgid "Clipboard" msgstr "Área de transferência" #: ../src/guake/prefs.py:151 msgid "Copy text to clipboard" msgstr "Copiar texto para a área de transferência" #: ../src/guake/prefs.py:153 msgid "Paste text from clipboard" msgstr "Colar texto da área de transferência" #: ../src/guake/prefs.py:156 msgid "Extra features" msgstr "" #: ../src/guake/prefs.py:159 #, fuzzy msgid "Search select text on web" msgstr "Procurar na Web" #: ../src/guake/prefs.py:481 msgid "Action" msgstr "Ação" #: ../src/guake/prefs.py:491 msgid "Shortcut" msgstr "Atalho" #: ../src/guake/prefs.py:651 ../src/guake/prefs.py:697 msgid "Custom" msgstr "Personalizado" #: ../src/guake/prefs.py:969 msgid "JSON files" msgstr "Arquivos JSON" #: ../src/guake/prefs.py:1063 #, python-format msgid "The shortcut \"%s\" is already in use." msgstr "O atalho \"%s\" já esta sendo usado." #: ../src/guake/prefs.py:1064 msgid "Error setting keybinding." msgstr "Erro ao configurar atalho." #: ../src/guake/prefs.py:1076 #, python-format msgid "" "The shortcut \"%s\" cannot be used because it will become impossible to type " "using this key.\n" "\n" "Please try with a key such as Control, Alt or Shift at the same time.\n" msgstr "" "O atalho \"%s\" não pode ser usado, caso contrário será impossível digitar " "usando esta tecla.\n" "\n" "Por favor tente com uma tecla como Control, Alt ou Shift pressionada ao " "mesmo tempo.\n" #: guake/main.py:153 msgid "Return the selected tab label." msgstr "" #: guake/data/prefs.glade:264 msgid "Never" msgstr "" #: guake/data/prefs.glade:265 msgid "With process running" msgstr "" #: guake/data/prefs.glade:266 msgid "Always" msgstr "" #: guake/data/prefs.glade:499 msgid "Refocus if open" msgstr "" #: guake/data/prefs.glade:865 msgid "Custom command file path:" msgstr "" #: guake/data/prefs.glade:1315 msgid "Show resizer" msgstr "" #: guake/data/prefs.glade:1423 msgid "Block" msgstr "" #: guake/data/prefs.glade:1424 msgid "I-Beam" msgstr "" #: guake/data/prefs.glade:1425 msgid "Underline" msgstr "" #: guake/data/prefs.glade:1443 msgid "Follow GTK+ setting" msgstr "" #: guake/data/prefs.glade:1444 msgid "Blink on" msgstr "" #: guake/data/prefs.glade:1445 msgid "Blink off" msgstr "" #: guake/data/prefs.glade:2236 msgid "" "Use the following elements in the open editor command line:\n" "- %(file_path)s: path to the file that has been clicked\n" "- %(line_number)s: if your editor supports it, you can directly open " "the file to a given line number when found on the screen.\n" "\n" "For example, for sublime, use subl %(file_path)s:%(line_number)s\n" "" msgstr "" #: guake/data/prefs.glade:2442 guake/data/prefs.glade:2462 msgid "ASCII DEL" msgstr "" #: guake/data/prefs.glade:2443 guake/data/prefs.glade:2463 msgid "Escape sequence" msgstr "" #: guake/data/prefs.glade:2444 guake/data/prefs.glade:2464 msgid "Control-H" msgstr "" #: guake/data/prefs.glade:2600 msgid "" "In this dialog you can attach your own command or script to various " "guake events" msgstr "" #: guake/data/prefs.glade:2635 msgid "On show:" msgstr "" #: guake/data/prefs.glade:2665 msgid "On start:" msgstr "" #: guake/data/prefs.glade:2714 msgid "Hooks" msgstr "" #: guake/data/guake-prefs.desktop:8 msgid "Configure your Guake sessions" msgstr "" #: guake/data/guake-prefs.desktop:15 guake/data/guake.desktop:18 msgid "guake" msgstr "" #: guake/data/guake-prefs.desktop:20 msgid "Terminal;Utility;" msgstr "" #: guake/data/guake.desktop:10 msgid "Use the command line in a Quake-like terminal" msgstr "" #: guake/data/prefs.glade:770 msgid "Main Window Horizontal Alignment" msgstr "" #: guake/prefs.py:89 msgid "Show and focus Guake window" msgstr "" #: guake/data/prefs.glade:566 msgid "0" msgstr "" #: guake/data/prefs.glade:610 msgid "Main Window Options" msgstr "" #: guake/data/prefs.glade:770 msgid "Horizontal Alignment:" msgstr "" #: guake/data/prefs.glade:855 msgid "Height:" msgstr "" #: guake/data/prefs.glade:868 msgid "Width:" msgstr "" #: guake/data/prefs.glade:913 msgid "Geometry" msgstr "" #: guake/data/prefs.glade:944 msgid "Main Window" msgstr "" #: guake/data/prefs.glade:1197 msgid "Infinite scrolling" msgstr "" #: guake/data/prefs.glade:1219 msgid "Scrollbar" msgstr "" #: guake/data/prefs.glade:1304 msgid "Scroll to Bottom" msgstr "" #: guake/data/prefs.glade:2117 msgid "" "Quick open is a feature allowing you to open a file directly into your " "favorite text editor by clicking on its filename when it appears in your " "terminal. See the list of currently supported text patterns used to extract " "filename below." msgstr "" #: guake/main.py:64 msgid "Show Guake version number and exit" msgstr "" #: guake/data/prefs.glade:93 msgid "Guake properties" msgstr "Propriedades do Guake" #: guake/data/prefs.glade:107 msgid "Customize behavior and appearance of Guake!" msgstr "Customize o comportamento e a aparência do Guake!" #: guake/data/prefs.glade:929 msgid "Displacement in pixels" msgstr "" #: guake/main.py:73 msgid "Enable verbose logging" msgstr "" #: guake/guake_app.py:680 msgid "Quick Open: '{!s}...'" msgstr "" #: guake/guake_app.py:683 msgid "Quick Open: {!s}" msgstr "" #: guake/guake_app.py:691 msgid "Open Link: '{!s}...'" msgstr "" #: guake/guake_app.py:694 msgid "Open Link: {!s}" msgstr "" #: guake/data/prefs.glade:2175 msgid "" "WARNING: your system seems to have PCRE2 disabled for VTE, " "preventing application such as Guake to register \"matchers\" using regular " "expressions. Please contact your distribution to request a new version of " "VTE with PCRE2 enabled ! To use Quick Open, you must select the text " "before using Ctrl+click." msgstr "" #: guake/guake_app.py:680 msgid "Quick Open: {!s}..." msgstr "" #: guake/guake_app.py:691 msgid "Open Link: {!s}..." msgstr "" #: guake/guake_app.py:688 msgid "Quick Open..." msgstr "" #: guake/data/prefs.glade:223 msgid "Start Guake at login" msgstr "" #: guake/data/prefs.glade:363 msgid "Gtk Theme:" msgstr "" #: guake/data/prefs.glade:387 msgid "Prefer dark theme" msgstr "" #: guake/guake_app.py:435 msgid "Custom Commands" msgstr "" #: guake/main.py:184 msgid "" "Specify the tab to rename. Default is 0. Can be used to select tab by UUID." msgstr "" #: guake/main.py:212 msgid "" "Rename the specified tab by --tab-index. Reset to default if TITLE is a " "single dash \"-\"." msgstr "" #: data/search.glade:138 msgid "Search forward" msgstr "" #: data/search.glade:153 msgid "Match case" msgstr "" #: data/search.glade:186 msgid "Current search direction: Backward" msgstr "" #: data/prefs.glade:680 msgid "Set window title to current tab name" msgstr "" #: guake/menus.py:48 msgid "Copy Url" msgstr "" #: guake/menus.py:62 msgid "Split ―" msgstr "" #: guake/menus.py:65 msgid "Split " msgstr "" #: guake/menus.py:68 guake/prefs.py:150 msgid "Close terminal" msgstr "" #: guake/prefs.py:137 msgid "Split management" msgstr "" #: guake/prefs.py:142 msgid "Split tab vertical" msgstr "" #: guake/prefs.py:146 msgid "Split tab horizontal" msgstr "" #: guake/prefs.py:154 msgid "Focus terminal above" msgstr "" #: guake/prefs.py:158 msgid "Focus terminal below" msgstr "" #: guake/prefs.py:162 msgid "Focus terminal on the left" msgstr "" #: guake/prefs.py:166 msgid "Focus terminal on the right" msgstr "" #: guake/prefs.py:170 msgid "Move the terminal split handle up" msgstr "" #: guake/prefs.py:174 msgid "Move the terminal split handle down" msgstr "" #: guake/prefs.py:178 msgid "Move the terminal split handle right" msgstr "" #: guake/prefs.py:182 msgid "Move the terminal split handle left" msgstr "" #: guake/menus.py:65 msgid "Split |" msgstr "" #: guake/menus.py:72 msgid "Save content..." msgstr "" #: data/prefs.glade:1182 msgid "" "This might not work on all shells, make sure that your shell supports the --" "login option" msgstr "" #: guake/prefs.py:128 msgid "New tab in home directory" msgstr "" #: guake/dialogs.py:56 #, python-brace-format msgid " on {0} workspaces" msgstr "" #: guake/main.py:211 msgid "Change Guake palette scheme" msgstr "" #: data/prefs.glade:331 msgid "Use workspace-specific tab sets (requires restart)" msgstr "" #: guake/main.py:175 msgid "Split the selected tab vertically." msgstr "" #: guake/main.py:183 msgid "Split the selected tab horizontally." msgstr "" #: data/prefs.glade:348 msgid "Show close buttons for tabs" msgstr "" #: data/prefs.glade:1682 msgid "Bold text is also bright" msgstr "" #: data/prefs.glade:1682 msgid "Bold text is also bright (VTE >=0.52)" msgstr "" #: guake/menus.py:42 msgid "Save Tabs" msgstr "" #: guake/menus.py:45 msgid "Restore Tabs" msgstr "" #: guake/prefs.py:113 msgid "Search terminal" msgstr "" #: guake/main.py:278 msgid "Save Guake preferences to this filename" msgstr "" #: guake/main.py:286 msgid "Restore Guake preferences from this file" msgstr "" #: guake/guake_app.py:1192 #, python-brace-format msgid "Your session.json file is broken, backup to {session_filename}.bak" msgstr "" #: guake/guake_app.py:1228 #, python-brace-format msgid "" "Your session.json schema is broken, backup to {0}.bak,and error message has " "been saved to {0}.log.err" msgstr "" #: guake/guake_app.py:1239 msgid "Your tabs has been restored!" msgstr "" #: data/prefs.glade:190 msgid "Restore previous session (tabs)" msgstr "" #: data/prefs.glade:204 msgid "Enable notification when restore tabs" msgstr "" #: data/prefs.glade:218 msgid "Automatically save session when the tabs has been modified" msgstr "" #: data/prefs.glade:238 msgid "Startup & Tabs (Experiment)" msgstr "" #: guake/guake_app.py:1192 #, python-brace-format msgid "" "Your {session_filename} file is broken, backup to {session_filename}.bak" msgstr "" #: guake/guake_app.py:1227 #, python-brace-format msgid "" "Your {session_filename} schema is broken, backup to {0}.bak,and error " "message has been saved to {session_filename}.log.err" msgstr "" #: guake/guake_app.py:1227 #, python-brace-format msgid "" "Your {session_filename} schema is broken, backup to {session_filename}.bak," "and error message has been saved to {session_filename}.log.err." msgstr "" #: guake/guake_app.py:1227 #, python-brace-format msgid "" "Your {session_filename} schema is broken, backup to {session_filename}.bak, " "and error message has been saved to {session_filename}.log.err." msgstr "" #: guake/notebook.py:317 msgid "" "You are going to restore *all* the tabs!\n" "which means all your terminals & pages will be replaced.\n" "\n" "Do you want to continue?" msgstr "" #: guake/main.py:296 msgid "Show support infomations" msgstr "" #: guake/guake_app.py:1240 #, python-brace-format msgid "" "Tabs session restore abort.\n" "Your session file ({session_filename}) missing schema_version as key" msgstr "" #: guake/guake_app.py:1252 #, python-brace-format msgid "" "Tabs session restore abort.\n" "Your session file schema version is higher than current version " "({session_file_schema_version} > {current_schema_version})." msgstr "" #: guake/data/prefs.glade:409 msgid "Use workspace-specific tab sets (requires restart, only work on X11)" msgstr "" #~ msgid "key binding error" #~ msgstr "erro na associação de atalhos" #~ msgid "Unable to bind global %s key" #~ msgstr "Impossível associar a tecla %s" #~ msgid "http://guake.org" #~ msgstr "http://guake.org" #~ msgid "" #~ "Tango\n" #~ "Linux console\n" #~ "XTerm\n" #~ "Rxvt\n" #~ "Custom\n" #~ msgstr "" #~ "Tango\n" #~ "Linux console\n" #~ "XTerm\n" #~ "Rxvt\n" #~ "Customizada\n" #~ msgid "Select a tab" #~ msgstr "Selecionar uma aba" #~ msgid "Rename the selected tab." #~ msgstr "Renomear aba selecionada." #~ msgid "Background" #~ msgstr "Plano de fundo" #~ msgid "Choose some color" #~ msgstr "Escolha uma cor" #~ msgid "Image:" #~ msgstr "Imagem:" #~ msgid "Style:" #~ msgstr "Estilo:" #~ msgid "Use system defaults" #~ msgstr "Usar padrão do sistema" #~ msgid "Could not connect to dbus session bus. dbus will be unavailable.\n" #~ msgstr "" #~ "Não foi possível conectar à sessão do dbus. O dbus ficará inativo.\n" #~ msgid "Program not found in path" #~ msgstr "Programa não encontrado" #~ msgid "" #~ "You don't have any available program to interpret this uri. To solve this " #~ "problem just install gnome-open or xdg-open and try again." #~ msgstr "" #~ "Você não tem nenhum programa disponível para interpretar este endereço. " #~ "Para resolver este problema, instale o gnome-open ou o xdg-open e tente " #~ "novamente." #~ msgid "Window behavior" #~ msgstr "Comportamento da janela" #~ msgid "Desaturation:" #~ msgstr "Dessaturação:" #~ msgid "Style" #~ msgstr "Estilo" #~ msgid "Global hotkeys" #~ msgstr "Atalhos globais" #~ msgid "Local hotkeys" #~ msgstr "Atalhos locais" #~ msgid "Bottom" #~ msgstr "Em baixo" #~ msgid "Top" #~ msgstr "Em cima" guake-3.6.3/po/ru.po000066400000000000000000001351301346623310400142300ustar00rootroot00000000000000# Translation of Guake to Russian language # Copyright (C) 2013 Guake Translators # This file is distributed under the same license as the Guake package. # # Translators: # Pavel Alexeev , 2010. # Notes and help by Igor (nick igorsub) , 2010 # Ivan Komaritsyn , 2015-2017. # msgid "" msgstr "" "Project-Id-Version: Guake 0.4.5\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2018-04-17 13:26+0300\n" "PO-Revision-Date: 2019-04-28 18:50+0000\n" "Last-Translator: Igor \n" "Language-Team: Russian \n" "Language: ru\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && n" "%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n" "X-Generator: Weblate 3.6.1\n" #: ../guake/data/about.glade.h:1 msgid "About Guake" msgstr "О Guake" #: ../guake/data/about.glade.h:5 msgid "" "Guake is an easy to access\n" "terminal based on FPS games terminal" msgstr "" "Guake это терминал с быстрым доступом\n" "наподобие тех, что используются в играх" #: ../guake/data/guake.glade.h:1 msgid "Copy" msgstr "Копировать" #: ../guake/data/guake.glade.h:2 msgid "Paste" msgstr "Вставить" #: ../guake/data/guake.glade.h:3 ../src/guake/prefs.py:79 msgid "Toggle Fullscreen" msgstr "Полноэкранный режим" #: ../guake/data/guake.glade.h:4 msgid "Save to File..." msgstr "Сохранить в файл..." #: ../guake/data/guake.glade.h:5 ../src/guake/prefs.py:85 msgid "Reset terminal" msgstr "Сброс терминала" #: ../guake/data/guake.glade.h:6 msgid "Find..." msgstr "Найти..." #: ../guake/data/guake.glade.h:7 msgid "New Tab" msgstr "Новая вкладка" #: ../guake/data/guake.glade.h:8 msgid "Rename Tab" msgstr "Переименовать вкладку" #: ../guake/data/guake.glade.h:9 msgid "Close Tab" msgstr "Закрыть вкладку" #: ../guake/data/guake.glade.h:10 msgid "Open link..." msgstr "Открыть ссылку..." #: ../guake/data/guake.glade.h:11 msgid "Search on Web" msgstr "Искать в Интернете" #: ../guake/data/guake.glade.h:12 ../src/guake/prefs.py:83 msgid "Quit" msgstr "Выход" #: ../guake/data/guake.glade.h:13 msgid "Rename" msgstr "Переименовать" #: ../guake/data/guake.glade.h:14 msgid "Close" msgstr "Закрыть" #: ../guake/data/guake.glade.h:15 msgid "Guake!" msgstr "Guake!" #: ../guake/data/guake.glade.h:16 msgid "Add a new tab" msgstr "Добавить новую вкладку" #: ../guake/data/prefs.glade.h:1 msgid "Guake Preferences" msgstr "Настройки Guake" #: ../guake/data/prefs.glade.h:2 msgid "Guake properties" msgstr "Свойства Guake" #: ../guake/data/prefs.glade.h:3 msgid "" "Customize behavior and appearance of Guake!" msgstr "Настройки поведения и отображения Guake!" #: ../guake/data/prefs.glade.h:4 msgid "Enable popup notifications on startup" msgstr "Включить всплывающие уведомления при запуске" #: ../guake/data/prefs.glade.h:5 msgid "Show tray icon" msgstr "Показывать иконку в трее" #: ../guake/data/prefs.glade.h:6 msgid "Always prompt on quit" msgstr "Всегда спрашивать при выходе" #: ../guake/data/prefs.glade.h:7 msgid "_Flash terminal on bell" msgstr "Моргать терминалом при звонке" #: ../guake/data/prefs.glade.h:8 msgid "_Play system alert sound on bell" msgstr "Воспроизводить системный сигнал при звонке" #: ../guake/data/prefs.glade.h:9 msgid "Prompt on close tab:" msgstr "Спрашивать при закрытии вкладки:" #: ../guake/data/prefs.glade.h:10 msgid "" "Never\n" "With process running\n" "Always" msgstr "" "Никогда\n" "С запущенным процессом\n" "Всегда" #: ../guake/data/prefs.glade.h:13 msgid "General" msgstr "Основное" #: ../guake/data/prefs.glade.h:14 msgid "Bottom align window instead of top align" msgstr "Прижимать к низу экрана" #: ../guake/data/prefs.glade.h:15 msgid "Appear on mouse display" msgstr "Показывать на текущем экране" #: ../guake/data/prefs.glade.h:16 msgid "Appear on display:" msgstr "Показывать на экране:" #: ../guake/data/prefs.glade.h:17 msgid "Place tabs on top" msgstr "Расположить вкладки сверху" #: ../guake/data/prefs.glade.h:18 msgid "Placement" msgstr "Расположение" #: ../guake/data/prefs.glade.h:19 msgid "Stay on top" msgstr "Поверх всех окон" #: ../guake/data/prefs.glade.h:20 msgid "Refocus if open" msgstr "Фокусироваться, если открыт" #: ../guake/data/prefs.glade.h:21 msgid "Hide on lose focus" msgstr "Прятать при потере фокуса" #: ../guake/data/prefs.glade.h:22 msgid "Show tab bar" msgstr "Показывать панель вкладок" #: ../guake/data/prefs.glade.h:23 msgid "Start fullscreen" msgstr "Запускать в полноэкранном режиме" #: ../guake/data/prefs.glade.h:24 msgid "Use VTE titles for tab names" msgstr "Использовать заголовки VTE для названий вкладок" #: ../guake/data/prefs.glade.h:25 msgid "Abbreviate directories in tab names" msgstr "Сокращать пути в названиях вкладок" #: ../guake/data/prefs.glade.h:26 msgid "Max tab name length:" msgstr "Макс. ширина вкладки:" #: ../guake/data/prefs.glade.h:27 msgid "Main Window" msgstr "Основное окно" #: ../guake/data/prefs.glade.h:28 msgid "Left" msgstr "Слева" #: ../guake/data/prefs.glade.h:29 msgid "Center" msgstr "По центру" #: ../guake/data/prefs.glade.h:30 msgid "Right" msgstr "Справа" #: ../guake/data/prefs.glade.h:31 msgid "Main Window Horizontal Alignment" msgstr "Выравнивание по горизонтали" #: ../guake/data/prefs.glade.h:32 msgid "Main Window Height" msgstr "Высота основного окна" #: ../guake/data/prefs.glade.h:33 msgid "Main Window Width" msgstr "Ширина основного окна" #: ../guake/data/prefs.glade.h:34 msgid "Custom command file path: " msgstr "Путь к пользовательской команде: " #: ../guake/data/prefs.glade.h:35 msgid "Please select a json file" msgstr "Выберите файл json" #: ../guake/data/prefs.glade.h:36 ../src/guake/prefs.py:75 msgid "General" msgstr "Общие" #: ../guake/data/prefs.glade.h:37 msgid "Default interpreter:" msgstr "Интерпретатор по умолчанию:" #: ../guake/data/prefs.glade.h:38 msgid "_Run command as a login shell" msgstr "_Запустить команду как шелл входа" #: ../guake/data/prefs.glade.h:39 msgid "_Open new tab in current directory" msgstr "_Открыть новую вкладку в текущей директории" #: ../guake/data/prefs.glade.h:40 msgid "Shell" msgstr "Шелл" #: ../guake/data/prefs.glade.h:41 msgid "Shell" msgstr "Шелл" #: ../guake/data/prefs.glade.h:42 msgid "Show scrollbar" msgstr "Показывать полосу прокрутки" #: ../guake/data/prefs.glade.h:43 msgid "Scrollback lines:" msgstr "Строк прокрутки:" #: ../guake/data/prefs.glade.h:44 msgid "On output" msgstr "На вывод" #: ../guake/data/prefs.glade.h:45 msgid "On key stroke" msgstr "На нажатие клавиши" #: ../guake/data/prefs.glade.h:46 msgid "Scroll" msgstr "Прокрутка" #: ../guake/data/prefs.glade.h:47 msgid "Scrolling" msgstr "Прокрутка" #: ../guake/data/prefs.glade.h:48 msgid "Use the system fixed width font" msgstr "Использовать системный шрифт фиксированного размера" #: ../guake/data/prefs.glade.h:49 msgid "Font:" msgstr "Шрифт:" #: ../guake/data/prefs.glade.h:50 msgid "Show resizer" msgstr "Показать изменение размера" #: ../guake/data/prefs.glade.h:51 msgid "Choose some font" msgstr "Выберите шрифт" #: ../guake/data/prefs.glade.h:52 msgid "Text color:" msgstr "Цвет текста:" #: ../guake/data/prefs.glade.h:53 msgid "Background color:" msgstr "Цвет фона:" #: ../guake/data/prefs.glade.h:54 msgid "Cursor shape:" msgstr "Вид курсора:" #: ../guake/data/prefs.glade.h:55 msgid "" "Block\n" "I-Beam\n" "Underline" msgstr "" "Блок\n" "I-Вид\n" "Подчёркивание" #: ../guake/data/prefs.glade.h:58 msgid "" "Follow GTK+ setting\n" "Blink on\n" "Blink off" msgstr "" "Использовать настройки GTK+\n" "Моргать\n" "Не моргать" #: ../guake/data/prefs.glade.h:61 msgid "Cursor blink mode:" msgstr "Режим отображения курсора:" #: ../guake/data/prefs.glade.h:62 msgid "Allow bold font" msgstr "Разрешить жирный шрифт" #: ../guake/data/prefs.glade.h:63 msgid "Palette" msgstr "Палитра" #: ../guake/data/prefs.glade.h:64 msgid "Built-in schemes:" msgstr "Встроенные схемы:" #: ../guake/data/prefs.glade.h:65 msgid "Color palette:" msgstr "Цветовая палитра:" #: ../guake/data/prefs.glade.h:66 msgid "Font color" msgstr "Цвет текста" #: ../guake/data/prefs.glade.h:67 msgid "Background color" msgstr "Цвет фона" #: ../guake/data/prefs.glade.h:68 msgid "Use font and background color from the palette" msgstr "Использовать цвет текста и фона из палитры" #: ../guake/data/prefs.glade.h:69 msgid "Demo:" msgstr "Пример:" #: ../guake/data/prefs.glade.h:70 msgid "Effects" msgstr "Воздействие" #: ../guake/data/prefs.glade.h:71 msgid "Transparency:" msgstr "Прозрачность:" #: ../guake/data/prefs.glade.h:72 msgid "Background image:" msgstr "Фоновое изображение:" #: ../guake/data/prefs.glade.h:73 msgid "Select A File" msgstr "Выбрать файл" #: ../guake/data/prefs.glade.h:74 ../src/guake/prefs.py:130 msgid "Appearance" msgstr "Оформление" #: ../guake/data/prefs.glade.h:75 msgid "" "Quick open is a feature allowing you to open a file directly into " "your favorite text editor by clicking on its filename when it appears in " "your terminal. See the list of currently supported text patterns used to " "extract filename below." msgstr "" "Быстрое открытие - это функция позволяющая открыть файл в текстовом " "редакторе с помощью нажатия на его имени в терминале. Список поддерживаемых " "на данный момент конструкций имён файлов смотри ниже." #: ../guake/data/prefs.glade.h:76 msgid "Enable Quick Open when Ctrl+clicking on a filename in the terminal" msgstr "" "Разрешить \"Быстрое открытие\" по Ctrl+click на имени файла в терминале" #: ../guake/data/prefs.glade.h:77 msgid "Editor command line:" msgstr "Команда для Редактора:" #: ../guake/data/prefs.glade.h:79 #, no-c-format msgid "" "Use the following elements in the open editor command line:\n" " - %(file_path)s: path to the file that has been clicked\n" " - %(line_number)s: if your editor supports it, you can directly open " "the file to a given line number when found on the screen.\n" "\n" "For example, for sublime, use subl %(file_path)s:%(line_number)s\n" "" msgstr "" "Используйте следующие элементы в команде открытия редактора:\n" " - %(file_path)s: путь к файлу на который нажали\n" " - %(line_number)s: если редактор поддерживает его, можно открыть " "файл на необходимой строке, указанной на экране.\n" "\n" "Например, для sublime, используйте subl %(file_path)s:%(line_number)s\n" "" #: ../guake/data/prefs.glade.h:85 msgid "Quick open in current terminal" msgstr "Быстрое открытие в текущем терминале" #: ../guake/data/prefs.glade.h:86 msgid "" "Here is the list of supported patterns: (to add your own, please contact the " "Guake's authors)" msgstr "" "Здесь указан список поддерживаемых конструкций: (чтобы добавить свою, " "пожалуйста свяжитесь с разработчиками Guake)" #: ../guake/data/prefs.glade.h:87 msgid "Quick Open" msgstr "Быстрое открытие" #: ../guake/data/prefs.glade.h:88 msgid "Quick Open" msgstr "Быстрое открытие" #: ../guake/data/prefs.glade.h:89 msgid "" "To change a shortcut simply click on its name.\n" "To disable a shortcut, press the \"Backspace\" key." msgstr "" "Чтобы изменить горячую клавишу, нажмите на её имени.\n" "Чтобы отключить горячую клавишу, нажмите \"Backspace\"." #: ../guake/data/prefs.glade.h:91 msgid "Keyboard shortcuts" msgstr "Горячие клавиши" #: ../guake/data/prefs.glade.h:92 msgid "" "Note: These options may cause some applications to behave " "incorrectly. They are only here to allow you to work around certain " "applications and operating systems that expect different terminal behavior." msgstr "" "Замечение: эти опции могут сделать поведение приложения " "некорректным. Они представлены только чтобы обойти некоторые ограничения " "приложений или операционных систем, которые ожидают другое поведение " "терминала.\n" "Замечание переводчика: смотри http://trac.guake-terminal.org/trac.cgi/" "ticket/41" #: ../guake/data/prefs.glade.h:93 msgid "" "ASCII DEL\n" "Escape sequence\n" "Control-H" msgstr "" "ASCII DEL\n" "Escape-последовательность\n" "Control-H" #: ../guake/data/prefs.glade.h:96 msgid "_Backspace key generates:" msgstr "Клавиша _Backspace генерирует:" #: ../guake/data/prefs.glade.h:97 msgid "_Delete key generates:" msgstr "Клавиша _Delete генерирует:" #: ../guake/data/prefs.glade.h:98 msgid "_Reset Compatibility Options to Defaults" msgstr "_Сбросить опции совместимости в значения по умолчанию" #: ../guake/data/prefs.glade.h:99 msgid "Keyboard compatibility" msgstr "Клавиатурная совместимость" #: ../guake/data/prefs.glade.h:100 msgid "Compatibility" msgstr "Совместимость" #: ../guake/data/prefs.glade.h:101 msgid "" "In this dialog you can attach your own command or script to various " "guake events" msgstr "" "В этом диалоге можно задать свою команду или скрипт для разных " "событий guake" #: ../guake/data/prefs.glade.h:102 msgid "" "Insert command or path to script.\n" "For details, see https://github.com/Guake/guake/issues/793" msgstr "" "Добавьте команду или путь к скрипту.\n" "Для инфомации см. https://github.com/Guake/guake/issues/793" #: ../guake/data/prefs.glade.h:104 msgid "On show:" msgstr "При открытии:" #: ../guake/data/prefs.glade.h:105 msgid "" "Path to a bash script that would be automatically executed when Guake " "starts, unless you specify --no-startup-script.\n" "\n" "This would typically use the configuration by command line feature of " "Guake:\n" "\n" "#!/bin/bash\n" "\n" "sleep 5 # it is advised to wait a bit before Guake has been successfully " "started\n" "\n" "guake -r \"main\" -e \"cd ~/projects/myproject/main\"\n" "guake -r \"prod\" -e \"cd ~/projects/myproject/prod\"\n" msgstr "" "Путь к bash-скрипту, который будет автоматически запущен при старте Guake, " "если не указано --no-startup-script.\n" "\n" "Обычно используется возможность настройки Guake с помощью командной строки:\n" "\n" "#!/bin/bash\n" "\n" "sleep 5 # советуется подождать немного пока Guake не запустится полностью\n" "\n" "guake -r \"main\" -e \"cd ~/projects/myproject/main\"\n" "guake -r \"prod\" -e \"cd ~/projects/myproject/prod\"\n" #: ../guake/data/prefs.glade.h:116 msgid "On start:" msgstr "При запуске:" #: ../guake/data/prefs.glade.h:117 msgid "Hooks" msgstr "События" #: ../guake/data/prefs.glade.h:118 msgid "Hooks" msgstr "События" #: ../src/guake/about.py:47 ../src/guake/gconfhandler.py:429 #: ../src/guake/guake_app.py:185 ../src/guake/guake_app.py:382 msgid "Guake Terminal" msgstr "Терминал Guake" #: ../src/guake/gconfhandler.py:430 #, python-format msgid "" "A problem happened when binding %s key.\n" "Please use Guake Preferences dialog to choose another key" msgstr "" "Возникла проблема при попытке назначить клавишу %s.\n" "Пожалуйста, воспользуйтесь диалогом настройки, чтобы выбрать другую клавишу " "(иконка в трее была включена)" #: ../src/guake/guake_app.py:133 msgid "Do you want to close the tab?" msgstr "Вы действительно хотите выйти закрыть вкладку?" #: ../src/guake/guake_app.py:136 msgid "Do you really want to quit Guake?" msgstr "Вы действительно хотите выйти из Guake?" #: ../src/guake/guake_app.py:138 msgid " and one tab open" msgstr " и одна вкладка открыта" #: ../src/guake/guake_app.py:140 #, python-brace-format msgid " and {0} tabs open" msgstr " и {0} вкладок открыто" #: ../src/guake/guake_app.py:143 msgid "There are no processes running" msgstr "Нет запущенных процессов" #: ../src/guake/guake_app.py:145 msgid "There is a process still running" msgstr "Имеется выполняемый процесс" #: ../src/guake/guake_app.py:147 #, python-brace-format msgid "There are {0} processes still running" msgstr "Выполняется процессов: {0}" #: ../src/guake/guake_app.py:190 msgid "guake-indicator" msgstr "guake-indicator" #: ../src/guake/guake_app.py:190 msgid "guake-tray" msgstr "guake-tray" #: ../src/guake/guake_app.py:194 msgid "Show" msgstr "Показать" #: ../src/guake/guake_app.py:383 msgid "" "Guake is now running,\n" "press {!s} to use it." msgstr "" "Guake запущен,\n" "нажмите {!s} чтобы работать с ним." #: ../src/guake/guake_app.py:687 #, python-format msgid "Search on Web: '%s'" msgstr "Поиск в Интернете: '%s'" #: ../src/guake/guake_app.py:692 msgid "Search on Web (no selection)" msgstr "Поиск в Интернете (без выборки)" #: ../src/guake/guake_app.py:700 msgid "Open Link: '{}...'" msgstr "Открыть ссылку: '{}...'" #: ../src/guake/guake_app.py:702 msgid "Open Link: {}" msgstr "Открыть ссылку: {}" #: ../src/guake/guake_app.py:705 msgid "Open Link..." msgstr "Открыть ссылку..." #: ../src/guake/guake_app.py:1444 msgid "Terminal" msgstr "Терминал" #: ../src/guake/guake_app.py:1488 msgid "Rename tab" msgstr "Переименовать вкладку" #: ../src/guake/guake_app.py:1813 msgid "Save to..." msgstr "Сохранить как..." #: ../src/guake/guake_app.py:1820 ../src/guake/prefs.py:1007 msgid "All files" msgstr "Все файлы" #: ../src/guake/guake_app.py:1825 msgid "Text and Logs" msgstr "Текст и Логи" #: ../src/guake/guake_app.py:1843 msgid "Find" msgstr "Найти" #: ../src/guake/guake_app.py:1845 msgid "Forward" msgstr "Вперёд" #: ../src/guake/guake_app.py:1846 msgid "Backward" msgstr "Назад" #: ../src/guake/main.py:69 msgid "Put Guake in fullscreen mode" msgstr "Перейти в полноэкранный режим" #: ../src/guake/main.py:73 msgid "Toggles the visibility of the terminal window" msgstr "Переключение видимости окна терминала" #: ../src/guake/main.py:77 msgid "Shows Guake main window" msgstr "Показать главное окно Guake" #: ../src/guake/main.py:81 msgid "Hides Guake main window" msgstr "Скрыть главное окно Guake" #: ../src/guake/main.py:85 msgid "Shows Guake preference window" msgstr "Показать окно настроек Guake" #: ../src/guake/main.py:89 msgid "Shows Guake's about info" msgstr "Показать информацию о Guake" #: ../src/guake/main.py:93 msgid "Add a new tab (with current directory set to NEW_TAB)" msgstr "Добавить вкладку (с текущей директорией установленной в NEW_TAB)" #: ../src/guake/main.py:97 msgid "Select a tab (SELECT_TAB is the index of the tab)" msgstr "Выбрать вкладку (SELECT_TAB - это индекс вкладок)" #: ../src/guake/main.py:101 msgid "Return the selected tab index." msgstr "Вернуть индекс выбранной вкладки." #: ../src/guake/main.py:105 msgid "Return the selected tab label." msgstr "Вернуть название выбранной вкладки." #: ../src/guake/main.py:109 msgid "Execute an arbitrary command in the selected tab." msgstr "Выполнить произвольную команду в выбранной вкладке." #: ../src/guake/main.py:113 msgid "Specify the tab to rename. Default is 0." msgstr "Определите вкладку для переименования. По-умолчанию 0." #: ../src/guake/main.py:117 msgid "Set the background image of the selected tab." msgstr "Укажите фоновое изображение для выбранной вкладки." #: ../src/guake/main.py:122 msgid "Set the hexadecimal (#rrggbb) background color of the selected tab." msgstr "Укажите цвет фона выбранной вкладки в hex формате (#rrggbb)." #: ../src/guake/main.py:127 msgid "Set the hexadecimal (#rrggbb) foreground color of the selected tab." msgstr "" "Укажите цвет переднего плана выбранной вкладки в hex формате (#rrggbb)." #: ../src/guake/main.py:133 msgid "" "Rename the specified tab. Reset to default if TITLE is a single dash \"-\"." msgstr "" "Переименование указанной вкладки. Сброс к имени по-умолчанию, если в TITLE " "одиночное тире \"-\"." #: ../src/guake/main.py:139 msgid "" "Rename the current tab. Reset to default if TITLE is a single dash \"-\"." msgstr "" "Переименование текущей вкладки. Сброс к имени по-умолчанию, если в TITLE " "одиночное тире \"-\"." #: ../src/guake/main.py:144 msgid "Says to Guake go away =(" msgstr "Скажите Guake'у уйти =(" #: ../src/guake/main.py:148 msgid "Do not execute the start up script" msgstr "Не запускать скрипт при старте" #: ../src/guake/main.py:254 msgid "Guake can not init!" msgstr "Ошибка инициализации!" #: ../src/guake/main.py:255 msgid "" "Gconf Error.\n" "Have you installed guake.schemas properly?" msgstr "" "Ошибка Gconf.\n" "Вы уверены, что установили guake.schemas верно?" #. string to show in prefereces dialog for user shell option #: ../src/guake/prefs.py:67 msgid "" msgstr "<шелл пользователя>" #: ../src/guake/prefs.py:77 msgid "Toggle Guake visibility" msgstr "Переключение видимости Guake" #: ../src/guake/prefs.py:81 msgid "Toggle Hide on Lose Focus" msgstr "Прятать при потере фокуса" #: ../src/guake/prefs.py:88 msgid "Tab management" msgstr "Управление вкладками" #: ../src/guake/prefs.py:90 msgid "New tab" msgstr "Новая вкладка" #: ../src/guake/prefs.py:92 msgid "Close tab" msgstr "Закрыть вкладку" #: ../src/guake/prefs.py:94 msgid "Rename current tab" msgstr "Переименовать текущую вкладку" #: ../src/guake/prefs.py:97 msgid "Navigation" msgstr "Навигация" #: ../src/guake/prefs.py:99 msgid "Go to previous tab" msgstr "К предыдущей вклаке" #: ../src/guake/prefs.py:101 msgid "Go to next tab" msgstr "К следующей вкладке" #: ../src/guake/prefs.py:103 msgid "Move current tab left" msgstr "Переместить текущую вкладку влево" #: ../src/guake/prefs.py:105 msgid "Move current tab right" msgstr "Переместить текущую вкладку вправо" #: ../src/guake/prefs.py:107 msgid "Go to first tab" msgstr "Перейти на первую вкладку" #: ../src/guake/prefs.py:109 msgid "Go to second tab" msgstr "На вторую вкладку" #: ../src/guake/prefs.py:111 msgid "Go to third tab" msgstr "На третью вкладку" #: ../src/guake/prefs.py:113 msgid "Go to fourth tab" msgstr "На четвёртую вкладку" #: ../src/guake/prefs.py:115 msgid "Go to fifth tab" msgstr "На пятую вкладку" #: ../src/guake/prefs.py:117 msgid "Go to sixth tab" msgstr "На шестую вкладку" #: ../src/guake/prefs.py:119 msgid "Go to seventh tab" msgstr "На седьмую вкладку" #: ../src/guake/prefs.py:121 msgid "Go to eighth tab" msgstr "На восьмую вкладку" #: ../src/guake/prefs.py:123 msgid "Go to ninth tab" msgstr "На девятую вкладку" #: ../src/guake/prefs.py:125 msgid "Go to tenth tab" msgstr "На десятую вкладку" #: ../src/guake/prefs.py:127 msgid "Go to last tab" msgstr "Перейти на последнюю вкладку" #: ../src/guake/prefs.py:132 msgid "Zoom out" msgstr "Уменьшить" #: ../src/guake/prefs.py:134 msgid "Zoom in" msgstr "Увеличить" #: ../src/guake/prefs.py:136 msgid "Zoom in (alternative)" msgstr "Увеличить (альтернативная)" #: ../src/guake/prefs.py:138 msgid "Increase height" msgstr "Увеличить высоту" #: ../src/guake/prefs.py:140 msgid "Decrease height" msgstr "Уменьшить высоту" #: ../src/guake/prefs.py:142 msgid "Increase transparency" msgstr "Увеличить прозрачность" #: ../src/guake/prefs.py:144 msgid "Decrease transparency" msgstr "Уменьшить прозрачность" #: ../src/guake/prefs.py:146 msgid "Toggle transparency" msgstr "Вкл/выкл прозрачность" #: ../src/guake/prefs.py:149 msgid "Clipboard" msgstr "Буфер обмена" #: ../src/guake/prefs.py:151 msgid "Copy text to clipboard" msgstr "Скопировать текст в буфер обмена" #: ../src/guake/prefs.py:153 msgid "Paste text from clipboard" msgstr "Вставить текст из буфера обмена" #: ../src/guake/prefs.py:156 msgid "Extra features" msgstr "Дополнительные функции" #: ../src/guake/prefs.py:159 msgid "Search select text on web" msgstr "Искать выделенный текст в Интернете" #: ../src/guake/prefs.py:494 msgid "Action" msgstr "Действие" #: ../src/guake/prefs.py:504 msgid "Shortcut" msgstr "Горячая клавиша" #: ../src/guake/prefs.py:662 ../src/guake/prefs.py:708 msgid "Custom" msgstr "Дополнительно" #: ../src/guake/prefs.py:1003 msgid "JSON files" msgstr "JSON файлы" #: ../src/guake/prefs.py:1101 #, python-format msgid "The shortcut \"%s\" is already in use." msgstr "Сокращение \"%s\" уже используется." #: ../src/guake/prefs.py:1102 msgid "Error setting keybinding." msgstr "Ошибка назначения клавиш." #: ../src/guake/prefs.py:1114 #, python-format msgid "" "The shortcut \"%s\" cannot be used because it will become impossible to type " "using this key.\n" "\n" "Please try with a key such as Control, Alt or Shift at the same time.\n" msgstr "" "Вы не сможете использовать сокращение \"%s\", так как его невозможно будет " "набрать, используя эту клавишу.\n" "\n" "Попробуйте сочетание с клавишами Control, Alt или Shift.\n" #: guake/data/prefs.glade:264 msgid "Never" msgstr "Никогда" #: guake/data/prefs.glade:265 msgid "With process running" msgstr "С запущенным процессом" #: guake/data/prefs.glade:266 msgid "Always" msgstr "Всегда" #: guake/data/prefs.glade:865 msgid "Custom command file path:" msgstr "Путь к файлу команд:" #: guake/data/prefs.glade:1423 msgid "Block" msgstr "Блок" #: guake/data/prefs.glade:1424 msgid "I-Beam" msgstr "I-вида" #: guake/data/prefs.glade:1425 msgid "Underline" msgstr "Подчёркивание" #: guake/data/prefs.glade:1443 msgid "Follow GTK+ setting" msgstr "Использовать настройки GTK+" #: guake/data/prefs.glade:1444 msgid "Blink on" msgstr "Моргать" #: guake/data/prefs.glade:1445 msgid "Blink off" msgstr "Не моргать" #: guake/data/prefs.glade:2236 msgid "" "Use the following elements in the open editor command line:\n" "- %(file_path)s: path to the file that has been clicked\n" "- %(line_number)s: if your editor supports it, you can directly open " "the file to a given line number when found on the screen.\n" "\n" "For example, for sublime, use subl %(file_path)s:%(line_number)s\n" "" msgstr "" "Использовать следующие параметры командной строки при открытии " "редактора:\n" "- %(file_path)s: путь к файлу, который был выбран\n" "- %(line_number)s: если Ваш редактор поддерживает, файл может быть " "открыт и прокручен до указанной строки.\n" "\n" "Например, для sublime, используйте subl %(file_path)s:%(line_number)s\n" "" #: guake/data/prefs.glade:2442 guake/data/prefs.glade:2462 msgid "ASCII DEL" msgstr "ASCII DEL" #: guake/data/prefs.glade:2443 guake/data/prefs.glade:2463 msgid "Escape sequence" msgstr "Последовательность Escape" #: guake/data/prefs.glade:2444 guake/data/prefs.glade:2464 msgid "Control-H" msgstr "Control-H" #: guake/data/guake-prefs.desktop:8 msgid "Configure your Guake sessions" msgstr "Настройка сессии Guake" #: guake/data/guake-prefs.desktop:15 guake/data/guake.desktop:18 msgid "guake" msgstr "guake" #: guake/data/guake-prefs.desktop:20 msgid "Terminal;Utility;" msgstr "Терминал;Инструменты;" #: guake/data/guake.desktop:10 msgid "Use the command line in a Quake-like terminal" msgstr "Использовать командную строку как в Quake терминале" #: guake/data/prefs.glade:770 msgid "Main Window Horizontal Alignment" msgstr "Выравнивание главного окна по-горизонтали" #: guake/prefs.py:89 msgid "Show and focus Guake window" msgstr "Показать и перевести фокус на окно Guake" #: guake/data/prefs.glade:566 msgid "0" msgstr "0" #: guake/data/prefs.glade:610 msgid "Main Window Options" msgstr "Параметры главного окна" #: guake/data/prefs.glade:770 msgid "Horizontal Alignment:" msgstr "Горизонтальное выравнивание:" #: guake/data/prefs.glade:855 msgid "Height:" msgstr "Высота:" #: guake/data/prefs.glade:868 msgid "Width:" msgstr "Ширина:" #: guake/data/prefs.glade:913 msgid "Geometry" msgstr "Геометрия" #: guake/data/prefs.glade:944 msgid "Main Window" msgstr "Главное окно" #: guake/data/prefs.glade:1197 msgid "Infinite scrolling" msgstr "Неограниченная прокрутка" #: guake/data/prefs.glade:1219 msgid "Scrollbar" msgstr "Полоса прокрутки" #: guake/data/prefs.glade:1304 msgid "Scroll to Bottom" msgstr "Прокручивать до конца" #: guake/data/prefs.glade:2117 msgid "" "Quick open is a feature allowing you to open a file directly into your " "favorite text editor by clicking on its filename when it appears in your " "terminal. See the list of currently supported text patterns used to extract " "filename below." msgstr "" "Быстрое открытие позволяет открыть файл в текстовом редакторе при нажатии на " "имя файла отображаемое в терминале. Ниже указан список, поддерживаемых в " "настоящий момент шаблонов, используемых для определения имени файла." #: guake/main.py:64 msgid "Show Guake version number and exit" msgstr "Показать версию Guake и выйти" #: guake/data/prefs.glade:93 msgid "Guake properties" msgstr "Параметры Guake" #: guake/data/prefs.glade:107 msgid "Customize behavior and appearance of Guake!" msgstr "Настройки поведения и отображения Guake!" #: guake/data/prefs.glade:929 msgid "Displacement in pixels" msgstr "Смещение в пикселях" #: guake/main.py:73 msgid "Enable verbose logging" msgstr "Включать подробности в журнал" #: guake/guake_app.py:680 msgid "Quick Open: '{!s}...'" msgstr "Быстрое открытие: '{!s}...'" #: guake/guake_app.py:683 msgid "Quick Open: {!s}" msgstr "Быстрое открытие: {!s}" #: guake/guake_app.py:691 msgid "Open Link: '{!s}...'" msgstr "Окрыть ссылку: '{!s}...'" #: guake/guake_app.py:694 msgid "Open Link: {!s}" msgstr "Окрыть ссылку: {!s}" #: guake/data/prefs.glade:2175 msgid "" "WARNING: your system seems to have PCRE2 disabled for VTE, " "preventing application such as Guake to register \"matchers\" using regular " "expressions. Please contact your distribution to request a new version of " "VTE with PCRE2 enabled ! To use Quick Open, you must select the text " "before using Ctrl+click." msgstr "" "ВНИМАНИЕ: похоже в системе отключен PCRE2 для VTE, что не даёт " "возможности Guake использовать регулярные выражения. Обратитесь к " "разработчикам Вашего дистрибутива за новой версией VTE с включенным PCRE2! " "Для использования Быстрого открытия, необходимо выбрать текст перед " "нажатием Ctrl+click." #: guake/guake_app.py:680 msgid "Quick Open: {!s}..." msgstr "Быстрое открытие: {!s}..." #: guake/guake_app.py:691 msgid "Open Link: {!s}..." msgstr "Открыть ссылку: {!s}..." #: guake/guake_app.py:688 msgid "Quick Open..." msgstr "Быстрое открытие..." #: guake/data/prefs.glade:223 msgid "Start Guake at login" msgstr "Запускать Guake при входе в систему" #: guake/data/prefs.glade:363 msgid "Gtk Theme:" msgstr "Gtk тема:" #: guake/data/prefs.glade:387 msgid "Prefer dark theme" msgstr "Предпочитать тёмную тему" #: guake/main.py:184 msgid "" "Specify the tab to rename. Default is 0. Can be used to select tab by UUID." msgstr "" "Укажите вкладку для переименования. По умолчанию - 0. Можно использовать " "UUID для выбора." #: guake/main.py:212 msgid "" "Rename the specified tab by --tab-index. Reset to default if TITLE is a " "single dash \"-\"." msgstr "" "Переименовать указанную вкладку по --tab-index. Сбросить к умолчанию, если " "TITLE состоит из одиночного слеша \"-\"." #: data/search.glade:138 msgid "Search forward" msgstr "Искать вперёд" #: data/search.glade:153 msgid "Match case" msgstr "Учитывать регистр" #: data/search.glade:186 msgid "Current search direction: Backward" msgstr "Текущее направление поиска: Назад" #: /home/vantu5z/git/guake/data/guake-prefs.desktop:13 msgid "guake-prefs" msgstr "guake-prefs" #: data/prefs.glade:680 msgid "Set window title to current tab name" msgstr "Сделать название текущей вкладки заголовком окна" #: guake/menus.py:48 msgid "Copy Url" msgstr "Скопировать URL" #: guake/menus.py:62 msgid "Split ―" msgstr "Разделить ―" #: guake/menus.py:65 msgid "Split " msgstr "Разделить " #: guake/menus.py:68 guake/prefs.py:150 msgid "Close terminal" msgstr "Закрыть терминал" #: guake/prefs.py:137 msgid "Split management" msgstr "Управление разделением" #: guake/prefs.py:142 msgid "Split tab vertical" msgstr "Разделить вкладку вертикально" #: guake/prefs.py:146 msgid "Split tab horizontal" msgstr "Разделить вкладку горизонтально" #: guake/prefs.py:154 msgid "Focus terminal above" msgstr "Передать фокус терминалу сверху" #: guake/prefs.py:158 msgid "Focus terminal below" msgstr "Передать фокус терминалу снизу" #: guake/prefs.py:162 msgid "Focus terminal on the left" msgstr "Передать фокус терминалу слева" #: guake/prefs.py:166 msgid "Focus terminal on the right" msgstr "Передать фокус терминалу справа" #: guake/prefs.py:170 msgid "Move the terminal split handle up" msgstr "Передвинуть ручку разделения терминала вверх" #: guake/prefs.py:174 msgid "Move the terminal split handle down" msgstr "Передвинуть ручку разделения терминала вниз" #: guake/prefs.py:178 msgid "Move the terminal split handle right" msgstr "Передвинуть ручку разделения терминала вправо" #: guake/prefs.py:182 msgid "Move the terminal split handle left" msgstr "Передвинуть ручку разделения терминала влево" #: guake/menus.py:65 msgid "Split |" msgstr "Разделить |" #: guake/menus.py:72 msgid "Save content..." msgstr "Сохранить содержимое..." #: data/prefs.glade:1182 msgid "" "This might not work on all shells, make sure that your shell supports the --" "login option" msgstr "" "Это может работать не со всеми оболочками – удостоверьтесь, что ваша " "оболочка поддерживает параметр --login" #: guake/prefs.py:128 msgid "New tab in home directory" msgstr "Новая вкладка в домашнем каталоге" #: guake/dialogs.py:56 #, python-brace-format msgid " on {0} workspaces" msgstr " на {0} рабочих местах" #: guake/main.py:211 msgid "Change Guake palette scheme" msgstr "Изменить схему палитры Guake" #: data/prefs.glade:331 msgid "Use workspace-specific tab sets (requires restart)" msgstr "" "Использовать вкладки, специфичные для рабочих мест (требуется перезапуск)" #: guake/main.py:175 msgid "Split the selected tab vertically." msgstr "Разделить выбранную вкладку вертикально." #: guake/main.py:183 msgid "Split the selected tab horizontally." msgstr "Разделить выбранную вкладку горизонтально." #: data/prefs.glade:348 msgid "Show close buttons for tabs" msgstr "Показывать кнопки закрытия для вкладок" #: data/prefs.glade:1682 msgid "Bold text is also bright" msgstr "Полужирный текст также яркий" #: data/prefs.glade:1682 msgid "Bold text is also bright (VTE >=0.52)" msgstr "Полужирный текст также яркий (VTE >=0.52)" #: guake/menus.py:42 msgid "Save Tabs" msgstr "Сохранить вкладки" #: guake/menus.py:45 msgid "Restore Tabs" msgstr "Восстановить вкладки" #: guake/prefs.py:113 msgid "Search terminal" msgstr "Искать терминал" #: guake/main.py:278 msgid "Save Guake preferences to this filename" msgstr "Сохранить настройки Guake в этом имени файла" #: guake/main.py:286 msgid "Restore Guake preferences from this file" msgstr "Восстанавливать настройки Guake из этого файла" #: guake/guake_app.py:1192 #, python-brace-format msgid "Your session.json file is broken, backup to {session_filename}.bak" msgstr "Ваш файл session.json повреждён, возврат к {session_filename}.bak" #: guake/guake_app.py:1228 #, python-brace-format msgid "" "Your session.json schema is broken, backup to {0}.bak,and error message has " "been saved to {0}.log.err" msgstr "" "Ваша схема session.json повреждена, возврат к {0}.bak, сообщение об ошибке " "сохранено в {0}.log.err" #: guake/guake_app.py:1239 msgid "Your tabs has been restored!" msgstr "Ваши вкладки восстановлены!" #: data/prefs.glade:190 msgid "Restore previous session (tabs)" msgstr "Восстановить предыдущую сессию (вкладки)" #: data/prefs.glade:204 msgid "Enable notification when restore tabs" msgstr "Включить уведомление при восстановлении вкладок" #: data/prefs.glade:218 msgid "Automatically save session when the tabs has been modified" msgstr "Автоматически сохранять сессию при изменении вкладок" #: data/prefs.glade:238 msgid "Startup & Tabs (Experiment)" msgstr "Запуск и вкладки (эксперимент)" #: guake/guake_app.py:1192 #, python-brace-format msgid "" "Your {session_filename} file is broken, backup to {session_filename}.bak" msgstr "Ваш файл {session_filename} сломан, возврат к {session_filename}.bak" #: guake/guake_app.py:1227 #, python-brace-format msgid "" "Your {session_filename} schema is broken, backup to {0}.bak,and error " "message has been saved to {session_filename}.log.err" msgstr "" "Ваша схема {session_filename} сломана, возврат к {0}.bak, сообщение об " "ошибке сохранено в {session_filename}.log.err" #: guake/guake_app.py:1227 #, python-brace-format msgid "" "Your {session_filename} schema is broken, backup to {session_filename}.bak," "and error message has been saved to {session_filename}.log.err." msgstr "" "Ваша схема {session_filename} сломана, возврат к {session_filename}.bak, " "сообщение об ошибке сохранено в {session_filename}.log.err." #: guake/guake_app.py:1227 #, python-brace-format msgid "" "Your {session_filename} schema is broken, backup to {session_filename}.bak, " "and error message has been saved to {session_filename}.log.err." msgstr "" "Ваша схема {session_filename} сломана, возврат к {session_filename}.bak, " "сообщение об ошибке сохранено в {session_filename}.log.err." #: guake/notebook.py:317 msgid "" "You are going to restore *all* the tabs!\n" "which means all your terminals & pages will be replaced.\n" "\n" "Do you want to continue?" msgstr "" "Вы собираетесь восстановить *все* вкладки!\n" "что означает, что все ваши терминалы и страницы будут заменены.\n" "\n" "Хотите продолжить?" #: guake/main.py:296 msgid "Show support infomations" msgstr "Показать информацию о поддержке" #: guake/guake_app.py:1240 #, python-brace-format msgid "" "Tabs session restore abort.\n" "Your session file ({session_filename}) missing schema_version as key" msgstr "" #: guake/guake_app.py:1252 #, python-brace-format msgid "" "Tabs session restore abort.\n" "Your session file schema version is higher than current version " "({session_file_schema_version} > {current_schema_version})." msgstr "" #: guake/data/prefs.glade:409 msgid "Use workspace-specific tab sets (requires restart, only work on X11)" msgstr "" #~ msgid "Path to script executed on Guake start:" #~ msgstr "Путь к скрипту, запускаемому при старте Guake:" #~ msgid "0 means no size limit" #~ msgstr "0 - без ограничения размера" #~ msgid "Custom Commands" #~ msgstr "Команды пользователя" #~ msgid "" #~ "line starts by 'Filename:line' pattern (GCC/make). File path should exists" #~ msgstr "" #~ "строка начинается с шаблона 'Filename:line' (GCC/make). Должен " #~ "присутствовать путь к файлу" #~ msgid "key binding error" #~ msgstr "ошибка привязки клавиши" #~ msgid "Unable to bind global %s key" #~ msgstr "Невозможно назначить глобальную %s клавишу" #~ msgid "http://guake.org" #~ msgstr "http://guake.org" #~ msgid "" #~ "Tango\n" #~ "Linux console\n" #~ "XTerm\n" #~ "Rxvt\n" #~ "Custom\n" #~ msgstr "" #~ "Танго\n" #~ "Linux консоль\\ nXTerm\n" #~ "Rxvt\n" #~ "Custom\n" #~ msgid "Select a tab" #~ msgstr "Выбрать вкладку" #~ msgid "Rename the selected tab." #~ msgstr "Переименовать выбранную вкладку" #~ msgid "Background" #~ msgstr "Фон" #~ msgid "Choose some color" #~ msgstr "Выберите цвет" #~ msgid "Image:" #~ msgstr "Изображение:" #~ msgid "Style:" #~ msgstr "Стиль:" #~ msgid "Use system defaults" #~ msgstr "Использовать системные значения по-умолчаню" guake-3.6.3/po/sv.po000066400000000000000000000675771346623310400142550ustar00rootroot00000000000000# Swedish translation for Guake. # Copyright (C) Guake Translators # This file is distributed under the same license as the Guake package. # # Translators: # Daniel Nylander , 2011 # Morgan Antonsson , 2018 msgid "" msgstr "" "Project-Id-Version: Guake 0.4.5\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2018-06-22 14:32+0200\n" "PO-Revision-Date: 2019-04-19 11:18+0000\n" "Last-Translator: Morgan Antonsson \n" "Language-Team: Swedish \n" "Language: sv\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=n != 1;\n" "X-Generator: Weblate 3.6-dev\n" #: guake/prefs.py:78 msgid "" msgstr "" #: guake/prefs.py:89 msgid "General" msgstr "Allmänt" #: guake/prefs.py:94 msgid "Toggle Guake visibility" msgstr "Växla synlighet för Guake" #: guake/prefs.py:98 msgid "Show and focus Guake window" msgstr "Visa och fokusera Guake-fönster" #: guake/prefs.py:102 msgid "Toggle Fullscreen" msgstr "Växla helskärm" #: guake/prefs.py:106 msgid "Toggle Hide on Lose Focus" msgstr "Växla Dölj när fokus tappas" #: guake/prefs.py:110 msgid "Quit" msgstr "Avsluta" #: guake/prefs.py:114 msgid "Reset terminal" msgstr "Återställ terminal" #: guake/prefs.py:119 msgid "Tab management" msgstr "Flikhantering" #: guake/prefs.py:124 msgid "New tab" msgstr "Ny flik" #: guake/prefs.py:128 msgid "Close tab" msgstr "Stäng flik" #: guake/prefs.py:132 msgid "Rename current tab" msgstr "Byt namn på aktuell flik" #: guake/prefs.py:137 msgid "Navigation" msgstr "Navigering" #: guake/prefs.py:142 msgid "Go to previous tab" msgstr "Gå till föregående flik" #: guake/prefs.py:146 msgid "Go to next tab" msgstr "Gå till nästa flik" #: guake/prefs.py:150 msgid "Move current tab left" msgstr "Flytta aktuell flik åt vänster" #: guake/prefs.py:154 msgid "Move current tab right" msgstr "Flytta aktuell flik åt höger" #: guake/prefs.py:158 msgid "Go to first tab" msgstr "Gå till första fliken" #: guake/prefs.py:162 msgid "Go to second tab" msgstr "Gå till andra fliken" #: guake/prefs.py:166 msgid "Go to third tab" msgstr "Gå till tredje fliken" #: guake/prefs.py:170 msgid "Go to fourth tab" msgstr "Gå till fjärde fliken" #: guake/prefs.py:174 msgid "Go to fifth tab" msgstr "Gå till femte fliken" #: guake/prefs.py:178 msgid "Go to sixth tab" msgstr "Gå till sjätte fliken" #: guake/prefs.py:182 msgid "Go to seventh tab" msgstr "Gå till sjunde fliken" #: guake/prefs.py:186 msgid "Go to eighth tab" msgstr "Gå till åttonde fliken" #: guake/prefs.py:190 msgid "Go to ninth tab" msgstr "Gå till nionde fliken" #: guake/prefs.py:194 msgid "Go to tenth tab" msgstr "Gå till tionde fliken" #: guake/prefs.py:198 msgid "Go to last tab" msgstr "Gå till sista fliken" #: guake/prefs.py:203 msgid "Appearance" msgstr "Utseende" #: guake/prefs.py:207 msgid "Zoom out" msgstr "Zooma ut" #: guake/prefs.py:210 msgid "Zoom in" msgstr "Zooma in" #: guake/prefs.py:213 msgid "Zoom in (alternative)" msgstr "Zooma in (alternativ)" #: guake/prefs.py:216 msgid "Increase height" msgstr "Öka höjd" #: guake/prefs.py:219 msgid "Decrease height" msgstr "Minska höjd" #: guake/prefs.py:222 msgid "Increase transparency" msgstr "Öka genomskinlighet" #: guake/prefs.py:225 msgid "Decrease transparency" msgstr "Minska genomskinlighet" #: guake/prefs.py:228 msgid "Toggle transparency" msgstr "Växla genomskinlighet" #: guake/prefs.py:232 msgid "Clipboard" msgstr "Urklipp" #: guake/prefs.py:237 msgid "Copy text to clipboard" msgstr "Kopiera text till urklipp" #: guake/prefs.py:241 msgid "Paste text from clipboard" msgstr "Klistra in text från urklipp" #: guake/prefs.py:246 msgid "Extra features" msgstr "Extrafunktioner" #: guake/prefs.py:250 msgid "Search select text on web" msgstr "Sök markerad text på webben" #: guake/prefs.py:686 msgid "Action" msgstr "Åtgärd" #: guake/prefs.py:694 msgid "Shortcut" msgstr "Genväg" #: guake/prefs.py:849 guake/prefs.py:903 msgid "Custom" msgstr "Anpassad" #: guake/prefs.py:1194 msgid "JSON files" msgstr "JSON-filer" #: guake/prefs.py:1198 guake/guake_app.py:1895 msgid "All files" msgstr "Alla filer" #: guake/prefs.py:1293 #, python-format msgid "The shortcut \"%s\" is already in use." msgstr "Genvägen \"%s\" används redan." #: guake/prefs.py:1294 msgid "Error setting keybinding." msgstr "Fel vid inställning av tangentbindning." #: guake/prefs.py:1310 #, python-format msgid "" "The shortcut \"%s\" cannot be used because it will become impossible to type " "using this key.\n" "\n" "Please try with a key such as Control, Alt or Shift at the same time.\n" msgstr "" "Genvägen \"%s\" kan inte användas därför att den blir omöjlig att ange med " "denna tangent.\n" "\n" "Prova med en tangent såsom Control, Alt eller Skift på samma gång.\n" #: guake/guake_app.py:133 msgid "Do you want to close the tab?" msgstr "Vill du stänga fliken?" #: guake/guake_app.py:136 msgid "Do you really want to quit Guake?" msgstr "Vill du verkligen avsluta Guake?" #: guake/guake_app.py:138 msgid " and one tab open" msgstr " och en öppen flik" #: guake/guake_app.py:140 #, python-brace-format msgid " and {0} tabs open" msgstr " och {0} flikar öppna" #: guake/guake_app.py:143 msgid "There are no processes running" msgstr "Det finns inga körande processer" #: guake/guake_app.py:145 msgid "There is a process still running" msgstr "Det finns fortfarande en körande process" #: guake/guake_app.py:147 #, python-brace-format msgid "There are {0} processes still running" msgstr "Det finns {0} körande processer" #: guake/guake_app.py:201 guake/guake_app.py:414 guake/keybindings.py:94 #: guake/about.py:54 msgid "Guake Terminal" msgstr "Guake Terminal" #: guake/guake_app.py:207 msgid "guake-indicator" msgstr "guake-indicator" #: guake/guake_app.py:207 msgid "guake-tray" msgstr "guake-tray" #: guake/guake_app.py:212 msgid "Show" msgstr "Visa" #: guake/guake_app.py:415 msgid "" "Guake is now running,\n" "press {!s} to use it." msgstr "" "Guake är nu igång, tryck\n" "{!s} för att använda den." #: guake/guake_app.py:470 msgid "Custom Commands" msgstr "Anpassade kommandon" #: guake/guake_app.py:723 #, python-format msgid "Search on Web: '%s'" msgstr "Sök på webben: '%s'" #: guake/guake_app.py:727 msgid "Search on Web (no selection)" msgstr "Sök på webben (ingen markering)" #: guake/guake_app.py:739 msgid "Quick Open: {!s}..." msgstr "Snabböppna: {!s}..." #: guake/guake_app.py:742 msgid "Quick Open: {!s}" msgstr "Snabböppna: {!s}" #: guake/guake_app.py:745 msgid "Quick Open..." msgstr "Snabböppna..." #: guake/guake_app.py:753 msgid "Open Link: {!s}..." msgstr "Öppna länk: {!s}..." #: guake/guake_app.py:756 msgid "Open Link: {!s}" msgstr "Öppna länk: {!s}" #: guake/guake_app.py:759 msgid "Open Link..." msgstr "Öppna länk..." #: guake/guake_app.py:1499 msgid "Terminal" msgstr "Terminal" #: guake/guake_app.py:1555 msgid "Rename tab" msgstr "Byt namn på flik" #: guake/guake_app.py:1890 msgid "Save to..." msgstr "Spara som..." #: guake/guake_app.py:1900 msgid "Text and Logs" msgstr "Text och loggar" #: guake/guake_app.py:1920 msgid "Find" msgstr "Sök" #: guake/guake_app.py:1922 msgid "Forward" msgstr "Framåt" #: guake/guake_app.py:1922 msgid "Backward" msgstr "Bakåt" #: guake/keybindings.py:96 #, python-format msgid "" "A problem happened when binding %s key.\n" "Please use Guake Preferences dialog to choose another key" msgstr "" "Ett problem inträffade vid bindning av %s-tangenten.\n" "Använd inställningsdialogen i Guake för att välja en annan tangent " "(Aktivitetsikonen var aktiverad)" #: guake/main.py:70 msgid "Show Guake version number and exit" msgstr "Visa Guakes versionsnummer och avsluta" #: guake/main.py:79 msgid "Enable verbose logging" msgstr "Aktivera riklig loggning" #: guake/main.py:88 msgid "Put Guake in fullscreen mode" msgstr "Sätt Guake i helskärmsläge" #: guake/main.py:97 msgid "Toggles the visibility of the terminal window" msgstr "Växlar synligheten för terminalfönstret" #: guake/main.py:105 msgid "Shows Guake main window" msgstr "Visar Guakes huvudfönster" #: guake/main.py:113 msgid "Hides Guake main window" msgstr "Döljer Guakes huvudfönster" #: guake/main.py:122 msgid "Shows Guake preference window" msgstr "Visar Guakes inställningsfönster" #: guake/main.py:131 msgid "Shows Guake's about info" msgstr "Visar information om Guake" #: guake/main.py:140 msgid "Add a new tab (with current directory set to NEW_TAB)" msgstr "Lägg till en ny flik (med aktuell katalog satt till NEW_TAB)" #: guake/main.py:149 msgid "Select a tab (SELECT_TAB is the index of the tab)" msgstr "Välj flik (SELECT_TAB är flikens index)" #: guake/main.py:158 msgid "Return the selected tab index." msgstr "Returnerar valt flikindex." #: guake/main.py:167 msgid "Return the selected tab label." msgstr "Returnera vald fliks märke." #: guake/main.py:176 msgid "Execute an arbitrary command in the selected tab." msgstr "Kör ett godtyckligt kommando i markerad flik." #: guake/main.py:185 msgid "" "Specify the tab to rename. Default is 0. Can be used to select tab by UUID." msgstr "" "Ange flik att byta namn på (standard är 0). Kan användas för att välja flik " "med UUID." #: guake/main.py:193 msgid "Set the hexadecimal (#rrggbb) background color of the selected tab." msgstr "Ställ in bakgrundsfärg (hexadecimalt: #rrggbb) för vald flik." #: guake/main.py:202 msgid "Set the hexadecimal (#rrggbb) foreground color of the selected tab." msgstr "Ställ in förgrundsfärg (hexadecimalt: #rrggbb) för vald flik." #: guake/main.py:213 msgid "" "Rename the specified tab by --tab-index. Reset to default if TITLE is a " "single dash \"-\"." msgstr "" "Byt namn på flik angiven med --tab-index. Använd standard om TITLE är ett " "ensamt tankstreck \"-\"." #: guake/main.py:225 msgid "" "Rename the current tab. Reset to default if TITLE is a single dash \"-\"." msgstr "" "Byt namn på aktuell flik. Använd standard om TITLE är ett ensamt tankstreck " "\"-\"." #: guake/main.py:235 msgid "Says to Guake go away =(" msgstr "Säger till Guake att försvinna =(" #: guake/main.py:244 msgid "Do not execute the start up script" msgstr "Kör inte uppstartsskriptet" #: data/about.glade:14 msgid "" "Guake is an easy to access\n" "terminal based on FPS games terminal" msgstr "" "Guake är en lättillgänglig terminal\n" "baserad på terminalen i FPS-spel" #: data/guake.glade:11 msgid "Copy" msgstr "Kopiera" #: data/guake.glade:20 msgid "Paste" msgstr "Klistra in" #: data/guake.glade:50 msgid "Save to File..." msgstr "Spara som..." #: data/guake.glade:68 msgid "Find..." msgstr "Sök..." #: data/guake.glade:83 data/guake.glade:188 msgid "New Tab" msgstr "Ny flik" #: data/guake.glade:92 msgid "Rename Tab" msgstr "Byt namn på flik" #: data/guake.glade:101 msgid "Close Tab" msgstr "Stäng flik" #: data/guake.glade:116 msgid "Open link..." msgstr "Öppna länk..." #: data/guake.glade:125 msgid "Search on Web" msgstr "Sök på webben" #: data/guake.glade:134 data/prefs.glade:2455 msgid "Quick Open" msgstr "Snabböppning" #: data/guake.glade:197 msgid "Rename" msgstr "Byt namn" #: data/guake.glade:206 data/search.glade:22 msgid "Close" msgstr "Stäng" #: data/guake.glade:256 msgid "Guake!" msgstr "Guake!" #: data/search.glade:138 msgid "Search forward" msgstr "Sök framåt" #: data/search.glade:153 msgid "Match case" msgstr "Gör skillnad på gemener/VERSALER" #: data/search.glade:186 msgid "Current search direction: Backward" msgstr "Aktuell sökriktning: Bakåt" #: data/prefs.glade:43 msgid "Guake Preferences" msgstr "Inställningar för Guake" #: data/prefs.glade:93 msgid "Guake properties" msgstr "Egenskaper för Guake" #: data/prefs.glade:107 msgid "Customize behavior and appearance of Guake!" msgstr "Anpassa beteendet och utseendet för Guake!" #: data/prefs.glade:190 msgid "Enable popup notifications on startup" msgstr "Aktivera popupnotifieringar vid uppstart" #: data/prefs.glade:207 msgid "_Play system alert sound on bell" msgstr "_Spela systemets varningsljud vid pip" #: data/prefs.glade:223 msgid "Start Guake at login" msgstr "Starta Guake vid inloggning" #: data/prefs.glade:246 msgid "Prompt on close tab:" msgstr "Fråga när flik stängs:" #: data/prefs.glade:260 msgid "Never" msgstr "Aldrig" #: data/prefs.glade:261 msgid "With process running" msgstr "När process kör" #: data/prefs.glade:262 msgid "Always" msgstr "Alltid" #: data/prefs.glade:281 msgid "Always prompt on quit" msgstr "Fråga alltid vid avslut" #: data/prefs.glade:297 msgid "Show tray icon" msgstr "Visa aktivitetsikon" #: data/prefs.glade:313 msgid "_Flash terminal on bell" msgstr "_Blinka terminalen vid pip" #: data/prefs.glade:337 data/prefs.glade:1635 msgid "General" msgstr "Allmänt" #: data/prefs.glade:363 msgid "Gtk Theme:" msgstr "GTK-tema:" #: data/prefs.glade:387 msgid "Prefer dark theme" msgstr "Föredra mörkt tema" #: data/prefs.glade:416 msgid "Custom command file path:" msgstr "Sökväg till anpassat kommando:" #: data/prefs.glade:428 msgid "Please select a json file" msgstr "Välj en JSON-fil" #: data/prefs.glade:516 msgid "Refocus if open" msgstr "Fokusera om redan öppet" #: data/prefs.glade:533 msgid "Hide on lose focus" msgstr "Dölj när fokus tappas" #: data/prefs.glade:550 msgid "Start fullscreen" msgstr "Starta i helskärmsläge" #: data/prefs.glade:566 msgid "Stay on top" msgstr "Alltid överst" #: data/prefs.glade:584 msgid "Show tab bar" msgstr "Visa flikrad" #: data/prefs.glade:600 msgid "Use VTE titles for tab names" msgstr "Visa VTE-titel som fliknamn" #: data/prefs.glade:618 msgid "Abbreviate directories in tab names" msgstr "Förkorta katalognamn i flikar" #: data/prefs.glade:643 msgid "Max tab name length:" msgstr "Maxlängd för fliknamn:" #: data/prefs.glade:658 msgid "0" msgstr "0" #: data/prefs.glade:702 msgid "Main Window Options" msgstr "Alternativ för huvudfönstret" #: data/prefs.glade:733 msgid "Bottom align window instead of top align" msgstr "Justera undersidan av fönstret istället för ovansidan" #: data/prefs.glade:749 msgid "Appear on mouse display" msgstr "Visa på samma skärm som muspekaren" #: data/prefs.glade:774 msgid "Appear on display:" msgstr "Visa på skärm:" #: data/prefs.glade:804 msgid "Place tabs on top" msgstr "Visa flikraden överst" #: data/prefs.glade:826 msgid "Placement" msgstr "Placering" #: data/prefs.glade:862 msgid "Horizontal Alignment:" msgstr "Horisontell justering:" #: data/prefs.glade:878 msgid "Left" msgstr "Vänster" #: data/prefs.glade:898 msgid "Center" msgstr "Mitten" #: data/prefs.glade:918 msgid "Right" msgstr "Höger" #: data/prefs.glade:947 msgid "Height:" msgstr "Höjd:" #: data/prefs.glade:960 msgid "Width:" msgstr "Bredd:" #: data/prefs.glade:1014 msgid "Displacement in pixels" msgstr "Förskjutning i antal pixlar" #: data/prefs.glade:1042 msgid "Geometry" msgstr "Geometri" #: data/prefs.glade:1073 msgid "Main Window" msgstr "Huvudfönster" #: data/prefs.glade:1118 msgid "Default interpreter:" msgstr "Standardtolk:" #: data/prefs.glade:1157 msgid "_Run command as a login shell" msgstr "_Kör kommando som ett inloggningsskal" #: data/prefs.glade:1175 msgid "_Open new tab in current directory" msgstr "_Öppna ny flik i aktuell katalog" #: data/prefs.glade:1220 msgid "Shell" msgstr "Skal" #: data/prefs.glade:1266 msgid "Show scrollbar" msgstr "Visa rullningslist" #: data/prefs.glade:1290 msgid "Scrollback lines:" msgstr "Rader i rullningshistorik:" #: data/prefs.glade:1326 msgid "Infinite scrolling" msgstr "Obegränsad rullning" #: data/prefs.glade:1348 msgid "Scrollbar" msgstr "Rullningslist" #: data/prefs.glade:1393 msgid "On output" msgstr "Vid utdata" #: data/prefs.glade:1410 msgid "On key stroke" msgstr "Vid tangenttryckning" #: data/prefs.glade:1433 msgid "Scroll to Bottom" msgstr "Rulla till slutet" #: data/prefs.glade:1457 msgid "Scrolling" msgstr "Rullning" #: data/prefs.glade:1492 msgid "Use the system fixed width font" msgstr "Använd systemets typsnitt med fast bredd" #: data/prefs.glade:1520 msgid "Font:" msgstr "Typsnitt:" #: data/prefs.glade:1535 msgid "Choose some font" msgstr "Välj ett typsnitt" #: data/prefs.glade:1549 msgid "Cursor shape:" msgstr "Markörens utseende:" #: data/prefs.glade:1564 msgid "Block" msgstr "Block" #: data/prefs.glade:1565 msgid "I-Beam" msgstr "I-balk" #: data/prefs.glade:1566 msgid "Underline" msgstr "Understreck" #: data/prefs.glade:1580 msgid "Cursor blink mode:" msgstr "Markörens blinkläge:" #: data/prefs.glade:1594 msgid "Follow GTK+ setting" msgstr "Använd inställning för GTK+" #: data/prefs.glade:1595 msgid "Blink on" msgstr "Blinkande" #: data/prefs.glade:1596 msgid "Blink off" msgstr "Fast" #: data/prefs.glade:1613 msgid "Allow bold font" msgstr "Tillåt fetstil" #: data/prefs.glade:1670 msgid "Built-in schemes:" msgstr "Inbyggda scheman:" #: data/prefs.glade:1696 msgid "Color palette:" msgstr "Färgpalett:" #: data/prefs.glade:1711 msgid "Demo:" msgstr "Förhandsvisning:" #: data/prefs.glade:2014 msgid "Palette" msgstr "Palett" #: data/prefs.glade:2036 msgid "Effects" msgstr "Effekter" #: data/prefs.glade:2061 msgid "Transparency:" msgstr "Genomskinlighet:" #: data/prefs.glade:2145 msgid "" "To change a shortcut simply click on its name.\n" "To disable a shortcut, press the \"Backspace\" key." msgstr "" "Klicka på en genväg för att ändra den.\n" "Tryck på backstegstangenten för att ta bort en genväg." #: data/prefs.glade:2195 msgid "Keyboard shortcuts" msgstr "Tangentbordsgenvägar" #: data/prefs.glade:2247 msgid "" "Quick open is a feature allowing you to open a file directly into your " "favorite text editor by clicking on its filename when it appears in your " "terminal. See the list of currently supported text patterns used to extract " "filename below." msgstr "" "Snabböppning är en funktion som gör det möjligt att öppna en fil i valfri " "textredigerare genom att klicka på dess filnamn i terminalen. Se " "nedanstående lista med textmönster som används för att extrahera filnamn." #: data/prefs.glade:2285 msgid "Enable Quick Open when Ctrl+clicking on a filename in the terminal" msgstr "Aktivera snabböppning när ett filnamn i terminalen Ctrl-klickas" #: data/prefs.glade:2310 msgid "Editor command line:" msgstr "Kommando för att öppna redigerare:" #: data/prefs.glade:2356 msgid "" "Use the following elements in the open editor command line:\n" "- %(file_path)s: path to the file that has been clicked\n" "- %(line_number)s: if your editor supports it, you can directly open " "the file to a given line number when found on the screen.\n" "\n" "For example, for sublime, use subl %(file_path)s:%(line_number)s\n" "" msgstr "" "Använd följande element i kommando för att öppna textredigerare:\n" "- %(file_path)s: sökväg till klickad fil\n" "- %(line_number)s: radnummer som kan användas om textredigeraren har " "stöd för att hoppa till en viss rad.\n" "\n" "Exempel för sublime: subl %(file_path)s:%(line_number)s\n" "" #: data/prefs.glade:2411 msgid "Quick open in current terminal" msgstr "Snabböppna i aktuell terminal" #: data/prefs.glade:2505 msgid "" "In this dialog you can attach your own command or script to various " "guake events" msgstr "" "I denna dialogruta kan du ange kommandon eller skript som körs vid " "olika händelser i Guake" #: data/prefs.glade:2527 msgid "On show:" msgstr "Vid visning:" #: data/prefs.glade:2539 msgid "On start:" msgstr "Vid start:" #: data/prefs.glade:2605 msgid "Hooks" msgstr "Hookar" #: data/prefs.glade:2634 msgid "" "Note: These options may cause some applications to behave " "incorrectly. They are only here to allow you to work around certain " "applications and operating systems that expect different terminal behavior." msgstr "" "Observera: Dessa alternativ kan orsaka att vissa program " "uppträder på ett felaktigt sätt. De finns endast här för att låta dig göra " "temporära lösningar för vissa program och operativsystem som förväntar ett " "annat terminalbeteende." #: data/prefs.glade:2654 msgid "_Backspace key generates:" msgstr "_Backstegstangenten genererar:" #: data/prefs.glade:2667 msgid "_Delete key generates:" msgstr "_Delete-tangenten genererar:" #: data/prefs.glade:2682 data/prefs.glade:2699 msgid "ASCII DEL" msgstr "ASCII DEL" #: data/prefs.glade:2683 data/prefs.glade:2700 msgid "Escape sequence" msgstr "Kontrollsekvens" #: data/prefs.glade:2684 data/prefs.glade:2701 msgid "Control-H" msgstr "Control-H" #: data/prefs.glade:2726 msgid "_Reset Compatibility Options to Defaults" msgstr "Åt_erställ kompatibilitetsalternativ till standardvärden" #: data/prefs.glade:2757 msgid "Compatibility" msgstr "Kompatibilitet" #: data/guake-prefs.desktop:4 data/guake-prefs.template.desktop:4 msgid "Configure your Guake sessions" msgstr "Anpassa Guake-sessioner" #: data/guake-prefs.desktop:7 data/guake-prefs.template.desktop:7 #: data/guake.template.desktop:7 data/guake.desktop:7 #: data/autostart-guake.desktop:39 msgid "guake" msgstr "guake" #: data/guake-prefs.desktop:13 data/guake-prefs.template.desktop:13 msgid "Terminal;Utility;" msgstr "Terminal;Utility;" #: data/guake.template.desktop:4 data/guake.desktop:4 #: data/autostart-guake.desktop:31 msgid "Use the command line in a Quake-like terminal" msgstr "Använd kommandoraden i en Quake-liknande terminal" #: data/prefs.glade:680 msgid "Set window title to current tab name" msgstr "Sätt fönstertitel till aktuell fliks namn" #: guake/menus.py:48 msgid "Copy Url" msgstr "Kopiera URL" #: guake/menus.py:62 msgid "Split ―" msgstr "Dela ―" #: guake/menus.py:65 msgid "Split " msgstr "Dela " #: guake/menus.py:68 guake/prefs.py:150 msgid "Close terminal" msgstr "Stäng terminal" #: guake/prefs.py:137 msgid "Split management" msgstr "Delningshantering" #: guake/prefs.py:142 msgid "Split tab vertical" msgstr "Dela flik vertikalt" #: guake/prefs.py:146 msgid "Split tab horizontal" msgstr "Dela flik horisontellt" #: guake/prefs.py:154 msgid "Focus terminal above" msgstr "Fokusera terminal ovanför" #: guake/prefs.py:158 msgid "Focus terminal below" msgstr "Fokusera terminal nedanför" #: guake/prefs.py:162 msgid "Focus terminal on the left" msgstr "Fokusera terminal till vänster" #: guake/prefs.py:166 msgid "Focus terminal on the right" msgstr "Fokusera terminal till höger" #: guake/prefs.py:170 msgid "Move the terminal split handle up" msgstr "Flytta terminalavdelare uppåt" #: guake/prefs.py:174 msgid "Move the terminal split handle down" msgstr "Flytta terminalavdelare nedåt" #: guake/prefs.py:178 msgid "Move the terminal split handle right" msgstr "Flytta terminalavdelare åt höger" #: guake/prefs.py:182 msgid "Move the terminal split handle left" msgstr "Flytta terminalavdelare åt vänster" #: guake/menus.py:65 msgid "Split |" msgstr "Dela |" #: guake/menus.py:72 msgid "Save content..." msgstr "Spara innehåll..." #: data/prefs.glade:1182 msgid "" "This might not work on all shells, make sure that your shell supports the --" "login option" msgstr "" "Detta fungerar kanske inte för alla skal. Kontrollera att skalet stöder " "flaggan --login" #: guake/prefs.py:128 msgid "New tab in home directory" msgstr "Ny flik i hemkatalogen" #: guake/dialogs.py:56 #, python-brace-format msgid " on {0} workspaces" msgstr " på {0} arbetsytor" #: guake/main.py:211 msgid "Change Guake palette scheme" msgstr "Ändra Guakes palettschema" #: data/prefs.glade:331 msgid "Use workspace-specific tab sets (requires restart)" msgstr "Använd arbetsytespecifika flikar (kräver omstart)" #: guake/main.py:175 msgid "Split the selected tab vertically." msgstr "Dela vald flik vertikalt." #: guake/main.py:183 msgid "Split the selected tab horizontally." msgstr "Dela vald flik horisontellt." #: data/prefs.glade:348 msgid "Show close buttons for tabs" msgstr "Visa stängknappar på flikar" #: data/prefs.glade:1682 msgid "Bold text is also bright" msgstr "Fet text är också ljus" #: data/prefs.glade:1682 msgid "Bold text is also bright (VTE >=0.52)" msgstr "Fet text är också ljus (VTE >=0.52)" #: guake/menus.py:42 msgid "Save Tabs" msgstr "Spara flikar" #: guake/menus.py:45 msgid "Restore Tabs" msgstr "Återställ flikar" #: guake/prefs.py:113 msgid "Search terminal" msgstr "Sök i terminalen" #: guake/main.py:278 msgid "Save Guake preferences to this filename" msgstr "Spara Guakes inställningar som detta filnamn" #: guake/main.py:286 msgid "Restore Guake preferences from this file" msgstr "Återställ Guakes inställningar från den här filen" #: guake/guake_app.py:1192 #, python-brace-format msgid "Your session.json file is broken, backup to {session_filename}.bak" msgstr "" "Din session.json-fil är trasig, säkerhetskopiera till {session_filename}.bak" #: guake/guake_app.py:1228 #, python-brace-format msgid "" "Your session.json schema is broken, backup to {0}.bak,and error message has " "been saved to {0}.log.err" msgstr "" "Din session.json-fil är trasig, säkerhetskopiera till {0}.bak, och " "felmeddelandet har sparats till {0}.log.err" #: guake/guake_app.py:1239 msgid "Your tabs has been restored!" msgstr "Dina flikar har återställts!" #: guake/tests/test_about.py:23 msgid "About Guake" msgstr "Om Guake" #: data/prefs.glade:190 msgid "Restore previous session (tabs)" msgstr "Återställ föregående session (flikar)" #: data/prefs.glade:204 msgid "Enable notification when restore tabs" msgstr "Aktivera notifiering när flikar återställs" #: data/prefs.glade:218 msgid "Automatically save session when the tabs has been modified" msgstr "Spara automatiskt session när flikar har ändrats" #: data/prefs.glade:238 msgid "Startup & Tabs (Experiment)" msgstr "Uppstart & flikar (experiment)" #: guake/guake_app.py:1192 #, python-brace-format msgid "" "Your {session_filename} file is broken, backup to {session_filename}.bak" msgstr "" "Din {session_filename}-fil är trasig, säkerhetskopiera till " "{session_filename}.bak" #: guake/guake_app.py:1227 #, python-brace-format msgid "" "Your {session_filename} schema is broken, backup to {0}.bak,and error " "message has been saved to {session_filename}.log.err" msgstr "" "Din {session_filename}-fil är trasig, säkerhetskopiera till {0}.bak, och " "felmeddelandet har sparats till {session_filename}.log.err" #: guake/guake_app.py:1227 #, python-brace-format msgid "" "Your {session_filename} schema is broken, backup to {session_filename}.bak," "and error message has been saved to {session_filename}.log.err." msgstr "" "Din {session_filename}-fil är trasig, säkerhetskopiera till " "{session_filename}.bak, och felmeddelandet har sparats till " "{session_filename}.log.err." #: guake/guake_app.py:1227 #, python-brace-format msgid "" "Your {session_filename} schema is broken, backup to {session_filename}.bak, " "and error message has been saved to {session_filename}.log.err." msgstr "" "Ditt {session_filename}-schema är trasigt, säkerhetskopiera till " "{session_filename}.bak, och felmeddelandet har sparats till " "{session_filename}.log.err." #: guake/notebook.py:317 msgid "" "You are going to restore *all* the tabs!\n" "which means all your terminals & pages will be replaced.\n" "\n" "Do you want to continue?" msgstr "" #: guake/main.py:296 msgid "Show support infomations" msgstr "" #: guake/guake_app.py:1240 #, python-brace-format msgid "" "Tabs session restore abort.\n" "Your session file ({session_filename}) missing schema_version as key" msgstr "" #: guake/guake_app.py:1252 #, python-brace-format msgid "" "Tabs session restore abort.\n" "Your session file schema version is higher than current version " "({session_file_schema_version} > {current_schema_version})." msgstr "" #: guake/data/prefs.glade:409 msgid "Use workspace-specific tab sets (requires restart, only work on X11)" msgstr "" guake-3.6.3/po/tr.po000066400000000000000000000751171346623310400142370ustar00rootroot00000000000000# Translation of Guake to Turkish # Copyright (C) 2012 Guake Translators # This file is distributed under the same license as the Guake package. # # Translators: # Berk Demirkır , 2012 msgid "" msgstr "" "Project-Id-Version: Guake 0.4.5\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2016-08-18 17:32+0200\n" "PO-Revision-Date: 2018-10-07 22:36+0000\n" "Last-Translator: h4rvey r0ss \n" "Language-Team: Turkish \n" "Language: tr\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=n > 1;\n" "X-Generator: Weblate 3.2\n" #: ../guake/data/about.glade.h:1 msgid "About Guake" msgstr "Guake Hakkında" #: ../guake/data/about.glade.h:5 #, fuzzy msgid "" "Guake is an easy to access\n" "terminal based on FPS games terminal" msgstr "" "Guake, kullanımı kolay\n" "fps oyunlarından esinlenmiş bir uçbirim yazılımıdır." #: ../guake/data/guake.glade.h:1 msgid "Copy" msgstr "Kopyala" #: ../guake/data/guake.glade.h:2 msgid "Paste" msgstr "Yapıştır" #: ../guake/data/guake.glade.h:3 ../src/guake/prefs.py:79 msgid "Toggle Fullscreen" msgstr "Tam ekran moduna gir veya çık" #: ../guake/data/guake.glade.h:4 msgid "Save to File..." msgstr "" #: ../guake/data/guake.glade.h:5 ../src/guake/prefs.py:85 #, fuzzy msgid "Reset terminal" msgstr "Guake Uçbirim" #: ../guake/data/guake.glade.h:6 msgid "Find..." msgstr "" #: ../guake/data/guake.glade.h:7 #, fuzzy msgid "New Tab" msgstr "Yeni sekme" #: ../guake/data/guake.glade.h:8 #, fuzzy msgid "Rename Tab" msgstr "Sekmeyi yeniden adlandır" #: ../guake/data/guake.glade.h:9 msgid "Close Tab" msgstr "Sekmeyi Kapat" #: ../guake/data/guake.glade.h:10 msgid "Open link..." msgstr "Bağlantıyı aç" #: ../guake/data/guake.glade.h:11 msgid "Search on Web" msgstr "Internette ara" #: ../guake/data/guake.glade.h:12 ../src/guake/prefs.py:83 msgid "Quit" msgstr "Çıkış" #: ../guake/data/guake.glade.h:13 msgid "Rename" msgstr "Yeniden Adlandır" #: ../guake/data/guake.glade.h:14 msgid "Close" msgstr "Kapat" #: ../guake/data/guake.glade.h:15 msgid "Guake!" msgstr "Guake!" #: ../guake/data/guake.glade.h:16 #, fuzzy msgid "Add a new tab" msgstr "Yeni sekme ekle" #: ../guake/data/prefs.glade.h:1 msgid "Guake Preferences" msgstr "Guake Tercihleri" #: ../guake/data/prefs.glade.h:2 msgid "Guake properties" msgstr "Guake özellikleri" #: ../guake/data/prefs.glade.h:3 msgid "" "Customize behavior and appearance of Guake!" msgstr "" "Guake'in davranışlarını ve görünümünü özelleştirin!" #: ../guake/data/prefs.glade.h:4 msgid "" "Path to a bash script that would be automatically executed when Guake " "starts, unless you specify --no-startup-script.\n" "\n" "This would typically use the configuration by command line feature of " "Guake:\n" "\n" "#!/bin/bash\n" "\n" "sleep 5 # it is advised to wait a bit before Guake has been successfully " "started\n" "\n" "guake -r \"main\" -e \"cd ~/projects/myproject/main\"\n" "guake -r \"prod\" -e \"cd ~/projects/myproject/prod\"\n" msgstr "" #: ../guake/data/prefs.glade.h:15 msgid "Enable popup notifications on startup" msgstr "Başlangıçta popup uyarılarını göster" #: ../guake/data/prefs.glade.h:16 msgid "Show tray icon" msgstr "Sistem tepsisinde simge göster" #: ../guake/data/prefs.glade.h:17 #, fuzzy msgid "Always prompt on quit" msgstr "Çıkmadan önce sor" #: ../guake/data/prefs.glade.h:18 msgid "_Flash terminal on bell" msgstr "" #: ../guake/data/prefs.glade.h:19 msgid "_Play system alert sound on bell" msgstr "" #: ../guake/data/prefs.glade.h:20 msgid "Path to script executed on Guake start:" msgstr "" #: ../guake/data/prefs.glade.h:21 #, fuzzy msgid "Prompt on close tab:" msgstr "Çıkmadan önce sor" #: ../guake/data/prefs.glade.h:22 msgid "" "Never\n" "With process running\n" "Always" msgstr "" #: ../guake/data/prefs.glade.h:25 msgid "General" msgstr "Genel" #: ../guake/data/prefs.glade.h:26 msgid "Bottom align window instead of top align" msgstr "" #: ../guake/data/prefs.glade.h:27 msgid "Appear on mouse display" msgstr "" #: ../guake/data/prefs.glade.h:28 msgid "Appear on display:" msgstr "" #: ../guake/data/prefs.glade.h:29 #, fuzzy msgid "Place tabs on top" msgstr "Her zaman üstte kal" #: ../guake/data/prefs.glade.h:30 #, fuzzy msgid "Placement" msgstr "Palet" #: ../guake/data/prefs.glade.h:31 msgid "Stay on top" msgstr "Her zaman üstte kal" #: ../guake/data/prefs.glade.h:32 msgid "Use VTE titles for tab names" msgstr "" #: ../guake/data/prefs.glade.h:33 msgid "Max tab name length:" msgstr "" #: ../guake/data/prefs.glade.h:34 msgid "0 means no size limit" msgstr "" #: ../guake/data/prefs.glade.h:35 msgid "Abbreviate directories in tab names" msgstr "" #: ../guake/data/prefs.glade.h:36 msgid "Hide on lose focus" msgstr "Focus kaybedildiğinde gizle" #: ../guake/data/prefs.glade.h:37 msgid "Show tab bar" msgstr "Sekme çubuğunu görüntüle" #: ../guake/data/prefs.glade.h:38 #, fuzzy msgid "Start fullscreen" msgstr "Tam ekran moduna gir veya çık" #: ../guake/data/prefs.glade.h:39 msgid "Main Window" msgstr "Uçbirim Penceresi" #: ../guake/data/prefs.glade.h:40 msgid "Left" msgstr "" #: ../guake/data/prefs.glade.h:41 msgid "Center" msgstr "" #: ../guake/data/prefs.glade.h:42 msgid "Right" msgstr "" #: ../guake/data/prefs.glade.h:43 #, fuzzy msgid "Main Window Horizontal Alignment" msgstr "Uçbirim Pencere yüksekliği" #: ../guake/data/prefs.glade.h:44 #, fuzzy msgid "Main Window Height" msgstr "Uçbirim Pencere yüksekliği" #: ../guake/data/prefs.glade.h:45 #, fuzzy msgid "Main Window Width" msgstr "Uçbirim Pencere yüksekliği" #: ../guake/data/prefs.glade.h:46 msgid "Custom command file path: " msgstr "" #: ../guake/data/prefs.glade.h:47 msgid "Please select a json file" msgstr "" #: ../guake/data/prefs.glade.h:48 ../src/guake/prefs.py:75 msgid "General" msgstr "Genel" #: ../guake/data/prefs.glade.h:49 msgid "Default interpreter:" msgstr "Varsayılan yorumlayıcı:" #: ../guake/data/prefs.glade.h:50 msgid "_Run command as a login shell" msgstr "Komutu gi_riş kabuğu olarak çalıştır." #: ../guake/data/prefs.glade.h:51 msgid "_Open new tab in current directory" msgstr "_Yeni sekmeyi klasörde aç" #: ../guake/data/prefs.glade.h:52 msgid "Shell" msgstr "Kabuk" #: ../guake/data/prefs.glade.h:53 msgid "Shell" msgstr "" #: ../guake/data/prefs.glade.h:54 msgid "Show scrollbar" msgstr "Kaydırma çubuğunu görüntüle" #: ../guake/data/prefs.glade.h:55 msgid "Scrollback lines:" msgstr "Satır hafızası:" #: ../guake/data/prefs.glade.h:56 msgid "On output" msgstr "Çıktı üretildiğinde" #: ../guake/data/prefs.glade.h:57 msgid "On key stroke" msgstr "Tuşa basıldığında" #: ../guake/data/prefs.glade.h:58 msgid "Scroll" msgstr "Ekran Kaydırma" #: ../guake/data/prefs.glade.h:59 msgid "Scrolling" msgstr "Kaydırma" #: ../guake/data/prefs.glade.h:60 msgid "Use the system fixed width font" msgstr "Sistemin sabit genişlikli yazıtipini kullan" #: ../guake/data/prefs.glade.h:61 msgid "Font:" msgstr "Yazıtipi:" #: ../guake/data/prefs.glade.h:62 msgid "Choose some font" msgstr "Font seçin" #: ../guake/data/prefs.glade.h:63 msgid "Text color:" msgstr "Metin rengi:" #: ../guake/data/prefs.glade.h:64 msgid "Background color:" msgstr "Arkaplan rengi:" #: ../guake/data/prefs.glade.h:65 msgid "Cursor shape:" msgstr "" #: ../guake/data/prefs.glade.h:66 msgid "" "Block\n" "I-Beam\n" "Underline" msgstr "" #: ../guake/data/prefs.glade.h:69 msgid "" "Follow GTK+ setting\n" "Blink on\n" "Blink off" msgstr "" #: ../guake/data/prefs.glade.h:72 msgid "Cursor blink mode:" msgstr "" #: ../guake/data/prefs.glade.h:73 msgid "Allow bold font" msgstr "" #: ../guake/data/prefs.glade.h:74 msgid "Palette" msgstr "Palet" #: ../guake/data/prefs.glade.h:75 msgid "Built-in schemes:" msgstr "Varsayılan düzenler:" #: ../guake/data/prefs.glade.h:76 msgid "Color palette:" msgstr "Renk Paleti:" #: ../guake/data/prefs.glade.h:77 #, fuzzy msgid "Font color" msgstr "Metin rengi:" #: ../guake/data/prefs.glade.h:78 #, fuzzy msgid "Background color" msgstr "Arkaplan rengi:" #: ../guake/data/prefs.glade.h:79 msgid "Use font and background color from the palette" msgstr "" #: ../guake/data/prefs.glade.h:80 msgid "Demo:" msgstr "" #: ../guake/data/prefs.glade.h:81 msgid "Effects" msgstr "Efektler" #: ../guake/data/prefs.glade.h:82 msgid "Transparency:" msgstr "Şeffaflık:" #: ../guake/data/prefs.glade.h:83 msgid "Background image:" msgstr "Arkaplan resmi:" #: ../guake/data/prefs.glade.h:84 ../src/guake/prefs.py:130 msgid "Appearance" msgstr "Görünüm" #: ../guake/data/prefs.glade.h:85 msgid "" "Quick open is a feature allowing you to open a file directly into " "your favorite text editor by clicking on its filename when it appears in " "your terminal. See the list of currently supported text patterns used to " "extract filename below." msgstr "" #: ../guake/data/prefs.glade.h:86 msgid "Enable Quick Open when Ctrl+clicking on a filename in the terminal" msgstr "" #: ../guake/data/prefs.glade.h:87 msgid "Editor command line:" msgstr "" #: ../guake/data/prefs.glade.h:89 #, no-c-format msgid "" "Use the following elements in the open editor command line:\n" " - %(file_path)s: path to the file that has been clicked\n" " - %(line_number)s: if your editor supports it, you can directly open " "the file to a given line number when found on the screen.\n" "\n" "For example, for sublime, use subl %(file_path)s:%(line_number)s\n" "" msgstr "" #: ../guake/data/prefs.glade.h:95 msgid "Quick open in current terminal" msgstr "" #: ../guake/data/prefs.glade.h:96 msgid "" "Here is the list of supported patterns: (to add your own, please contact the " "Guake's authors)" msgstr "" #: ../guake/data/prefs.glade.h:97 #, fuzzy msgid "Quick Open" msgstr "Palet" #: ../guake/data/prefs.glade.h:98 msgid "Quick Open" msgstr "" #: ../guake/data/prefs.glade.h:99 msgid "" "To change a shortcut simply click on its name.\n" "To disable a shortcut, press the \"Backspace\" key." msgstr "" #: ../guake/data/prefs.glade.h:101 msgid "Keyboard shortcuts" msgstr "Klavye kısayolları" #: ../guake/data/prefs.glade.h:102 msgid "" "Note: These options may cause some applications to behave " "incorrectly. They are only here to allow you to work around certain " "applications and operating systems that expect different terminal behavior." msgstr "" "Note: Bu ayarlar bazı programların hatalı davranmasına " "sebep olabilir. Bu ayarlar sadece farklı uçbirim davranışları bekleyen " "programlar ve işletim sistemleri için vardır." #: ../guake/data/prefs.glade.h:103 msgid "" "ASCII DEL\n" "Escape sequence\n" "Control-H" msgstr "" "ASCII DEL\n" "Esc dizisi\n" "Ctrl-H" #: ../guake/data/prefs.glade.h:106 msgid "_Backspace key generates:" msgstr "_Backspace tuşu yerine:" #: ../guake/data/prefs.glade.h:107 msgid "_Delete key generates:" msgstr "_Delete tuşu yerine:" #: ../guake/data/prefs.glade.h:108 msgid "_Reset Compatibility Options to Defaults" msgstr "Uyumluluk aya_rlarını varsayılan hale getir" #: ../guake/data/prefs.glade.h:109 msgid "Keyboard compatibility" msgstr "Klavye uyumluluğu" #: ../guake/data/prefs.glade.h:110 msgid "Compatibility" msgstr "Uyumluluk" #: ../src/guake/about.py:47 ../src/guake/gconfhandler.py:439 #: ../src/guake/guake_app.py:181 ../src/guake/guake_app.py:378 msgid "Guake Terminal" msgstr "Guake Uçbirim" #: ../src/guake/gconfhandler.py:369 ../src/guake/guake_app.py:1386 #, fuzzy msgid "Terminal" msgstr "Uçbirim %s" #: ../src/guake/gconfhandler.py:440 #, python-format msgid "" "A problem happened when binding %s key.\n" "Please use Guake Preferences dialog to choose another key" msgstr "" "%s tuşunu kısayol olarak atarken bir hata oluştu.\n" "Lütfen Guake Seçenekler penceresini kullanarak yeni bir kısayol seçin. " "(Simge sistem çekmecesindedir)" #: ../src/guake/guake_app.py:132 #, fuzzy msgid "Do you want to close the tab?" msgstr "Guake'den çıkmak istediğinize emin misiniz?" #: ../src/guake/guake_app.py:135 #, fuzzy msgid "Do you really want to quit Guake?" msgstr "Guake'den çıkmak istediğinize emin misiniz?" #: ../src/guake/guake_app.py:137 #, fuzzy msgid " and one tab open" msgstr "Yeni sekme ekle" #: ../src/guake/guake_app.py:139 #, python-brace-format msgid " and {0} tabs open" msgstr "" #: ../src/guake/guake_app.py:142 #, fuzzy msgid "There are no processes running" msgstr "Halen çalışan bir işlem var." #: ../src/guake/guake_app.py:144 #, fuzzy msgid "There is a process still running" msgstr "Halen çalışan bir işlem var." #: ../src/guake/guake_app.py:146 #, fuzzy, python-brace-format msgid "There are {0} processes still running" msgstr "Çalışan %d işlem var." #: ../src/guake/guake_app.py:186 msgid "guake-indicator" msgstr "" #: ../src/guake/guake_app.py:186 msgid "guake-tray" msgstr "" #: ../src/guake/guake_app.py:190 msgid "Show" msgstr "" #: ../src/guake/guake_app.py:379 #, python-format msgid "" "Guake is now running,\n" "press {!s} to use it." msgstr "" "Guake çalışıyor.\n" "{!s} tuşu ile kullanmaya başlayın." #: ../src/guake/guake_app.py:670 #, python-format msgid "Search on Web: '%s'" msgstr "" #: ../src/guake/guake_app.py:675 msgid "Search on Web (no selection)" msgstr "" #: ../src/guake/guake_app.py:683 msgid "Open Link: '{}...'" msgstr "" #: ../src/guake/guake_app.py:685 msgid "Open Link: {}" msgstr "" #: ../src/guake/guake_app.py:688 msgid "Open Link..." msgstr "" #: ../src/guake/guake_app.py:1425 msgid "Rename tab" msgstr "Sekmeyi yeniden adlandır" #: ../src/guake/guake_app.py:1736 msgid "Save to..." msgstr "" #: ../src/guake/guake_app.py:1743 ../src/guake/prefs.py:973 msgid "All files" msgstr "" #: ../src/guake/guake_app.py:1748 msgid "Text and Logs" msgstr "" #: ../src/guake/guake_app.py:1766 msgid "Find" msgstr "" #: ../src/guake/guake_app.py:1768 msgid "Forward" msgstr "" #: ../src/guake/guake_app.py:1769 msgid "Backward" msgstr "" #: ../src/guake/main.py:68 msgid "Put Guake in fullscreen mode" msgstr "" #: ../src/guake/main.py:72 msgid "Toggles the visibility of the terminal window" msgstr "Uçbirim penceresinin görüntüler veya gizler" #: ../src/guake/main.py:76 #, fuzzy msgid "Shows Guake main window" msgstr "Guake seçenekler penceresini gösterir" #: ../src/guake/main.py:80 #, fuzzy msgid "Hides Guake main window" msgstr "Guake seçenekler penceresini gösterir" #: ../src/guake/main.py:84 msgid "Shows Guake preference window" msgstr "Guake seçenekler penceresini gösterir" #: ../src/guake/main.py:88 msgid "Shows Guake's about info" msgstr "Guake'nin hakkında bilgisini gösterir" #: ../src/guake/main.py:92 #, fuzzy msgid "Add a new tab (with current directory set to NEW_TAB)" msgstr "_Yeni sekmeyi klasörde aç" #: ../src/guake/main.py:96 msgid "Select a tab (SELECT_TAB is the index of the tab)" msgstr "" #: ../src/guake/main.py:100 msgid "Return the selected tab index." msgstr "Seçilmiş sekme sıra numarasını döndürür." #: ../src/guake/main.py:104 msgid "Execute an arbitrary command in the selected tab." msgstr "Seçili sekmede sınırsız komut çalıştırır." #: ../src/guake/main.py:108 msgid "Specify the tab to rename. Default is 0." msgstr "" #: ../src/guake/main.py:112 msgid "Set the hexadecimal (#rrggbb) background color of the selected tab." msgstr "" #: ../src/guake/main.py:117 msgid "Set the hexadecimal (#rrggbb) foreground color of the selected tab." msgstr "" #: ../src/guake/main.py:123 msgid "" "Rename the specified tab. Reset to default if TITLE is a single dash \"-\"." msgstr "" #: ../src/guake/main.py:129 msgid "" "Rename the current tab. Reset to default if TITLE is a single dash \"-\"." msgstr "" #: ../src/guake/main.py:134 msgid "Says to Guake go away =(" msgstr "Guake'e güle güle der =(" #: ../src/guake/main.py:138 msgid "Do not execute the start up script" msgstr "" #: ../src/guake/main.py:235 msgid "Guake can not init!" msgstr "Guake başlatılamadı!" #: ../src/guake/main.py:236 #, fuzzy msgid "" "Gconf Error.\n" "Have you installed guake.schemas properly?" msgstr "" "Gconf Hatası.\n" "guake.schemas'ı doğru şekilde yüklediniz mi?" #. string to show in prefereces dialog for user shell option #: ../src/guake/prefs.py:67 msgid "" msgstr "" #: ../src/guake/prefs.py:77 msgid "Toggle Guake visibility" msgstr "Guake'i görüntüle veya gizle" #: ../src/guake/prefs.py:81 #, fuzzy msgid "Toggle Hide on Lose Focus" msgstr "Focus kaybedildiğinde gizle" #: ../src/guake/prefs.py:88 msgid "Tab management" msgstr "Sekme yönetimi" #: ../src/guake/prefs.py:90 #, fuzzy msgid "New tab" msgstr "Yeni sekme" #: ../src/guake/prefs.py:92 msgid "Close tab" msgstr "Sekmeyi kapat" #: ../src/guake/prefs.py:94 msgid "Rename current tab" msgstr "Geçerli sekmeyi yeniden adlandır" #: ../src/guake/prefs.py:97 msgid "Navigation" msgstr "Gezinti" #: ../src/guake/prefs.py:99 msgid "Go to previous tab" msgstr "Önceki sekmeye geç" #: ../src/guake/prefs.py:101 msgid "Go to next tab" msgstr "Sonraki sekmeye geç" #: ../src/guake/prefs.py:103 #, fuzzy msgid "Move current tab left" msgstr "Geçerli sekmeyi yeniden adlandır" #: ../src/guake/prefs.py:105 #, fuzzy msgid "Move current tab right" msgstr "Geçerli sekmeyi yeniden adlandır" #: ../src/guake/prefs.py:107 #, fuzzy msgid "Go to first tab" msgstr "Sonraki sekmeye geç" #: ../src/guake/prefs.py:109 #, fuzzy msgid "Go to second tab" msgstr "Sonraki sekmeye geç" #: ../src/guake/prefs.py:111 #, fuzzy msgid "Go to third tab" msgstr "Sonraki sekmeye geç" #: ../src/guake/prefs.py:113 #, fuzzy msgid "Go to fourth tab" msgstr "Sonraki sekmeye geç" #: ../src/guake/prefs.py:115 #, fuzzy msgid "Go to fifth tab" msgstr "Sonraki sekmeye geç" #: ../src/guake/prefs.py:117 #, fuzzy msgid "Go to sixth tab" msgstr "Sonraki sekmeye geç" #: ../src/guake/prefs.py:119 #, fuzzy msgid "Go to seventh tab" msgstr "Sonraki sekmeye geç" #: ../src/guake/prefs.py:121 #, fuzzy msgid "Go to eighth tab" msgstr "Sonraki sekmeye geç" #: ../src/guake/prefs.py:123 #, fuzzy msgid "Go to ninth tab" msgstr "Sonraki sekmeye geç" #: ../src/guake/prefs.py:125 #, fuzzy msgid "Go to tenth tab" msgstr "Sonraki sekmeye geç" #: ../src/guake/prefs.py:127 #, fuzzy msgid "Go to last tab" msgstr "Sonraki sekmeye geç" #: ../src/guake/prefs.py:132 msgid "Zoom out" msgstr "" #: ../src/guake/prefs.py:134 msgid "Zoom in" msgstr "" #: ../src/guake/prefs.py:136 msgid "Zoom in (alternative)" msgstr "" #: ../src/guake/prefs.py:138 msgid "Increase height" msgstr "" #: ../src/guake/prefs.py:140 msgid "Decrease height" msgstr "" #: ../src/guake/prefs.py:142 #, fuzzy msgid "Increase transparency" msgstr "Şeffaflık:" #: ../src/guake/prefs.py:144 #, fuzzy msgid "Decrease transparency" msgstr "Şeffaflık:" #: ../src/guake/prefs.py:146 #, fuzzy msgid "Toggle transparency" msgstr "Şeffaflık:" #: ../src/guake/prefs.py:149 msgid "Clipboard" msgstr "Pano" #: ../src/guake/prefs.py:151 msgid "Copy text to clipboard" msgstr "Metni panoya kopyala" #: ../src/guake/prefs.py:153 msgid "Paste text from clipboard" msgstr "Panodan metni yapıştır" #: ../src/guake/prefs.py:156 msgid "Extra features" msgstr "" #: ../src/guake/prefs.py:159 msgid "Search select text on web" msgstr "" #: ../src/guake/prefs.py:481 msgid "Action" msgstr "İşlev" #: ../src/guake/prefs.py:491 msgid "Shortcut" msgstr "Kısayol" #: ../src/guake/prefs.py:651 ../src/guake/prefs.py:697 msgid "Custom" msgstr "" #: ../src/guake/prefs.py:969 msgid "JSON files" msgstr "" #: ../src/guake/prefs.py:1063 #, python-format msgid "The shortcut \"%s\" is already in use." msgstr "\"%s\" kısayolu zaten kullanılıyor." #: ../src/guake/prefs.py:1064 msgid "Error setting keybinding." msgstr "Kısayol atamasında hata." #: ../src/guake/prefs.py:1076 #, python-format msgid "" "The shortcut \"%s\" cannot be used because it will become impossible to type " "using this key.\n" "\n" "Please try with a key such as Control, Alt or Shift at the same time.\n" msgstr "" "\"%s\" kısayolu kullanılamaz çünkü bu tuş kullanılarak yazmak imkansız " "olur.\n" "\n" "Ctrl, Alt veya Shift tuşları ile beraber kullanmayı deneyin.\n" #: guake/main.py:153 msgid "Return the selected tab label." msgstr "" #: guake/data/prefs.glade:264 msgid "Never" msgstr "" #: guake/data/prefs.glade:265 msgid "With process running" msgstr "" #: guake/data/prefs.glade:266 msgid "Always" msgstr "" #: guake/data/prefs.glade:499 msgid "Refocus if open" msgstr "" #: guake/data/prefs.glade:865 msgid "Custom command file path:" msgstr "" #: guake/data/prefs.glade:1315 msgid "Show resizer" msgstr "" #: guake/data/prefs.glade:1423 msgid "Block" msgstr "" #: guake/data/prefs.glade:1424 msgid "I-Beam" msgstr "" #: guake/data/prefs.glade:1425 msgid "Underline" msgstr "" #: guake/data/prefs.glade:1443 msgid "Follow GTK+ setting" msgstr "" #: guake/data/prefs.glade:1444 msgid "Blink on" msgstr "" #: guake/data/prefs.glade:1445 msgid "Blink off" msgstr "" #: guake/data/prefs.glade:2236 msgid "" "Use the following elements in the open editor command line:\n" "- %(file_path)s: path to the file that has been clicked\n" "- %(line_number)s: if your editor supports it, you can directly open " "the file to a given line number when found on the screen.\n" "\n" "For example, for sublime, use subl %(file_path)s:%(line_number)s\n" "" msgstr "" #: guake/data/prefs.glade:2442 guake/data/prefs.glade:2462 msgid "ASCII DEL" msgstr "" #: guake/data/prefs.glade:2443 guake/data/prefs.glade:2463 msgid "Escape sequence" msgstr "" #: guake/data/prefs.glade:2444 guake/data/prefs.glade:2464 msgid "Control-H" msgstr "" #: guake/data/prefs.glade:2600 msgid "" "In this dialog you can attach your own command or script to various " "guake events" msgstr "" #: guake/data/prefs.glade:2635 msgid "On show:" msgstr "" #: guake/data/prefs.glade:2665 msgid "On start:" msgstr "" #: guake/data/prefs.glade:2714 msgid "Hooks" msgstr "" #: guake/data/guake-prefs.desktop:8 msgid "Configure your Guake sessions" msgstr "" #: guake/data/guake-prefs.desktop:15 guake/data/guake.desktop:18 msgid "guake" msgstr "" #: guake/data/guake-prefs.desktop:20 msgid "Terminal;Utility;" msgstr "" #: guake/data/guake.desktop:10 msgid "Use the command line in a Quake-like terminal" msgstr "" #: guake/data/prefs.glade:770 msgid "Main Window Horizontal Alignment" msgstr "" #: guake/prefs.py:89 msgid "Show and focus Guake window" msgstr "" #: guake/data/prefs.glade:566 msgid "0" msgstr "" #: guake/data/prefs.glade:610 msgid "Main Window Options" msgstr "" #: guake/data/prefs.glade:770 msgid "Horizontal Alignment:" msgstr "" #: guake/data/prefs.glade:855 msgid "Height:" msgstr "" #: guake/data/prefs.glade:868 msgid "Width:" msgstr "" #: guake/data/prefs.glade:913 msgid "Geometry" msgstr "" #: guake/data/prefs.glade:944 msgid "Main Window" msgstr "" #: guake/data/prefs.glade:1197 msgid "Infinite scrolling" msgstr "" #: guake/data/prefs.glade:1219 msgid "Scrollbar" msgstr "" #: guake/data/prefs.glade:1304 msgid "Scroll to Bottom" msgstr "" #: guake/data/prefs.glade:2117 msgid "" "Quick open is a feature allowing you to open a file directly into your " "favorite text editor by clicking on its filename when it appears in your " "terminal. See the list of currently supported text patterns used to extract " "filename below." msgstr "" #: guake/main.py:64 msgid "Show Guake version number and exit" msgstr "" #: guake/data/prefs.glade:93 msgid "Guake properties" msgstr "Guake özellikleri" #: guake/data/prefs.glade:107 msgid "Customize behavior and appearance of Guake!" msgstr "Guake'in davranışlarını ve görünümünü özelleştirin!" #: guake/data/prefs.glade:929 msgid "Displacement in pixels" msgstr "" #: guake/main.py:73 msgid "Enable verbose logging" msgstr "" #: guake/guake_app.py:680 msgid "Quick Open: '{!s}...'" msgstr "" #: guake/guake_app.py:683 msgid "Quick Open: {!s}" msgstr "" #: guake/guake_app.py:691 msgid "Open Link: '{!s}...'" msgstr "" #: guake/guake_app.py:694 msgid "Open Link: {!s}" msgstr "" #: guake/data/prefs.glade:2175 msgid "" "WARNING: your system seems to have PCRE2 disabled for VTE, " "preventing application such as Guake to register \"matchers\" using regular " "expressions. Please contact your distribution to request a new version of " "VTE with PCRE2 enabled ! To use Quick Open, you must select the text " "before using Ctrl+click." msgstr "" #: guake/guake_app.py:680 msgid "Quick Open: {!s}..." msgstr "" #: guake/guake_app.py:691 msgid "Open Link: {!s}..." msgstr "" #: guake/guake_app.py:688 msgid "Quick Open..." msgstr "" #: guake/data/prefs.glade:223 msgid "Start Guake at login" msgstr "" #: guake/data/prefs.glade:363 msgid "Gtk Theme:" msgstr "" #: guake/data/prefs.glade:387 msgid "Prefer dark theme" msgstr "" #: guake/guake_app.py:435 msgid "Custom Commands" msgstr "" #: guake/main.py:184 msgid "" "Specify the tab to rename. Default is 0. Can be used to select tab by UUID." msgstr "" #: guake/main.py:212 msgid "" "Rename the specified tab by --tab-index. Reset to default if TITLE is a " "single dash \"-\"." msgstr "" #: data/search.glade:138 msgid "Search forward" msgstr "" #: data/search.glade:153 msgid "Match case" msgstr "" #: data/search.glade:186 msgid "Current search direction: Backward" msgstr "" #: data/prefs.glade:680 msgid "Set window title to current tab name" msgstr "" #: guake/menus.py:48 msgid "Copy Url" msgstr "" #: guake/menus.py:62 msgid "Split ―" msgstr "" #: guake/menus.py:65 msgid "Split " msgstr "" #: guake/menus.py:68 guake/prefs.py:150 msgid "Close terminal" msgstr "" #: guake/prefs.py:137 msgid "Split management" msgstr "" #: guake/prefs.py:142 msgid "Split tab vertical" msgstr "" #: guake/prefs.py:146 msgid "Split tab horizontal" msgstr "" #: guake/prefs.py:154 msgid "Focus terminal above" msgstr "" #: guake/prefs.py:158 msgid "Focus terminal below" msgstr "" #: guake/prefs.py:162 msgid "Focus terminal on the left" msgstr "" #: guake/prefs.py:166 msgid "Focus terminal on the right" msgstr "" #: guake/prefs.py:170 msgid "Move the terminal split handle up" msgstr "" #: guake/prefs.py:174 msgid "Move the terminal split handle down" msgstr "" #: guake/prefs.py:178 msgid "Move the terminal split handle right" msgstr "" #: guake/prefs.py:182 msgid "Move the terminal split handle left" msgstr "" #: guake/menus.py:65 msgid "Split |" msgstr "" #: guake/menus.py:72 msgid "Save content..." msgstr "" #: data/prefs.glade:1182 msgid "" "This might not work on all shells, make sure that your shell supports the --" "login option" msgstr "" #: guake/prefs.py:128 msgid "New tab in home directory" msgstr "" #: guake/dialogs.py:56 #, python-brace-format msgid " on {0} workspaces" msgstr "" #: guake/main.py:211 msgid "Change Guake palette scheme" msgstr "" #: data/prefs.glade:331 msgid "Use workspace-specific tab sets (requires restart)" msgstr "" #: guake/main.py:175 msgid "Split the selected tab vertically." msgstr "" #: guake/main.py:183 msgid "Split the selected tab horizontally." msgstr "" #: data/prefs.glade:348 msgid "Show close buttons for tabs" msgstr "" #: data/prefs.glade:1682 msgid "Bold text is also bright" msgstr "" #: data/prefs.glade:1682 msgid "Bold text is also bright (VTE >=0.52)" msgstr "" #: guake/menus.py:42 msgid "Save Tabs" msgstr "" #: guake/menus.py:45 msgid "Restore Tabs" msgstr "" #: guake/prefs.py:113 msgid "Search terminal" msgstr "" #: guake/main.py:278 msgid "Save Guake preferences to this filename" msgstr "" #: guake/main.py:286 msgid "Restore Guake preferences from this file" msgstr "" #: guake/guake_app.py:1192 #, python-brace-format msgid "Your session.json file is broken, backup to {session_filename}.bak" msgstr "" #: guake/guake_app.py:1228 #, python-brace-format msgid "" "Your session.json schema is broken, backup to {0}.bak,and error message has " "been saved to {0}.log.err" msgstr "" #: guake/guake_app.py:1239 msgid "Your tabs has been restored!" msgstr "" #: data/prefs.glade:190 msgid "Restore previous session (tabs)" msgstr "" #: data/prefs.glade:204 msgid "Enable notification when restore tabs" msgstr "" #: data/prefs.glade:218 msgid "Automatically save session when the tabs has been modified" msgstr "" #: data/prefs.glade:238 msgid "Startup & Tabs (Experiment)" msgstr "" #: guake/guake_app.py:1192 #, python-brace-format msgid "" "Your {session_filename} file is broken, backup to {session_filename}.bak" msgstr "" #: guake/guake_app.py:1227 #, python-brace-format msgid "" "Your {session_filename} schema is broken, backup to {0}.bak,and error " "message has been saved to {session_filename}.log.err" msgstr "" #: guake/guake_app.py:1227 #, python-brace-format msgid "" "Your {session_filename} schema is broken, backup to {session_filename}.bak," "and error message has been saved to {session_filename}.log.err." msgstr "" #: guake/guake_app.py:1227 #, python-brace-format msgid "" "Your {session_filename} schema is broken, backup to {session_filename}.bak, " "and error message has been saved to {session_filename}.log.err." msgstr "" #: guake/notebook.py:317 msgid "" "You are going to restore *all* the tabs!\n" "which means all your terminals & pages will be replaced.\n" "\n" "Do you want to continue?" msgstr "" #: guake/main.py:296 msgid "Show support infomations" msgstr "" #: guake/guake_app.py:1240 #, python-brace-format msgid "" "Tabs session restore abort.\n" "Your session file ({session_filename}) missing schema_version as key" msgstr "" #: guake/guake_app.py:1252 #, python-brace-format msgid "" "Tabs session restore abort.\n" "Your session file schema version is higher than current version " "({session_file_schema_version} > {current_schema_version})." msgstr "" #: guake/data/prefs.glade:409 msgid "Use workspace-specific tab sets (requires restart, only work on X11)" msgstr "" #~ msgid "key binding error" #~ msgstr "kısayol atama hatası" #~ msgid "Unable to bind global %s key" #~ msgstr "Genel %s tuşu atanamadı" #~ msgid "http://guake.org" #~ msgstr "http://guake.org" #~ msgid "" #~ "Tango\n" #~ "Linux console\n" #~ "XTerm\n" #~ "Rxvt\n" #~ "Custom\n" #~ msgstr "" #~ "Tango\n" #~ "Linux uçbirim\n" #~ "XTerm\n" #~ "Rxvt\n" #~ "Özel\n" #~ msgid "Select a tab" #~ msgstr "Bir sekme seçin" #~ msgid "Rename the selected tab." #~ msgstr "Seçilen sekmeyi yeniden adlandırır." guake-3.6.3/po/uk.po000066400000000000000000001030661346623310400142240ustar00rootroot00000000000000# Translation of Guake to Ukrainian # Переклад Guake українською # Copyright (C) 2013 Guake Translators # This file is distributed under the same license as the Guake package. # # Translators: # Максим Іванов , 2011 # Сергій Дубик , 2011 msgid "" msgstr "" "Project-Id-Version: Guake 0.4.5\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2016-08-18 17:32+0200\n" "PO-Revision-Date: 2018-01-25 20:56+0100\n" "Last-Translator: Сергій Дубик \n" "Language-Team: Ukrainian (Ukraine) (http://www.transifex.com/projects/p/" "guake/language/uk_UA/)\n" "Language: uk_UA\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n" "%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n" "X-Generator: Poedit 2.0.6\n" #: ../guake/data/about.glade.h:1 msgid "About Guake" msgstr "Про Guake" #: ../guake/data/about.glade.h:5 #, fuzzy msgid "" "Guake is an easy to access\n" "terminal based on FPS games terminal" msgstr "" "Guake — термінал швидкого доступу\n" "родом з ігор жанру FPS" #: ../guake/data/guake.glade.h:1 msgid "Copy" msgstr "Копіювати" #: ../guake/data/guake.glade.h:2 msgid "Paste" msgstr "Вставити" #: ../guake/data/guake.glade.h:3 ../src/guake/prefs.py:79 msgid "Toggle Fullscreen" msgstr "Перемикання повноекранного режиму" #: ../guake/data/guake.glade.h:4 msgid "Save to File..." msgstr "" #: ../guake/data/guake.glade.h:5 ../src/guake/prefs.py:85 #, fuzzy msgid "Reset terminal" msgstr "Термінал Guake" #: ../guake/data/guake.glade.h:6 msgid "Find..." msgstr "" #: ../guake/data/guake.glade.h:7 #, fuzzy msgid "New Tab" msgstr "Нова вкладка" #: ../guake/data/guake.glade.h:8 #, fuzzy msgid "Rename Tab" msgstr "Перейменувати вкладку" #: ../guake/data/guake.glade.h:9 msgid "Close Tab" msgstr "Зачинити вкладку" #: ../guake/data/guake.glade.h:10 msgid "Open link..." msgstr "" #: ../guake/data/guake.glade.h:11 msgid "Search on Web" msgstr "" #: ../guake/data/guake.glade.h:12 ../src/guake/prefs.py:83 msgid "Quit" msgstr "Вийти" #: ../guake/data/guake.glade.h:13 msgid "Rename" msgstr "Перейменувати" #: ../guake/data/guake.glade.h:14 msgid "Close" msgstr "Зачинити" #: ../guake/data/guake.glade.h:15 msgid "Guake!" msgstr "Guake!" #: ../guake/data/guake.glade.h:16 #, fuzzy msgid "Add a new tab" msgstr "Додати вкладку" #: ../guake/data/prefs.glade.h:1 msgid "Guake Preferences" msgstr "Налаштування Guake" #: ../guake/data/prefs.glade.h:2 msgid "Guake properties" msgstr "Властивості Guake" #: ../guake/data/prefs.glade.h:3 msgid "" "Customize behavior and appearance of Guake!" msgstr "Налаштування поведінки та вигляду Guake!" #: ../guake/data/prefs.glade.h:4 msgid "" "Path to a bash script that would be automatically executed when Guake " "starts, unless you specify --no-startup-script.\n" "\n" "This would typically use the configuration by command line feature of " "Guake:\n" "\n" "#!/bin/bash\n" "\n" "sleep 5 # it is advised to wait a bit before Guake has been successfully " "started\n" "\n" "guake -r \"main\" -e \"cd ~/projects/myproject/main\"\n" "guake -r \"prod\" -e \"cd ~/projects/myproject/prod\"\n" msgstr "" #: ../guake/data/prefs.glade.h:15 msgid "Enable popup notifications on startup" msgstr "Увімкнути сповіщення при запуску" #: ../guake/data/prefs.glade.h:16 msgid "Show tray icon" msgstr "Показувати значок у системній таці" #: ../guake/data/prefs.glade.h:17 #, fuzzy msgid "Always prompt on quit" msgstr "Перепитувати при виході" #: ../guake/data/prefs.glade.h:18 msgid "_Flash terminal on bell" msgstr "" #: ../guake/data/prefs.glade.h:19 msgid "_Play system alert sound on bell" msgstr "" #: ../guake/data/prefs.glade.h:20 msgid "Path to script executed on Guake start:" msgstr "" #: ../guake/data/prefs.glade.h:21 #, fuzzy msgid "Prompt on close tab:" msgstr "Перепитувати при виході" #: ../guake/data/prefs.glade.h:22 msgid "" "Never\n" "With process running\n" "Always" msgstr "" #: ../guake/data/prefs.glade.h:25 msgid "General" msgstr "Загальне" #: ../guake/data/prefs.glade.h:26 msgid "Bottom align window instead of top align" msgstr "" #: ../guake/data/prefs.glade.h:27 msgid "Appear on mouse display" msgstr "" #: ../guake/data/prefs.glade.h:28 msgid "Appear on display:" msgstr "" #: ../guake/data/prefs.glade.h:29 #, fuzzy msgid "Place tabs on top" msgstr "Триматися поверха" #: ../guake/data/prefs.glade.h:30 #, fuzzy msgid "Placement" msgstr "Палітра" #: ../guake/data/prefs.glade.h:31 msgid "Stay on top" msgstr "Триматися поверха" #: ../guake/data/prefs.glade.h:32 msgid "Use VTE titles for tab names" msgstr "" #: ../guake/data/prefs.glade.h:33 msgid "Max tab name length:" msgstr "" #: ../guake/data/prefs.glade.h:34 msgid "0 means no size limit" msgstr "" #: ../guake/data/prefs.glade.h:35 msgid "Abbreviate directories in tab names" msgstr "" #: ../guake/data/prefs.glade.h:36 msgid "Hide on lose focus" msgstr "Ховатися при втраті фокусу" #: ../guake/data/prefs.glade.h:37 msgid "Show tab bar" msgstr "Показувати панель вкладок" #: ../guake/data/prefs.glade.h:38 #, fuzzy msgid "Start fullscreen" msgstr "Перемикання повноекранного режиму" #: ../guake/data/prefs.glade.h:39 msgid "Main Window" msgstr "Головне вікно" #: ../guake/data/prefs.glade.h:40 msgid "Left" msgstr "" #: ../guake/data/prefs.glade.h:41 msgid "Center" msgstr "" #: ../guake/data/prefs.glade.h:42 msgid "Right" msgstr "" #: ../guake/data/prefs.glade.h:43 #, fuzzy msgid "Main Window Horizontal Alignment" msgstr "Висота головного вікна" #: ../guake/data/prefs.glade.h:44 #, fuzzy msgid "Main Window Height" msgstr "Висота головного вікна" #: ../guake/data/prefs.glade.h:45 #, fuzzy msgid "Main Window Width" msgstr "Висота головного вікна" #: ../guake/data/prefs.glade.h:46 msgid "Custom command file path: " msgstr "" #: ../guake/data/prefs.glade.h:47 msgid "Please select a json file" msgstr "" #: ../guake/data/prefs.glade.h:48 ../src/guake/prefs.py:75 msgid "General" msgstr "Загальне" #: ../guake/data/prefs.glade.h:49 msgid "Default interpreter:" msgstr "Типовий інтерпретатор:" #: ../guake/data/prefs.glade.h:50 msgid "_Run command as a login shell" msgstr "_Запускати команду як оболонку входу" #: ../guake/data/prefs.glade.h:51 msgid "_Open new tab in current directory" msgstr "_Нові вкладки відкриваються в тій же теці" #: ../guake/data/prefs.glade.h:52 msgid "Shell" msgstr "Оболонка" #: ../guake/data/prefs.glade.h:53 msgid "Shell" msgstr "" #: ../guake/data/prefs.glade.h:54 msgid "Show scrollbar" msgstr "Показувати смужку прокрутки" #: ../guake/data/prefs.glade.h:55 msgid "Scrollback lines:" msgstr "Рядків в історії прокручування:" #: ../guake/data/prefs.glade.h:56 msgid "On output" msgstr "При текстовому виводі" #: ../guake/data/prefs.glade.h:57 msgid "On key stroke" msgstr "При натисненнях клавіш" #: ../guake/data/prefs.glade.h:58 msgid "Scroll" msgstr "Прокручувати" #: ../guake/data/prefs.glade.h:59 msgid "Scrolling" msgstr "Прокручування" #: ../guake/data/prefs.glade.h:60 msgid "Use the system fixed width font" msgstr "Використовувати системний моноширинний шрифт" #: ../guake/data/prefs.glade.h:61 msgid "Font:" msgstr "Шрифт:" #: ../guake/data/prefs.glade.h:62 msgid "Choose some font" msgstr "Виберіть шрифт" #: ../guake/data/prefs.glade.h:63 msgid "Text color:" msgstr "Колір тексту:" #: ../guake/data/prefs.glade.h:64 msgid "Background color:" msgstr "Колір тла:" #: ../guake/data/prefs.glade.h:65 msgid "Cursor shape:" msgstr "" #: ../guake/data/prefs.glade.h:66 msgid "" "Block\n" "I-Beam\n" "Underline" msgstr "" #: ../guake/data/prefs.glade.h:69 msgid "" "Follow GTK+ setting\n" "Blink on\n" "Blink off" msgstr "" #: ../guake/data/prefs.glade.h:72 msgid "Cursor blink mode:" msgstr "" #: ../guake/data/prefs.glade.h:73 msgid "Allow bold font" msgstr "" #: ../guake/data/prefs.glade.h:74 msgid "Palette" msgstr "Палітра" #: ../guake/data/prefs.glade.h:75 msgid "Built-in schemes:" msgstr "Вбудовані схеми:" #: ../guake/data/prefs.glade.h:76 msgid "Color palette:" msgstr "Палітра:" #: ../guake/data/prefs.glade.h:77 #, fuzzy msgid "Font color" msgstr "Колір тексту:" #: ../guake/data/prefs.glade.h:78 #, fuzzy msgid "Background color" msgstr "Колір тла:" #: ../guake/data/prefs.glade.h:79 msgid "Use font and background color from the palette" msgstr "" #: ../guake/data/prefs.glade.h:80 msgid "Demo:" msgstr "" #: ../guake/data/prefs.glade.h:81 msgid "Effects" msgstr "Ефекти" #: ../guake/data/prefs.glade.h:82 msgid "Transparency:" msgstr "Прозорість:" #: ../guake/data/prefs.glade.h:83 msgid "Background image:" msgstr "Фонове зображення:" #: ../guake/data/prefs.glade.h:84 ../src/guake/prefs.py:130 msgid "Appearance" msgstr "Зовнішній вигляд" #: ../guake/data/prefs.glade.h:85 msgid "" "Quick open is a feature allowing you to open a file directly into " "your favorite text editor by clicking on its filename when it appears in " "your terminal. See the list of currently supported text patterns used to " "extract filename below." msgstr "" #: ../guake/data/prefs.glade.h:86 msgid "Enable Quick Open when Ctrl+clicking on a filename in the terminal" msgstr "" #: ../guake/data/prefs.glade.h:87 msgid "Editor command line:" msgstr "" #: ../guake/data/prefs.glade.h:89 #, no-c-format msgid "" "Use the following elements in the open editor command line:\n" " - %(file_path)s: path to the file that has been clicked\n" " - %(line_number)s: if your editor supports it, you can directly open " "the file to a given line number when found on the screen.\n" "\n" "For example, for sublime, use subl %(file_path)s:%(line_number)s\n" "" msgstr "" #: ../guake/data/prefs.glade.h:95 msgid "Quick open in current terminal" msgstr "" #: ../guake/data/prefs.glade.h:96 msgid "" "Here is the list of supported patterns: (to add your own, please contact the " "Guake's authors)" msgstr "" #: ../guake/data/prefs.glade.h:97 #, fuzzy msgid "Quick Open" msgstr "Палітра" #: ../guake/data/prefs.glade.h:98 msgid "Quick Open" msgstr "" #: ../guake/data/prefs.glade.h:99 msgid "" "To change a shortcut simply click on its name.\n" "To disable a shortcut, press the \"Backspace\" key." msgstr "" #: ../guake/data/prefs.glade.h:101 msgid "Keyboard shortcuts" msgstr "Комбінації клавіш" #: ../guake/data/prefs.glade.h:102 msgid "" "Note: These options may cause some applications to behave " "incorrectly. They are only here to allow you to work around certain " "applications and operating systems that expect different terminal behavior." msgstr "" "Примітка: Ці параметри можуть зламати коректну роботу " "певних програм. Вони тут лише для того, щоб ви могли підлаштувати поведінку " "термінала під певні програми та операційні системи." #: ../guake/data/prefs.glade.h:103 msgid "" "ASCII DEL\n" "Escape sequence\n" "Control-H" msgstr "" "ASCII DEL\n" "Керуюча послідовність\n" "Control-H" #: ../guake/data/prefs.glade.h:106 msgid "_Backspace key generates:" msgstr "_Клавіша Backspace генерує:" #: ../guake/data/prefs.glade.h:107 msgid "_Delete key generates:" msgstr "К_лавіша Delete генерує:" #: ../guake/data/prefs.glade.h:108 msgid "_Reset Compatibility Options to Defaults" msgstr "_Скинути опції сумісності на типові" #: ../guake/data/prefs.glade.h:109 msgid "Keyboard compatibility" msgstr "Сумісність клавіатури" #: ../guake/data/prefs.glade.h:110 msgid "Compatibility" msgstr "Сумісність" #: ../src/guake/about.py:47 ../src/guake/gconfhandler.py:439 #: ../src/guake/guake_app.py:181 ../src/guake/guake_app.py:378 msgid "Guake Terminal" msgstr "Термінал Guake" #: ../src/guake/gconfhandler.py:369 ../src/guake/guake_app.py:1386 #, fuzzy msgid "Terminal" msgstr "Термінал %s" #: ../src/guake/gconfhandler.py:440 #, python-format msgid "" "A problem happened when binding %s key.\n" "Please use Guake Preferences dialog to choose another key" msgstr "" "Виникла проблема при спробі призначити клавіатурне скорочення %s. " "Будь ласка, скористайтесь діалогом налаштувань, щоб вибрати іншу гарячу " "клавішу (значок у таці був задіяний)." #: ../src/guake/guake_app.py:132 #, fuzzy msgid "Do you want to close the tab?" msgstr "Ви дійсно хочете вийти з Guake!?" #: ../src/guake/guake_app.py:135 #, fuzzy msgid "Do you really want to quit Guake?" msgstr "Ви дійсно хочете вийти з Guake!?" #: ../src/guake/guake_app.py:137 #, fuzzy msgid " and one tab open" msgstr "Додати вкладку" #: ../src/guake/guake_app.py:139 #, python-brace-format msgid " and {0} tabs open" msgstr "" #: ../src/guake/guake_app.py:142 #, fuzzy msgid "There are no processes running" msgstr "Один процес досі виконується." #: ../src/guake/guake_app.py:144 #, fuzzy msgid "There is a process still running" msgstr "Один процес досі виконується." #: ../src/guake/guake_app.py:146 #, fuzzy, python-brace-format msgid "There are {0} processes still running" msgstr "%d процеси(ів) досі виконуються." #: ../src/guake/guake_app.py:186 msgid "guake-indicator" msgstr "" #: ../src/guake/guake_app.py:186 msgid "guake-tray" msgstr "" #: ../src/guake/guake_app.py:190 msgid "Show" msgstr "" #: ../src/guake/guake_app.py:379 #, python-format msgid "" "Guake is now running,\n" "press {!s} to use it." msgstr "" "Guake запущено,\n" "натискайте {!s} для його виклику." #: ../src/guake/guake_app.py:670 #, python-format msgid "Search on Web: '%s'" msgstr "" #: ../src/guake/guake_app.py:675 msgid "Search on Web (no selection)" msgstr "" #: ../src/guake/guake_app.py:683 msgid "Open Link: '{}...'" msgstr "" #: ../src/guake/guake_app.py:685 msgid "Open Link: {}" msgstr "" #: ../src/guake/guake_app.py:688 msgid "Open Link..." msgstr "" #: ../src/guake/guake_app.py:1425 msgid "Rename tab" msgstr "Перейменувати вкладку" #: ../src/guake/guake_app.py:1736 msgid "Save to..." msgstr "" #: ../src/guake/guake_app.py:1743 ../src/guake/prefs.py:973 msgid "All files" msgstr "" #: ../src/guake/guake_app.py:1748 msgid "Text and Logs" msgstr "" #: ../src/guake/guake_app.py:1766 msgid "Find" msgstr "" #: ../src/guake/guake_app.py:1768 msgid "Forward" msgstr "" #: ../src/guake/guake_app.py:1769 msgid "Backward" msgstr "" #: ../src/guake/main.py:68 msgid "Put Guake in fullscreen mode" msgstr "" #: ../src/guake/main.py:72 msgid "Toggles the visibility of the terminal window" msgstr "Перемикнути видимість головного вікна" #: ../src/guake/main.py:76 #, fuzzy msgid "Shows Guake main window" msgstr "Показати вікно налаштувань Guake" #: ../src/guake/main.py:80 #, fuzzy msgid "Hides Guake main window" msgstr "Показати вікно налаштувань Guake" #: ../src/guake/main.py:84 msgid "Shows Guake preference window" msgstr "Показати вікно налаштувань Guake" #: ../src/guake/main.py:88 msgid "Shows Guake's about info" msgstr "Показати «Про Guake»" #: ../src/guake/main.py:92 #, fuzzy msgid "Add a new tab (with current directory set to NEW_TAB)" msgstr "_Нові вкладки відкриваються в тій же теці" #: ../src/guake/main.py:96 msgid "Select a tab (SELECT_TAB is the index of the tab)" msgstr "" #: ../src/guake/main.py:100 msgid "Return the selected tab index." msgstr "Повернути індекс вибраної вкладки." #: ../src/guake/main.py:104 msgid "Execute an arbitrary command in the selected tab." msgstr "Виконати вказану команду у поточній вкладці." #: ../src/guake/main.py:108 msgid "Specify the tab to rename. Default is 0." msgstr "" #: ../src/guake/main.py:112 msgid "Set the hexadecimal (#rrggbb) background color of the selected tab." msgstr "" #: ../src/guake/main.py:117 msgid "Set the hexadecimal (#rrggbb) foreground color of the selected tab." msgstr "" #: ../src/guake/main.py:123 msgid "" "Rename the specified tab. Reset to default if TITLE is a single dash \"-\"." msgstr "" #: ../src/guake/main.py:129 msgid "" "Rename the current tab. Reset to default if TITLE is a single dash \"-\"." msgstr "" #: ../src/guake/main.py:134 msgid "Says to Guake go away =(" msgstr "Наказує Guake зникнути =(" #: ../src/guake/main.py:138 msgid "Do not execute the start up script" msgstr "" #: ../src/guake/main.py:235 msgid "Guake can not init!" msgstr "Guake не може ініціалізуватись!" #: ../src/guake/main.py:236 #, fuzzy msgid "" "Gconf Error.\n" "Have you installed guake.schemas properly?" msgstr "" "Помилка Gconf.\n" "Чи правильно ви встановили guake.schemas?" #. string to show in prefereces dialog for user shell option #: ../src/guake/prefs.py:67 msgid "" msgstr "<оболонка користувача>" #: ../src/guake/prefs.py:77 msgid "Toggle Guake visibility" msgstr "Показувати й ховати Guake" #: ../src/guake/prefs.py:81 #, fuzzy msgid "Toggle Hide on Lose Focus" msgstr "Ховатися при втраті фокусу" #: ../src/guake/prefs.py:88 msgid "Tab management" msgstr "Керування вкладками" #: ../src/guake/prefs.py:90 #, fuzzy msgid "New tab" msgstr "Нова вкладка" #: ../src/guake/prefs.py:92 msgid "Close tab" msgstr "Закрити вкладку" #: ../src/guake/prefs.py:94 msgid "Rename current tab" msgstr "Перейменувати поточну вкладку" #: ../src/guake/prefs.py:97 msgid "Navigation" msgstr "Навігація" #: ../src/guake/prefs.py:99 msgid "Go to previous tab" msgstr "Перейти до попередньої вкладки" #: ../src/guake/prefs.py:101 msgid "Go to next tab" msgstr "Перейти до наступної вкладки" #: ../src/guake/prefs.py:103 #, fuzzy msgid "Move current tab left" msgstr "Перейменувати поточну вкладку" #: ../src/guake/prefs.py:105 #, fuzzy msgid "Move current tab right" msgstr "Перейменувати поточну вкладку" #: ../src/guake/prefs.py:107 #, fuzzy msgid "Go to first tab" msgstr "Перейти до наступної вкладки" #: ../src/guake/prefs.py:109 #, fuzzy msgid "Go to second tab" msgstr "Перейти до наступної вкладки" #: ../src/guake/prefs.py:111 #, fuzzy msgid "Go to third tab" msgstr "Перейти до наступної вкладки" #: ../src/guake/prefs.py:113 #, fuzzy msgid "Go to fourth tab" msgstr "Перейти до наступної вкладки" #: ../src/guake/prefs.py:115 #, fuzzy msgid "Go to fifth tab" msgstr "Перейти до наступної вкладки" #: ../src/guake/prefs.py:117 #, fuzzy msgid "Go to sixth tab" msgstr "Перейти до наступної вкладки" #: ../src/guake/prefs.py:119 #, fuzzy msgid "Go to seventh tab" msgstr "Перейти до наступної вкладки" #: ../src/guake/prefs.py:121 #, fuzzy msgid "Go to eighth tab" msgstr "Перейти до наступної вкладки" #: ../src/guake/prefs.py:123 #, fuzzy msgid "Go to ninth tab" msgstr "Перейти до наступної вкладки" #: ../src/guake/prefs.py:125 #, fuzzy msgid "Go to tenth tab" msgstr "Перейти до наступної вкладки" #: ../src/guake/prefs.py:127 #, fuzzy msgid "Go to last tab" msgstr "Перейти до наступної вкладки" #: ../src/guake/prefs.py:132 msgid "Zoom out" msgstr "" #: ../src/guake/prefs.py:134 msgid "Zoom in" msgstr "" #: ../src/guake/prefs.py:136 msgid "Zoom in (alternative)" msgstr "" #: ../src/guake/prefs.py:138 msgid "Increase height" msgstr "" #: ../src/guake/prefs.py:140 msgid "Decrease height" msgstr "" #: ../src/guake/prefs.py:142 #, fuzzy msgid "Increase transparency" msgstr "Прозорість:" #: ../src/guake/prefs.py:144 #, fuzzy msgid "Decrease transparency" msgstr "Прозорість:" #: ../src/guake/prefs.py:146 #, fuzzy msgid "Toggle transparency" msgstr "Прозорість:" #: ../src/guake/prefs.py:149 msgid "Clipboard" msgstr "Буфер обміну" #: ../src/guake/prefs.py:151 msgid "Copy text to clipboard" msgstr "Скопіювати текст до буфера обміну" #: ../src/guake/prefs.py:153 msgid "Paste text from clipboard" msgstr "Вставити текст з буфера обміну" #: ../src/guake/prefs.py:156 msgid "Extra features" msgstr "" #: ../src/guake/prefs.py:159 msgid "Search select text on web" msgstr "" #: ../src/guake/prefs.py:481 msgid "Action" msgstr "Дія" #: ../src/guake/prefs.py:491 msgid "Shortcut" msgstr "Комбінація клавіш" #: ../src/guake/prefs.py:651 ../src/guake/prefs.py:697 msgid "Custom" msgstr "" #: ../src/guake/prefs.py:969 msgid "JSON files" msgstr "" #: ../src/guake/prefs.py:1063 #, python-format msgid "The shortcut \"%s\" is already in use." msgstr "Комбінація „%s“ вже зайнята." #: ../src/guake/prefs.py:1064 msgid "Error setting keybinding." msgstr "Не вдалося створити прив’язку до клавіш." #: ../src/guake/prefs.py:1076 #, python-format msgid "" "The shortcut \"%s\" cannot be used because it will become impossible to type " "using this key.\n" "\n" "Please try with a key such as Control, Alt or Shift at the same time.\n" msgstr "" "Не можна прив’язувати дії до комбінації клавіш „%s“, тому що це завадить " "набору з клавіатури.\n" "\n" "Будь ласка, спробуйте щось інше. Комбінування з клавішами Control, Alt або " "Shift може допомогти.\n" #: guake/main.py:153 msgid "Return the selected tab label." msgstr "" #: guake/data/prefs.glade:264 msgid "Never" msgstr "" #: guake/data/prefs.glade:265 msgid "With process running" msgstr "" #: guake/data/prefs.glade:266 msgid "Always" msgstr "" #: guake/data/prefs.glade:499 msgid "Refocus if open" msgstr "" #: guake/data/prefs.glade:865 msgid "Custom command file path:" msgstr "" #: guake/data/prefs.glade:1315 msgid "Show resizer" msgstr "" #: guake/data/prefs.glade:1423 msgid "Block" msgstr "" #: guake/data/prefs.glade:1424 msgid "I-Beam" msgstr "" #: guake/data/prefs.glade:1425 msgid "Underline" msgstr "" #: guake/data/prefs.glade:1443 msgid "Follow GTK+ setting" msgstr "" #: guake/data/prefs.glade:1444 msgid "Blink on" msgstr "" #: guake/data/prefs.glade:1445 msgid "Blink off" msgstr "" #: guake/data/prefs.glade:2236 msgid "" "Use the following elements in the open editor command line:\n" "- %(file_path)s: path to the file that has been clicked\n" "- %(line_number)s: if your editor supports it, you can directly open " "the file to a given line number when found on the screen.\n" "\n" "For example, for sublime, use subl %(file_path)s:%(line_number)s\n" "" msgstr "" #: guake/data/prefs.glade:2442 guake/data/prefs.glade:2462 msgid "ASCII DEL" msgstr "" #: guake/data/prefs.glade:2443 guake/data/prefs.glade:2463 msgid "Escape sequence" msgstr "" #: guake/data/prefs.glade:2444 guake/data/prefs.glade:2464 msgid "Control-H" msgstr "" #: guake/data/prefs.glade:2600 msgid "" "In this dialog you can attach your own command or script to various " "guake events" msgstr "" #: guake/data/prefs.glade:2635 msgid "On show:" msgstr "" #: guake/data/prefs.glade:2665 msgid "On start:" msgstr "" #: guake/data/prefs.glade:2714 msgid "Hooks" msgstr "" #: guake/data/guake-prefs.desktop:8 msgid "Configure your Guake sessions" msgstr "" #: guake/data/guake-prefs.desktop:15 guake/data/guake.desktop:18 msgid "guake" msgstr "" #: guake/data/guake-prefs.desktop:20 msgid "Terminal;Utility;" msgstr "" #: guake/data/guake.desktop:10 msgid "Use the command line in a Quake-like terminal" msgstr "" #: guake/data/prefs.glade:770 msgid "Main Window Horizontal Alignment" msgstr "" #: guake/prefs.py:89 msgid "Show and focus Guake window" msgstr "" #: guake/data/prefs.glade:566 msgid "0" msgstr "" #: guake/data/prefs.glade:610 msgid "Main Window Options" msgstr "" #: guake/data/prefs.glade:770 msgid "Horizontal Alignment:" msgstr "" #: guake/data/prefs.glade:855 msgid "Height:" msgstr "" #: guake/data/prefs.glade:868 msgid "Width:" msgstr "" #: guake/data/prefs.glade:913 msgid "Geometry" msgstr "" #: guake/data/prefs.glade:944 msgid "Main Window" msgstr "" #: guake/data/prefs.glade:1197 msgid "Infinite scrolling" msgstr "" #: guake/data/prefs.glade:1219 msgid "Scrollbar" msgstr "" #: guake/data/prefs.glade:1304 msgid "Scroll to Bottom" msgstr "" #: guake/data/prefs.glade:2117 msgid "" "Quick open is a feature allowing you to open a file directly into your " "favorite text editor by clicking on its filename when it appears in your " "terminal. See the list of currently supported text patterns used to extract " "filename below." msgstr "" #: guake/main.py:64 msgid "Show Guake version number and exit" msgstr "" #: guake/data/prefs.glade:93 msgid "Guake properties" msgstr "Властивості Guake" #: guake/data/prefs.glade:107 msgid "Customize behavior and appearance of Guake!" msgstr "Налаштування поведінки та вигляду Guake!" #: guake/data/prefs.glade:929 msgid "Displacement in pixels" msgstr "" #: guake/main.py:73 msgid "Enable verbose logging" msgstr "" #: guake/guake_app.py:680 msgid "Quick Open: '{!s}...'" msgstr "" #: guake/guake_app.py:683 msgid "Quick Open: {!s}" msgstr "" #: guake/guake_app.py:691 msgid "Open Link: '{!s}...'" msgstr "" #: guake/guake_app.py:694 msgid "Open Link: {!s}" msgstr "" #: guake/data/prefs.glade:2175 msgid "" "WARNING: your system seems to have PCRE2 disabled for VTE, " "preventing application such as Guake to register \"matchers\" using regular " "expressions. Please contact your distribution to request a new version of " "VTE with PCRE2 enabled ! To use Quick Open, you must select the text " "before using Ctrl+click." msgstr "" #: guake/guake_app.py:680 msgid "Quick Open: {!s}..." msgstr "" #: guake/guake_app.py:691 msgid "Open Link: {!s}..." msgstr "" #: guake/guake_app.py:688 msgid "Quick Open..." msgstr "" #: guake/data/prefs.glade:223 msgid "Start Guake at login" msgstr "" #: guake/data/prefs.glade:363 msgid "Gtk Theme:" msgstr "" #: guake/data/prefs.glade:387 msgid "Prefer dark theme" msgstr "" #: guake/guake_app.py:435 msgid "Custom Commands" msgstr "" #: guake/main.py:184 msgid "" "Specify the tab to rename. Default is 0. Can be used to select tab by UUID." msgstr "" #: guake/main.py:212 msgid "" "Rename the specified tab by --tab-index. Reset to default if TITLE is a " "single dash \"-\"." msgstr "" #: data/search.glade:138 msgid "Search forward" msgstr "" #: data/search.glade:153 msgid "Match case" msgstr "" #: data/search.glade:186 msgid "Current search direction: Backward" msgstr "" #: data/prefs.glade:680 msgid "Set window title to current tab name" msgstr "" #: guake/menus.py:48 msgid "Copy Url" msgstr "" #: guake/menus.py:62 msgid "Split ―" msgstr "" #: guake/menus.py:65 msgid "Split " msgstr "" #: guake/menus.py:68 guake/prefs.py:150 msgid "Close terminal" msgstr "" #: guake/prefs.py:137 msgid "Split management" msgstr "" #: guake/prefs.py:142 msgid "Split tab vertical" msgstr "" #: guake/prefs.py:146 msgid "Split tab horizontal" msgstr "" #: guake/prefs.py:154 msgid "Focus terminal above" msgstr "" #: guake/prefs.py:158 msgid "Focus terminal below" msgstr "" #: guake/prefs.py:162 msgid "Focus terminal on the left" msgstr "" #: guake/prefs.py:166 msgid "Focus terminal on the right" msgstr "" #: guake/prefs.py:170 msgid "Move the terminal split handle up" msgstr "" #: guake/prefs.py:174 msgid "Move the terminal split handle down" msgstr "" #: guake/prefs.py:178 msgid "Move the terminal split handle right" msgstr "" #: guake/prefs.py:182 msgid "Move the terminal split handle left" msgstr "" #: guake/menus.py:65 msgid "Split |" msgstr "" #: guake/menus.py:72 msgid "Save content..." msgstr "" #: data/prefs.glade:1182 msgid "" "This might not work on all shells, make sure that your shell supports the --" "login option" msgstr "" #: guake/prefs.py:128 msgid "New tab in home directory" msgstr "" #: guake/dialogs.py:56 #, python-brace-format msgid " on {0} workspaces" msgstr "" #: guake/main.py:211 msgid "Change Guake palette scheme" msgstr "" #: data/prefs.glade:331 msgid "Use workspace-specific tab sets (requires restart)" msgstr "" #: guake/main.py:175 msgid "Split the selected tab vertically." msgstr "" #: guake/main.py:183 msgid "Split the selected tab horizontally." msgstr "" #: data/prefs.glade:348 msgid "Show close buttons for tabs" msgstr "" #: data/prefs.glade:1682 msgid "Bold text is also bright" msgstr "" #: data/prefs.glade:1682 msgid "Bold text is also bright (VTE >=0.52)" msgstr "" #: guake/menus.py:42 msgid "Save Tabs" msgstr "" #: guake/menus.py:45 msgid "Restore Tabs" msgstr "" #: guake/prefs.py:113 msgid "Search terminal" msgstr "" #: guake/main.py:278 msgid "Save Guake preferences to this filename" msgstr "" #: guake/main.py:286 msgid "Restore Guake preferences from this file" msgstr "" #: guake/guake_app.py:1192 #, python-brace-format msgid "Your session.json file is broken, backup to {session_filename}.bak" msgstr "" #: guake/guake_app.py:1228 #, python-brace-format msgid "" "Your session.json schema is broken, backup to {0}.bak,and error message has " "been saved to {0}.log.err" msgstr "" #: guake/guake_app.py:1239 msgid "Your tabs has been restored!" msgstr "" #: data/prefs.glade:190 msgid "Restore previous session (tabs)" msgstr "" #: data/prefs.glade:204 msgid "Enable notification when restore tabs" msgstr "" #: data/prefs.glade:218 msgid "Automatically save session when the tabs has been modified" msgstr "" #: data/prefs.glade:238 msgid "Startup & Tabs (Experiment)" msgstr "" #: guake/guake_app.py:1192 #, python-brace-format msgid "" "Your {session_filename} file is broken, backup to {session_filename}.bak" msgstr "" #: guake/guake_app.py:1227 #, python-brace-format msgid "" "Your {session_filename} schema is broken, backup to {0}.bak,and error " "message has been saved to {session_filename}.log.err" msgstr "" #: guake/guake_app.py:1227 #, python-brace-format msgid "" "Your {session_filename} schema is broken, backup to {session_filename}.bak," "and error message has been saved to {session_filename}.log.err." msgstr "" #: guake/guake_app.py:1227 #, python-brace-format msgid "" "Your {session_filename} schema is broken, backup to {session_filename}.bak, " "and error message has been saved to {session_filename}.log.err." msgstr "" #: guake/notebook.py:317 msgid "" "You are going to restore *all* the tabs!\n" "which means all your terminals & pages will be replaced.\n" "\n" "Do you want to continue?" msgstr "" #: guake/main.py:296 msgid "Show support infomations" msgstr "" #: guake/guake_app.py:1240 #, python-brace-format msgid "" "Tabs session restore abort.\n" "Your session file ({session_filename}) missing schema_version as key" msgstr "" #: guake/guake_app.py:1252 #, python-brace-format msgid "" "Tabs session restore abort.\n" "Your session file schema version is higher than current version " "({session_file_schema_version} > {current_schema_version})." msgstr "" #: guake/data/prefs.glade:409 msgid "Use workspace-specific tab sets (requires restart, only work on X11)" msgstr "" #~ msgid "key binding error" #~ msgstr "не вдалося створити прив’язку клавіш" #~ msgid "Unable to bind global %s key" #~ msgstr "Не вийшло створити прив’язку глобальної комбінації клавіш %s" #~ msgid "http://guake.org" #~ msgstr "http://guake.org" #~ msgid "" #~ "Tango\n" #~ "Linux console\n" #~ "XTerm\n" #~ "Rxvt\n" #~ "Custom\n" #~ msgstr "" #~ "Tango\n" #~ "Консоль Linux\n" #~ "XTerm\n" #~ "Rxvt\n" #~ "Інша\n" #~ msgid "Select a tab" #~ msgstr "Вибрати вкладку" #~ msgid "Rename the selected tab." #~ msgstr "Перейменувати вибрану вкладку." guake-3.6.3/po/zh_CN.po000066400000000000000000001066251346623310400146120ustar00rootroot00000000000000# Translation of Guake to Chinese # Copyright (C) 2013 Guake Translators # This file is distributed under the same license as the Guake package. # # Translators: # 甘露(Gan Lu) , 2010. # 吴新宇(Xinyu Ng) , 2016. # 庄秋彬(zqb-all) , 2017. msgid "" msgstr "" "Project-Id-Version: Guake 0.4.5\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2017-05-20 23:56+0800\n" "PO-Revision-Date: 2018-10-08 09:23+0000\n" "Last-Translator: 庄秋彬 \n" "Language-Team: Chinese (Simplified) \n" "Language: zh_CN\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=1; plural=0;\n" "X-Generator: Weblate 3.2\n" #: ../guake/data/about.glade.h:1 msgid "About Guake" msgstr "关于 Guake" #: ../guake/data/about.glade.h:5 msgid "" "Guake is an easy to access\n" "terminal based on FPS games terminal" msgstr "" "Guake 是一个易于使用的\n" "基于 fps 游戏终端的终端" #: ../guake/data/guake.glade.h:1 msgid "Copy" msgstr "复制" #: ../guake/data/guake.glade.h:2 msgid "Paste" msgstr "粘贴" #: ../guake/data/guake.glade.h:3 ../src/guake/prefs.py:79 msgid "Toggle Fullscreen" msgstr "切换全屏" #: ../guake/data/guake.glade.h:4 msgid "Save to File..." msgstr "保存到文件..." #: ../guake/data/guake.glade.h:5 ../src/guake/prefs.py:85 msgid "Reset terminal" msgstr "重置终端" #: ../guake/data/guake.glade.h:6 msgid "Find..." msgstr "查找..." #: ../guake/data/guake.glade.h:7 msgid "New Tab" msgstr "新标签页" #: ../guake/data/guake.glade.h:8 msgid "Rename Tab" msgstr "重命名标签页" #: ../guake/data/guake.glade.h:9 msgid "Close Tab" msgstr "关闭标签页" #: ../guake/data/guake.glade.h:10 msgid "Open link..." msgstr "打开链接..." #: ../guake/data/guake.glade.h:11 msgid "Search on Web" msgstr "使用搜索引擎搜索" #: ../guake/data/guake.glade.h:12 ../src/guake/prefs.py:83 msgid "Quit" msgstr "退出" #: ../guake/data/guake.glade.h:13 msgid "Rename" msgstr "重命名" #: ../guake/data/guake.glade.h:14 msgid "Close" msgstr "关闭" #: ../guake/data/guake.glade.h:15 msgid "Guake!" msgstr "Guake!" #: ../guake/data/guake.glade.h:16 msgid "Add a new tab" msgstr "新增标签页" #: ../guake/data/prefs.glade.h:1 msgid "Guake Preferences" msgstr "Guake 首选项" #: ../guake/data/prefs.glade.h:2 msgid "Guake properties" msgstr "Guake 属性" #: ../guake/data/prefs.glade.h:3 msgid "" "Customize behavior and appearance of Guake!" msgstr "自定义 Guake 的行为和外观!" #: ../guake/data/prefs.glade.h:4 msgid "" "Path to a bash script that would be automatically executed when Guake " "starts, unless you specify --no-startup-script.\n" "\n" "This would typically use the configuration by command line feature of " "Guake:\n" "\n" "#!/bin/bash\n" "\n" "sleep 5 # it is advised to wait a bit before Guake has been successfully " "started\n" "\n" "guake -r \"main\" -e \"cd ~/projects/myproject/main\"\n" "guake -r \"prod\" -e \"cd ~/projects/myproject/prod\"\n" msgstr "" "此路径指定的脚本将会在Guake启动时自动执行,除非启动时带上参数禁止启动脚本 --" "no-startup-script.\n" "\n" "这通常用于基于命令行配置Guake:\n" "\n" "#!/bin/bash\n" "\n" "sleep 5 # 等待一会以确保Guake成功启动started\n" "\n" "guake -r \"main\" -e \"cd ~/projects/myproject/main\"\n" "guake -r \"prod\" -e \"cd ~/projects/myproject/prod\"\n" #: ../guake/data/prefs.glade.h:15 msgid "Enable popup notifications on startup" msgstr "启用启动时的弹出通知" #: ../guake/data/prefs.glade.h:16 msgid "Show tray icon" msgstr "显示系统托盘图标" #: ../guake/data/prefs.glade.h:17 msgid "Always prompt on quit" msgstr "退出时提示" #: ../guake/data/prefs.glade.h:18 msgid "_Flash terminal on bell" msgstr "告警时闪屏" #: ../guake/data/prefs.glade.h:19 msgid "_Play system alert sound on bell" msgstr "告警时播放系统告警音" #: ../guake/data/prefs.glade.h:20 msgid "Path to script executed on Guake start:" msgstr "Guake启动时执行脚本路径:" #: ../guake/data/prefs.glade.h:21 msgid "Prompt on close tab:" msgstr "退出时提示:" #: ../guake/data/prefs.glade.h:22 msgid "" "Never\n" "With process running\n" "Always" msgstr "" "从不\n" "有进程正在运行时\n" "总是" #: ../guake/data/prefs.glade.h:25 msgid "General" msgstr "常规" #: ../guake/data/prefs.glade.h:26 msgid "Bottom align window instead of top align" msgstr "窗口停靠到底部" #: ../guake/data/prefs.glade.h:27 msgid "Appear on mouse display" msgstr "在光标所在显示器显示" #: ../guake/data/prefs.glade.h:28 msgid "Appear on display:" msgstr "选择显示器:" #: ../guake/data/prefs.glade.h:29 msgid "Place tabs on top" msgstr "将标签栏置于上方" #: ../guake/data/prefs.glade.h:30 msgid "Placement" msgstr "位置" #: ../guake/data/prefs.glade.h:31 msgid "Stay on top" msgstr "保持在最前端" #: ../guake/data/prefs.glade.h:32 msgid "Hide on lose focus" msgstr "失去焦点后隐藏" #: ../guake/data/prefs.glade.h:33 msgid "Show tab bar" msgstr "显示标签栏" #: ../guake/data/prefs.glade.h:34 msgid "Start fullscreen" msgstr "启动默认全屏" #: ../guake/data/prefs.glade.h:35 msgid "Use VTE titles for tab names" msgstr "使用VTE标题作为标签名" #: ../guake/data/prefs.glade.h:36 msgid "Abbreviate directories in tab names" msgstr "在标签名中缩写目录" #: ../guake/data/prefs.glade.h:37 msgid "Max tab name length:" msgstr "最大标签名长度:" #: ../guake/data/prefs.glade.h:38 msgid "Main Window" msgstr "主窗口" #: ../guake/data/prefs.glade.h:39 msgid "Left" msgstr "左" #: ../guake/data/prefs.glade.h:40 msgid "Center" msgstr "中" #: ../guake/data/prefs.glade.h:41 msgid "Right" msgstr "右" #: ../guake/data/prefs.glade.h:42 msgid "Main Window Horizontal Alignment" msgstr "主窗口对齐" #: ../guake/data/prefs.glade.h:43 msgid "Main Window Height" msgstr "主窗口高度" #: ../guake/data/prefs.glade.h:44 msgid "Main Window Width" msgstr "主窗口宽度" #: ../guake/data/prefs.glade.h:45 msgid "Custom command file path: " msgstr "自定义命令路径: " #: ../guake/data/prefs.glade.h:46 msgid "Please select a json file" msgstr "请选择Json文件" #: ../guake/data/prefs.glade.h:47 ../src/guake/prefs.py:75 msgid "General" msgstr "常规" #: ../guake/data/prefs.glade.h:48 msgid "Default interpreter:" msgstr "默认解释器:" #: ../guake/data/prefs.glade.h:49 msgid "_Run command as a login shell" msgstr "运行命令作为登录外壳" #: ../guake/data/prefs.glade.h:50 msgid "_Open new tab in current directory" msgstr "在当前目录打开新标签页" #: ../guake/data/prefs.glade.h:51 msgid "Shell" msgstr "外壳" #: ../guake/data/prefs.glade.h:52 msgid "Shell" msgstr "外壳" #: ../guake/data/prefs.glade.h:53 msgid "Show scrollbar" msgstr "显示滚动条" #: ../guake/data/prefs.glade.h:54 msgid "Scrollback lines:" msgstr "回卷行数:" #: ../guake/data/prefs.glade.h:55 msgid "On output" msgstr "输出时" #: ../guake/data/prefs.glade.h:56 msgid "On key stroke" msgstr "键敲下时" #: ../guake/data/prefs.glade.h:57 msgid "Scroll" msgstr "滚动" #: ../guake/data/prefs.glade.h:58 msgid "Scrolling" msgstr "滚屏" #: ../guake/data/prefs.glade.h:59 msgid "Use the system fixed width font" msgstr "使用系统的等宽字体" #: ../guake/data/prefs.glade.h:60 msgid "Font:" msgstr "字体:" #: ../guake/data/prefs.glade.h:61 msgid "Show resizer" msgstr "显示大小设置" #: ../guake/data/prefs.glade.h:62 msgid "Choose some font" msgstr "选择字体" #: ../guake/data/prefs.glade.h:63 msgid "Text color:" msgstr "文字颜色:" #: ../guake/data/prefs.glade.h:64 msgid "Background color:" msgstr "背景颜色:" #: ../guake/data/prefs.glade.h:65 msgid "Cursor shape:" msgstr "光标形状:" #: ../guake/data/prefs.glade.h:66 msgid "" "Block\n" "I-Beam\n" "Underline" msgstr "" "粗条状\n" "细线状\n" "下划线" #: ../guake/data/prefs.glade.h:69 msgid "" "Follow GTK+ setting\n" "Blink on\n" "Blink off" msgstr "" "跟随GTK+的设置\n" "打开光标闪烁\n" "关闭光标闪烁" #: ../guake/data/prefs.glade.h:72 msgid "Cursor blink mode:" msgstr "光标闪动类型:" #: ../guake/data/prefs.glade.h:73 msgid "Allow bold font" msgstr "允许使用粗体" #: ../guake/data/prefs.glade.h:74 msgid "Palette" msgstr "调色板" #: ../guake/data/prefs.glade.h:75 msgid "Built-in schemes:" msgstr "内建方案:" #: ../guake/data/prefs.glade.h:76 msgid "Color palette:" msgstr "调色板:" #: ../guake/data/prefs.glade.h:77 msgid "Font color" msgstr "文字颜色" #: ../guake/data/prefs.glade.h:78 msgid "Background color" msgstr "背景颜色" #: ../guake/data/prefs.glade.h:79 msgid "Use font and background color from the palette" msgstr "使用调色板设置的字体和背景颜色" #: ../guake/data/prefs.glade.h:80 msgid "Demo:" msgstr "样例:" #: ../guake/data/prefs.glade.h:81 msgid "Effects" msgstr "效果" #: ../guake/data/prefs.glade.h:82 msgid "Transparency:" msgstr "透明度:" #: ../guake/data/prefs.glade.h:83 msgid "Background image:" msgstr "背景图像:" #: ../guake/data/prefs.glade.h:84 msgid "Select A File" msgstr "选择一个文件" #: ../guake/data/prefs.glade.h:85 ../src/guake/prefs.py:130 msgid "Appearance" msgstr "外观" #: ../guake/data/prefs.glade.h:86 msgid "" "Quick open is a feature allowing you to open a file directly into " "your favorite text editor by clicking on its filename when it appears in " "your terminal. See the list of currently supported text patterns used to " "extract filename below." msgstr "" "快速打开是一项允许您使用喜欢的编辑器打开文件的功能,只需要在文件名出现" "在终端时点击它即可。符合下方模式的字符串将被识别为可快速打开的文件名字。" #: ../guake/data/prefs.glade.h:87 msgid "Enable Quick Open when Ctrl+clicking on a filename in the terminal" msgstr "允许以按住Ctrl并单击终端中的文件名的方式快速打开" #: ../guake/data/prefs.glade.h:88 msgid "Editor command line:" msgstr "编辑器的命令行设置:" #: ../guake/data/prefs.glade.h:90 #, no-c-format msgid "" "Use the following elements in the open editor command line:\n" " - %(file_path)s: path to the file that has been clicked\n" " - %(line_number)s: if your editor supports it, you can directly open " "the file to a given line number when found on the screen.\n" "\n" "For example, for sublime, use subl %(file_path)s:%(line_number)s\n" "" msgstr "" "在打开编辑器的命令行设置中,可使用以下元素:\n" " - %(file_path)s: 被点击的文件路径\n" " - %(line_number)s: 如果编辑器支持,则可打开文件并跳转到指定的行号\n" "\n" "比如,对于 sublime, 可以使用 subl %(file_path)s:%(line_number)s\n" "" #: ../guake/data/prefs.glade.h:96 msgid "Quick open in current terminal" msgstr "在当前终端中快速打开" #: ../guake/data/prefs.glade.h:97 msgid "" "Here is the list of supported patterns: (to add your own, please contact the " "Guake's authors)" msgstr "" "以下为当前文件名匹配模式的列表: (如果想加入您自己的一些匹配模式,请联系Guake" "作者)" #: ../guake/data/prefs.glade.h:98 msgid "Quick Open" msgstr "快速打开" #: ../guake/data/prefs.glade.h:99 msgid "Quick Open" msgstr "快速打开" #: ../guake/data/prefs.glade.h:100 msgid "" "To change a shortcut simply click on its name.\n" "To disable a shortcut, press the \"Backspace\" key." msgstr "" "单击以修改快捷键。\n" "使用退格键\"Backspace\" 可禁用某个快捷键。" #: ../guake/data/prefs.glade.h:102 msgid "Keyboard shortcuts" msgstr "键盘快捷键" #: ../guake/data/prefs.glade.h:103 msgid "" "Note: These options may cause some applications to behave " "incorrectly. They are only here to allow you to work around certain " "applications and operating systems that expect different terminal behavior." msgstr "" "注意:这些选项可能会导致一些程序行为异常。仅仅是允许您暂时应" "对某程序和期望不同终端行为的操作系统。" #: ../guake/data/prefs.glade.h:104 msgid "" "ASCII DEL\n" "Escape sequence\n" "Control-H" msgstr "" "ASCII DEL\n" "Escape 序列\n" "Control-H" #: ../guake/data/prefs.glade.h:107 msgid "_Backspace key generates:" msgstr "Backspace 键产生:" #: ../guake/data/prefs.glade.h:108 msgid "_Delete key generates:" msgstr "Delete 键产生:" #: ../guake/data/prefs.glade.h:109 msgid "_Reset Compatibility Options to Defaults" msgstr "重新设定兼容性选项为默认值" #: ../guake/data/prefs.glade.h:110 msgid "Keyboard compatibility" msgstr "键盘兼容性" #: ../guake/data/prefs.glade.h:111 msgid "Compatibility" msgstr "兼容性" #: ../guake/data/prefs.glade.h:112 msgid "" "In this dialog you can attach your own command or script to various " "guake events" msgstr "" "在这个对话框中,您可以将您的自定义命令或脚本绑定到各种guake事件" #: ../guake/data/prefs.glade.h:113 msgid "" "Insert command or path to script.\n" "For details, see https://github.com/Guake/guake/issues/793" msgstr "" "增加命令或脚本路径。\n" "更多细节请参考 https://github.com/Guake/guake/issues/793" #: ../guake/data/prefs.glade.h:115 msgid "On show:" msgstr "显示时:" #: ../guake/data/prefs.glade.h:116 msgid "Hooks" msgstr "钩子" #: ../guake/data/prefs.glade.h:117 msgid "Hooks" msgstr "钩子" #: ../src/guake/about.py:47 ../src/guake/gconfhandler.py:429 #: ../src/guake/guake_app.py:185 ../src/guake/guake_app.py:365 msgid "Guake Terminal" msgstr "Guake 终端" #: ../src/guake/gconfhandler.py:430 #, python-format msgid "" "A problem happened when binding %s key.\n" "Please use Guake Preferences dialog to choose another key" msgstr "" "绑定 %s 键时出现问题。\n" "请使用 Guake 首选项对话框选择另外的键(托盘图标已启用)" #: ../src/guake/guake_app.py:133 msgid "Do you want to close the tab?" msgstr "您是否想关闭这个标签页?" #: ../src/guake/guake_app.py:136 msgid "Do you really want to quit Guake?" msgstr "您确实想退出 Guake?" #: ../src/guake/guake_app.py:138 msgid " and one tab open" msgstr " 且有一个标签页正打开着" #: ../src/guake/guake_app.py:140 #, python-brace-format msgid " and {0} tabs open" msgstr " 且有{0}个标签页正打开着" #: ../src/guake/guake_app.py:143 msgid "There are no processes running" msgstr "当前没有进程正在运行" #: ../src/guake/guake_app.py:145 msgid "There is a process still running" msgstr "当前有一个进程正在运行" #: ../src/guake/guake_app.py:147 #, python-brace-format msgid "There are {0} processes still running" msgstr "当前有 {0} 进程正在运行" #: ../src/guake/guake_app.py:190 msgid "guake-indicator" msgstr "guake指示器" #: ../src/guake/guake_app.py:190 msgid "guake-tray" msgstr "guake托盘" #: ../src/guake/guake_app.py:194 msgid "Show" msgstr "查看" #: ../src/guake/guake_app.py:366 msgid "" "Guake is now running,\n" "press {!s} to use it." msgstr "" "Guake 正在运行,\n" "按 {!s} 使用它。" #: ../src/guake/guake_app.py:670 #, python-format msgid "Search on Web: '%s'" msgstr "在网络上搜索:‘%s’" #: ../src/guake/guake_app.py:675 msgid "Search on Web (no selection)" msgstr "在网络上搜索(没有选择文字)" #: ../src/guake/guake_app.py:683 msgid "Open Link: '{}...'" msgstr "打开链接:'{}...'" #: ../src/guake/guake_app.py:685 msgid "Open Link: {}" msgstr "打开链接:{}" #: ../src/guake/guake_app.py:688 msgid "Open Link..." msgstr "打开链接..." #: ../src/guake/guake_app.py:1418 msgid "Terminal" msgstr "终端" #: ../src/guake/guake_app.py:1462 msgid "Rename tab" msgstr "重命名标签页" #: ../src/guake/guake_app.py:1787 msgid "Save to..." msgstr "保存到..." #: ../src/guake/guake_app.py:1794 ../src/guake/prefs.py:997 msgid "All files" msgstr "所有文件" #: ../src/guake/guake_app.py:1799 msgid "Text and Logs" msgstr "文字和日志" #: ../src/guake/guake_app.py:1817 msgid "Find" msgstr "查找" #: ../src/guake/guake_app.py:1819 msgid "Forward" msgstr "前进" #: ../src/guake/guake_app.py:1820 msgid "Backward" msgstr "后退" #: ../src/guake/main.py:69 msgid "Put Guake in fullscreen mode" msgstr "设置 Guake 全屏显示" #: ../src/guake/main.py:73 msgid "Toggles the visibility of the terminal window" msgstr "切换终端窗口是否可见" #: ../src/guake/main.py:77 msgid "Shows Guake main window" msgstr "显示 Guake 的主窗口" #: ../src/guake/main.py:81 msgid "Hides Guake main window" msgstr "隐藏 Guake 主窗口" #: ../src/guake/main.py:85 msgid "Shows Guake preference window" msgstr "显示 Guake 首选项窗口" #: ../src/guake/main.py:89 msgid "Shows Guake's about info" msgstr "显示 Guake 的“关于”信息" #: ../src/guake/main.py:93 msgid "Add a new tab (with current directory set to NEW_TAB)" msgstr "在当前目录打开新标签页" #: ../src/guake/main.py:97 msgid "Select a tab (SELECT_TAB is the index of the tab)" msgstr "按照编号选择一个标签页" #: ../src/guake/main.py:101 msgid "Return the selected tab index." msgstr "返回选中标签页的序号." #: ../src/guake/main.py:105 msgid "Return the selected tab label." msgstr "返回选中标签页的名字." #: ../src/guake/main.py:109 msgid "Execute an arbitrary command in the selected tab." msgstr "在选中标签页执行一个任意命令。" #: ../src/guake/main.py:113 msgid "Specify the tab to rename. Default is 0." msgstr "指定重命名标签页。默认为0。" #: ../src/guake/main.py:117 msgid "Set the background image of the selected tab." msgstr "设置选中标签页的背景图片。" #: ../src/guake/main.py:122 msgid "Set the hexadecimal (#rrggbb) background color of the selected tab." msgstr "设置选中标签页的背景颜色,格式为(#rrggbb)。" #: ../src/guake/main.py:127 msgid "Set the hexadecimal (#rrggbb) foreground color of the selected tab." msgstr "设置选中标签页的前景颜色,格式为(#rrggbb)。" #: ../src/guake/main.py:133 msgid "" "Rename the specified tab. Reset to default if TITLE is a single dash \"-\"." msgstr "重命名指定标签页,如果标题为 \"-\" ,设为默认。" #: ../src/guake/main.py:139 msgid "" "Rename the current tab. Reset to default if TITLE is a single dash \"-\"." msgstr "重命名当前标签,如果标题为 \"-\" ,设为默认。" #: ../src/guake/main.py:144 msgid "Says to Guake go away =(" msgstr "告诉 Guake 走开 =(" #: ../src/guake/main.py:148 msgid "Do not execute the start up script" msgstr "启动时不执行脚本" #: ../src/guake/main.py:254 msgid "Guake can not init!" msgstr "Guake 无法初始化!" #: ../src/guake/main.py:255 msgid "" "Gconf Error.\n" "Have you installed guake.schemas properly?" msgstr "" "Gconf 错误。\n" "您已经正确安装了 guake.schemas 吗?" #. string to show in prefereces dialog for user shell option #: ../src/guake/prefs.py:67 msgid "" msgstr "<用户外壳>" #: ../src/guake/prefs.py:77 msgid "Toggle Guake visibility" msgstr "切换 Guake 是否可见" #: ../src/guake/prefs.py:81 msgid "Toggle Hide on Lose Focus" msgstr "失去焦点后隐藏" #: ../src/guake/prefs.py:88 msgid "Tab management" msgstr "标签页管理" #: ../src/guake/prefs.py:90 msgid "New tab" msgstr "新标签页" #: ../src/guake/prefs.py:92 msgid "Close tab" msgstr "关闭标签页" #: ../src/guake/prefs.py:94 msgid "Rename current tab" msgstr "重命名当前标签页" #: ../src/guake/prefs.py:97 msgid "Navigation" msgstr "导航" #: ../src/guake/prefs.py:99 msgid "Go to previous tab" msgstr "上一个标签页" #: ../src/guake/prefs.py:101 msgid "Go to next tab" msgstr "下一个标签页" #: ../src/guake/prefs.py:103 msgid "Move current tab left" msgstr "将当前标签页向左移动" #: ../src/guake/prefs.py:105 msgid "Move current tab right" msgstr "将当前标签页向右移动" #: ../src/guake/prefs.py:107 msgid "Go to first tab" msgstr "跳转到第一个标签页" #: ../src/guake/prefs.py:109 msgid "Go to second tab" msgstr "跳转到第二个标签页" #: ../src/guake/prefs.py:111 msgid "Go to third tab" msgstr "跳转到第三个标签页" #: ../src/guake/prefs.py:113 msgid "Go to fourth tab" msgstr "跳转到第四个标签页" #: ../src/guake/prefs.py:115 msgid "Go to fifth tab" msgstr "跳转到第五个标签页" #: ../src/guake/prefs.py:117 msgid "Go to sixth tab" msgstr "跳转到第六个标签页" #: ../src/guake/prefs.py:119 msgid "Go to seventh tab" msgstr "跳转到第七个标签页" #: ../src/guake/prefs.py:121 msgid "Go to eighth tab" msgstr "跳转到第八个标签页" #: ../src/guake/prefs.py:123 msgid "Go to ninth tab" msgstr "跳转到第九个标签页" #: ../src/guake/prefs.py:125 msgid "Go to tenth tab" msgstr "跳转到第十个标签页" #: ../src/guake/prefs.py:127 msgid "Go to last tab" msgstr "跳转到最后一个标签页" #: ../src/guake/prefs.py:132 msgid "Zoom out" msgstr "放大" #: ../src/guake/prefs.py:134 msgid "Zoom in" msgstr "缩小" #: ../src/guake/prefs.py:136 msgid "Zoom in (alternative)" msgstr "缩小(替代)" #: ../src/guake/prefs.py:138 msgid "Increase height" msgstr "增加高度" #: ../src/guake/prefs.py:140 msgid "Decrease height" msgstr "减少高度" #: ../src/guake/prefs.py:142 msgid "Increase transparency" msgstr "增加透明度" #: ../src/guake/prefs.py:144 msgid "Decrease transparency" msgstr "减少透明度" #: ../src/guake/prefs.py:146 msgid "Toggle transparency" msgstr "透明开关" #: ../src/guake/prefs.py:149 msgid "Clipboard" msgstr "剪贴板" #: ../src/guake/prefs.py:151 msgid "Copy text to clipboard" msgstr "复制文字到剪贴板" #: ../src/guake/prefs.py:153 msgid "Paste text from clipboard" msgstr "从剪贴板中粘贴文字" #: ../src/guake/prefs.py:156 msgid "Extra features" msgstr "额外的功能" #: ../src/guake/prefs.py:159 msgid "Search select text on web" msgstr "使用搜索引擎搜索选择文字" #: ../src/guake/prefs.py:489 msgid "Action" msgstr "行为" #: ../src/guake/prefs.py:499 msgid "Shortcut" msgstr "快捷键" #: ../src/guake/prefs.py:657 ../src/guake/prefs.py:703 msgid "Custom" msgstr "自定义" #: ../src/guake/prefs.py:993 msgid "JSON files" msgstr "Json文件" #: ../src/guake/prefs.py:1091 #, python-format msgid "The shortcut \"%s\" is already in use." msgstr "快捷键 \"%s\" 已经被使用。" #: ../src/guake/prefs.py:1092 msgid "Error setting keybinding." msgstr "设定键绑定时出错。" #: ../src/guake/prefs.py:1104 #, python-format msgid "" "The shortcut \"%s\" cannot be used because it will become impossible to type " "using this key.\n" "\n" "Please try with a key such as Control, Alt or Shift at the same time.\n" msgstr "" "无法使用快捷键 \"%s\" ,因为使用该键将导致无法输入。\n" "\n" "请尝试同时用诸如 Control,Alt 或 Shift 键。\n" #: guake/data/prefs.glade:264 msgid "Never" msgstr "从不" #: guake/data/prefs.glade:265 msgid "With process running" msgstr "跟随正在运行的进程" #: guake/data/prefs.glade:266 msgid "Always" msgstr "总是" #: guake/data/prefs.glade:499 msgid "Refocus if open" msgstr "如果打开则重新获得焦点" #: guake/data/prefs.glade:865 msgid "Custom command file path:" msgstr "自定义命令文件路径:" #: guake/data/prefs.glade:1423 msgid "Block" msgstr "块状" #: guake/data/prefs.glade:1424 msgid "I-Beam" msgstr "细线状" #: guake/data/prefs.glade:1425 msgid "Underline" msgstr "下划线状" #: guake/data/prefs.glade:1443 msgid "Follow GTK+ setting" msgstr "沿用GTK+的设置" #: guake/data/prefs.glade:1444 msgid "Blink on" msgstr "打开闪烁" #: guake/data/prefs.glade:1445 msgid "Blink off" msgstr "关闭闪烁" #: guake/data/prefs.glade:2236 msgid "" "Use the following elements in the open editor command line:\n" "- %(file_path)s: path to the file that has been clicked\n" "- %(line_number)s: if your editor supports it, you can directly open " "the file to a given line number when found on the screen.\n" "\n" "For example, for sublime, use subl %(file_path)s:%(line_number)s\n" "" msgstr "" "在打开编辑器的命令中使用下列元素:\n" "%(file_path)s: 被点击的文件路径\n" "%(line_number)s: 如果你的编辑器支持,你可以直接打开文件并跳到指定行.\n" "\n" "举个例子,对于sumlime,使用subl %(file_path)s:%(line_number)s\n" "" #: guake/data/prefs.glade:2442 guake/data/prefs.glade:2462 msgid "ASCII DEL" msgstr "ASCII DEL" #: guake/data/prefs.glade:2443 guake/data/prefs.glade:2463 msgid "Escape sequence" msgstr "Escape序列" #: guake/data/prefs.glade:2444 guake/data/prefs.glade:2464 msgid "Control-H" msgstr "Control-H" #: guake/data/prefs.glade:2665 msgid "On start:" msgstr "启动时:" #: guake/data/guake-prefs.desktop:8 msgid "Configure your Guake sessions" msgstr "配置你的Guake会话" #: guake/data/guake-prefs.desktop:15 guake/data/guake.desktop:18 msgid "guake" msgstr "guake" #: guake/data/guake-prefs.desktop:20 msgid "Terminal;Utility;" msgstr "终端;实用;" #: guake/data/guake.desktop:10 msgid "Use the command line in a Quake-like terminal" msgstr "在一个Quake-like的终端中使用命令行" #: guake/data/prefs.glade:770 msgid "Main Window Horizontal Alignment" msgstr "主窗口横向对齐" #: guake/prefs.py:89 msgid "Show and focus Guake window" msgstr "显示并聚焦到Guake窗口" #: guake/data/prefs.glade:566 msgid "0" msgstr "0" #: guake/data/prefs.glade:610 msgid "Main Window Options" msgstr "主窗口选项" #: guake/data/prefs.glade:770 msgid "Horizontal Alignment:" msgstr "横向对齐:" #: guake/data/prefs.glade:855 msgid "Height:" msgstr "高度:" #: guake/data/prefs.glade:868 msgid "Width:" msgstr "宽度:" #: guake/data/prefs.glade:913 msgid "Geometry" msgstr "几何" #: guake/data/prefs.glade:944 msgid "Main Window" msgstr "主窗口" #: guake/data/prefs.glade:1197 msgid "Infinite scrolling" msgstr "无限滚动" #: guake/data/prefs.glade:1219 msgid "Scrollbar" msgstr "滚动条" #: guake/data/prefs.glade:1304 msgid "Scroll to Bottom" msgstr "滚动到底部" #: guake/data/prefs.glade:2117 msgid "" "Quick open is a feature allowing you to open a file directly into your " "favorite text editor by clicking on its filename when it appears in your " "terminal. See the list of currently supported text patterns used to extract " "filename below." msgstr "" "快速打开是一项允许您使用喜欢的编辑器打开文件的功能,只需要在文件名出现在终端" "时点击它即可。符合下方模式的字符串将被识别为可打开的文件名字。" #: guake/main.py:64 msgid "Show Guake version number and exit" msgstr "显示Guake版本并退出" #: guake/data/prefs.glade:93 msgid "Guake properties" msgstr "Guake 属性" #: guake/data/prefs.glade:107 msgid "Customize behavior and appearance of Guake!" msgstr "自定义 Guake 的行为和外观!" #: guake/data/prefs.glade:929 msgid "Displacement in pixels" msgstr "以像素为單位进行位移" #: guake/main.py:73 msgid "Enable verbose logging" msgstr "启动详细日志记录" #: guake/guake_app.py:680 msgid "Quick Open: '{!s}...'" msgstr "快速打开: '{!s}...'" #: guake/guake_app.py:683 msgid "Quick Open: {!s}" msgstr "快速打开: {!s}" #: guake/guake_app.py:691 msgid "Open Link: '{!s}...'" msgstr "打开链接: '{!s}...'" #: guake/guake_app.py:694 msgid "Open Link: {!s}" msgstr "打开链接: '{!s}...'" #: guake/data/prefs.glade:2175 msgid "" "WARNING: your system seems to have PCRE2 disabled for VTE, " "preventing application such as Guake to register \"matchers\" using regular " "expressions. Please contact your distribution to request a new version of " "VTE with PCRE2 enabled ! To use Quick Open, you must select the text " "before using Ctrl+click." msgstr "" "警告:你的系统看起来拥有一个禁止了VTE的PCRE2,阻止了像Guake等应用使" "用正则表达式注册“matchers”。请设法获得一个新的使能了VTE的PCRE2!为了使用快速" "打开功能,你在使用 Ctrl+单击之前必须先选中文字。" #: guake/guake_app.py:680 msgid "Quick Open: {!s}..." msgstr "快速打开: {!s}..." #: guake/guake_app.py:691 msgid "Open Link: {!s}..." msgstr "Open Link: {!s}..." #: guake/guake_app.py:688 msgid "Quick Open..." msgstr "快速打开..." #: guake/data/prefs.glade:223 msgid "Start Guake at login" msgstr "登录时启动Guake" #: guake/data/prefs.glade:363 msgid "Gtk Theme:" msgstr "Gtk 主题:" #: guake/data/prefs.glade:387 msgid "Prefer dark theme" msgstr "优选黑色主题" #: guake/guake_app.py:435 msgid "Custom Commands" msgstr "自定义命令" #: guake/main.py:184 msgid "" "Specify the tab to rename. Default is 0. Can be used to select tab by UUID." msgstr "指定要重命名的tab。默认是0。可被用于根据UUID选择tab。" #: guake/main.py:212 msgid "" "Rename the specified tab by --tab-index. Reset to default if TITLE is a " "single dash \"-\"." msgstr "根据tab序号重命名指定的tab。如果是“-”则重置为默认值。" #: data/search.glade:138 msgid "Search forward" msgstr "向前搜索" #: data/search.glade:153 msgid "Match case" msgstr "匹配项" #: data/search.glade:186 msgid "Current search direction: Backward" msgstr "当前搜索方向:向后" #: data/prefs.glade:680 msgid "Set window title to current tab name" msgstr "将窗口名字设置为当前tab名" #: guake/menus.py:48 msgid "Copy Url" msgstr "拷贝Url" #: guake/menus.py:62 msgid "Split ―" msgstr "分割 ―" #: guake/menus.py:65 msgid "Split " msgstr "分割.. " #: guake/menus.py:68 guake/prefs.py:150 msgid "Close terminal" msgstr "关闭终端" #: guake/prefs.py:137 msgid "Split management" msgstr "分割管理器" #: guake/prefs.py:142 msgid "Split tab vertical" msgstr "纵向分割tab" #: guake/prefs.py:146 msgid "Split tab horizontal" msgstr "横向分割tab" #: guake/prefs.py:154 msgid "Focus terminal above" msgstr "强制退出中断" #: guake/prefs.py:158 msgid "Focus terminal below" msgstr "窗口停靠到底部" #: guake/prefs.py:162 msgid "Focus terminal on the left" msgstr "窗口停靠到左侧" #: guake/prefs.py:166 msgid "Focus terminal on the right" msgstr "窗口停靠到右侧" #: guake/prefs.py:170 msgid "Move the terminal split handle up" msgstr "将分割线向上移动" #: guake/prefs.py:174 msgid "Move the terminal split handle down" msgstr "将分割线向下移动" #: guake/prefs.py:178 msgid "Move the terminal split handle right" msgstr "将分割线向右移动" #: guake/prefs.py:182 msgid "Move the terminal split handle left" msgstr "将分割线向左移动" #: guake/menus.py:65 msgid "Split |" msgstr "分割 |" #: guake/menus.py:72 msgid "Save content..." msgstr "保存内容..." #: data/prefs.glade:1182 msgid "" "This might not work on all shells, make sure that your shell supports the --" "login option" msgstr "这可能无法在所有shell上正常工作,请确保你的shell支持--login选项" #: guake/prefs.py:128 msgid "New tab in home directory" msgstr "" #: guake/dialogs.py:56 #, python-brace-format msgid " on {0} workspaces" msgstr "" #: guake/main.py:211 msgid "Change Guake palette scheme" msgstr "" #: data/prefs.glade:331 msgid "Use workspace-specific tab sets (requires restart)" msgstr "" #: guake/main.py:175 msgid "Split the selected tab vertically." msgstr "" #: guake/main.py:183 msgid "Split the selected tab horizontally." msgstr "" #: data/prefs.glade:348 msgid "Show close buttons for tabs" msgstr "" #: data/prefs.glade:1682 msgid "Bold text is also bright" msgstr "" #: data/prefs.glade:1682 msgid "Bold text is also bright (VTE >=0.52)" msgstr "" #: guake/menus.py:42 msgid "Save Tabs" msgstr "" #: guake/menus.py:45 msgid "Restore Tabs" msgstr "" #: guake/prefs.py:113 msgid "Search terminal" msgstr "" #: guake/main.py:278 msgid "Save Guake preferences to this filename" msgstr "" #: guake/main.py:286 msgid "Restore Guake preferences from this file" msgstr "" #: guake/guake_app.py:1192 #, python-brace-format msgid "Your session.json file is broken, backup to {session_filename}.bak" msgstr "" #: guake/guake_app.py:1228 #, python-brace-format msgid "" "Your session.json schema is broken, backup to {0}.bak,and error message has " "been saved to {0}.log.err" msgstr "" #: guake/guake_app.py:1239 msgid "Your tabs has been restored!" msgstr "" #: data/prefs.glade:190 msgid "Restore previous session (tabs)" msgstr "" #: data/prefs.glade:204 msgid "Enable notification when restore tabs" msgstr "" #: data/prefs.glade:218 msgid "Automatically save session when the tabs has been modified" msgstr "" #: data/prefs.glade:238 msgid "Startup & Tabs (Experiment)" msgstr "" #: guake/guake_app.py:1192 #, python-brace-format msgid "" "Your {session_filename} file is broken, backup to {session_filename}.bak" msgstr "" #: guake/guake_app.py:1227 #, python-brace-format msgid "" "Your {session_filename} schema is broken, backup to {0}.bak,and error " "message has been saved to {session_filename}.log.err" msgstr "" #: guake/guake_app.py:1227 #, python-brace-format msgid "" "Your {session_filename} schema is broken, backup to {session_filename}.bak," "and error message has been saved to {session_filename}.log.err." msgstr "" #: guake/guake_app.py:1227 #, python-brace-format msgid "" "Your {session_filename} schema is broken, backup to {session_filename}.bak, " "and error message has been saved to {session_filename}.log.err." msgstr "" #: guake/notebook.py:317 msgid "" "You are going to restore *all* the tabs!\n" "which means all your terminals & pages will be replaced.\n" "\n" "Do you want to continue?" msgstr "" #: guake/main.py:296 msgid "Show support infomations" msgstr "" #: guake/guake_app.py:1240 #, python-brace-format msgid "" "Tabs session restore abort.\n" "Your session file ({session_filename}) missing schema_version as key" msgstr "" #: guake/guake_app.py:1252 #, python-brace-format msgid "" "Tabs session restore abort.\n" "Your session file schema version is higher than current version " "({session_file_schema_version} > {current_schema_version})." msgstr "" #: guake/data/prefs.glade:409 msgid "Use workspace-specific tab sets (requires restart, only work on X11)" msgstr "" #~ msgid "0 means no size limit" #~ msgstr "0表示没有大小限制" #~ msgid "key binding error" #~ msgstr "键绑定出错" #~ msgid "Unable to bind global %s key" #~ msgstr "无法绑定全局 %s 键" #~ msgid "http://guake.org" #~ msgstr "http://guake.org" #~ msgid "" #~ "Tango\n" #~ "Linux console\n" #~ "XTerm\n" #~ "Rxvt\n" #~ "Custom\n" #~ msgstr "" #~ "Tango\n" #~ "Linux 终端\n" #~ "XTerm\n" #~ "Rxvt\n" #~ "自定义\n" #~ msgid "Rename the selected tab." #~ msgstr "重命名选定的标签页" #~ msgid "Background" #~ msgstr "背景" #~ msgid "Choose some color" #~ msgstr "选择颜色" #~ msgid "Image:" #~ msgstr "图像:" #~ msgid "Style:" #~ msgstr "风格:" #~ msgid "Use system defaults" #~ msgstr "使用系统默认" guake-3.6.3/po/zh_TW.po000066400000000000000000000461331346623310400146410ustar00rootroot00000000000000# SOME DESCRIPTIVE TITLE. # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER # This file is distributed under the same license as the PACKAGE package. # FIRST AUTHOR , YEAR. # msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2019-04-22 18:49+0200\n" "PO-Revision-Date: 2019-04-23 10:31+0000\n" "Last-Translator: Louie Lu \n" "Language-Team: Chinese (Traditional) \n" "Language: zh_TW\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=1; plural=0;\n" "X-Generator: Weblate 3.7-dev\n" #: guake/main.py:72 msgid "Show Guake version number and exit" msgstr "顯示 Guake 版本號後退出" #: guake/main.py:81 msgid "Enable verbose logging" msgstr "啟用詳細資訊記錄" #: guake/main.py:90 msgid "Put Guake in fullscreen mode" msgstr "使 Guake 進入全螢幕模式" #: guake/main.py:99 msgid "Toggles the visibility of the terminal window" msgstr "" #: guake/main.py:107 msgid "Shows Guake main window" msgstr "" #: guake/main.py:115 msgid "Hides Guake main window" msgstr "" #: guake/main.py:124 msgid "Shows Guake preference window" msgstr "" #: guake/main.py:133 msgid "Shows Guake's about info" msgstr "" #: guake/main.py:142 msgid "Add a new tab (with current directory set to NEW_TAB)" msgstr "" #: guake/main.py:151 msgid "Select a tab (SELECT_TAB is the index of the tab)" msgstr "" #: guake/main.py:160 msgid "Return the selected tab index." msgstr "" #: guake/main.py:169 msgid "Return the selected tab label." msgstr "" #: guake/main.py:177 msgid "Split the selected tab vertically." msgstr "" #: guake/main.py:185 msgid "Split the selected tab horizontally." msgstr "" #: guake/main.py:194 msgid "Execute an arbitrary command in the selected tab." msgstr "" #: guake/main.py:203 msgid "" "Specify the tab to rename. Default is 0. Can be used to select tab by UUID." msgstr "" #: guake/main.py:211 msgid "Set the hexadecimal (#rrggbb) background color of the selected tab." msgstr "" #: guake/main.py:220 msgid "Set the hexadecimal (#rrggbb) foreground color of the selected tab." msgstr "" #: guake/main.py:229 msgid "Change Guake palette scheme" msgstr "" #: guake/main.py:239 msgid "" "Rename the specified tab by --tab-index. Reset to default if TITLE is a " "single dash \"-\"." msgstr "" #: guake/main.py:251 msgid "" "Rename the current tab. Reset to default if TITLE is a single dash \"-\"." msgstr "" #: guake/main.py:261 msgid "Says to Guake go away =(" msgstr "" #: guake/main.py:270 msgid "Do not execute the start up script" msgstr "" #: guake/main.py:278 msgid "Save Guake preferences to this filename" msgstr "" #: guake/main.py:286 msgid "Restore Guake preferences from this file" msgstr "" #: guake/menus.py:20 guake/menus.py:38 msgid "New Tab" msgstr "" #: guake/menus.py:23 msgid "Rename" msgstr "" #: guake/menus.py:26 msgid "Close" msgstr "" #: guake/menus.py:42 msgid "Save Tabs" msgstr "" #: guake/menus.py:45 msgid "Restore Tabs" msgstr "" #: guake/menus.py:58 guake/menus.py:178 guake/prefs.py:107 msgid "Quit" msgstr "" #: guake/menus.py:76 msgid "Copy" msgstr "" #: guake/menus.py:80 msgid "Copy Url" msgstr "" #: guake/menus.py:83 msgid "Paste" msgstr "" #: guake/menus.py:90 guake/prefs.py:101 msgid "Toggle Fullscreen" msgstr "" #: guake/menus.py:94 msgid "Split ―" msgstr "" #: guake/menus.py:97 msgid "Split |" msgstr "" #: guake/menus.py:100 guake/prefs.py:152 msgid "Close terminal" msgstr "" #: guake/menus.py:104 msgid "Save content..." msgstr "" #: guake/menus.py:107 guake/prefs.py:110 msgid "Reset terminal" msgstr "" #: guake/menus.py:111 msgid "Find..." msgstr "" #: guake/menus.py:115 msgid "Open link..." msgstr "" #: guake/menus.py:123 msgid "Open Link: {!s}..." msgstr "" #: guake/menus.py:125 msgid "Open Link: {!s}" msgstr "" #: guake/menus.py:130 msgid "Search on Web" msgstr "" #: guake/menus.py:137 #, python-format msgid "Search on Web: '%s'" msgstr "" #: guake/menus.py:142 msgid "Quick Open..." msgstr "" #: guake/menus.py:150 msgid "Quick Open: {!s}..." msgstr "" #: guake/menus.py:153 msgid "Quick Open: {!s}" msgstr "" #: guake/menus.py:165 msgid "Custom Commands" msgstr "" #: guake/guake_app.py:155 guake/guake_app.py:282 guake/guake_app.py:1196 #: guake/guake_app.py:1230 guake/guake_app.py:1245 guake/keybindings.py:92 #: guake/about.py:54 msgid "Guake Terminal" msgstr "" #: guake/guake_app.py:161 msgid "guake-indicator" msgstr "" #: guake/guake_app.py:161 msgid "guake-tray" msgstr "" #: guake/guake_app.py:166 msgid "Show" msgstr "" #: guake/guake_app.py:283 msgid "" "Guake is now running,\n" "press {!s} to use it." msgstr "" #: guake/guake_app.py:951 guake/notebook.py:247 msgid "Terminal" msgstr "" #: guake/guake_app.py:1035 msgid "Find" msgstr "" #: guake/guake_app.py:1036 msgid "Forward" msgstr "" #: guake/guake_app.py:1036 msgid "Backward" msgstr "" #: guake/guake_app.py:1197 #, python-brace-format msgid "" "Your {session_filename} file is broken, backup to {session_filename}.bak" msgstr "" #: guake/guake_app.py:1232 #, python-brace-format msgid "" "Your {session_filename} schema is broken, backup to {session_filename}.bak, " "and error message has been saved to {session_filename}.log.err." msgstr "" #: guake/guake_app.py:1245 msgid "Your tabs has been restored!" msgstr "" #: guake/keybindings.py:94 #, python-format msgid "" "A problem happened when binding %s key.\n" "Please use Guake Preferences dialog to choose another key" msgstr "" #: guake/prefs.py:80 msgid "" msgstr "" #: guake/prefs.py:91 msgid "General" msgstr "" #: guake/prefs.py:95 msgid "Toggle Guake visibility" msgstr "" #: guake/prefs.py:98 msgid "Show and focus Guake window" msgstr "" #: guake/prefs.py:104 msgid "Toggle Hide on Lose Focus" msgstr "" #: guake/prefs.py:113 msgid "Search terminal" msgstr "" #: guake/prefs.py:117 msgid "Tab management" msgstr "" #: guake/prefs.py:122 msgid "New tab" msgstr "" #: guake/prefs.py:126 msgid "New tab in home directory" msgstr "" #: guake/prefs.py:130 msgid "Close tab" msgstr "" #: guake/prefs.py:134 msgid "Rename current tab" msgstr "" #: guake/prefs.py:139 msgid "Split management" msgstr "" #: guake/prefs.py:144 msgid "Split tab vertical" msgstr "" #: guake/prefs.py:148 msgid "Split tab horizontal" msgstr "" #: guake/prefs.py:156 msgid "Focus terminal above" msgstr "" #: guake/prefs.py:160 msgid "Focus terminal below" msgstr "" #: guake/prefs.py:164 msgid "Focus terminal on the left" msgstr "" #: guake/prefs.py:168 msgid "Focus terminal on the right" msgstr "" #: guake/prefs.py:172 msgid "Move the terminal split handle up" msgstr "" #: guake/prefs.py:176 msgid "Move the terminal split handle down" msgstr "" #: guake/prefs.py:180 msgid "Move the terminal split handle right" msgstr "" #: guake/prefs.py:184 msgid "Move the terminal split handle left" msgstr "" #: guake/prefs.py:189 msgid "Navigation" msgstr "" #: guake/prefs.py:194 msgid "Go to previous tab" msgstr "" #: guake/prefs.py:198 msgid "Go to next tab" msgstr "" #: guake/prefs.py:202 msgid "Move current tab left" msgstr "" #: guake/prefs.py:206 msgid "Move current tab right" msgstr "" #: guake/prefs.py:210 msgid "Go to first tab" msgstr "" #: guake/prefs.py:214 msgid "Go to second tab" msgstr "" #: guake/prefs.py:218 msgid "Go to third tab" msgstr "" #: guake/prefs.py:222 msgid "Go to fourth tab" msgstr "" #: guake/prefs.py:226 msgid "Go to fifth tab" msgstr "" #: guake/prefs.py:230 msgid "Go to sixth tab" msgstr "" #: guake/prefs.py:234 msgid "Go to seventh tab" msgstr "" #: guake/prefs.py:238 msgid "Go to eighth tab" msgstr "" #: guake/prefs.py:242 msgid "Go to ninth tab" msgstr "" #: guake/prefs.py:246 msgid "Go to tenth tab" msgstr "" #: guake/prefs.py:250 msgid "Go to last tab" msgstr "" #: guake/prefs.py:255 msgid "Appearance" msgstr "" #: guake/prefs.py:259 msgid "Zoom out" msgstr "" #: guake/prefs.py:262 msgid "Zoom in" msgstr "" #: guake/prefs.py:265 msgid "Zoom in (alternative)" msgstr "" #: guake/prefs.py:268 msgid "Increase height" msgstr "" #: guake/prefs.py:271 msgid "Decrease height" msgstr "" #: guake/prefs.py:274 msgid "Increase transparency" msgstr "" #: guake/prefs.py:277 msgid "Decrease transparency" msgstr "" #: guake/prefs.py:280 msgid "Toggle transparency" msgstr "" #: guake/prefs.py:284 msgid "Clipboard" msgstr "" #: guake/prefs.py:289 msgid "Copy text to clipboard" msgstr "" #: guake/prefs.py:293 msgid "Paste text from clipboard" msgstr "" #: guake/prefs.py:298 msgid "Extra features" msgstr "" #: guake/prefs.py:302 msgid "Search select text on web" msgstr "" #: guake/prefs.py:764 msgid "Action" msgstr "" #: guake/prefs.py:772 msgid "Shortcut" msgstr "" #: guake/prefs.py:938 guake/prefs.py:992 msgid "Custom" msgstr "" #: guake/prefs.py:1302 msgid "JSON files" msgstr "" #: guake/prefs.py:1306 guake/dialogs.py:111 msgid "All files" msgstr "" #: guake/prefs.py:1401 #, python-format msgid "The shortcut \"%s\" is already in use." msgstr "" #: guake/prefs.py:1402 msgid "Error setting keybinding." msgstr "" #: guake/prefs.py:1418 #, python-format msgid "" "The shortcut \"%s\" cannot be used because it will become impossible to type " "using this key.\n" "\n" "Please try with a key such as Control, Alt or Shift at the same time.\n" msgstr "" #: guake/notebook.py:317 msgid "" "You are going to restore *all* the tabs!\n" "which means all your terminals & pages will be replaced.\n" "\n" "Do you want to continue?" msgstr "" #: guake/dialogs.py:11 msgid "Rename tab" msgstr "" #: guake/dialogs.py:46 msgid "Do you want to close the tab?" msgstr "" #: guake/dialogs.py:50 msgid "Do you really want to quit Guake?" msgstr "" #: guake/dialogs.py:52 msgid " and one tab open" msgstr "" #: guake/dialogs.py:54 #, python-brace-format msgid " and {0} tabs open" msgstr "" #: guake/dialogs.py:56 #, python-brace-format msgid " on {0} workspaces" msgstr "" #: guake/dialogs.py:61 msgid "There are no processes running" msgstr "" #: guake/dialogs.py:63 msgid "There is a process still running" msgstr "" #: guake/dialogs.py:65 #, python-brace-format msgid "There are {0} processes still running" msgstr "" #: guake/dialogs.py:94 msgid "Save to..." msgstr "" #: guake/dialogs.py:116 msgid "Text and Logs" msgstr "" #: data/prefs.glade:43 msgid "Guake Preferences" msgstr "" #: data/prefs.glade:96 msgid "Guake properties" msgstr "" #: data/prefs.glade:110 msgid "Customize behavior and appearance of Guake!" msgstr "" #: data/prefs.glade:190 msgid "Restore previous session (tabs)" msgstr "" #: data/prefs.glade:204 msgid "Enable notification when restore tabs" msgstr "" #: data/prefs.glade:218 msgid "Automatically save session when the tabs has been modified" msgstr "" #: data/prefs.glade:238 msgid "Startup & Tabs (Experiment)" msgstr "" #: data/prefs.glade:271 msgid "Enable popup notifications on startup" msgstr "" #: data/prefs.glade:288 msgid "_Play system alert sound on bell" msgstr "" #: data/prefs.glade:304 msgid "Start Guake at login" msgstr "" #: data/prefs.glade:327 msgid "Prompt on close tab:" msgstr "" #: data/prefs.glade:341 msgid "Never" msgstr "" #: data/prefs.glade:342 msgid "With process running" msgstr "" #: data/prefs.glade:343 msgid "Always" msgstr "" #: data/prefs.glade:362 msgid "Always prompt on quit" msgstr "" #: data/prefs.glade:378 msgid "Show tray icon" msgstr "" #: data/prefs.glade:394 msgid "_Flash terminal on bell" msgstr "" #: data/prefs.glade:409 msgid "Use workspace-specific tab sets (requires restart)" msgstr "" #: data/prefs.glade:426 msgid "Show close buttons for tabs" msgstr "" #: data/prefs.glade:450 data/prefs.glade:1782 msgid "General" msgstr "" #: data/prefs.glade:476 msgid "Gtk Theme:" msgstr "" #: data/prefs.glade:500 msgid "Prefer dark theme" msgstr "" #: data/prefs.glade:529 msgid "Custom command file path:" msgstr "" #: data/prefs.glade:541 msgid "Please select a json file" msgstr "" #: data/prefs.glade:629 msgid "Refocus if open" msgstr "" #: data/prefs.glade:646 msgid "Hide on lose focus" msgstr "" #: data/prefs.glade:663 msgid "Start fullscreen" msgstr "" #: data/prefs.glade:679 msgid "Stay on top" msgstr "" #: data/prefs.glade:697 msgid "Show tab bar" msgstr "" #: data/prefs.glade:713 msgid "Use VTE titles for tab names" msgstr "" #: data/prefs.glade:731 msgid "Abbreviate directories in tab names" msgstr "" #: data/prefs.glade:756 msgid "Max tab name length:" msgstr "" #: data/prefs.glade:771 msgid "0" msgstr "" #: data/prefs.glade:793 msgid "Set window title to current tab name" msgstr "" #: data/prefs.glade:815 msgid "Main Window Options" msgstr "" #: data/prefs.glade:846 msgid "Bottom align window instead of top align" msgstr "" #: data/prefs.glade:862 msgid "Appear on mouse display" msgstr "" #: data/prefs.glade:887 msgid "Appear on display:" msgstr "" #: data/prefs.glade:917 msgid "Place tabs on top" msgstr "" #: data/prefs.glade:939 msgid "Placement" msgstr "" #: data/prefs.glade:975 msgid "Horizontal Alignment:" msgstr "" #: data/prefs.glade:991 msgid "Left" msgstr "" #: data/prefs.glade:1011 msgid "Center" msgstr "" #: data/prefs.glade:1031 msgid "Right" msgstr "" #: data/prefs.glade:1060 msgid "Height:" msgstr "" #: data/prefs.glade:1073 msgid "Width:" msgstr "" #: data/prefs.glade:1127 msgid "Displacement in pixels" msgstr "" #: data/prefs.glade:1155 msgid "Geometry" msgstr "" #: data/prefs.glade:1186 msgid "Main Window" msgstr "" #: data/prefs.glade:1231 msgid "Default interpreter:" msgstr "" #: data/prefs.glade:1271 msgid "_Run command as a login shell" msgstr "" #: data/prefs.glade:1292 msgid "" "This might not work on all shells, make sure that your shell supports the --" "login option" msgstr "" #: data/prefs.glade:1307 msgid "_Open new tab in current directory" msgstr "" #: data/prefs.glade:1351 msgid "Shell" msgstr "" #: data/prefs.glade:1397 msgid "Show scrollbar" msgstr "" #: data/prefs.glade:1421 msgid "Scrollback lines:" msgstr "" #: data/prefs.glade:1457 msgid "Infinite scrolling" msgstr "" #: data/prefs.glade:1479 msgid "Scrollbar" msgstr "" #: data/prefs.glade:1524 msgid "On output" msgstr "" #: data/prefs.glade:1541 msgid "On key stroke" msgstr "" #: data/prefs.glade:1564 msgid "Scroll to Bottom" msgstr "" #: data/prefs.glade:1588 msgid "Scrolling" msgstr "" #: data/prefs.glade:1623 msgid "Use the system fixed width font" msgstr "" #: data/prefs.glade:1651 msgid "Font:" msgstr "" #: data/prefs.glade:1666 msgid "Choose some font" msgstr "" #: data/prefs.glade:1680 msgid "Cursor shape:" msgstr "" #: data/prefs.glade:1695 msgid "Block" msgstr "" #: data/prefs.glade:1696 msgid "I-Beam" msgstr "" #: data/prefs.glade:1697 msgid "Underline" msgstr "" #: data/prefs.glade:1711 msgid "Cursor blink mode:" msgstr "" #: data/prefs.glade:1725 msgid "Follow GTK+ setting" msgstr "" #: data/prefs.glade:1726 msgid "Blink on" msgstr "" #: data/prefs.glade:1727 msgid "Blink off" msgstr "" #: data/prefs.glade:1744 msgid "Allow bold font" msgstr "" #: data/prefs.glade:1760 msgid "Bold text is also bright (VTE >=0.52)" msgstr "" #: data/prefs.glade:1817 msgid "Built-in schemes:" msgstr "" #: data/prefs.glade:1843 msgid "Color palette:" msgstr "" #: data/prefs.glade:1858 msgid "Demo:" msgstr "" #: data/prefs.glade:2161 msgid "Palette" msgstr "" #: data/prefs.glade:2183 msgid "Effects" msgstr "" #: data/prefs.glade:2208 msgid "Transparency:" msgstr "" #: data/prefs.glade:2292 msgid "" "To change a shortcut simply click on its name.\n" "To disable a shortcut, press the \"Backspace\" key." msgstr "" #: data/prefs.glade:2342 msgid "Keyboard shortcuts" msgstr "" #: data/prefs.glade:2394 msgid "" "Quick open is a feature allowing you to open a file directly into your " "favorite text editor by clicking on its filename when it appears in your " "terminal. See the list of currently supported text patterns used to extract " "filename below." msgstr "" #: data/prefs.glade:2432 msgid "Enable Quick Open when Ctrl+clicking on a filename in the terminal" msgstr "" #: data/prefs.glade:2457 msgid "Editor command line:" msgstr "" #: data/prefs.glade:2503 msgid "" "Use the following elements in the open editor command line:\n" "- %(file_path)s: path to the file that has been clicked\n" "- %(line_number)s: if your editor supports it, you can directly open " "the file to a given line number when found on the screen.\n" "\n" "For example, for sublime, use subl %(file_path)s:%(line_number)s\n" "" msgstr "" #: data/prefs.glade:2558 msgid "Quick open in current terminal" msgstr "" #: data/prefs.glade:2602 msgid "Quick Open" msgstr "" #: data/prefs.glade:2652 msgid "" "In this dialog you can attach your own command or script to various " "guake events" msgstr "" #: data/prefs.glade:2674 msgid "On show:" msgstr "" #: data/prefs.glade:2686 msgid "On start:" msgstr "" #: data/prefs.glade:2752 msgid "Hooks" msgstr "" #: data/prefs.glade:2781 msgid "" "Note: These options may cause some applications to behave " "incorrectly. They are only here to allow you to work around certain " "applications and operating systems that expect different terminal behavior." msgstr "" #: data/prefs.glade:2801 msgid "_Backspace key generates:" msgstr "" #: data/prefs.glade:2814 msgid "_Delete key generates:" msgstr "" #: data/prefs.glade:2829 data/prefs.glade:2846 msgid "ASCII DEL" msgstr "" #: data/prefs.glade:2830 data/prefs.glade:2847 msgid "Escape sequence" msgstr "" #: data/prefs.glade:2831 data/prefs.glade:2848 msgid "Control-H" msgstr "" #: data/prefs.glade:2873 msgid "_Reset Compatibility Options to Defaults" msgstr "" #: data/prefs.glade:2904 msgid "Compatibility" msgstr "" #: data/about.glade:14 msgid "" "Guake is an easy to access\n" "terminal based on FPS games terminal" msgstr "" #: data/search.glade:138 msgid "Search forward" msgstr "" #: data/search.glade:153 msgid "Match case" msgstr "" #: data/search.glade:186 msgid "Current search direction: Backward" msgstr "" #: data/guake.glade:47 msgid "Guake!" msgstr "" #: data/autostart-guake.desktop:31 data/guake.desktop:37 #: data/guake.template.desktop:4 msgid "Use the command line in a Quake-like terminal" msgstr "" #: data/autostart-guake.desktop:34 data/guake-prefs.desktop:50 #: data/guake.desktop:49 data/guake.template.desktop:7 #: data/guake-prefs.template.desktop:7 msgid "guake" msgstr "" #: data/guake-prefs.desktop:38 data/guake-prefs.template.desktop:4 msgid "Configure your Guake sessions" msgstr "" #: data/guake-prefs.desktop:66 data/guake-prefs.template.desktop:13 msgid "Terminal;Utility;" msgstr "" #: guake/main.py:296 msgid "Show support infomations" msgstr "" #: guake/guake_app.py:1240 #, python-brace-format msgid "" "Tabs session restore abort.\n" "Your session file ({session_filename}) missing schema_version as key" msgstr "" #: guake/guake_app.py:1252 #, python-brace-format msgid "" "Tabs session restore abort.\n" "Your session file schema version is higher than current version " "({session_file_schema_version} > {current_schema_version})." msgstr "" #: guake/data/prefs.glade:409 msgid "Use workspace-specific tab sets (requires restart, only work on X11)" msgstr "" guake-3.6.3/releasenotes/000077500000000000000000000000001346623310400153125ustar00rootroot00000000000000guake-3.6.3/releasenotes/archive/000077500000000000000000000000001346623310400167335ustar00rootroot00000000000000guake-3.6.3/releasenotes/archive/NEWS.pre-3.0000066400000000000000000000361461346623310400205270ustar00rootroot00000000000000 Version 0.8.11 -------------- Maintainance release with bug fixes and translation updates. - #885 revert to the old fixed-width tabs behavior - move the startup script setting to the hooks tab - #977 Add a configuration toggle to disable windows refocus - #970 Right-click tab options don't work properly - #995 Russian translation - #983 French translation - #986 Update German translation Version 0.8.10 -------------- Minors Bug fixes and new Ocean and Oceanic Next color schemes. Version 0.8.9 ------------- Thanks for guakers for the following contibutions: New features: - #793, #876: Execute a script on display event - #864: Add preference dialog checkbox for toggling 'resizer' visibility - #885: tabs share the full screen width - #942: Quick open also matches `/home` path - #933: Add `-l` option to get tab label Bug Fixes - #934: Quick open does not work with dash - #893, #896, #888: another Unity screen size fix - Translation update: ja (#875), cn (#955), nl (#931), pt (#895), Version 0.8.8 ------------- Thank to these contribution from Guake users, I am happy to announce a new minor fix release of Guake. Features: * Close a tab with the middle button of the mouse Bug Fixes: - Fix error when toggle key was disabled - Update change news - Uppercase pallete name - Fix pylint errors - Convert README badge to SVG - Update Japanese translation - update Russian translation - updated CS translation - Update zh_CN translation Version 0.8.7 ------------- Do not forget to update the software version Version 0.8.6 ------------- Lot of bug fixes in this release. Thanks for all contributors ! Please note that it is not tested on dual screen set ups. Bug fixes: * Terminal geometry fixes (#773 @koter84, #775 RedFlames, b36295 myself) * Fix "changing max tab length" set all tab to same title * Fix on terminal kill (#636, @coderstephen) * Typo/Cosmetics (#761, @thuandt) * Fix the bottom of tab buttons being cut off in Gnome (#786 @lopsided98) * Fix fullscreen follow mouse (#774 @koter84) * Option to shorten VTE tab name (#798 @versusvoid) * Updated translations: - french (b071b4, myself) - russian (#787 @vantu5z), - corean (#766 @nessunkim), - polish (#799 @piotrdrag) Version 0.8.5 ------------- Minor version today, mostly minor bug fixes and translation update. I did have time to work on GTK3, maintaining Guake to keep using GTK2 is more and more difficult, Travis kind of abandonned the compatibility of PyGtk2. * Add a shortcut to open the last tab (#706, thanks @evgenius) * Fix icon size on Ubuntu (#734) * Add tab UUID and selection by UUID (#741, thanks @SoniEx2, @Ozzyboshi) * Updated Polish (#705), Chinese (#711), German (#732), Brazil Portuguese (#744), Czech (#747) * Fixed doc (#709, #706) * Fix some Pep8 issue Version 0.8.4 ------------- Bug fixes: - Very big icon tray (#598, @thardev) - Feature keyboard shorcut hide on lose focus (#650, #262, #350, @thardev) - Endless transparency and small rework of hide on lose focus (#651, @thardev) - fix tray icon does not align in center (#663, @wuxinyumrx) - Updated pt_BR translation (#686, @matheus-manoel) - improved Bluloco theme readability (#693, @uloco) - ensure gsettings process is well kill (#636) - fix exception in preference panel Version 0.8.3 ------------- Quick fix about missing svg file Version 0.8.2 ------------- Bug fix version. Thanks for external contributions! Feature: - new palette 'Bluloco' (my default one now!) (@uloco) Bug fixes: - tab bar width (@ozzyboshi) - open new tab in current directory (#578, @Xtreak) - fix default interpreter (#619, @Xtreak) - fix use VTE title (#524, @Xtreak) - Russian tranlation (@vantu5z), german (@Airfunker), spanish (@thardev) chinese (@Xinyu Ng) - fix guake cannot restore fullscreen (#628, @thardev) Version 0.8.1 ------------- I started working on Guake 1.0.0, and not in a dedicated branch. It is now in its own source folder. We clearly need to move to gtk3 soon, since GTK2 is being discontinued, the VTE is no more maintained for GTK2-Python, and adds lot of cool features. So I am now starting to work on a complete rewrite of Guake, so don't expect 0.8.x to see lot of new features, unfortunately. But Guake 1.0.0 will add features such as: - line wrap in terminal - search in terminal - dconf/gsettings to store configuration - GTK3 look and feel - much cleaner build and translation systems But, this means I cannot work too much on 0.8.x. I still do some bug fixes, and thanks to external contributors that share the love for Guake, Guake 0.8 still moves on! So don't hesitate to have a look in the code to fix any bug you are experiencing and submit a Pull Request. New features: - a-la guake-indicator custom commands (#564) - by @Ozzyboshi! - Add option to allow/disallow bold font (#603) - by @helix84! - Clean current terminal item in contextual menu (#608) - by @Denis Subbotin Bug fixes: - Terminal widget disappears at random times (#592) - Typo - by @selivan, @Ruined1 Version 0.8.0 ------------- I have been extremely busy the previous 3 months, so I have almost not worked on Guake. I wanted to introduce in the next version some major features heavily asked, like session save and split terminal. They will have to wait a bit more. As a result, most of the contribution are from external contributors. Thank you very much for all these patches! This releases introduces two major changes in the project, thus the minor version change. First, the new homepage is now online: http://guake-project.org/ As I remind you, Guake has *not* control over the old domain guake.org. So far the content is still one of the old content of this domain. So please use http://guake-project.org to reference Guake. Source code of the Web site can be found here: https://github.com/Guake/guake-website The second major change in the project is the abandon of our internal hotkey manager ``globalhotkey``, which was responsible for binding hotkeys globally to the window manager. This piece of code was extremely old and hard to maintain. This was also unnecessarily complexifying the build process of Guake. Thanks to the contribution of @jenrik, we are now using a pretty common package ``keybinder`` (Ubuntu: ``python-keybinder``). Bug fixes: - Guake fails to start due to a GlobalHotkey related C call fixed by replacing GlobalHotkeys with keybinder. Fixed by @jenrik. (#558, #510) - Fix icon issue with appindicator (#591) - swap terms correctly when moving tabs (#473, #512, #588) - Remove last reference to --show-hide (#587) - fixed and completed german translation (#585) - Drop duplicated man page (a526046a) - use full path to tray icon with libappindicator (#591) Version 0.7.2 (2015.05.20) -------------------------- Bug fixes: - Fix Ctrl+D regresion (#550) - update Quick Open Preference Window Version 0.7.1 (2015.05.18): --------------------------- Some bug fixes, and cleared issues with new palette colors. As side note, our domain 'guake.org' has been squatted by an outsider that seems only interested in getting money to release the domain. Since Guake is a small project, based on 100% OpenSource spirit, we do not want to loose more time on this subject. The guake website will be deployed soon on a new URL: http://guake-project.org Please do **NOT** use guake.org anymore, until we can retrieve it. We cannot be hold responsible for any content on guake.org anymore. Bug fixes: - Background and font color inversed for some color schemes (#516) - Guake width wrong on non-Unity Ubuntu desktop (#517) - Add get_gtktab_name dbus interface (#529, #530) - Fix issue with selection copy (#514) - I18n fixes and updated Polish translation (#519). Thanks a lot @piotrdrag! - Remove add and guake icon in tab (#543) - prompt_on_close_tab option (#546) Thanks a lot @tobz1000! - Fix default shortcuts for move tabs Version 0.7.0 (2015.05.02): --------------------------- I had more time working on Guake recently, so I fixed some long term issues, and exposed some internal settings into the preference window. Thanks for the external contribution: @varemenos, @seraff and others! Here is the complete changelog for this release: - Reorganised palette definition, add a demo terminal in preference panel (#504, #273, #220) - Plenty of other new color palettes (thanks again @varemenos ! #504) - don't propagate COLORTERM environment variable in terminal (#488) - Force $TERM environment variable to 'xterm-256color' in terminals (#341) - Fix issue with the quit confirmation dialog box (#499) - Add shortcut for transparency level (#481) - Add label to tell user how to disable a shortcut (#488) - Expose cursor_shape and blink cursor method in pref window (#505) - Expose Guake startup script to the pref window (#198) - Some window management bug fixes (#506, #445) - Fix "Not focused on openning if tab was moved" (#441) - Add contextual menu item 'Open Link' on right click on a link (5476653) - Fix compatibility with Ubuntu 15.04 (#509) - Fix Guake Turns Gray sometimes (#473, #512) Version 0.6.2 (2015.04.20): --------------------------- - Packaging issue fixes Version 0.6.1 (2015.04.19): --------------------------- - bug fixes Version 0.6.0 (2015.04.18): --------------------------- This version is poor in new feature, I just don't have time to work on Guake. I got a lot of incompatibility reports on new systems, such as Wayland. Port to gtk3 is still a must have, but all features of the VTE component does not seem to have been ported. Features: - Save current terminal buffer to file - Hotkeys for moving tab - plenty of color palettes (thanks @varemenos !) - bug fixes Version 0.5.2 (2014.11.23): --------------------------- - bug fixes - Disable the 'focus_if_open' feature (hidden trigger, true per default). Restaure focus does not work in all systems. - lot of "componentization" of the code, in preparation to the rebase of 'gtk3' branch. Version 0.5.1 (2014.11.06): --------------------------- - minor bug fixes release Version 0.5.0 (2014.02.22): --------------------------- - Tab can be moved - Add change tab hotkey (F1-F10 by default) and is display on tab - Add "New tab" menu item - Quick open file path within the terminal output - gconf only settings: - startup scripts - vertical aligments - minor bug fixes - New maintainer: * Gaetan Semet - Contributors: * @koter84 * @kneirinck Versions < 0.5.0 ---------------- changes since 0.4.4: - Custom tab titles are no longer overriden by VTE ones (rgaudin) - Absent notifications daemon is no longer fatal - Fix for key hotkeys being recorded as key (Ian MacLeod) - Font resizing using + and - (Eiichi Sato) - D-Bus and commandline interface improvements - L10n: * Norwegian Bokmål po file renamed to nb_NO.po (Bjørn Lie) * Added translations: Croatian, Czech, Dutch, Galician, Indonesian, Ukrainian. * Updated translations: Catalan, French, German, Hungarian, Spanish, Swedish. changes since 0.4.3: - New icon for both guake and guake-prefs - Improved build scripts for themable icon installation - Updated some autotools files - Fixing a typo in the guake-prefs.desktop file (Zaitor) - wm_class can't be get by gnome-shell css #414 - Add the missing "System" category required by FDO menu specification (Jekyll Wu) - Do not install the system-wide autostart file (Jekyll Wu) - Call window.move/resize only when not in fullscreen mode #403 (Empee584) - Terminal scrolls to the wrong position when hiding and unhiding in fullscreen mode #258 (Empee584) - Toggle fullscreen malfunction #371 (Empee584 & Sylvestre) - Guake overlaped the second screen in a dual-monitor setup with a sidepanel (Sylvestre) - Tree items in Keyboard shortcuts tab of preferences window not localized #280 (Robertd) - Add option to start in fullscreen mode #408 (Dom Sekotill) - Refactoring of the fullscreen logic and addition of the --fullscreen flag (Marcel Partap) changes since 0.4.2: - Better tab titling, based on VTE title sequences (Aleksandar Krsteski & Max Ulidtko) - Some drag & drop support (Max Ulidtko) - Fix for the many times reported "gconf proxy port as int" issue (Pingou) - Better file layout which doesn't modify PYTHONPATH (Max Ulidtko) Updated translation and new translation: - Russian (Vadim Kotov) - Spanish (Ricardo A. Hermosilla Carrillo) - Japanese (kazutaka) - Catalan (el_libre como el chaval) changes since 0.4.1: Updated translations and new translations (unsorted): - Norwegian (wty) - Turkish (Berk Demirkır) - Swedish (Daniel Nylander) - Persian (Kasra Keshavarz) - French (Bouska and Pingou) - Russian (Pavel Alexeev and vkotovv) - Polish (Piotr Drąg) - Spanish, Castilian (dmartinezc) - Italian (Marco Leogrande a.k.a. dark) - Chinese simplified (甘露, Gan Lu) - Portuguese/Brazilian (Djavan Fagundes) - Japanese (kazutaka) - Punjabi (A S Alam) Bugs/Features: - Calling the hide() method when closing main window: #229 (Lincoln) - Fixing dbus path and name for the RemoteControl object: #202 (Lincoln) - Setting http{s,}_proxy vars before calling fork_command: #172 (Lincoln) - Adding the `fr' lang to ALL_LINGUAS: #189 (Lincoln) - Option to configure the color palette: #51 (Eduardo Grajeda) - Do not hide when showing rename dialog (Aleksandar Krsteski) - Fixing the tab renaming feature: #205 (Lincoln) changes since 0.4.0: Updated translation and new translation: - Italian - French - Portuguese/Brazilian - Novergian - German - Polish - Greek - Hungarian Bugs/Features: - Change start message #168 - Add an option to the preference windows to create new tab in cwd #146 - Preferences windows are resizable #149 - Guake's windows not shown when ran for the first time #174 - Implement dbus interface to script with guake #150, #138, #105, #126, #128, #109 - Command line arguments implemented -n create a new tab -e execute a command on a defined tab -r rename a tab -t toggle visibility - Improve regex to use character classes (improve the support of certain locales) #156 - Ask user if he really wants to quit when there is a child process #158 - Double click on a tab allows you to rename the tab #165 - Add more information on the INSTALL file - Tray icon position fixed #161 Infrastructure: - Move from guake-terminal.org to guake.org - Set up a mailing-list at: http://lists.guake.org/cgi-bin/mailman/listinfo/guake changes since 0.2 * Making prefs dialog window better, including a better title, fixing some paddings and spaces. * Added backspace and delete compatibility options (thanks to gnome-terminal guys =) * Cleanup of data files (images and glade files), mostly images. * Complete rewrite of tab system in the main window. * Fixing all issues (I think =) in close tab feature. * Adding tab rename feature. * Making easier to grab keybinging shortcuts from the prefs screen by using eggcellrendererkeys lib. * Now we look for more python interpreters when filling interpreters combo. * Fixing a lot of bugs. guake-3.6.3/releasenotes/config.yaml000066400000000000000000000040531346623310400174450ustar00rootroot00000000000000--- branch_name_re: stable/.+ branch_name_prefix: stable/ earliest_version: 3.0.0.a4 collapse_pre_releases: true pre_release_tag_re: (?P\.(?:\d*[ab]|rc)+\d*)$ unreleased_version_title: "(unreleased yet)" sections: # The prelude section is implicitly included. - [features, New Features] - [known_issues, Known Issues] - [upgrade, Upgrade Notes] - [deprecations, Deprecations] - [security, Security Issues] - [fixes, Bug Fixes] - [translations, Translation Updates] - [notes_for_package_maintainers, Notes for Package Maintainers] - [other, Other] # Change prelude_section_name to 'release_summary' from default value # 'prelude'. prelude_section_name: release_summary template: | release_summary: > Replace this text with content to appear at the top of the section for this release. All of the prelude content is merged together and then rendered separately from the items listed in other parts of the file, so the text needs to be worded so that both the prelude and the other items make sense when read independently. Do not use "list" syntax here features: - | List new features here followed by the ticket number, for example:: - new exiting feature #1234 known_issues: - | List know issue introduced by the change here, followed if possible by a ticket number, for example:: - such other feature is broken #1234 upgrade: - | List upgrade note for end users here deprecations: - | List deprecations notes heres, ie, feature that are being removed by the change. security: - | Add security notes here. fixes: - | Add normal bug fixes here, followed by the ticket number, for example:: - broken feature has been fixed #1234 translations: - Only put a list of updated 2 letters language code, for example:: translations: - fr - de notes_for_package_maintainers: - | Add notes for package maintainers here. other: - | Add other notes here. guake-3.6.3/releasenotes/notes/000077500000000000000000000000001346623310400164425ustar00rootroot00000000000000guake-3.6.3/releasenotes/notes/.placeholder000066400000000000000000000000001346623310400207130ustar00rootroot00000000000000Add-window-displacement-options-to-move-guake-away-from-the-edges-1b2d46997e8dbe91.yaml000066400000000000000000000012441346623310400360600ustar00rootroot00000000000000guake-3.6.3/releasenotes/notesfeatures: - | Add window displacement options to move guake away from the screen edges - | User can manually enter the name of the GTK theme it wants Guake to use. Note there is no Preference settings yet, one needs to manually enter the name using ``dconf-editor``, in the key ``/apps/guake/general/gtk-theme-name``. Use a name matching one the folders in ``/usr/share/themes``. Please also considere this is a early adopter features and has only been tested on Ubuntu systems. Dark theme preference can be se with the key ``/apps/guake/general/gtk-prefer-dark-theme``. fixes: - | fixes issue with vertically stacked dual monitors #1162 guake-3.6.3/releasenotes/notes/add-check-schema-version-restore-tabs-session-bb1d8b19e881f6dc.yaml000066400000000000000000000000771346623310400325320ustar00rootroot00000000000000fixes: - Add schema_version check for tabs session restore guake-3.6.3/releasenotes/notes/add-cli-support-option-16c5b10c88d04b06.yaml000066400000000000000000000001251346623310400257630ustar00rootroot00000000000000features: - Add --support option to Guake CLI for user when need to report issue guake-3.6.3/releasenotes/notes/add-copy-url-b39441ee986bf333.yaml000066400000000000000000000000761346623310400237770ustar00rootroot00000000000000features: - add a new option in the context menu (copy url) guake-3.6.3/releasenotes/notes/add-drag-and-drop-7b977070e8427a67.yaml000066400000000000000000000000721346623310400245060ustar00rootroot00000000000000features: - Add drag-n-drop to terminal (text & uris) guake-3.6.3/releasenotes/notes/add-libwnck-dep-a64492dc9d26d03e.yaml000066400000000000000000000000561346623310400244730ustar00rootroot00000000000000fixes: - Add libwnck to bootstrap scripts guake-3.6.3/releasenotes/notes/add-save-restore-tabs-efb4a554a7c0dc30.yaml000066400000000000000000000001721346623310400257640ustar00rootroot00000000000000--- features: - | Add save/restore tabs function. - | Add label parameter to ``notebook.new_page_with_focus`` guake-3.6.3/releasenotes/notes/add-save-restore-terminal-split-b62d71cc2575f123.yaml000066400000000000000000000005121346623310400275630ustar00rootroot00000000000000fixes: - Add save/restore terminal split for tabs session - Save/Restore terminal split by pre-order traversal full binary tree in list - Bump tabs session schema_version to 2 (to support terminal split) - Lazy restore terminal split until Guake is visible - Manage terminal signal handler by handler_ids guake-3.6.3/releasenotes/notes/add-scrolling-speed-9434dc74b52afb1b.yaml000066400000000000000000000001521346623310400254340ustar00rootroot00000000000000features: - When scrolling with "shift" (1 page) or "shift + ctrl" (4 pages) it will be faster (#271) guake-3.6.3/releasenotes/notes/add-search-terminal-43a0aa5950e79a74.yaml000066400000000000000000000001211346623310400252570ustar00rootroot00000000000000features: - Add search box for terminal. Default hotkey is ``Ctrl+Shift+F``. guake-3.6.3/releasenotes/notes/auto-edit-648e3609c9aee103.yaml000066400000000000000000000001261346623310400233610ustar00rootroot00000000000000features: - | [dev env] automatically open reno slug after creation for editing guake-3.6.3/releasenotes/notes/autostart-300343bbe644bd7e.yaml000066400000000000000000000001661346623310400235620ustar00rootroot00000000000000features: - | New "start at login" option in the settings (only for GNOME) #251 translations: - fr_FR - pl guake-3.6.3/releasenotes/notes/bugfix-1e9b3a5f5997f024.yaml000066400000000000000000000001131346623310400227540ustar00rootroot00000000000000fixes: - | Reverse transparency slider (to be more meaningful, #1501 guake-3.6.3/releasenotes/notes/bugfix-4e0564c5ad651093.yaml000066400000000000000000000000741346623310400226650ustar00rootroot00000000000000fixes: - | Fix command-line select tab behavior #1492 guake-3.6.3/releasenotes/notes/bugfix-5b330b910cf335bb.yaml000066400000000000000000000000671346623310400230130ustar00rootroot00000000000000fixes: - | Fix duplication in theme list (#1304) guake-3.6.3/releasenotes/notes/bugfix-6096693463dd6c84.yaml000066400000000000000000000000441346623310400226260ustar00rootroot00000000000000fixes: - | Fix hyperlink VTE guake-3.6.3/releasenotes/notes/bugfix-654583b5646cf905.yaml000066400000000000000000000000751346623310400226260ustar00rootroot00000000000000fixes: - | Quick Open functionnality is restored #1121 guake-3.6.3/releasenotes/notes/bugfix-705c264a6b77f4d3.yaml000066400000000000000000000001311346623310400227450ustar00rootroot00000000000000fixes: - | Apply cursor blinking to new tabs as well, not only on settings change. guake-3.6.3/releasenotes/notes/bugfix-78df60050b344c0b.yaml000066400000000000000000000000751346623310400227370ustar00rootroot00000000000000fixes: - | delete tab even without libutempter (#1198) guake-3.6.3/releasenotes/notes/bugfix-90bd70c984ad6a73.yaml000066400000000000000000000001071346623310400230310ustar00rootroot00000000000000fixes: - | Unusable Guake with "hide on focus lose" option #1152 guake-3.6.3/releasenotes/notes/bugfix-abe62750f777873f.yaml000066400000000000000000000000741346623310400227670ustar00rootroot00000000000000fixes: - | Fix crash when changing command file #1229 guake-3.6.3/releasenotes/notes/bugfix-afa83c6312e2f1a0.yaml000066400000000000000000000000751346623310400230720ustar00rootroot00000000000000fixes: - | Fix multiline selection right click (#1413) guake-3.6.3/releasenotes/notes/bugfix-avoid-spurious-fullscreen-resize-6f3345c7a4494b1f.yaml000066400000000000000000000001101346623310400313710ustar00rootroot00000000000000fixes: - Avoid spurious resize event when showing fullscreened window guake-3.6.3/releasenotes/notes/bugfix-b26aac4094ce8154.yaml000066400000000000000000000001111346623310400230120ustar00rootroot00000000000000fixes: - | Fix transparency regression on ubuntu composite (#1333) guake-3.6.3/releasenotes/notes/bugfix-b54670a057197a9f.yaml000066400000000000000000000000751346623310400226770ustar00rootroot00000000000000fixes: - | fix ``import sys`` in ``simplegladeapp.py`` guake-3.6.3/releasenotes/notes/bugfix-bb8c6dcf8cbd3b20.yaml000066400000000000000000000002031346623310400233140ustar00rootroot00000000000000fixes: - Fix transparency issue #1323 - Fix right-click on link #1311 - Fix bad css override on check tab background (#1326) guake-3.6.3/releasenotes/notes/bugfix-c065e1a8b8e41270.yaml000066400000000000000000000000631346623310400227400ustar00rootroot00000000000000fixes: - | Fix window losefocus hotkey #1080 guake-3.6.3/releasenotes/notes/bugfix-cb51b18bfd3c8da3.yaml000066400000000000000000000000531346623310400232350ustar00rootroot00000000000000fixes: - | Fix refocus if open #1188 guake-3.6.3/releasenotes/notes/bugfix-ce7825d37bcf2273.yaml000066400000000000000000000001011346623310400230240ustar00rootroot00000000000000fixes: - | Fix right click selection in Midnight Commander guake-3.6.3/releasenotes/notes/bugfix-desktop-icon-68a8c2d6d2ef390c.yaml000066400000000000000000000001151346623310400255070ustar00rootroot00000000000000fixes: - | Fix Guake application icon not displayed with German locale guake-3.6.3/releasenotes/notes/bugfix-desktop-icons-d138f5862005ec4c.yaml000066400000000000000000000002631346623310400255270ustar00rootroot00000000000000fixes: - | Don't translate application icon (this finally fixes Guake application icon not being displayed with German locale, which was only partially resolved with #1320) guake-3.6.3/releasenotes/notes/bugfix-f11b203584eeeb8e.yaml000066400000000000000000000001021346623310400230760ustar00rootroot00000000000000fixes: - | fix ctrl+click on hyperlinks on VTE 0.50 (#1295) guake-3.6.3/releasenotes/notes/bugfix_1225-6eecf165d1d0e732.yaml000066400000000000000000000001211346623310400235510ustar00rootroot00000000000000fixes: - | change scope of ``which_align`` variable in ``pref.py`` (#1225) guake-3.6.3/releasenotes/notes/context-menu-b45d815f7feaeecb.yaml000066400000000000000000000001271346623310400244760ustar00rootroot00000000000000features: - support for per terminal context menus - new more fullscreen handeling guake-3.6.3/releasenotes/notes/credits-17a8ac0624e7a46b.yaml000066400000000000000000000000571346623310400231740ustar00rootroot00000000000000other: - | Update about screen's credits guake-3.6.3/releasenotes/notes/dark_theme-4bb6be4b2cfd92ae.yaml000066400000000000000000000004371346623310400241450ustar00rootroot00000000000000features: - | Preliminary Dark theme support. To use it, install the 'numix' theme in your system. For example, Ubuntu/Debian users would use ``sudo apt install numix-gtk-theme``. known_issues: - | Cannot enable or disable the GTK or Dark theme by a preference setting. guake-3.6.3/releasenotes/notes/dbus-c3861541c24b328a.yaml000066400000000000000000000001311346623310400223230ustar00rootroot00000000000000fixes: - | Speed up guake D-Bus communication (command line such as ``guake -t``). guake-3.6.3/releasenotes/notes/debug-d435207215fdcc2e.yaml000066400000000000000000000002421346623310400226170ustar00rootroot00000000000000features: - | Add ``--verbose``/``-v`` parameter to enable debug logging. Please note the existing ``-v`` (for version number) has been renamed ``-V``. guake-3.6.3/releasenotes/notes/dependencies-40d6237664b473cb.yaml000066400000000000000000000002731346623310400240320ustar00rootroot00000000000000notes_for_package_maintainers: - | Please note ``libutempter0`` should now be considered as a mandatory dependency of Guake. It solves the frozen terminal issue on exit (#1014) guake-3.6.3/releasenotes/notes/dev-env-fb2967d1ba8ee495.yaml000066400000000000000000000002041346623310400231770ustar00rootroot00000000000000features: - | [dev env]: Add the possibility to terminate guake with ``Ctrl+c`` on terminal where Guake has been launched disable-workspace-specific-tab-sets-on-non-X11-backend-f6b7e04a738c4271.yaml000066400000000000000000000001341346623310400334440ustar00rootroot00000000000000guake-3.6.3/releasenotes/notesfixes: - Make sure workspace-specific-tab-sets only enable on X11 backend (due to wnck) guake-3.6.3/releasenotes/notes/docs-0c95ec1b74cc65d0.yaml000066400000000000000000000002621346623310400225470ustar00rootroot00000000000000other: - | Rework the documentation. The README grew up a lot and was hard to use. It has been cut into several user manual pages in the official online documentation. guake-3.6.3/releasenotes/notes/double_event_fix-c49129c68ead0b6b.yaml000066400000000000000000000002111346623310400251370ustar00rootroot00000000000000fixes: - | removed duplicate event bind? previously I had issue where quick-open event would be fired twice because of this. guake-3.6.3/releasenotes/notes/fix-1017-1dec922dcf6e914d.yaml000066400000000000000000000000401346623310400230550ustar00rootroot00000000000000fixes: - Fix tab name (#1017) guake-3.6.3/releasenotes/notes/fix-1097-b9f4f72778cfe055.yaml000066400000000000000000000001311346623310400227440ustar00rootroot00000000000000fixes: - fixes #1097: Gukae thinks process is running, prompt on close not showing up. guake-3.6.3/releasenotes/notes/fix-1149-b3ba58cf4b8db01b.yaml000066400000000000000000000000631346623310400231310ustar00rootroot00000000000000fixes: - fixes jumping preference window (#1149) guake-3.6.3/releasenotes/notes/fix-1370-dca809a64dff2e3b.yaml000066400000000000000000000001401346623310400231340ustar00rootroot00000000000000fixes: - fixes Settings schema 'guake.general' does not contain a key named 'display_n' #1370 guake-3.6.3/releasenotes/notes/fix-1421-c2cbf1c5f50da9af.yaml000066400000000000000000000000771346623310400232130ustar00rootroot00000000000000fixes: - fix no focus after closing a split terminal (#1421) guake-3.6.3/releasenotes/notes/fix-1451-d6ed2b40dc05bcf9.yaml000066400000000000000000000001051346623310400231300ustar00rootroot00000000000000fixes: - fixes #1451: `guake --new-tab dir` opens tab in $HOME dir guake-3.6.3/releasenotes/notes/fix-1499-5cd0a55ad7ffe97e.yaml000066400000000000000000000002121346623310400231610ustar00rootroot00000000000000fixes: - Fix a need for double toggling to hide when using command line with ``--show`` and option with ``only_show_hide = False``. guake-3.6.3/releasenotes/notes/fix-1518-4b5de175dfca99f3.yaml000066400000000000000000000000631346623310400230760ustar00rootroot00000000000000fixes: - Remove unused logging level setup #1518 guake-3.6.3/releasenotes/notes/fix-469-f73da051e0bd7181.yaml000066400000000000000000000001171346623310400226370ustar00rootroot00000000000000fixes: - Add note about shell that does not support --login parameter (#469) guake-3.6.3/releasenotes/notes/fix-dev-locale-1e63d9674936fab8.yaml000066400000000000000000000001041346623310400242750ustar00rootroot00000000000000fixes: - Add install/uninstall-dev-locale to support dev locale guake-3.6.3/releasenotes/notes/fix-dual-terminal-box-grab-focus-dead-child-bee6ce64bdc02880.yaml000066400000000000000000000001031346623310400320060ustar00rootroot00000000000000fixes: - Fix DualTerminalBox grab focus when remove dead child guake-3.6.3/releasenotes/notes/fix-guake-showing-up-on-startup-0fdece37dc1616e4.yaml000066400000000000000000000002121346623310400277650ustar00rootroot00000000000000fixes: - | Command options do not work, crash when disabling keybinding #1111 - | Do not open Guake window upon startup #1113 guake-3.6.3/releasenotes/notes/fix-hyperlink-50901cd04a88876e.yaml000066400000000000000000000002271346623310400242020ustar00rootroot00000000000000fixes: - | Corrected usage of ``Vte.Regex.new_for_match`` to fix regular expression matching (hyperlinks, quick open) on VTE >0.50 (#1295) guake-3.6.3/releasenotes/notes/fix-in/000077500000000000000000000000001346623310400176345ustar00rootroot00000000000000guake-3.6.3/releasenotes/notes/fix-in/decrease-height-8176a8313d9a1aba.yaml000066400000000000000000000001221346623310400257420ustar00rootroot00000000000000fixes: - | Fix crash on increase/decrease main window height shortcut #1099 guake-3.6.3/releasenotes/notes/fix-make-install-system-as-non-root-user-40cdbb0509660741.yaml000066400000000000000000000001441346623310400312040ustar00rootroot00000000000000features: - | Allow make install-system to be run as non root user and print a message if so. guake-3.6.3/releasenotes/notes/fix-make-prefix-161844c63e1cd2b7.yaml000066400000000000000000000000571346623310400244550ustar00rootroot00000000000000fixes: - Support customize prefix for make a0bb85fc202ac0adafb1df5960d2ac16e1f468af.paxheader00006660000000000000000000000223134662331040021117xustar00rootroot00000000000000147 path=guake-3.6.3/releasenotes/notes/fix-preference-window-header-color,-align-close-button-and-change-borders-to-margins-fa7ffffc45b12ea5.yaml a0bb85fc202ac0adafb1df5960d2ac16e1f468af.data000066400000000000000000000001671346623310400177640ustar00rootroot00000000000000fixes: - | fix preferences window header color, align the close button more nicely and change borders to margins guake-3.6.3/releasenotes/notes/fix-rename-tab-shortcut-62ad1410c2958929.yaml000066400000000000000000000002151346623310400257730ustar00rootroot00000000000000fixes: - | Resolved conflicting default shortcut for ``Ctrl+F2`` (now, rename current tab is set to ``Ctrl+Shift+R``) #1101, #1098 guake-3.6.3/releasenotes/notes/fix-rename-terminal-focus-c33af663235ed0df.yaml000066400000000000000000000001021346623310400265710ustar00rootroot00000000000000fixes: - Fix re-focus on terminal after rename dialog destroy guake-3.6.3/releasenotes/notes/fix-save-tabs-on-window-title-change-028035febe6c6f40.yaml000066400000000000000000000000671346623310400304750ustar00rootroot00000000000000fixes: - Fix window-title-changed didn't save tabs guake-3.6.3/releasenotes/notes/fix-search-box-background-1fb10348b8104cd3.yaml000066400000000000000000000001141346623310400263750ustar00rootroot00000000000000fixes: - Fix search box background so that it will follow current theme guake-3.6.3/releasenotes/notes/fix-split-by-menu-not-follow-cwd-ae4e6c34d8c5ddce.yaml000066400000000000000000000001321346623310400302040ustar00rootroot00000000000000fixes: - Fix split terminal by menu will not follow last terminal cwd (if option set) guake-3.6.3/releasenotes/notes/fix-typo-dde86618d8422a65.yaml000066400000000000000000000000261346623310400232520ustar00rootroot00000000000000fixes: - fix typo guake-3.6.3/releasenotes/notes/fix-vte-shell-kill-e50891934975b03f.yaml000066400000000000000000000001031346623310400247510ustar00rootroot00000000000000fixes: - Fix delete_shell using os.waitpid (should not use it) guake-3.6.3/releasenotes/notes/fix-vte-warning-ae9a71b84c4fedf3.yaml000066400000000000000000000001101346623310400250050ustar00rootroot00000000000000fixes: - Fix ``vte-warning`` when using ``Vte.Regex.new_for_match`` guake-3.6.3/releasenotes/notes/fix-workspace-save-restore-tabs-853a7118729d8f29.yaml000066400000000000000000000002461346623310400274740ustar00rootroot00000000000000fixes: - Workspaces can now properly save/restore tabs - Fix ``on_terminal_title_changed`` only searching in current_notebook (it should find every notebook) guake-3.6.3/releasenotes/notes/gtk3-800a345dfd067ae6.yaml000066400000000000000000000031201346623310400224030ustar00rootroot00000000000000release_summary: > Guake has been ported to GTK-3 thanks to the huge work of @aichingm. This also implies Guake now uses the latest version of the terminal emulator component, VTE 2.91. Guake is now only working on Python 3 (version 3.5 or 3.6). Official support for Python 2 has been dropped. This enables new features in upcoming releases, such as "find in terminal", or "split screen". features: - | Ported to GTK3: - cli arguments - D-Bus - context menu of the terminal, the tab bar and the tray icon - scrollbar of the terminal - ``ctrl+d`` on terminal - fix double click on the tab bar - fix double click on tab to rename - fix clipboard from context menu - notification module - keyboard shortcuts - preference screen - port ``gconfhandler`` to ``gsettingshandler`` - about dialog - pattern matching - ``Guake.accel*`` methods - | Guake now use a brand new build system: - ``pipenv`` to manage dependencies in `Pipfile` - enforced code styling and checks using Pylint, Flake8, Yapf, ISort. - simpler release management thanks to PBR known_issues: - Translation might be broken in some language, waiting for the translation file to be updated by volunteers - Resizer does not work anymore - Package maintainers have to rework their integration script completely - quick open and open link in terminal is broken deprecations: - | Background picture is no more customizable on each terminal - | Visual Bell has been deprecated translations: - fr-FR guake-3.6.3/releasenotes/notes/gtk3-a429d01811754c42.yaml000066400000000000000000000004341346623310400221640ustar00rootroot00000000000000release_summary: > This minor release mainly focus on fixing big problems that was remaining after the migration to GTK3. I would like to akwonledge the work of some contributors that helped testing and reporting issues on Guake 3.0.0. Thanks a lot to @egmontkob and @aichingm. guake-3.6.3/releasenotes/notes/gtk3-ports-676e683e82c3fa77.yaml000066400000000000000000000013461346623310400235270ustar00rootroot00000000000000release_summary: > This release adds a big rewrite of the Terminal underlying mechanism by Mario Aichinger. It will serve as a foundation layer for long-awaiting features such as `Split Terminal `_, `Find Text `_, `Save/Load Session `_, and so on. features: - load default font via python Gio and not via cli call - add json example for custom commands in the code - port screen selectino (use_mouse) to Gdk - add notification for failed show-hide key rebindings - add one-click key binding editing - port word character exceptions for newer vte versions - use Gtk.Box instead of Gtk.HBox guake-3.6.3/releasenotes/notes/hotfix-5b676642440c4100.yaml000066400000000000000000000000521346623310400225270ustar00rootroot00000000000000fixes: - | Minor build system fixes guake-3.6.3/releasenotes/notes/hotkey-new-tab-home-3942e1e6ba0932af.yaml000066400000000000000000000001111346623310400253130ustar00rootroot00000000000000features: - new hotkey (CTRL+SHIFT+H) to open new tab in home directoryguake-3.6.3/releasenotes/notes/hotkeys-42708e8968fd7b25.yaml000066400000000000000000000001261346623310400231130ustar00rootroot00000000000000 fixes: - | The hotkey management has been rewriten and is now fully functional guake-3.6.3/releasenotes/notes/hyperlink-e40e87ae4dc83c8e.yaml000066400000000000000000000003031346623310400237150ustar00rootroot00000000000000features: - | Support for hyperlink VTE extension (`described here `_ ) #945 (Untested, as it requires VTE 0.50) guake-3.6.3/releasenotes/notes/hyperlinks-778efab6774df2e6.yaml000066400000000000000000000016101346623310400240340ustar00rootroot00000000000000fixes: - | URL with ``'`` (simple quote) and ``()`` (parenthesis) are now captured by hyperlink matcher. This may causes some issues with log and so that use parenthesis *around* hyperlinks, but since parenthesis and quotes are valid characters inside a URL, like for instance URL created by Kibana, they deserve the right to be shown as proper url in Guake. User can still select the URL in the terminal if he wishes to capture the exact url, before doing a Ctrl+click or a right click. For developers, it is advised to end the URL with a character that cannot be used in URL, such as space, tab, new line. Ending with a dot (``.``) or a comma (``,``) will not be seen as part of the URL by Guake, so most logs and traces that adds a dot or a comma at the end of the URL might still work. known_issues: - Multiline url are sometimes not handled correctly. guake-3.6.3/releasenotes/notes/install-b017d0fe51f8e2ad.yaml000066400000000000000000000036611346623310400233500ustar00rootroot00000000000000release_summary: > This version of Guake brings mostly bug fixes, and some new features like "Quick Open on selection". I have also reworked internally the Quick Open so that it can automatically open files from logs from pytest and other python development tools output. However, there might still some false positive on the hovering of the mouse in the terminal, the most famous being the output of ``ls -l`` which may have the mouse looks like it sees hyperlinks on the terminal everywhere. Click does nothing but its an annoying limitation. Package maintainers should read the "Notes for Package Maintainers" of this release note carefully. notes_for_package_maintainers: - | The setup mecanism has changed a little bit. Some maintainers used to patch the source code of Guake to change the pixmap, Gtk schema or locale paths directly in the ``guake/globals.py`` file. This was due to a lack of flexibility of the installation target of the ``Makefile``. The ``make install`` target looks now a little bit more familiar, allowing distribution packager to set the various paths directly with make flags. For example: .. code-block:: bash sudo make install \ prefix=/usr \ DESTDIR=/path/for/packager \ PYTHON_SITE_PACKAGE_NAME=site-package \ localedir=/usr/share/locale The main overrides are: - ``IMAGE_DIR``: where the pixmap should be installed. Default: ``/usr/local/share/guake/pixmaps`` - ``localedir``: where locales should be installed. Default: ``/usr/local/share/locale`` - ``GLADE_DIR``: where the Glade files should be installed. Default: ``/usr/local/share/guake`` - ``gsettingsschemadir``: where gsettings/dconf schema should be installed. Default: ``/usr/local/share/glib-2.0/schemas/`` I invite package maintainers to open tickets on Github about any other difficulties encountered when packaging Guake. guake-3.6.3/releasenotes/notes/maintenance-e02e946e15c940ab.yaml000066400000000000000000000001631346623310400240220ustar00rootroot00000000000000release_summary: > Minor maintenance release. fixes: - | Code cleaning and GNOME desktop file conformance guake-3.6.3/releasenotes/notes/make-096ad37e6079df09.yaml000066400000000000000000000002461346623310400224160ustar00rootroot00000000000000fixes: - | Fix ``sudo make uninstall/install`` to work only with ``/usr/local`` - | Fix translation ``mo`` file generation - | Fix crash on Wayland guake-3.6.3/releasenotes/notes/match-b205323a7aa019f9.yaml000066400000000000000000000000721346623310400225420ustar00rootroot00000000000000fixes: - | Fix quick open and open link in terminal guake-3.6.3/releasenotes/notes/new-tab-button-df72cfcb9e7d422d.yaml000066400000000000000000000000531346623310400246350ustar00rootroot00000000000000features: - | "New tab" button #1471 guake-3.6.3/releasenotes/notes/new-tab-double-click-249fdf02195bb5db.yaml000066400000000000000000000001031346623310400255040ustar00rootroot00000000000000features: - Open new tab by double-clicking on the tab bar #1439 guake-3.6.3/releasenotes/notes/not_composited_de-505082d1c18eda3c.yaml000066400000000000000000000001461346623310400252270ustar00rootroot00000000000000fixes: - | Fixed Guake initialization on desktop environment that does not support compositing. guake-3.6.3/releasenotes/notes/notebook-menu-e562dfd6c62b38c1.yaml000066400000000000000000000000711346623310400244050ustar00rootroot00000000000000features: - | Add new context menu on the notebook guake-3.6.3/releasenotes/notes/notebook-tabs-7986ca919d5904b3.yaml000066400000000000000000000000651346623310400241730ustar00rootroot00000000000000features: - use Gtk.Notebook's tabs implementation guake-3.6.3/releasenotes/notes/packages-55d1017dd708b8de.yaml000066400000000000000000000010411346623310400233160ustar00rootroot00000000000000known_issues: - | Quick Edit feature is not working (#1121) other: - | The dependencies of the Guake executable has been slightly better described in README. There is an example for Debian/Ubuntu in the file ``scripts/bootstrap-dev-debian.sh`` which is the main environment where Guake is developed and tested. - | Package maintainers are encouraged to submit their ``bootstrap-dev-[distribution].sh``, applicable for other distributions, to help users install Guake from source, and other package maintainers. guake-3.6.3/releasenotes/notes/palette-008d16139cff7b9c.yaml000066400000000000000000000001301346623310400231770ustar00rootroot00000000000000fixes: - | Fixed "Gruvbox Dark" color palette (swapped foreground and background) guake-3.6.3/releasenotes/notes/palette-548f459256895a64.yaml000066400000000000000000000002041346623310400227240ustar00rootroot00000000000000 features: - | Thanks to @arcticicestudio, a new nice, clean new palette theme is available for Guake users: Nord (#1275) guake-3.6.3/releasenotes/notes/palette-7cd39716dc53b84c.yaml000066400000000000000000000001041346623310400232040ustar00rootroot00000000000000features: - | Add a CLI option to change palette scheme #1345 guake-3.6.3/releasenotes/notes/palette-ac719dfbd2dd49e9.yaml000066400000000000000000000001411346623310400234270ustar00rootroot00000000000000fixes: - | Swapped foreground and background colors for palettes added in commit #58842e9. guake-3.6.3/releasenotes/notes/palettes-ec272b2335a1fa06.yaml000066400000000000000000000011371346623310400233470ustar00rootroot00000000000000features: - | Add great color palettes from `Guake Color Scheme `_, thanks for @ziyenano : - `Aci`, - `aco`, - `Azu`, - `Bim`, - `Cai`, - `Elementary`, - `Elic`, - `Elio`, - `Freya`, - `Gruvbox Dark`, - `Hemisu Dark`, - `Hemisu Light`, - `Jup`, - `Mar`, - `Material`, - `Miu`, - `Monokai dark`, - `Nep`, - `One Light`, - `Pali`, - `Peppermint`, - `Sat`, - `Shel`, - `Tin`, - `Ura`, - `Vag`. guake-3.6.3/releasenotes/notes/pip-a8c7f5e91190b7ba.yaml000066400000000000000000000001631346623310400224160ustar00rootroot00000000000000features: - | ``pip install guake`` now compiles the gsettings schema and finds its languages automatically. guake-3.6.3/releasenotes/notes/pip-b3c70a8c17ca5533.yaml000066400000000000000000000002301346623310400223150ustar00rootroot00000000000000fixes: - Install of Guake through pip install was broken (missing ``paths.py``). Now fixed. Discarded generation of bdist. (fix #1349 and #1328). guake-3.6.3/releasenotes/notes/pref-af8621e5c04d973c.yaml000066400000000000000000000000721346623310400225010ustar00rootroot00000000000000upgrade: - | Minor rework of the preference window. guake-3.6.3/releasenotes/notes/prefs-032d2ab0c8e2f17a.yaml000066400000000000000000000005241346623310400227220ustar00rootroot00000000000000release_summary: > The Preference window has been deeply reworked and the hotkey management has been rewriten. This was one the the major regression in Guake 3.0. fixes: - | Rework the Preference window and reorganize the settings. Lot of small issues has been fixed. The Preference window now fits in a 1024x768 screen. guake-3.6.3/releasenotes/notes/prefs-startup-tabs-13392d3c186ce2a3.yaml000066400000000000000000000005711346623310400252250ustar00rootroot00000000000000features: - | Add session save preferences for startup/tabs: - "restore-tabs-startup": when enabled, it will restore tabs when startup - "restore-tabs-notify": when enabled, it will notify user after tabs restored (except startup) - "save-tabs-when-changed": when enabled, it will automatically save tabs session when changed (new/del/reorder) guake-3.6.3/releasenotes/notes/quick-open-52d040f5e34e4d35.yaml000066400000000000000000000001771346623310400235360ustar00rootroot00000000000000features: - | Quick open displays a combobox with predefined settings for Visual Studio Code, Atom and Sublime Text. guake-3.6.3/releasenotes/notes/quick_open-032209b39bb6831f.yaml000066400000000000000000000013211346623310400235270ustar00rootroot00000000000000features: - | Quick open can now open file under selection. Simply select a filename in the current terminal and do a Ctrl+click, if the file path can be found, it will be open in your editor. It allows to virtually open any file path in your terminal (if they are on your local machine), but requires the user to select the file path first, compared to the Quick Open feature that finds file names using regular expression. Also notes that is it able to look in the current folder if the selected file name exists, allowing Ctrl+click on relative paths as well. Line number syntax is also supported: ``filename.txt:5`` will directly on the 5th line if your Quick Open is set for. guake-3.6.3/releasenotes/notes/quick_open-bb22f82761ad564b.yaml000066400000000000000000000014141346623310400236740ustar00rootroot00000000000000fixes: - | Fix several issues on Quick Edit: - quick open freezes guake - support for systems with PCRE2 (regular expression in terminal) disabled for VTE, like Ubuntu 17.10 and +. This might disable quick open and open url on direct Ctrl+click. User can still select the wanted url or text and Cltr+click or use contextual menu. See this `discussion on Tilix `_, another Terminal emulator that suffurs the same issue. - quick open now appears in contextual menu (#1157) - bad translation update on the contextual menu. This causes new strings that was hidden to appear for translators. - Fix quick open on pattern "File:line" line that was not opening the wanted file. guake-3.6.3/releasenotes/notes/release-40d6398f70cc1032.yaml000066400000000000000000000015331346623310400230200ustar00rootroot00000000000000release_summary: > This release brings three of the most awaited features on Guake: - search in current terminal - session saving - settings export and import Our MVC ("Most Valuable Contributor") for this release is Louie Lu (@mlouielu) who worked hard to build these three features in a row! Thank you very much for your hard work ! features: - | Add CLI option to split tab: ``--split-vertical`` and ``--split-horizontal``. translations: - fr (French) - pl (Polish) - added zh_TW (Chinese Traditional). Louie Lu would be very glad to have some help on localizing Guake! - ru (Russian) - nb (Norvegian) - sv (Swedish) - nl (Dutch) notes_for_package_maintainers: - | Package maintainers should be aware that ``libwnck`` (Window Navigator Construction Kit) is now a mandatory dependency of Guake. guake-3.6.3/releasenotes/notes/release-75c0331149c5bc63.yaml000066400000000000000000000012261346623310400230160ustar00rootroot00000000000000fixes: - | Respect the XDG Base Directory Specification by supporting ``XDG_CONFIG_HOME`` environment variable to find the ``~/.config`` directory. notes_for_package_maintainers: - | The ``data`` directory is back into ``guake`` module, in order to prepare for the migration to importlib-resource (#1405). This should simplify a lot the load of resources, and avoid all the complication due to difference in prod/dev/traditional linux/debian customization/... translations: - Czech (thanks @p-bo) - Dutch (thanks @Vistaus) - Norwegian Bokmål (thanks @comradekingu) - Polish (thanks @piotrdrag) - Russian (thanks @f2404) guake-3.6.3/releasenotes/notes/relnote-f015e2cd43e71011.yaml000066400000000000000000000013061346623310400231130ustar00rootroot00000000000000release_summary: > This version is mainly a maintaince release, after the big reworks on Guake from last year. I took some delay in fixing Guake due to a growing family. Thanks again for the various contributors who submitted their patches, it helps a lot the whole community. I may be able to find more time in the upcoming months to add even cooler features to our beloved Guake. translations: - fr features: - Bold text is also bright (>= VTE 0.52 only) other: - | For `Guake translators using weblate `_, I had to force push because of big conflicts. Some may have loose recent translation in your language. Sorry for that. guake-3.6.3/releasenotes/notes/reno-3b5ad9829b256250.yaml000066400000000000000000000004361346623310400223520ustar00rootroot00000000000000--- features: - | [dev env] `reno `_ will be used to generate release notes for Guake starting version 3.0.0. It allows developers to write the right chunk that will appear in the release note directly from their Pull Request. guake-3.6.3/releasenotes/notes/resizer-d7c6553879852019.yaml000066400000000000000000000000551346623310400227500ustar00rootroot00000000000000deprecations: - | Resizer discontinued guake-3.6.3/releasenotes/notes/rework-74bb086447b94d17.yaml000066400000000000000000000002671346623310400227300ustar00rootroot00000000000000fixes: - fix unnecessary show/hide - fix settings only applied to the active workspace if more the 1 is used - fix prompt quit dialog numbers when more then 1 workspace is used guake-3.6.3/releasenotes/notes/right-clic-f15043342128eb58.yaml000066400000000000000000000002531346623310400233430ustar00rootroot00000000000000features: - | Allow application to capture right click (ex: Midnight commander). #1096. It is still possible to show the contextual menu with Shift+right click. guake-3.6.3/releasenotes/notes/run-command-517683bd988aa06a.yaml000066400000000000000000000001031346623310400237030ustar00rootroot00000000000000fixes: - | Fix 'Failed to execute child process "-"' - #1119 guake-3.6.3/releasenotes/notes/save-prefs-351292e24b6e6bea.yaml000066400000000000000000000000561346623310400236130ustar00rootroot00000000000000features: - Save and restore Guake settings guake-3.6.3/releasenotes/notes/scroll-959087c80640ceaf.yaml000066400000000000000000000004011346623310400227660ustar00rootroot00000000000000features: - | Add "Infinite scrolling" option in "Scrolling" panel #274 fixes: - | History size spin is fixed and now increment by 1000 steps. Default history value is now set to 1000, because "1024" has no real meaning for end user. #1082 guake-3.6.3/releasenotes/notes/show-focus-cab5307b44905f7e.yaml000066400000000000000000000004011346623310400236320ustar00rootroot00000000000000features: - | Added hotkey for showing and focusing Guake window when it is opened or closed. It is convenient when Guake window are overlapped with another windows and user needs to just showing it without closing and opening it again. #1133 guake-3.6.3/releasenotes/notes/split-terminal-b924ad9a29f59b8b.yaml000066400000000000000000000012441346623310400246030ustar00rootroot00000000000000 release_summary: > This major release provides one of the most awaited feature to every Guake adicts: Split terminal. Split easily vertically and horizontally each terminal and have more than one terminal per tab. There have been several shortcut changes to help navigate easily on your screen: Ctrl+Shift+Up/Down/Left/Right to switch from terminal to terminal. Thanks for you hard work, @aichingm ! features: - Split and resize terminals via mouse or keyboard shortcuts. deprecations: - | "New terminal" / "Rename terminal" / "Close terminal" items has been removed from the terminal context menu. They are still available on the tab context menu. guake-3.6.3/releasenotes/notes/split_options-7b2e2e469ebcc509.yaml000066400000000000000000000002151346623310400245340ustar00rootroot00000000000000features: - | `guake --split-vertical` and `--split-horizontal` split the current tab just like the context menu does guake-3.6.3/releasenotes/notes/tab-close-buttons-1dfe8cb1049ee4dc.yaml000066400000000000000000000001041346623310400253230ustar00rootroot00000000000000features: - Optional close buttons for tabs (disabled by default) guake-3.6.3/releasenotes/notes/tab-scroll-switching-6c674056d1394dcd.yaml000066400000000000000000000001241346623310400255240ustar00rootroot00000000000000features: - enable tab switching by scrolling (mouse wheel) over the tabs/tab-bar guake-3.6.3/releasenotes/notes/terminal-3d38462063ba8bf5.yaml000066400000000000000000000000761346623310400233000ustar00rootroot00000000000000fixes: - fixes ``guake --fgcolor/--bgcolor`` error (#1376). guake-3.6.3/releasenotes/notes/theme-1c1f13e63e46d98b.yaml000066400000000000000000000001421346623310400226450ustar00rootroot00000000000000features: - | Allow user to select the theme within the preference UI translations: - fr guake-3.6.3/releasenotes/notes/theme-a11c5b3cf19de34f.yaml000066400000000000000000000001231346623310400227720ustar00rootroot00000000000000features: - | Selected tab use "selected highlight" color from theme (#1036) guake-3.6.3/releasenotes/notes/translation-31e67dc4190a9067.yaml000066400000000000000000000000431346623310400237400ustar00rootroot00000000000000translations: - de - fr - ru guake-3.6.3/releasenotes/notes/translation-a33ff067822bbfb9.yaml000066400000000000000000000000621346623310400241600ustar00rootroot00000000000000translations: - sv (thanks to @MorganAntonsson) guake-3.6.3/releasenotes/notes/translation-bd1cd0a5447ee42f.yaml000066400000000000000000000000701346623310400242270ustar00rootroot00000000000000fixes: - | Fix user interface translations #1228 guake-3.6.3/releasenotes/notes/translation-ccde91d14559d6ab.yaml000066400000000000000000000012341346623310400242430ustar00rootroot00000000000000fixes: - Some systems such as Ubuntu did displayed Guake with a translated interface (#1209). The locale system has been reworked to fix that. - There might be broken translations, or not up-to-date language support by Guake. A global refresh of all existing translations would be welcomed. Most has not been updated since the transition to Guake 3, so these languages support might probably be unfunctional or at least partialy localized. - A big thank you for all the volunteers and Guake enthousiats would often update their own translation to help guake being used world-wide. - Help is always welcomed for updating translations ! guake-3.6.3/releasenotes/notes/translation-de-c6495c0ae7523117.yaml000066400000000000000000000000521346623310400243220ustar00rootroot00000000000000translations: - de (thanks to @rzimmer) guake-3.6.3/releasenotes/notes/translations-4106dec297b04a63.yaml000066400000000000000000000007121346623310400241750ustar00rootroot00000000000000release_summary: This minor release mainly fix some issues when installing Guake though ``pip install --user --upgrade guake``. A big thanks also to everyone who contributed to the translations on `Weblate `_. translations: - fr - ru (thanks Igor "f2404" on Weblate) - cz (thanks Pavel Borecki on Weblate) - pl (thanks Piotr Drąg on Weblate) - it (thanks Maurizio De Santis on Weblate) guake-3.6.3/releasenotes/notes/translations-b4a5bede065fcdcc.yaml000066400000000000000000000003401346623310400246330ustar00rootroot00000000000000 translations: - fr (thanks samuelorsi125t and ButterflyOfFire) - ru (thanks Igor) - pl (thanks Piotr Drąg) - cz (thanks Pavel Borecki) - de (thanks Dirk den Hoedt and Mario Aichinger) - gl (thanks Nacho Vidal) guake-3.6.3/releasenotes/notes/translations-bf782198a51d50f3.yaml000066400000000000000000000004141346623310400242070ustar00rootroot00000000000000 translations: - pl (Piotr Drąg on weblate) - nl (Heimen Stoffels on weblate) - nb (Allan Nordhøy on weblate) - ru (Igor on weblate) - zh_CN (庄秋彬 on weblate) - cs (Pavel Borecki on weblate) - de (Robin Bauknecht on weblate) - fr (Gaetan Semet) guake-3.6.3/releasenotes/notes/translations-c238c7afffa0f2fd.yaml000066400000000000000000000000451346623310400245630ustar00rootroot00000000000000 translations: - German - French guake-3.6.3/releasenotes/notes/translations-daa7e7aa85eec3bb.yaml000066400000000000000000000004331346623310400246400ustar00rootroot00000000000000translations: - fr - pl - ru known_issues: - | Users of Byobu or Tmux as default shell should disable the "login shell" option (in the "Shell" panel). This uses an option, ``--login``, that does not exist on these two tools. fixes: - Fix "Grubbox Dark" theme guake-3.6.3/releasenotes/notes/travis-72ba95b09d9d6e67.yaml000066400000000000000000000001741346623310400230730ustar00rootroot00000000000000fixes: - | Travis build cleaned build artifacts before deployment, leading to missing files when built in the CI. guake-3.6.3/releasenotes/notes/update-bootstrap-scripts-1ba9e40b4ab1bfd4.yaml000066400000000000000000000000671346623310400267300ustar00rootroot00000000000000other: Add option groupes to the bootstrap scripts guake-3.6.3/releasenotes/notes/update-de-translation-cfcb77e0e6b4543e.yaml000066400000000000000000000000271346623310400261110ustar00rootroot00000000000000translations: - de guake-3.6.3/releasenotes/notes/update-window-title-c6e6e3917821902d.yaml000066400000000000000000000011511346623310400253160ustar00rootroot00000000000000features: - | Update Guake window title when: - the active tab changes - the active tab is renamed - the vte title changes known_issues: - | **Note for package maintainers**: Guake 3 has a minor limitation regarding Glib/GTK Schemas files. Guake looks for the gsettings schema inside its data directory. So you will probably need install the schema twice, once in ``/usr/local/lib/python3.5/dist-packages/guake/data/`` and once in ``/usr/share/glib-2.0/schemas`` (see `#1064 `_). This is planned to be fixed in Guake 3.1 guake-3.6.3/releasenotes/notes/visible-bell-12de7acf136d3fa4.yaml000066400000000000000000000000721346623310400242440ustar00rootroot00000000000000deprecations: - | Remove visible bell feature #1081 guake-3.6.3/releasenotes/notes/vte-d6fd6406c673f71a.yaml000066400000000000000000000000631346623310400223460ustar00rootroot00000000000000fixes: - | Support for vte 2.91 (0.52) #1222 guake-3.6.3/releasenotes/notes/wayland-3fcce3b30835e66d.yaml000066400000000000000000000007441346623310400232700ustar00rootroot00000000000000fixes: - | Wayland is a bit more well supported. The X11 backend is now used by default for GDK and it seems to make the shortcut works under most situation. A more cleaner solution would be to develop a GAction (`vote for this feature here `_]) - | A new command has been added: ``guake-toggle``, should be faster than ``guake -t``. You can use it when you register the global shortcut manually (X11 or Wayland).guake-3.6.3/releasenotes/notes/wayland-fa246d324c92fd80.yaml000066400000000000000000000000731346623310400232020ustar00rootroot00000000000000fixes: - | Implements a timestamp for wayland (#1215)guake-3.6.3/releasenotes/notes/workspace_specific_tab_sets-2065f54ceca2ff26.yaml000066400000000000000000000001341346623310400273460ustar00rootroot00000000000000features: - | Guake can now provide a set of tabs per workspace translations: - de guake-3.6.3/requirements-dev.txt000066400000000000000000000015061346623310400166630ustar00rootroot00000000000000################################################################################ # This requirements file has been automatically generated from `Pipfile` with # `pipenv-to-requirements` # # # This has been done to maintain backward compatibility with tools and services # that do not support `Pipfile` yet. # # Do NOT edit it directly, use `pipenv install [-d]` to modify `Pipfile` and # `Pipfile.lock` and then regenerate `requirements*.txt`. ################################################################################ -e . astroid<2.2.0 autopep8<1.4 colorlog fiximports>=0.1.18 flake8<3.6 mock>=2.0.0 pathlib2 pep8 pipenv-to-requirements pyfakefs pyflakes<2.0.0 pylint<2.3.0 pytest pytest-cov pytest-mock reno>=2.8.0 scandir ; python_version < '3.5' sphinx-rtd-theme sphinxcontrib-programoutput twine typed-ast<1.4.0,>=1.3.1 yapf guake-3.6.3/requirements.txt000066400000000000000000000010621346623310400161040ustar00rootroot00000000000000################################################################################ # This requirements file has been automatically generated from `Pipfile` with # `pipenv-to-requirements` # # # This has been done to maintain backward compatibility with tools and services # that do not support `Pipfile` yet. # # Do NOT edit it directly, use `pipenv install [-d]` to modify `Pipfile` and # `Pipfile.lock` and then regenerate `requirements*.txt`. ################################################################################ pbr typing ; python_version < '3.5' guake-3.6.3/scripts/000077500000000000000000000000001346623310400143105ustar00rootroot00000000000000guake-3.6.3/scripts/bootstrap-dev-arch.sh000077500000000000000000000022431346623310400203540ustar00rootroot00000000000000#!/bin/bash RUN=0 MAKE=0 DEV=0 OPT=0 ARGC="$#" while test $# -gt 0 do case "$1" in run) RUN=1 ;; make) MAKE=1 ;; dev) DEV=1 ;; opt) OPT=1 ;; esac shift done if [[ "$ARGC" == "0" ]]; then RUN=1; MAKE=1; DEV=1; OPT=0; fi if [[ $RUN == "1" ]]; then echo "Install packages needed for execution" sudo pacman -S \ libwnck3 \ libkeybinder3 \ libnotify \ python-cairo \ python-dbus \ python-gobject \ python-pbr \ vte3 fi if [[ $MAKE == "1" ]]; then echo "Install packages needed for making guake" sudo pacman -S \ gettext \ gsettings-desktop-schemas \ make \ pandoc \ python-pipenv fi if [[ $DEV == "1" ]]; then echo "Install needed development packages" sudo pacman -S \ dconf-editor \ glade \ poedit \ gnome-tweak-tool fi if [[ $OPT == "1" ]]; then echo "Install packages optional for execution" sudo pacman -S \ libutempter \ numix-gtk-theme fi guake-3.6.3/scripts/bootstrap-dev-debian.sh000077500000000000000000000024611346623310400206630ustar00rootroot00000000000000#!/bin/bash RUN=0 MAKE=0 DEV=0 OPT=0 ARGC="$#" while test $# -gt 0 do case "$1" in run) RUN=1 ;; make) MAKE=1 ;; dev) DEV=1 ;; opt) OPT=1 ;; esac shift done if [[ "$ARGC" == "0" ]]; then RUN=1; MAKE=1; DEV=1; OPT=0; fi if [[ $RUN == "1" ]]; then echo "Install packages needed for execution" sudo apt install -y \ gir1.2-keybinder-3.0 \ gir1.2-notify-0.7 \ gir1.2-vte-2.91 \ gir1.2-wnck-3.0 \ libkeybinder-3.0-0 \ libutempter0 \ python3 \ python3-cairo \ python3-dbus \ python3-gi \ python3-pbr \ python3-pip fi if [[ $MAKE == "1" ]]; then echo "Install packages needed for making guake" sudo apt install -y \ gettext \ gsettings-desktop-schemas \ make \ pandoc fi if [[ $DEV == "1" ]]; then echo "Install needed development packages" sudo apt install -y \ aspell-fr \ colortest \ dconf-editor \ glade \ poedit \ gnome-tweak-tool fi if [[ $OPT == "1" ]]; then echo "Install packages optional for execution" sudo apt install -y \ numix-gtk-theme fi guake-3.6.3/scripts/bootstrap-dev-fedora.sh000077500000000000000000000021621346623310400206770ustar00rootroot00000000000000#!/bin/bash RUN=0 MAKE=0 DEV=0 OPT=0 ARGC="$#" while test $# -gt 0 do case "$1" in run) RUN=1 ;; make) MAKE=1 ;; dev) DEV=1 ;; opt) OPT=1 ;; esac shift done if [[ "$ARGC" == "0" ]]; then RUN=1; MAKE=1; DEV=1; OPT=0; fi if [[ $RUN == "1" ]]; then echo "Install packages needed for execution" sudo yum install \ python3-devel \ python3-cairo \ python3-dbus \ python3-pip \ keybinder3 \ libwnck fi if [[ $MAKE == "1" ]]; then echo "Install packages needed for making guake" sudo yum install \ gettext \ gsettings-desktop-schemas \ make \ pandoc fi if [[ $DEV == "1" ]]; then echo "Install needed development packages" sudo yum install \ dconf-editor \ glade \ poedit \ gnome-tweak-tool fi if [[ $OPT == "1" ]]; then echo "Install packages optional for execution" sudo yum install \ libutempter \ numix-gtk-theme fi guake-3.6.3/scripts/bootstrap-dev-pip.sh000077500000000000000000000005721346623310400202320ustar00rootroot00000000000000#!/bin/bash echo "Freeze version of pip to ensure build reproductibility" if [[ $1 == "system" ]]; then op="" else op="--user " fi python3 -m pip install $op --upgrade \ 'pip==19.1' \ 'pipenv==2018.11.26' \ || echo "you may need to sudo me !" echo "Please ensure your local bin directory is in your path" echo "Linux: export PATH=$HOME/.local/bin:$PATH" guake-3.6.3/scripts/colortest000077500000000000000000000014231346623310400162540ustar00rootroot00000000000000#!/bin/bash # # This file echoes a bunch of color codes to the # terminal to demonstrate what's available. Each # line is the color code of one forground color, # out of 17 (default + 16 escapes), followed by a # test use of that color on all nine background # colors (default + 8 escapes). # T='gYw' # The test text echo -e "\n 40m 41m 42m 43m\ 44m 45m 46m 47m"; for FGs in ' m' ' 1m' ' 30m' '1;30m' ' 31m' '1;31m' ' 32m' \ '1;32m' ' 33m' '1;33m' ' 34m' '1;34m' ' 35m' '1;35m' \ ' 36m' '1;36m' ' 37m' '1;37m'; do FG=${FGs// /} echo -en " $FGs \033[$FG $T " for BG in 40m 41m 42m 43m 44m 45m 46m 47m; do echo -en "$EINS \033[$FG\033[$BG $T \033[0m"; done echo; done echo guake-3.6.3/scripts/find-first-site-package.py000066400000000000000000000034541346623310400212700ustar00rootroot00000000000000# Found on # https://gist.github.com/asimihsan/9186003 from distutils.sysconfig import get_python_lib def getsitepackages(): """Returns a list containing all global site-packages directories (and possibly site-python). For each directory present in the global ``PREFIXES``, this function will find its `site-packages` subdirectory depending on the system environment, and will return a list of full paths. """ sitepackages = [] seen = set() for prefix in PREFIXES: if not prefix or prefix in seen: continue seen.add(prefix) if sys.platform in ('os2emx', 'riscos'): sitepackages.append(os.path.join(prefix, "Lib", "site-packages")) elif os.sep == '/': sitepackages.append( os.path.join(prefix, "lib64", "python" + sys.version[:3], "site-packages") ) sitepackages.append( os.path.join(prefix, "lib", "python" + sys.version[:3], "site-packages") ) sitepackages.append(os.path.join(prefix, "lib", "site-python")) else: sitepackages.append(prefix) sitepackages.append(os.path.join(prefix, "lib64", "site-packages")) sitepackages.append(os.path.join(prefix, "lib", "site-packages")) if sys.platform == "darwin": # for framework builds *only* we add the standard Apple # locations. from sysconfig import get_config_var framework = get_config_var("PYTHONFRAMEWORK") if framework: sitepackages.append( os.path.join("/Library", framework, sys.version[:3], "site-packages") ) return sitepackages if __name__ == "__main__": # print(getsitepackages()[0]) print(get_python_lib()[0]) guake-3.6.3/scripts/run-local-prefs.sh000077500000000000000000000004661346623310400176660ustar00rootroot00000000000000#!/bin/bash echo "execute Guake GTK3 for developer." VIRTUALENV_PATH=$(pipenv --venv) source $VIRTUALENV_PATH/bin/activate bash </dev/null </dev/null <