diff --git a/.eslintrc b/.eslintrc new file mode 100644 index 0000000..a9358ff --- /dev/null +++ b/.eslintrc @@ -0,0 +1,186 @@ +// http://eslint.org/docs/rules/ +{ + //"extends": "eslint:recommended", + "env": { + //remove either of the lines below if you don't need it + //enable nodejs environment + "node": 1, + //enable browser environment + "browser": 1 + }, + "parserOptions": { + "ecmaVersion": 6 + }, + "globals": { + //place settings for globals here, such as + "exampleGlobalVariable": true, + "log": true, + "imports": true, + "C_": true + }, + "rules": { + "comma-dangle": 0,//[2, "always-multiline"], + "no-cond-assign": 2, + "no-console": 1, + "no-constant-condition": 2, + "no-control-regex": 2, + "no-debugger": 2, + "no-dupe-args": 2, + "no-dupe-keys": 2, + "no-duplicate-case": 2, + "no-empty-character-class": 2, + "no-empty": 2, + "no-ex-assign": 2, + "no-extra-boolean-cast": 2, + "no-extra-parens": 0, + "no-extra-semi": 2, + "no-func-assign": 2, + "no-inner-declarations": 2, + "no-invalid-regexp": 2, + "no-irregular-whitespace": 2, + "no-negated-in-lhs": 2, + "no-obj-calls": 2, + "no-regex-spaces": 2, + "no-sparse-arrays": 2, + "no-unreachable": 2, + "use-isnan": 2, + "valid-jsdoc": 0, + "valid-typeof": 2, + "no-unexpected-multiline": 2, + + "accessor-pairs": 2, + "block-scoped-var": 2, + "complexity": 0, + "consistent-return": 2, + "curly": 2, + "default-case": 2, + "dot-notation": 1, + "dot-location": [2, "property"], + "eqeqeq": 2, + //"guard-for-in": 2, + "no-alert": 1, + "no-caller": 2, + "no-div-regex": 2, + "no-else-return": 2, + "no-eq-null": 2, + "no-eval": 2, + //"no-extend-native": 2, //TODO:re-enable? is this not supported by GS? + "no-extra-bind": 2, + "no-fallthrough": 2, + "no-floating-decimal": 2, + //"no-implicit-coercion": 2, + "no-implied-eval": 2, + "no-invalid-this": 0, + "no-iterator": 2, + "no-labels": 2, + "no-lone-blocks": 2, + //"no-loop-func": 2, + "no-multi-spaces": 1, + //"no-multi-str": 2, + "no-native-reassign": 2, + "no-new-func": 2, + "no-new-wrappers": 2, + "no-new": 2, + "no-octal-escape": 2, + "no-octal": 2, + "no-param-reassign": 0, + "no-process-env": 2, + "no-proto": 2, + "no-redeclare": 2, + "no-return-assign": 2, + "no-script-url": 2, + "no-self-compare": 2, + "no-sequences": 2, + "no-throw-literal": 2, + "no-unused-expressions": 2, + "no-useless-call": 2, + "no-useless-concat": 2, + "no-void": 2, + "no-warning-comments": [1, { "terms": ["todo", "fixme", "xxx"], "location": "start" }], + "no-with": 2, + //"radix": 2, + "vars-on-top": 0, + "wrap-iife": [2, "inside"], + "yoda": [2, "never"], + + //"strict": [2, "global"], + + "init-declarations": 0, + "no-catch-shadow": 0, + "no-delete-var": 2, + "no-label-var": 2, + "no-shadow-restricted-names": 2, + "no-shadow": 1, + "no-undef-init": 2, + "no-undef": 2, + "no-undefined": 2, + "no-unused-vars": 0, //TODO:re-enable? + "no-use-before-define": 1, + + "callback-return": 2, + "handle-callback-err": 2, + "no-mixed-requires": [1, true], + "no-new-require": 2, + "no-path-concat": 2, + "no-process-exit": 2, + "no-sync": 2, + + "array-bracket-spacing": 0,//[1, "always"], + "block-spacing": [1, "always"], + "brace-style": [1, "1tbs", {"allowSingleLine": false}], + "camelcase": 0, + "comma-spacing": [1, {"before": false, "after": true}], + "comma-style": [1, "last"], + "computed-property-spacing": [1, "never"], + "consistent-this": 0, + "eol-last": 1, + "func-names": 0, + //"func-style": [2, "declaration"], + "id-length": 0, + "indent": [1, 4], + "key-spacing": [1, {"beforeColon": false, "afterColon": true}], + "keyword-spacing": 1, + "lines-around-comment": 0, + "linebreak-style": [1, "unix"], + "max-nested-callbacks": [2, 3], + "new-cap": 0, + "new-parens": 2, + "newline-after-var": 0, + "no-array-constructor": 2, + //"no-continue": 2, + //"no-inline-comments": 1, + "no-lonely-if": 2, + "no-mixed-spaces-and-tabs": 1, + "no-multiple-empty-lines": [1, {"max": 2}], + "no-nested-ternary": 2, + "no-new-object": 2, + "no-spaced-func": 1, + "no-ternary": 0, + "no-trailing-spaces": 1, + "no-underscore-dangle": 0, + "no-unneeded-ternary": 1, + "object-curly-spacing": [1, "never"], + "one-var": [1, {"uninitialized": "always", "initialized": "never"}], + "operator-assignment": [1, "always"], + "operator-linebreak": [1, "after"], + "padded-blocks": [1, "never"], + "quote-props": [1, "as-needed"], + "quotes": [1, "single"], + "semi-spacing": [1, {"before": false, "after": true}], + "semi": 0, //[2, "always"], + "sort-vars": [1, {"ignoreCase": false}], + "space-before-blocks": [1, "always"], + "space-before-function-paren": [1, {"anonymous": "always", "named": "never"}], + "space-in-parens": [1, "never"], + "space-infix-ops": 1, + "space-unary-ops": [1, {"words": true, "nonwords": false}], + "spaced-comment": [1, "always", {"exceptions": ["-", "="]}], + "wrap-regex": 2, + + "max-len": ['error', 160], + "no-bitwise": 0 + }, + "plugins": [ + //you can put plugins here + ] +} \ No newline at end of file diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..a0fcc69 --- /dev/null +++ b/.gitignore @@ -0,0 +1,8 @@ +*~ +tmp +*.pyc +*.swp +/.project +/*.zip +/*.geany +*.out diff --git a/LICENSE b/LICENSE new file mode 100644 index 0000000..e72bfdd --- /dev/null +++ b/LICENSE @@ -0,0 +1,674 @@ + GNU GENERAL PUBLIC LICENSE + Version 3, 29 June 2007 + + Copyright (C) 2007 Free Software Foundation, Inc. + Everyone is permitted to copy and distribute verbatim copies + of this license document, but changing it is not allowed. + + Preamble + + The GNU General Public License is a free, copyleft license for +software and other kinds of works. + + The licenses for most software and other practical works are designed +to take away your freedom to share and change the works. By contrast, +the GNU General Public License is intended to guarantee your freedom to +share and change all versions of a program--to make sure it remains free +software for all its users. We, the Free Software Foundation, use the +GNU General Public License for most of our software; it applies also to +any other work released this way by its authors. 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 +them 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 prevent others from denying you +these rights or asking you to surrender the rights. Therefore, you have +certain responsibilities if you distribute copies of the software, or if +you modify it: responsibilities to respect the freedom of others. + + For example, if you distribute copies of such a program, whether +gratis or for a fee, you must pass on to the recipients the same +freedoms that you received. 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. + + Developers that use the GNU GPL protect your rights with two steps: +(1) assert copyright on the software, and (2) offer you this License +giving you legal permission to copy, distribute and/or modify it. + + For the developers' and authors' protection, the GPL clearly explains +that there is no warranty for this free software. For both users' and +authors' sake, the GPL requires that modified versions be marked as +changed, so that their problems will not be attributed erroneously to +authors of previous versions. + + Some devices are designed to deny users access to install or run +modified versions of the software inside them, although the manufacturer +can do so. This is fundamentally incompatible with the aim of +protecting users' freedom to change the software. The systematic +pattern of such abuse occurs in the area of products for individuals to +use, which is precisely where it is most unacceptable. Therefore, we +have designed this version of the GPL to prohibit the practice for those +products. If such problems arise substantially in other domains, we +stand ready to extend this provision to those domains in future versions +of the GPL, as needed to protect the freedom of users. + + Finally, every program is threatened constantly by software patents. +States should not allow patents to restrict development and use of +software on general-purpose computers, but in those that do, we wish to +avoid the special danger that patents applied to a free program could +make it effectively proprietary. To prevent this, the GPL assures that +patents cannot be used to render the program non-free. + + The precise terms and conditions for copying, distribution and +modification follow. + + TERMS AND CONDITIONS + + 0. Definitions. + + "This License" refers to version 3 of the GNU General Public License. + + "Copyright" also means copyright-like laws that apply to other kinds of +works, such as semiconductor masks. + + "The Program" refers to any copyrightable work licensed under this +License. Each licensee is addressed as "you". "Licensees" and +"recipients" may be individuals or organizations. + + To "modify" a work means to copy from or adapt all or part of the work +in a fashion requiring copyright permission, other than the making of an +exact copy. The resulting work is called a "modified version" of the +earlier work or a work "based on" the earlier work. + + A "covered work" means either the unmodified Program or a work based +on the Program. + + To "propagate" a work means to do anything with it that, without +permission, would make you directly or secondarily liable for +infringement under applicable copyright law, except executing it on a +computer or modifying a private copy. Propagation includes copying, +distribution (with or without modification), making available to the +public, and in some countries other activities as well. + + To "convey" a work means any kind of propagation that enables other +parties to make or receive copies. Mere interaction with a user through +a computer network, with no transfer of a copy, is not conveying. + + An interactive user interface displays "Appropriate Legal Notices" +to the extent that it includes a convenient and prominently visible +feature that (1) displays an appropriate copyright notice, and (2) +tells the user that there is no warranty for the work (except to the +extent that warranties are provided), that licensees may convey the +work under this License, and how to view a copy of this License. If +the interface presents a list of user commands or options, such as a +menu, a prominent item in the list meets this criterion. + + 1. Source Code. + + The "source code" for a work means the preferred form of the work +for making modifications to it. "Object code" means any non-source +form of a work. + + A "Standard Interface" means an interface that either is an official +standard defined by a recognized standards body, or, in the case of +interfaces specified for a particular programming language, one that +is widely used among developers working in that language. + + The "System Libraries" of an executable work include anything, other +than the work as a whole, that (a) is included in the normal form of +packaging a Major Component, but which is not part of that Major +Component, and (b) serves only to enable use of the work with that +Major Component, or to implement a Standard Interface for which an +implementation is available to the public in source code form. A +"Major Component", in this context, means a major essential component +(kernel, window system, and so on) of the specific operating system +(if any) on which the executable work runs, or a compiler used to +produce the work, or an object code interpreter used to run it. + + The "Corresponding Source" for a work in object code form means all +the source code needed to generate, install, and (for an executable +work) run the object code and to modify the work, including scripts to +control those activities. However, it does not include the work's +System Libraries, or general-purpose tools or generally available free +programs which are used unmodified in performing those activities but +which are not part of the work. For example, Corresponding Source +includes interface definition files associated with source files for +the work, and the source code for shared libraries and dynamically +linked subprograms that the work is specifically designed to require, +such as by intimate data communication or control flow between those +subprograms and other parts of the work. + + The Corresponding Source need not include anything that users +can regenerate automatically from other parts of the Corresponding +Source. + + The Corresponding Source for a work in source code form is that +same work. + + 2. Basic Permissions. + + All rights granted under this License are granted for the term of +copyright on the Program, and are irrevocable provided the stated +conditions are met. This License explicitly affirms your unlimited +permission to run the unmodified Program. The output from running a +covered work is covered by this License only if the output, given its +content, constitutes a covered work. This License acknowledges your +rights of fair use or other equivalent, as provided by copyright law. + + You may make, run and propagate covered works that you do not +convey, without conditions so long as your license otherwise remains +in force. You may convey covered works to others for the sole purpose +of having them make modifications exclusively for you, or provide you +with facilities for running those works, provided that you comply with +the terms of this License in conveying all material for which you do +not control copyright. Those thus making or running the covered works +for you must do so exclusively on your behalf, under your direction +and control, on terms that prohibit them from making any copies of +your copyrighted material outside their relationship with you. + + Conveying under any other circumstances is permitted solely under +the conditions stated below. Sublicensing is not allowed; section 10 +makes it unnecessary. + + 3. Protecting Users' Legal Rights From Anti-Circumvention Law. + + No covered work shall be deemed part of an effective technological +measure under any applicable law fulfilling obligations under article +11 of the WIPO copyright treaty adopted on 20 December 1996, or +similar laws prohibiting or restricting circumvention of such +measures. + + When you convey a covered work, you waive any legal power to forbid +circumvention of technological measures to the extent such circumvention +is effected by exercising rights under this License with respect to +the covered work, and you disclaim any intention to limit operation or +modification of the work as a means of enforcing, against the work's +users, your or third parties' legal rights to forbid circumvention of +technological measures. + + 4. Conveying Verbatim Copies. + + You may convey 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; +keep intact all notices stating that this License and any +non-permissive terms added in accord with section 7 apply to the code; +keep intact all notices of the absence of any warranty; and give all +recipients a copy of this License along with the Program. + + You may charge any price or no price for each copy that you convey, +and you may offer support or warranty protection for a fee. + + 5. Conveying Modified Source Versions. + + You may convey a work based on the Program, or the modifications to +produce it from the Program, in the form of source code under the +terms of section 4, provided that you also meet all of these conditions: + + a) The work must carry prominent notices stating that you modified + it, and giving a relevant date. + + b) The work must carry prominent notices stating that it is + released under this License and any conditions added under section + 7. This requirement modifies the requirement in section 4 to + "keep intact all notices". + + c) You must license the entire work, as a whole, under this + License to anyone who comes into possession of a copy. This + License will therefore apply, along with any applicable section 7 + additional terms, to the whole of the work, and all its parts, + regardless of how they are packaged. This License gives no + permission to license the work in any other way, but it does not + invalidate such permission if you have separately received it. + + d) If the work has interactive user interfaces, each must display + Appropriate Legal Notices; however, if the Program has interactive + interfaces that do not display Appropriate Legal Notices, your + work need not make them do so. + + A compilation of a covered work with other separate and independent +works, which are not by their nature extensions of the covered work, +and which are not combined with it such as to form a larger program, +in or on a volume of a storage or distribution medium, is called an +"aggregate" if the compilation and its resulting copyright are not +used to limit the access or legal rights of the compilation's users +beyond what the individual works permit. Inclusion of a covered work +in an aggregate does not cause this License to apply to the other +parts of the aggregate. + + 6. Conveying Non-Source Forms. + + You may convey a covered work in object code form under the terms +of sections 4 and 5, provided that you also convey the +machine-readable Corresponding Source under the terms of this License, +in one of these ways: + + a) Convey the object code in, or embodied in, a physical product + (including a physical distribution medium), accompanied by the + Corresponding Source fixed on a durable physical medium + customarily used for software interchange. + + b) Convey the object code in, or embodied in, a physical product + (including a physical distribution medium), accompanied by a + written offer, valid for at least three years and valid for as + long as you offer spare parts or customer support for that product + model, to give anyone who possesses the object code either (1) a + copy of the Corresponding Source for all the software in the + product that is covered by this License, on a durable physical + medium customarily used for software interchange, for a price no + more than your reasonable cost of physically performing this + conveying of source, or (2) access to copy the + Corresponding Source from a network server at no charge. + + c) Convey individual copies of the object code with a copy of the + written offer to provide the Corresponding Source. This + alternative is allowed only occasionally and noncommercially, and + only if you received the object code with such an offer, in accord + with subsection 6b. + + d) Convey the object code by offering access from a designated + place (gratis or for a charge), and offer equivalent access to the + Corresponding Source in the same way through the same place at no + further charge. You need not require recipients to copy the + Corresponding Source along with the object code. If the place to + copy the object code is a network server, the Corresponding Source + may be on a different server (operated by you or a third party) + that supports equivalent copying facilities, provided you maintain + clear directions next to the object code saying where to find the + Corresponding Source. Regardless of what server hosts the + Corresponding Source, you remain obligated to ensure that it is + available for as long as needed to satisfy these requirements. + + e) Convey the object code using peer-to-peer transmission, provided + you inform other peers where the object code and Corresponding + Source of the work are being offered to the general public at no + charge under subsection 6d. + + A separable portion of the object code, whose source code is excluded +from the Corresponding Source as a System Library, need not be +included in conveying the object code work. + + A "User Product" is either (1) a "consumer product", which means any +tangible personal property which is normally used for personal, family, +or household purposes, or (2) anything designed or sold for incorporation +into a dwelling. In determining whether a product is a consumer product, +doubtful cases shall be resolved in favor of coverage. For a particular +product received by a particular user, "normally used" refers to a +typical or common use of that class of product, regardless of the status +of the particular user or of the way in which the particular user +actually uses, or expects or is expected to use, the product. A product +is a consumer product regardless of whether the product has substantial +commercial, industrial or non-consumer uses, unless such uses represent +the only significant mode of use of the product. + + "Installation Information" for a User Product means any methods, +procedures, authorization keys, or other information required to install +and execute modified versions of a covered work in that User Product from +a modified version of its Corresponding Source. The information must +suffice to ensure that the continued functioning of the modified object +code is in no case prevented or interfered with solely because +modification has been made. + + If you convey an object code work under this section in, or with, or +specifically for use in, a User Product, and the conveying occurs as +part of a transaction in which the right of possession and use of the +User Product is transferred to the recipient in perpetuity or for a +fixed term (regardless of how the transaction is characterized), the +Corresponding Source conveyed under this section must be accompanied +by the Installation Information. But this requirement does not apply +if neither you nor any third party retains the ability to install +modified object code on the User Product (for example, the work has +been installed in ROM). + + The requirement to provide Installation Information does not include a +requirement to continue to provide support service, warranty, or updates +for a work that has been modified or installed by the recipient, or for +the User Product in which it has been modified or installed. Access to a +network may be denied when the modification itself materially and +adversely affects the operation of the network or violates the rules and +protocols for communication across the network. + + Corresponding Source conveyed, and Installation Information provided, +in accord with this section must be in a format that is publicly +documented (and with an implementation available to the public in +source code form), and must require no special password or key for +unpacking, reading or copying. + + 7. Additional Terms. + + "Additional permissions" are terms that supplement the terms of this +License by making exceptions from one or more of its conditions. +Additional permissions that are applicable to the entire Program shall +be treated as though they were included in this License, to the extent +that they are valid under applicable law. If additional permissions +apply only to part of the Program, that part may be used separately +under those permissions, but the entire Program remains governed by +this License without regard to the additional permissions. + + When you convey a copy of a covered work, you may at your option +remove any additional permissions from that copy, or from any part of +it. (Additional permissions may be written to require their own +removal in certain cases when you modify the work.) You may place +additional permissions on material, added by you to a covered work, +for which you have or can give appropriate copyright permission. + + Notwithstanding any other provision of this License, for material you +add to a covered work, you may (if authorized by the copyright holders of +that material) supplement the terms of this License with terms: + + a) Disclaiming warranty or limiting liability differently from the + terms of sections 15 and 16 of this License; or + + b) Requiring preservation of specified reasonable legal notices or + author attributions in that material or in the Appropriate Legal + Notices displayed by works containing it; or + + c) Prohibiting misrepresentation of the origin of that material, or + requiring that modified versions of such material be marked in + reasonable ways as different from the original version; or + + d) Limiting the use for publicity purposes of names of licensors or + authors of the material; or + + e) Declining to grant rights under trademark law for use of some + trade names, trademarks, or service marks; or + + f) Requiring indemnification of licensors and authors of that + material by anyone who conveys the material (or modified versions of + it) with contractual assumptions of liability to the recipient, for + any liability that these contractual assumptions directly impose on + those licensors and authors. + + All other non-permissive additional terms are considered "further +restrictions" within the meaning of section 10. If the Program as you +received it, or any part of it, contains a notice stating that it is +governed by this License along with a term that is a further +restriction, you may remove that term. If a license document contains +a further restriction but permits relicensing or conveying under this +License, you may add to a covered work material governed by the terms +of that license document, provided that the further restriction does +not survive such relicensing or conveying. + + If you add terms to a covered work in accord with this section, you +must place, in the relevant source files, a statement of the +additional terms that apply to those files, or a notice indicating +where to find the applicable terms. + + Additional terms, permissive or non-permissive, may be stated in the +form of a separately written license, or stated as exceptions; +the above requirements apply either way. + + 8. Termination. + + You may not propagate or modify a covered work except as expressly +provided under this License. Any attempt otherwise to propagate or +modify it is void, and will automatically terminate your rights under +this License (including any patent licenses granted under the third +paragraph of section 11). + + However, if you cease all violation of this License, then your +license from a particular copyright holder is reinstated (a) +provisionally, unless and until the copyright holder explicitly and +finally terminates your license, and (b) permanently, if the copyright +holder fails to notify you of the violation by some reasonable means +prior to 60 days after the cessation. + + Moreover, your license from a particular copyright holder is +reinstated permanently if the copyright holder notifies you of the +violation by some reasonable means, this is the first time you have +received notice of violation of this License (for any work) from that +copyright holder, and you cure the violation prior to 30 days after +your receipt of the notice. + + Termination of your rights under this section does not terminate the +licenses of parties who have received copies or rights from you under +this License. If your rights have been terminated and not permanently +reinstated, you do not qualify to receive new licenses for the same +material under section 10. + + 9. Acceptance Not Required for Having Copies. + + You are not required to accept this License in order to receive or +run a copy of the Program. Ancillary propagation of a covered work +occurring solely as a consequence of using peer-to-peer transmission +to receive a copy likewise does not require acceptance. However, +nothing other than this License grants you permission to propagate or +modify any covered work. These actions infringe copyright if you do +not accept this License. Therefore, by modifying or propagating a +covered work, you indicate your acceptance of this License to do so. + + 10. Automatic Licensing of Downstream Recipients. + + Each time you convey a covered work, the recipient automatically +receives a license from the original licensors, to run, modify and +propagate that work, subject to this License. You are not responsible +for enforcing compliance by third parties with this License. + + An "entity transaction" is a transaction transferring control of an +organization, or substantially all assets of one, or subdividing an +organization, or merging organizations. If propagation of a covered +work results from an entity transaction, each party to that +transaction who receives a copy of the work also receives whatever +licenses to the work the party's predecessor in interest had or could +give under the previous paragraph, plus a right to possession of the +Corresponding Source of the work from the predecessor in interest, if +the predecessor has it or can get it with reasonable efforts. + + You may not impose any further restrictions on the exercise of the +rights granted or affirmed under this License. For example, you may +not impose a license fee, royalty, or other charge for exercise of +rights granted under this License, and you may not initiate litigation +(including a cross-claim or counterclaim in a lawsuit) alleging that +any patent claim is infringed by making, using, selling, offering for +sale, or importing the Program or any portion of it. + + 11. Patents. + + A "contributor" is a copyright holder who authorizes use under this +License of the Program or a work on which the Program is based. The +work thus licensed is called the contributor's "contributor version". + + A contributor's "essential patent claims" are all patent claims +owned or controlled by the contributor, whether already acquired or +hereafter acquired, that would be infringed by some manner, permitted +by this License, of making, using, or selling its contributor version, +but do not include claims that would be infringed only as a +consequence of further modification of the contributor version. For +purposes of this definition, "control" includes the right to grant +patent sublicenses in a manner consistent with the requirements of +this License. + + Each contributor grants you a non-exclusive, worldwide, royalty-free +patent license under the contributor's essential patent claims, to +make, use, sell, offer for sale, import and otherwise run, modify and +propagate the contents of its contributor version. + + In the following three paragraphs, a "patent license" is any express +agreement or commitment, however denominated, not to enforce a patent +(such as an express permission to practice a patent or covenant not to +sue for patent infringement). To "grant" such a patent license to a +party means to make such an agreement or commitment not to enforce a +patent against the party. + + If you convey a covered work, knowingly relying on a patent license, +and the Corresponding Source of the work is not available for anyone +to copy, free of charge and under the terms of this License, through a +publicly available network server or other readily accessible means, +then you must either (1) cause the Corresponding Source to be so +available, or (2) arrange to deprive yourself of the benefit of the +patent license for this particular work, or (3) arrange, in a manner +consistent with the requirements of this License, to extend the patent +license to downstream recipients. "Knowingly relying" means you have +actual knowledge that, but for the patent license, your conveying the +covered work in a country, or your recipient's use of the covered work +in a country, would infringe one or more identifiable patents in that +country that you have reason to believe are valid. + + If, pursuant to or in connection with a single transaction or +arrangement, you convey, or propagate by procuring conveyance of, a +covered work, and grant a patent license to some of the parties +receiving the covered work authorizing them to use, propagate, modify +or convey a specific copy of the covered work, then the patent license +you grant is automatically extended to all recipients of the covered +work and works based on it. + + A patent license is "discriminatory" if it does not include within +the scope of its coverage, prohibits the exercise of, or is +conditioned on the non-exercise of one or more of the rights that are +specifically granted under this License. You may not convey a covered +work if you are a party to an arrangement with a third party that is +in the business of distributing software, under which you make payment +to the third party based on the extent of your activity of conveying +the work, and under which the third party grants, to any of the +parties who would receive the covered work from you, a discriminatory +patent license (a) in connection with copies of the covered work +conveyed by you (or copies made from those copies), or (b) primarily +for and in connection with specific products or compilations that +contain the covered work, unless you entered into that arrangement, +or that patent license was granted, prior to 28 March 2007. + + Nothing in this License shall be construed as excluding or limiting +any implied license or other defenses to infringement that may +otherwise be available to you under applicable patent law. + + 12. No Surrender of Others' Freedom. + + If 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 convey a +covered work so as to satisfy simultaneously your obligations under this +License and any other pertinent obligations, then as a consequence you may +not convey it at all. For example, if you agree to terms that obligate you +to collect a royalty for further conveying from those to whom you convey +the Program, the only way you could satisfy both those terms and this +License would be to refrain entirely from conveying the Program. + + 13. Use with the GNU Affero General Public License. + + Notwithstanding any other provision of this License, you have +permission to link or combine any covered work with a work licensed +under version 3 of the GNU Affero General Public License into a single +combined work, and to convey the resulting work. The terms of this +License will continue to apply to the part which is the covered work, +but the special requirements of the GNU Affero General Public License, +section 13, concerning interaction through a network will apply to the +combination as such. + + 14. Revised Versions of this License. + + The Free Software Foundation may publish revised and/or new versions of +the GNU 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 that a certain numbered version of the GNU General +Public License "or any later version" applies to it, you have the +option of following the terms and conditions either of that numbered +version or of any later version published by the Free Software +Foundation. If the Program does not specify a version number of the +GNU General Public License, you may choose any version ever published +by the Free Software Foundation. + + If the Program specifies that a proxy can decide which future +versions of the GNU General Public License can be used, that proxy's +public statement of acceptance of a version permanently authorizes you +to choose that version for the Program. + + Later license versions may give you additional or different +permissions. However, no additional obligations are imposed on any +author or copyright holder as a result of your choosing to follow a +later version. + + 15. Disclaimer of Warranty. + + 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. + + 16. Limitation of Liability. + + IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING +WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MODIFIES AND/OR CONVEYS +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. + + 17. Interpretation of Sections 15 and 16. + + If the disclaimer of warranty and limitation of liability provided +above cannot be given local legal effect according to their terms, +reviewing courts shall apply local law that most closely approximates +an absolute waiver of all civil liability in connection with the +Program, unless a warranty or assumption of liability accompanies a +copy of the Program in return for a fee. + + 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 +state 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 3 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, see . + +Also add information on how to contact you by electronic and paper mail. + + If the program does terminal interaction, make it output a short +notice like this when it starts in an interactive mode: + + Copyright (C) + This program 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, your program's commands +might be different; for a GUI interface, you would use an "about box". + + You should also get your employer (if you work as a programmer) or school, +if any, to sign a "copyright disclaimer" for the program, if necessary. +For more information on this, and how to apply and follow the GNU GPL, see +. + + The GNU 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 Lesser General +Public License instead of this License. But first, please read +. \ No newline at end of file diff --git a/Makefile b/Makefile new file mode 100644 index 0000000..6c7f5de --- /dev/null +++ b/Makefile @@ -0,0 +1,61 @@ +# Basic Makefile + +UUID = ping-monitor@samuel.bachmann.gmail.com +BASE_MODULES = $(UUID)/extension.js $(UUID)/README* $(UUID)/metadata.json $(UUID)/prefs.js $(UUID)/stylesheet.css $(UUID)/convenience.js $(UUID)/compat.js $(UUID)/ping.sh +ifeq ($(strip $(DESTDIR)),) + INSTALLBASE = $(HOME)/.local/share/gnome-shell/extensions +else + INSTALLBASE = $(DESTDIR)/usr/share/gnome-shell/extensions +endif +INSTALLNAME = ping-monitor@samuel.bachmann.gmail.com + +# The command line passed variable VERSION is used to set the version string +# in the metadata and in the generated zip-file. If no VERSION is passed, the +# current commit SHA1 is used as version number in the metadata while the +# generated zip file has no string attached. +ifdef VERSION + VSTRING = _v$(VERSION) +else + VERSION = $(shell git rev-parse HEAD) + VSTRING = +endif + +all: extension + +clean: + rm -f ./$(UUID)/schemas/gschemas.compiled + +extension: ./$(UUID)/schemas/gschemas.compiled + +./$(UUID)/schemas/gschemas.compiled: ./$(UUID)/schemas/org.gnome.shell.extensions.ping-monitor.gschema.xml + glib-compile-schemas ./$(UUID)/schemas/ + +install: install-local + +install-local: _build + rm -rf $(INSTALLBASE)/$(INSTALLNAME) + mkdir -p $(INSTALLBASE)/$(INSTALLNAME) + cp -r ./_build/* $(INSTALLBASE)/$(INSTALLNAME)/ + -rm -fR _build + echo done + +zip-file: _build + cd _build ; \ + zip -qr "$(UUID)$(VSTRING).zip" . + mv _build/$(UUID)$(VSTRING).zip ./ + -rm -fR _build + +_build: update-translation + -rm -fR ./_build + mkdir -p _build + cp $(BASE_MODULES) _build + mkdir -p _build/locale + cp -r $(UUID)/locale/* _build/locale/ + mkdir -p _build/schemas + cp $(UUID)/schemas/*.xml _build/schemas/ + cp $(UUID)/schemas/gschemas.compiled _build/schemas/ + sed -i 's/"version": -1/"version": "$(VERSION)"/' _build/metadata.json; + +update-translation: all + cd po; \ + ./compile.sh ../ping-monitor@samuel.bachmann.gmail.com/locale; diff --git a/README.md b/README.md new file mode 100644 index 0000000..3c7ffe7 --- /dev/null +++ b/README.md @@ -0,0 +1,150 @@ +## Gnome shell ping monitor extension + +This is still in development and just an alpha version. + +### Installation + +#### Prerequisites + +This extension [requires GNOME Shell v3.4 or later](https://github.com/anybotics/gnome-shell-ping-monitor-applet/blob/master/ping-monitor%40samuel.bachmann.gmail.com/metadata.json#L2). + +Before installing this extension, ensure you have the necessary system packages installed: + +* On Ubuntu: + + $ sudo apt-get install gir1.2-gtop-2.0 gir1.2-clutter-1.0 + +* On Fedora: + + $ sudo yum install --assumeyes libgtop2-devel + +* On openSUSE (Leap 42.1): + + $ sudo zypper install gnome-shell-devel libgtop-devel libgtop-2_0-10 + +For the browser installation (recommended), you will need the GNOME Shell integration browser extension for +[Chrome](https://chrome.google.com/webstore/detail/gnome-shell-integration/gphhapmejobijbbhgpjhcjognlahblep), +[Firefox](https://addons.mozilla.org/en-US/firefox/addon/gnome-shell-integration/) or +[Opera](https://addons.opera.com/en/extensions/details/gnome-shell-integration/). + +Note: If you're using Firefox 52 or later, [you will also need to install `chrome-gnome-shell`](https://blogs.gnome.org/ne0sight/2016/12/25/how-to-install-gnome-shell-extensions-with-firefox-52/). +The instructions are available [on the GNOME wiki](https://wiki.gnome.org/Projects/GnomeShellIntegrationForChrome/Installation#Ubuntu_Linux). + +#### Browser installation + +It's recommended you install the extension via the Gnome Shell Extensions website. + +Visit [this extension's page on extensions.gnome.org](https://extensions.gnome.org/extension/120/ping-monitor/), +preferably in Firefox, and install by clicking the toggle button next to the extension's name. + +If the install was successful, the toggle button should now show "ON". +If it failed, ensure that you installed all the [necessary dependencies](#prerequisites), +and that you granted the browser permission to install extensions when prompted. +Additionally, rebooting gnome-shell may help (type `Alt + F2` and input `r` in the prompt). + +#### Manual installation + +[Download the ZIP/Tarball](https://github.com/anybotics/gnome-shell-ping-monitor-applet/releases), +extract the archive, open a shell into its directory, and run: + + make install + +Alternately, if you plan on doing development on the extension, or testing modifications, it's advised you checkout the Git repository and install a symlink. First, install git if you don't have it: (sudo apt-get install git-core, sudo pacman -S git, etc), then run: + + mkdir ~/git + cd ~/git + git clone git://github.com/anybotics/gnome-shell-ping-monitor-applet.git + mkdir -p ~/.local/share/gnome-shell/extensions + cd ~/.local/share/gnome-shell/extensions + ln -s ~/git/gnome-shell-ping-monitor-applet/ping-monitor@samuel.bachmann.gmail.com + gnome-shell-extension-tool --enable-extension=ping-monitor@samuel.bachmann.gmail.com + +And restart gnome-shell (`Alt + F2`, then `r`) or reboot the machine. + +On openSUSE you need to install a devel package that provides the `gnome-shell-extension-tool` command: + + $ sudo zypper install gnome-shell-devel + + +### Configuration + +At the moment you still need a manual config file. Create a file `~/.config/ping-monitor.conf` with e.g.: + +``` +{ + "debug_output": false, + "ping_config": [ + { + "tag": "google", + "name": "Google", + "address": "8.8.8.8", + "ping_count": 2, + "ping_interval": 0.3, + "ping_deadline": 3, + "refresh_interval": 2000, + "active": true, + "visible": true, + "show_name": true, + "show_address": true, + "show_tooltip": true, + "warning_threshold": 20 + }, + { + "tag": "router", + "name": "Router", + "address": "192.168.0.1", + "ping_count": 2, + "ping_interval": 0.3, + "ping_deadline": 3, + "refresh_interval": 2000, + "active": true, + "visible": true, + "show_name": true, + "show_address": true, + "show_tooltip": true, + "warning_threshold": 20 + } + ] +} +``` + +Make sure that you define all variables. + +To load a new config you need to restart Gnome-Shell: `Alt + F2` then `r` and `Enter`. + +### Development + +#### Deployment + +To create a zip file with the specified version number, ready to upload to [Gnome Shell Extensions](https://extensions.gnome.org/) or similar repository, run: + + make zip-file VERSION= + +To determine the version number to use, check the extensions site and increment from the largest published version. + +The specified version number is just for documentation and isn't strictly necessary in the uploaded file, since the extensions website will dynamically set this and override whatever we enter. + +Once uploaded, [create a Github release](https://github.com/anybotics/gnome-shell-ping-monitor-applet/releases) with the same version number. + +### Authors + +[samuelba](https://github.com/samuelba) + +I took the [gnome-shell-system-monitor-applet](https://github.com/anybotics/gnome-shell-system-monitor-applet) and wrote my ping applet on top of it. + +### License + +Copyright (C) 2019 Samuel Bachmann aka samuelba + +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 3 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, see . diff --git a/archlinux/PKGBUILD b/archlinux/PKGBUILD new file mode 100644 index 0000000..c0f2005 --- /dev/null +++ b/archlinux/PKGBUILD @@ -0,0 +1,35 @@ +# Maintainer: Florian Mounier aka paradoxxxzero +pkgname=gnome-shell-system-monitor-applet-git +pkgver=20120504 +pkgrel=1 +pkgdesc="System monitor extension for Gnome-Shell (display mem swap cpu usage)" +arch=('any') +url="http://github.com/paradoxxxzero/gnome-shell-system-monitor-applet" +license=('GPL3') +depends=('gnome-shell>=3.3.90' 'libgtop' 'networkmanager') +makedepends=('git') +provides=("system-monitor-applet") +#install=gschemas.install + +_gitroot="git://github.com/paradoxxxzero/gnome-shell-system-monitor-applet.git" +_gitname="gnome-shell-system-monitor-applet" + +build() { + cd ${srcdir}/ + msg "Connecting to the GIT server..." + if [[ -d ${srcdir}/${_gitname} ]] ; then + cd ${_gitname} + git pull origin + msg "The local files are updated..." + else + git clone ${_gitroot} ${_gitname} + fi + msg "GIT checkout done." +} + +package() { + cd "$srcdir/gnome-shell-system-monitor-applet" + mkdir -p "$pkgdir/usr/share/gnome-shell/extensions/" + cp -R "system-monitor@paradoxxx.zero.gmail.com" "$pkgdir/usr/share/gnome-shell/extensions" +} + diff --git a/archlinux/PKGBUILD.gnome-shell-3.2 b/archlinux/PKGBUILD.gnome-shell-3.2 new file mode 100644 index 0000000..fb5c0d1 --- /dev/null +++ b/archlinux/PKGBUILD.gnome-shell-3.2 @@ -0,0 +1,42 @@ +# Maintainer: Florian Mounier aka paradoxxxzero +pkgname=gnome-shell-system-monitor-applet-git +pkgver=20111023 +pkgrel=1 +pkgdesc="System monitor extension for Gnome-Shell (display mem swap cpu usage)" +arch=('any') +url="http://github.com/paradoxxxzero/gnome-shell-system-monitor-applet" +license=('GPL3') +depends=('gnome-shell<3.3' 'python-gobject' 'libgtop' 'networkmanager') +makedepends=('git') +provides=("system-monitor-applet") +install=gschemas.install + +_gitroot="git://github.com/paradoxxxzero/gnome-shell-system-monitor-applet.git" +_gitname="gnome-shell-system-monitor-applet" + +build() { + cd ${srcdir}/ + msg "Connecting to the GIT server..." + if [[ -d ${srcdir}/${_gitname} ]] ; then + cd ${_gitname} + git pull origin + msg "The local files are updated..." + else + git clone ${_gitroot} ${_gitname} + fi + msg "GIT checkout done." +} + +package() { + cd "$srcdir/gnome-shell-system-monitor-applet" + git checkout gnome-3.2 + sed -i 's|GTop.glibtop_get_sysinfo().ncpu|this.get_cores()|' "system-monitor@paradoxxx.zero.gmail.com/extension.js" + mkdir -p "$pkgdir/usr/share/gnome-shell/extensions/" + cp -R "system-monitor@paradoxxx.zero.gmail.com" "$pkgdir/usr/share/gnome-shell/extensions" + mkdir -p "$pkgdir/usr/share/glib-2.0/schemas" + cp "org.gnome.shell.extensions.system-monitor.gschema.xml" "$pkgdir/usr/share/glib-2.0/schemas" + mkdir -p "$pkgdir/usr/bin" + cp "system-monitor-applet-config.py" "$pkgdir/usr/bin/system-monitor-applet-config" + mkdir -p "$pkgdir/usr/share/applications" + cp "system-monitor-applet-config.desktop" "$pkgdir/usr/share/applications" +} diff --git a/checkjs.sh b/checkjs.sh new file mode 100755 index 0000000..1592fbd --- /dev/null +++ b/checkjs.sh @@ -0,0 +1,4 @@ +#!/bin/bash +# Install eslint with: +# sudo apt-get install npm && sudo npm install -g eslint +eslint ping-monitor@samuel.bachmann.gmail.com diff --git a/ping-monitor@samuel.bachmann.gmail.com/README b/ping-monitor@samuel.bachmann.gmail.com/README new file mode 100644 index 0000000..6eb569d --- /dev/null +++ b/ping-monitor@samuel.bachmann.gmail.com/README @@ -0,0 +1,4 @@ +Dependencies: +libgtop and gir bindings + on Ubuntu: gir1.2-gtop-2.0, gir1.2-networkmanager-1.0 + on Fedora: libgtop2-devel, NetworkManager-glib-devel diff --git a/ping-monitor@samuel.bachmann.gmail.com/compat.js b/ping-monitor@samuel.bachmann.gmail.com/compat.js new file mode 100644 index 0000000..56cb6a5 --- /dev/null +++ b/ping-monitor@samuel.bachmann.gmail.com/compat.js @@ -0,0 +1,51 @@ +const Config = imports.misc.config; +const Clutter = imports.gi.Clutter; + +/** Compare two dotted version strings (like '10.2.3'). + * @returns {Integer} 0: v1 == v2, -1: v1 < v2, 1: v1 > v2 + */ +function versionCompare(v1, v2) { + let v1parts = ('' + v1).split('.'); + let v2parts = ('' + v2).split('.'); + let minLength = Math.min(v1parts.length, v2parts.length); + let i, p1, p2; + // Compare tuple pair-by-pair. + for (i = 0; i < minLength; i++) { + // Convert to integer if possible, because "8" > "10". + p1 = parseInt(v1parts[i], 10); + p2 = parseInt(v2parts[i], 10); + if (isNaN(p1)) { + p1 = v1parts[i]; + } + if (isNaN(p2)) { + p2 = v2parts[i]; + } + if (p1 === p2) { + continue; + } else if (p1 > p2) { + return 1; + } else if (p1 < p2) { + return -1; + } + // one operand is NaN + return NaN; + } + // The longer tuple is always considered 'greater' + if (v1parts.length === v2parts.length) { + return 0; + } + return (v1parts.length < v2parts.length) ? -1 : 1; +} + +function color_from_string(color) { + let clutterColor, res; + + if (!Clutter.Color.from_string) { + clutterColor = new Clutter.Color(); + clutterColor.from_string(color); + } else { + [res, clutterColor] = Clutter.Color.from_string(color); + } + + return clutterColor; +} diff --git a/ping-monitor@samuel.bachmann.gmail.com/convenience.js b/ping-monitor@samuel.bachmann.gmail.com/convenience.js new file mode 100644 index 0000000..79b85c1 --- /dev/null +++ b/ping-monitor@samuel.bachmann.gmail.com/convenience.js @@ -0,0 +1,94 @@ +/* -*- mode: js; js-basic-offset: 4; indent-tabs-mode: nil -*- */ +/* + Copyright (c) 2011-2012, Giovanni Campagna + + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions are met: + * Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + * Neither the name of the GNOME nor the + names of its contributors may be used to endorse or promote products + derived from this software without specific prior written permission. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND + ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER BE LIABLE FOR ANY + DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +*/ + +const Gettext = imports.gettext; +const Gio = imports.gi.Gio; + +const Config = imports.misc.config; +const ExtensionUtils = imports.misc.extensionUtils; + +/** + * initTranslations: + * @domain: (optional): the gettext domain to use + * + * Initialize Gettext to load translations from extensionsdir/locale. + * If @domain is not provided, it will be taken from metadata['gettext-domain'] + */ +function initTranslations(domain) { + let extension = ExtensionUtils.getCurrentExtension(); + + domain = domain || extension.metadata['gettext-domain']; + + // check if this extension was built with "make zip-file", and thus + // has the locale files in a subfolder + // otherwise assume that extension has been installed in the + // same prefix as gnome-shell + let localeDir = extension.dir.get_child('locale'); + if (localeDir.query_exists(null)) { + Gettext.bindtextdomain(domain, localeDir.get_path()); + } else { + Gettext.bindtextdomain(domain, Config.LOCALEDIR); + } +} + +/** + * getSettings: + * @schema: (optional): the GSettings schema id + * + * Builds and return a GSettings schema for @schema, using schema files + * in extensionsdir/schemas. If @schema is not provided, it is taken from + * metadata['settings-schema']. + */ +function getSettings(schema) { + let extension = ExtensionUtils.getCurrentExtension(); + + schema = schema || extension.metadata['settings-schema']; + + const GioSSS = Gio.SettingsSchemaSource; + + // check if this extension was built with "make zip-file", and thus + // has the schema files in a subfolder + // otherwise assume that extension has been installed in the + // same prefix as gnome-shell (and therefore schemas are available + // in the standard folders) + let schemaDir = extension.dir.get_child('schemas'); + let schemaSource; + if (schemaDir.query_exists(null)) { + schemaSource = GioSSS.new_from_directory(schemaDir.get_path(), + GioSSS.get_default(), + false); + } else { + schemaSource = GioSSS.get_default(); + } + + let schemaObj = schemaSource.lookup(schema, true); + if (!schemaObj) { + throw new Error('Schema ' + schema + ' could not be found for extension ' + extension.metadata.uuid + '. Please check your installation.'); + } + + return new Gio.Settings({settings_schema: schemaObj}); +} diff --git a/ping-monitor@samuel.bachmann.gmail.com/extension.js b/ping-monitor@samuel.bachmann.gmail.com/extension.js new file mode 100644 index 0000000..01de54f --- /dev/null +++ b/ping-monitor@samuel.bachmann.gmail.com/extension.js @@ -0,0 +1,1196 @@ +/* -*- mode: js2; js2-basic-offset: 4; indent-tabs-mode: nil -*- */ + +// ping-monitor: Gnome shell extension displaying system informations in gnome shell status bar, such as memory usage, cpu usage, network rates… +// Copyright (C) 2011 Florian Mounier aka paradoxxxzero + +// 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 3 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, see . + +// Author: Florian Mounier aka paradoxxxzero + +/* Ugly. This is here so that we don't crash old libnm-glib based shells unnecessarily + * by loading the new libnm.so. Should go away eventually */ +const libnm_glib = imports.gi.GIRepository.Repository.get_default().is_registered('NMClient', '1.0'); + +let debugOutput = false; +let smDepsGtop = true; + +const Config = imports.misc.config; +const Clutter = imports.gi.Clutter; +const GLib = imports.gi.GLib; + +const Gio = imports.gi.Gio; +const Lang = imports.lang; +const Shell = imports.gi.Shell; +const St = imports.gi.St; +const Power = imports.ui.status.power; +// const System = imports.system; +const ModalDialog = imports.ui.modalDialog; + +const ExtensionSystem = imports.ui.extensionSystem; +const ExtensionUtils = imports.misc.extensionUtils; + +const Me = ExtensionUtils.getCurrentExtension(); +const Convenience = Me.imports.convenience; +const Compat = Me.imports.compat; + +let Background, GTop, IconSize, Locale, Schema, StatusArea, Style, gc_timeout, menu_timeout; + +try { + GTop = imports.gi.GTop; +} catch (e) { + log('[Ping monitor] catched error: ' + e); + smDepsGtop = false; +} + +const Main = imports.ui.main; +const Panel = imports.ui.panel; +const PanelMenu = imports.ui.panelMenu; +const PopupMenu = imports.ui.popupMenu; + +const Gettext = imports.gettext.domain('ping-monitor'); +const Mainloop = imports.mainloop; +const Util = imports.misc.util; +const _ = Gettext.gettext; + +const MESSAGE = _('Dependencies Missing\n\ +Please install: \n\ +libgtop and gir bindings\n\ +\t on Ubuntu: gir1.2-gtop-2.0\n\ +\t on Fedora: libgtop2-devel\n\ +\t on Arch: libgtop\n\ +\t on openSUSE: typelib-1_0-GTop-2_0\n'); + +// stale network shares will cause the shell to freeze, enable this with caution +const ENABLE_NETWORK_DISK_USAGE = false; + +let extension = imports.misc.extensionUtils.getCurrentExtension(); +let metadata = extension.metadata; +let shell_Version = Config.PACKAGE_VERSION; + +function print_info(str) { + log('[Ping monitor INFO] ' + str); +} + +function print_debug(str) { + if (debugOutput) { + log('[Ping monitor DEBUG] ' + str); + } +} + +function l_limit(t) { + return (t > 0) ? t : 1000; +} + +function change_text() { + this.label.visible = this.show_name; +} + +function change_style() { + this.text_box.visible = true; + this.chart.actor.visible = this.visible; +} + +function build_menu_info() { + let elts = Main.__sm.elts; + let tray_menu = Main.__sm.tray.menu; + + if (tray_menu._getMenuItems().length && + typeof tray_menu._getMenuItems()[0].actor.get_last_child() !== 'undefined') { + tray_menu._getMenuItems()[0].actor.get_last_child().destroy_all_children(); + for (let elt in elts) { + elts[elt].menu_items = elts[elt].create_menu_items(); + } + } else { + return; + } + + let menu_info_box_table = new St.Widget({ + style: 'padding: 10px 0px 10px 0px; spacing-rows: 10px; spacing-columns: 15px;', + layout_manager: new Clutter.TableLayout() + }); + let menu_info_box_table_layout = menu_info_box_table.layout_manager; + + // Populate Table + let row_index = 0; + for (let elt in elts) { + if (!elts[elt].menu_visible) { + continue; + } + + // Add item name to table + menu_info_box_table_layout.pack( + new St.Label({ + text: elts[elt].name, + style_class: Style.get('sm-title')}), 0, row_index); + + // Add item data to table + let col_index = 1; + for (let item in elts[elt].menu_items) { + menu_info_box_table_layout.pack( + elts[elt].menu_items[item], col_index, row_index); + + col_index++; + } + + row_index++; + } + tray_menu._getMenuItems()[0].actor.get_last_child().add(menu_info_box_table, {expand: true}); +} + +function change_menu() { + this.menu_visible = true; + build_menu_info(); +} + +let color_from_string = Compat.color_from_string; + +const smStyleManager = new Lang.Class({ + Name: 'PingMonitor.smStyleManager', + _extension: '', + _iconsize: 1, + _diskunits: _('MiB/s'), + _netunits_kbytes: _('KiB/s'), + _netunits_mbytes: _('MiB/s'), + _netunits_kbits: _('kbit/s'), + _netunits_mbits: _('Mbit/s'), + _pie_width: 300, + _pie_height: 300, + _pie_fontsize: 14, + _bar_width: 300, + _bar_height: 150, + _bar_fontsize: 14, + _text_scaling: 1, + + _init: function () { + this._compact = Schema.get_boolean('compact-display'); + if (this._compact) { + this._extension = '-compact'; + this._iconsize = 3 / 5; + this._diskunits = _('MB'); + this._netunits_kbytes = _('kB'); + this._netunits_mbytes = _('MB'); + this._netunits_kbits = 'kb'; + this._netunits_mbits = 'Mb'; + this._pie_width *= 4 / 5; + this._pie_height *= 4 / 5; + this._pie_fontsize = 12; + this._bar_width *= 3 / 5; + this._bar_height *= 3 / 5; + this._bar_fontsize = 12; + } + + let interfaceSettings = new Gio.Settings({ + schema: 'org.gnome.desktop.interface' + }); + this._text_scaling = interfaceSettings.get_double('text-scaling-factor'); + if (!this._text_scaling) { + this._text_scaling = 1; + } + }, + get: function (style) { + return style + this._extension; + }, + iconsize: function () { + return this._iconsize; + }, + diskunits: function () { + return this._diskunits; + }, + netunits_kbytes: function () { + return this._netunits_kbytes; + }, + netunits_mbytes: function () { + return this._netunits_mbytes; + }, + netunits_kbits: function () { + return this._netunits_kbits; + }, + netunits_mbits: function () { + return this._netunits_mbits; + }, + pie_width: function () { + return this._pie_width; + }, + pie_height: function () { + return this._pie_height; + }, + pie_fontsize: function () { + return this._pie_fontsize * this._text_scaling; + }, + bar_width: function () { + return this._bar_width; + }, + bar_height: function () { + return this._bar_height; + }, + bar_fontsize: function () { + return this._bar_fontsize * this._text_scaling; + }, + text_scaling: function () { + return this._text_scaling; + }, +}); + +const smDialog = Lang.Class({ + Name: 'PingMonitor.smDialog', + Extends: ModalDialog.ModalDialog, + + _init: function () { + this.parent({styleClass: 'prompt-dialog'}); + let mainContentBox = new St.BoxLayout({style_class: 'prompt-dialog-main-layout', + vertical: false}); + this.contentLayout.add(mainContentBox, + {x_fill: true, + y_fill: true}); + + let messageBox = new St.BoxLayout({style_class: 'prompt-dialog-message-layout', + vertical: true}); + mainContentBox.add(messageBox, + {y_align: St.Align.START}); + + this._subjectLabel = new St.Label({style_class: 'prompt-dialog-headline', + text: _('Ping Monitor Extension')}); + + messageBox.add(this._subjectLabel, + {y_fill: false, + y_align: St.Align.START}); + + this._descriptionLabel = new St.Label({style_class: 'prompt-dialog-description', + text: MESSAGE}); + + messageBox.add(this._descriptionLabel, + {y_fill: true, + y_align: St.Align.START}); + + + this.setButtons([ + { + label: _('Cancel'), + action: Lang.bind(this, function () { + this.close(); + }), + key: Clutter.Escape + } + ]); + }, + +}); + +const StatusSquare = new Lang.Class({ + Name: 'PingMonitor.StatusSquare', + + _width: 10, + _color: '#ff0000', + + _init: function (height, parent) { + this.actor = new St.DrawingArea({style_class: Style.get('sm-chart'), reactive: false}); + this.parentC = parent; + this.actor.set_width(this._width); + this.actor.set_height(this.height = height); + this.actor.connect('repaint', Lang.bind(this, this._draw)); + this.data = []; + // for (let i = 0; i < this.parentC.colors.length; i++) { + // this.data[i] = []; + // } + }, + update: function (color) { + this._color = color; + let data_a = this.parentC.vals; + // if (data_a.length !== this.parentC.colors.length) { + // return; + // } + let accdata = []; + for (let l = 0; l < data_a.length; l++) { + accdata[l] = (l === 0) ? data_a[0] : accdata[l - 1] + ((data_a[l] > 0) ? data_a[l] : 0); + this.data[l].push(accdata[l]); + if (this.data[l].length > this._width) { + this.data[l].shift(); + } + } + if (!this.actor.visible) { + return; + } + this.actor.queue_repaint(); + }, + _draw: function () { + if (!this.actor.visible) { + return; + } + let [width, height] = this.actor.get_surface_size(); + let cr = this.actor.get_context(); + Clutter.cairo_set_source_color(cr, color_from_string(this._color)); + cr.rectangle(0, (height-this._width)/2, this._width, this._width); + cr.fill(); + if (Compat.versionCompare(shell_Version, '3.7.4')) { + cr.$dispose(); + } + }, + resize: function (schema, key) { + // let old_width = this._width; + // this._width = Schema.get_int(key); + // if (old_width === this._width) { + // return; + // } + // this.actor.set_width(this._width); + // if (this._width < this.data[0].length) { + // for (let i = 0; i < this.parentC.colors.length; i++) { + // this.data[i] = this.data[i].slice(-this._width); + // } + // } + } +}); + +const TipItem = new Lang.Class({ + Name: 'PingMonitor.TipItem', + Extends: PopupMenu.PopupBaseMenuItem, + + _init: function () { + PopupMenu.PopupBaseMenuItem.prototype._init.call(this); + this.actor.remove_style_class_name('popup-menu-item'); + this.actor.add_style_class_name('sm-tooltip-item'); + } +}); + +/** + * Tooltip when hovering + * @type {Lang.Class} + */ +const TipMenu = new Lang.Class({ + Name: 'PingMonitor.TipMenu', + Extends: PopupMenu.PopupMenuBase, + + _init: function (sourceActor) { + // PopupMenu.PopupMenuBase.prototype._init.call(this, sourceActor, 'sm-tooltip-box'); + this.parent(sourceActor, 'sm-tooltip-box'); + this.actor = new Shell.GenericContainer(); + this.actor.connect('get-preferred-width', + Lang.bind(this, this._boxGetPreferredWidth)); + this.actor.connect('get-preferred-height', + Lang.bind(this, this._boxGetPreferredHeight)); + this.actor.connect('allocate', Lang.bind(this, this._boxAllocate)); + this.actor.add_actor(this.box); + }, + _boxGetPreferredWidth: function (actor, forHeight, alloc) { + // let columnWidths = this.getColumnWidths(); + // this.setColumnWidths(columnWidths); + + [alloc.min_size, alloc.natural_size] = this.box.get_preferred_width(forHeight); + }, + _boxGetPreferredHeight: function (actor, forWidth, alloc) { + [alloc.min_size, alloc.natural_size] = this.box.get_preferred_height(forWidth); + }, + _boxAllocate: function (actor, box, flags) { + this.box.allocate(box, flags); + }, + _shift: function () { + // Probably old but works + let node = this.sourceActor.get_theme_node(); + let contentbox = node.get_content_box(this.sourceActor.get_allocation_box()); + let allocation = Shell.util_get_transformed_allocation(this.sourceActor); + let monitor = Main.layoutManager.findMonitorForActor(this.sourceActor) + let [x, y] = [allocation.x1 + contentbox.x1, + allocation.y1 + contentbox.y1]; + let [cx, cy] = [allocation.x1 + (contentbox.x1 + contentbox.x2) / 2, + allocation.y1 + (contentbox.y1 + contentbox.y2) / 2]; + let [xm, ym] = [allocation.x1 + contentbox.x2, + allocation.y1 + contentbox.y2]; + let [width, height] = this.actor.get_size(); + let tipx = cx - width / 2; + tipx = Math.max(tipx, monitor.x); + tipx = Math.min(tipx, monitor.x + monitor.width - width); + let tipy = Math.floor(ym); + // Hacky condition to determine if the status bar is at the top or at the bottom of the screen + if (allocation.y1 / monitor.height > 0.3) { + tipy = allocation.y1 - height; // If it is at the bottom, place the tooltip above instead of below + } + this.actor.set_position(tipx, tipy); + }, + open: function (animate) { + if (this.isOpen) { + return; + } + + this.isOpen = true; + this.actor.show(); + this._shift(); + this.actor.raise_top(); + this.emit('open-state-changed', true); + }, + close: function (animate) { + this.isOpen = false; + this.actor.hide(); + this.emit('open-state-changed', false); + } +}); + +const TipBox = new Lang.Class({ + Name: 'PingMonitor.TipBox', + + show_tooltip: true, // show mouseover tooltip + + _init: function () { + this.actor = new St.BoxLayout({reactive: true}); // this is visualized + this.actor._delegate = this; + this.set_tip(new TipMenu(this.actor)); + this.in_to = this.out_to = 0; + this.actor.connect('enter-event', Lang.bind(this, this.on_enter)); + this.actor.connect('leave-event', Lang.bind(this, this.on_leave)); + }, + set_tip: function (tipmenu) { + if (this.tipmenu) { + this.tipmenu.destroy(); + } + this.tipmenu = tipmenu; + if (this.tipmenu) { + Main.uiGroup.add_actor(this.tipmenu.actor); + this.hide_tip(); + } + }, + show_tip: function () { + if (!this.tipmenu) { + return; + } + this.tipmenu.open(); + if (this.in_to) { + Mainloop.source_remove(this.in_to); + this.in_to = 0; + } + }, + hide_tip: function () { + if (!this.tipmenu) { + return; + } + this.tipmenu.close(); + if (this.out_to) { + Mainloop.source_remove(this.out_to); + this.out_to = 0; + } + if (this.in_to) { + Mainloop.source_remove(this.in_to); + this.in_to = 0; + } + }, + on_enter: function () { + let show_tooltip = this.show_tooltip; + + if (!show_tooltip) { + return; + } + + if (this.out_to) { + Mainloop.source_remove(this.out_to); + this.out_to = 0; + } + if (!this.in_to) { + this.in_to = Mainloop.timeout_add(500, + Lang.bind(this, + this.show_tip)); + } + }, + on_leave: function () { + if (this.in_to) { + Mainloop.source_remove(this.in_to); + this.in_to = 0; + } + if (!this.out_to) { + this.out_to = Mainloop.timeout_add(500, + Lang.bind(this, + this.hide_tip)); + } + }, + destroy: function () { + if (this.in_to) { + Mainloop.source_remove(this.in_to); + this.in_to = 0; + } + + if (this.out_to) { + Mainloop.source_remove(this.out_to); + this.out_to = 0; + } + + this.actor.destroy(); + }, +}); + +const ElementBase = new Lang.Class({ + Name: 'PingMonitor.ElementBase', + Extends: TipBox, + + elt: '', + name: '', + color_name: [], + text_items: [], + menu_items: [], + menu_visible: true, + color: '#ff0000', + + refresh_interval: 5000, // milliseconds between ping + visible: true, // show in the system tray + + + _init: function () { + this.parent(arguments); + this.vals = []; + this.tip_labels = []; + this.tip_vals = []; + this.tip_unit_labels = []; + + this.chart = new StatusSquare(IconSize, this); + Schema.connect('changed::background', + Lang.bind(this, + function () { + this.chart.actor.queue_repaint(); + })); + + this.actor.visible = true;//Schema.get_boolean(this.elt + '-display'); + // Schema.connect( + // 'changed::' + this.elt + '-display', + // Lang.bind(this, + // function (schema, key) { + // this.actor.visible = Schema.get_boolean(key); + // })); + + this.interval = 3000; // milliseconds + this.timeout = Mainloop.timeout_add( + this.interval, + Lang.bind(this, this.update) + ); + /* + Schema.connect( + 'changed::' + this.elt + '-refresh-time', + Lang.bind(this, + function (schema, key) { + Mainloop.source_remove(this.timeout); + this.timeout = null; + this.interval = l_limit(Schema.get_int(key)); + this.timeout = Mainloop.timeout_add( + this.interval, Lang.bind(this, this.update)); + })); + Schema.connect('changed::' + this.elt + '-graph-width', + Lang.bind(this.chart, this.chart.resize)); + + if (this.elt === 'thermal') { + Schema.connect('changed::thermal-threshold', + Lang.bind(this, + function () { + Mainloop.source_remove(this.timeout); + this.timeout = null; + this.reset_style(); + this.timeout = Mainloop.timeout_add( + this.interval, Lang.bind(this, this.update)); + })); + } + */ + + this.label = new St.Label({text: this.name, style_class: Style.get('sm-status-label')}); + // this.label = new St.Label({text: this.elt === 'memory' ? _('mem') : _(this.elt), + // style_class: Style.get('sm-status-label')}); + change_text.call(this); + // Schema.connect('changed::' + this.elt + '-show-text', Lang.bind(this, change_text)); + + this.menu_visible = true; + // this.menu_visible = Schema.get_boolean(this.elt + '-show-menu'); + // Schema.connect('changed::' + this.elt + '-show-menu', Lang.bind(this, change_menu)); + + this.actor.add_actor(this.label); //this.actor = new St.BoxLayout({reactive: true}); + this.text_box = new St.BoxLayout(); + + // this.actor.add_actor(this.text_box); + this.text_items = this.create_text_items(); + // for (let item in this.text_items) { + // this.text_box.add_actor(this.text_items[item]); + // } + this.actor.add_actor(this.chart.actor); + change_style.call(this); + // Schema.connect('changed::' + this.elt + '-style', Lang.bind(this, change_style)); + this.menu_items = this.create_menu_items(); + + this.chart.actor.queue_repaint(); + }, + tip_format: function () { + for (let i = 0; i < this.color_name.length; i++) { + let tipline = new TipItem(); + this.tipmenu.addMenuItem(tipline); + // tipline.actor.add(new St.Label({text: _(this.color_name[i])})); + this.tip_labels[i] = new St.Label({text: ''}); + tipline.actor.add(this.tip_labels[i]); + + // this.tip_unit_labels[i] = new St.Label({text: unit[i]}); + // tipline.actor.add(this.tip_unit_labels[i]); + this.tip_vals[i] = 0; + } + }, + update: function () { + if (!this.menu_visible && !this.actor.visible) { + return false; + } + this.refresh(); + this._apply(); + + this.chart.update(this.color); + for (let i = 0; i < this.tip_vals.length; i++) { + this.tip_labels[i].text = this.tip_vals[i].toString(); + } + return true; + }, + reset_style: function () { + this.text_items[0].set_style('color: rgba(255, 255, 255, 1)'); + }, + threshold: function () { + if (Schema.get_int('thermal-threshold')) { + if (this.temp_over_threshold) { + this.text_items[0].set_style('color: rgba(255, 0, 0, 1)'); + } else { + this.text_items[0].set_style('color: rgba(255, 255, 255, 1)'); + } + } + }, + destroy: function () { + TipBox.prototype.destroy.call(this); + if (this.timeout) { + Mainloop.source_remove(this.timeout); + this.timeout = null; + } + } +}); + +const Ping = new Lang.Class({ + Name: 'PingMonitor.Ping', + Extends: ElementBase, + + elt: 'ping', // element type + id: 0, // id + tag: '', // tag + name: '', // name + address: '8.8.8.8', // ip address + ping_count: 2, // number of ping per refresh interval + ping_interval: 0.5, // next ping after x seconds + ping_deadline: 3, // max seconds for ping + // refresh_interval: 5000, // milliseconds between ping + active: true, // run ping + // visible: true, // show in the system tray + show_name: true, // show name in the system tray + show_address: true, // show address in the system tray + // show_tooltip: true, // show mouseover tooltip + warning_treshold: 20, // if ping ms higher -> orange + ping_message: '', // the last ping result + + color_name: ['used'], + + _init: function (id, tag, name, address, ping_count, ping_interval, + ping_deadline, refresh_interval, active, visible, + show_name, show_address, show_tooltip, warning_threshold) { + this.id = id; + this.tag = tag; + if (show_address) { + this.name = name + '\n' + address; + } else { + this.name = name; + } + this.address = address; + this.ping_count = ping_count; + this.ping_interval = ping_interval; + this.ping_deadline = ping_deadline; + this.refresh_interval = refresh_interval; + this.active = active; + this.visible = visible; + this.show_name = show_name; + this.show_address = show_address; + this.show_tooltip = show_tooltip; + this.warning_threshold = warning_threshold; + this.parent(); + this.tip_format(); + this.update(); + }, + refresh: function () { + // Run asynchronously, to avoid shell freeze + try { + let path = Me.dir.get_path(); + let script = [ + '/bin/bash', + path + '/ping.sh', + this.address, + '' + this.ping_count, + '' + this.ping_deadline, + '' + this.ping_interval + ]; + + let [, pid, in_fd, out_fd, err_fd] = GLib.spawn_async_with_pipes( + null, + script, + null, + GLib.SpawnFlags.DO_NOT_REAP_CHILD, + null); + + let _tmp_stream = new Gio.DataInputStream({ + base_stream: new Gio.UnixInputStream({fd: in_fd}) + }); + _tmp_stream.close(null); + + // Let's buffer the command's error - that's an input for us! + this._process_error = new Gio.DataInputStream({ + base_stream: new Gio.UnixInputStream({fd: err_fd}) + }); + + // Let's buffer the command's output - that's an input for us! + this._process_stream = new Gio.DataInputStream({ + base_stream: new Gio.UnixInputStream({fd: out_fd}) + }); + + // We will process the output at once when it's done + this._process_sourceId = GLib.child_watch_add( + GLib.PRIORITY_DEFAULT, + pid, + Lang.bind(this, this._readPingResult) + ); + } catch (err) { + // Deal with the error + } + }, + _readPingResult: function () { + print_debug('------------------------------------------------------------------------------'); + print_debug('name: ' + this.name); + let out, size; + + let has_error = false; + if (this._process_error) { + [out, size] = this._process_error.read_line_utf8(null); + if (out !== null) { + has_error = true; + this.ping_message = out; + this.color = '#ff0000'; + print_debug('ping error: ' + out); + } + } + + if (!has_error) { + let usage = []; + if (this._process_stream) { + this.ping_message = ''; + do { + [out, size] = this._process_stream.read_line_utf8(null); + if (out !== null) { + usage.push(out); + + print_debug('ping result: ' + out); + this.ping_message += out + '\n'; + } + } while (out !== null); + + let min = 9999; + let avg = 9999; + let max = 9999; + try { + let timing_stats = usage[usage.length - 1].split('=')[1].split('/'); + min = timing_stats[0]; + avg = timing_stats[1]; + max = timing_stats[2]; + } catch (e) { + print_debug('error: ' + e); + } + + let loss = 100; + try { + let xmit_stats = usage[usage.length - 2].split('%'); + let s = xmit_stats[0].split(' '); + loss = s[s.length - 1]; + } catch (e) { + print_debug('error: ' + e); + } + + print_debug('loss: ' + loss); + print_debug('min: ' + min); + print_debug('avg: ' + avg); + print_debug('max: ' + max); + + if (loss == 100) { + this.color = '#ff0000'; + } else if (max > this.warning_treshold) { + this.color = '#ffaa00'; + } else { + this.color = '#00ff00'; + } + } + } + + this._endProcess(); + }, + _endProcess: function () { + if (this._process_stream) { + this._process_stream.close(null); + this._process_stream = null; + } + if (this._process_error) { + this._process_error.close(null); + this._process_error = null; + } + }, + _pad: function (number) { + if (this.useGiB) { + if (number < 1) { + // examples: 0.01, 0.10, 0.88 + return number.toFixed(2); + } + // examples: 5.85, 16.0, 128 + return number.toPrecision(3); + } + + return number; + }, + _apply: function () { + this.menu_items[0].text = this.ping_message; + // this.menu_items[1].text = '2'; + this.tip_vals[0] = this.ping_message; + }, + create_text_items: function () { + return [ + new St.Label({ + text: '', + style_class: Style.get('sm-status-value'), + y_align: Clutter.ActorAlign.CENTER}), + new St.Label({ + text: '%', + style_class: Style.get('sm-perc-label'), + y_align: Clutter.ActorAlign.CENTER}) + ]; + }, + create_menu_items: function () { + return [ + new St.Label({ + text: '', + style_class: Style.get('sm-value-left')}), + // new St.Label({ + // text: '', + // style_class: Style.get('sm-label')}), + // new St.Label({ + // text: '', + // style_class: Style.get('sm-label')}), + // new St.Label({ + // text: '', + // style_class: Style.get('sm-value')}), + // new St.Label({ + // text: '', + // style_class: Style.get('sm-label')}) + ]; + } +}); + +const Icon = new Lang.Class({ + Name: 'PingMonitor.Icon', + + _init: function () { + this.actor = new St.Icon({icon_name: 'utilities-ping-monitor-symbolic', + style_class: 'system-status-icon'}); + this.actor.visible = Schema.get_boolean('icon-display'); + Schema.connect( + 'changed::icon-display', + Lang.bind(this, + function () { + this.actor.visible = Schema.get_boolean('icon-display'); + }) + ); + } +}); + +function read_from_file(path) { + for (let eltName in Main.__sm.elts) { + Main.__sm.elts[eltName].destroy(); + } + + let [ok, contents] = GLib.file_get_contents(path); + if (ok) { + let map = JSON.parse(contents); + + try { + debugOutput = map['debug_output']; + } catch (e) { + debugOutput = false; + } + + try { + for (let i = 0; i < map['ping_config'].length; i++) { + let tag = map['ping_config'][i]['tag']; + let name = map['ping_config'][i]['name']; + let address = map['ping_config'][i]['address']; + let ping_count = map['ping_config'][i]['ping_count']; + let ping_interval = map['ping_config'][i]['ping_interval']; + let ping_deadline = map['ping_config'][i]['ping_deadline']; + let refresh_interval = map['ping_config'][i]['refresh_interval']; + let active = map['ping_config'][i]['active']; + let visible = map['ping_config'][i]['visible']; + let show_name = map['ping_config'][i]['show_name']; + let show_address = map['ping_config'][i]['show_address']; + let show_tooltip = map['ping_config'][i]['show_tooltip']; + let warning_threshold = map['ping_config'][i]['warning_threshold']; + + print_debug('tag: ' + tag); + print_debug('name: ' + name); + print_debug('address: ' + address); + print_debug('ping_count: ' + ping_count); + print_debug('ping_interval: ' + ping_interval); + print_debug('ping_deadline: ' + ping_deadline); + print_debug('refresh_interval: ' + refresh_interval); + print_debug('active: ' + active); + print_debug('visible: ' + visible); + print_debug('show_name: ' + show_name); + print_debug('show_address: ' + show_address); + print_debug('show_tooltip: ' + show_tooltip); + print_debug('warning_threshold: ' + warning_threshold); + + // id, tag, name, address, ping_count, ping_interval, + // ping_deadline, refresh_interval, active, visible, + // show_name, show_tooltip, warning_threshold + + Main.__sm.elts.push(new Ping( + i, + tag, + name, + address, + ping_count, + ping_interval, + ping_deadline, + refresh_interval, + active, + visible, + show_name, + show_address, + show_tooltip, + warning_threshold)); + } + } catch (e) { + print_info('could not load config'); + print_info('error: ' + e); + } + + } +} + +var init = function () { + print_info('applet init from ' + extension.path); + + Convenience.initTranslations(); + // Get locale, needed as an argument for toLocaleString() since GNOME Shell 3.24 + // See: mozjs library bug https://bugzilla.mozilla.org/show_bug.cgi?id=999003 + Locale = GLib.get_language_names()[0]; + if (Locale.indexOf('_') !== -1) { + Locale = Locale.split('_')[0]; + } + + IconSize = Math.round(Panel.PANEL_ICON_SIZE * 4 / 5); +}; + +var enable = function () { + print_info('applet enabling'); + Schema = Convenience.getSettings(); + + /* + try { + let arr1 = Schema.get_strv('ping-tags'); + log('[Ping monitor] tag 0: ' + arr1[0]); + log('[Ping monitor] tag 1: ' + arr1[1]); + log('[Ping monitor] tag 2: ' + arr1[2]); + } catch (e) { + log('[Ping monitor] catched error: ' + e); + } + + try { + let arr2 = Schema.get_strv('ping-ids'); + log('[Ping monitor] id 0: ' + parseInt(arr2[0])); + log('[Ping monitor] id 1: ' + parseInt(arr2[1])); + log('[Ping monitor] id 2: ' + parseInt(arr2[2])); + + let arr3 = Schema.get_strv('ping-show-text'); + log('[Ping monitor] show text 0: ' + (arr3[0] === 'true')); + log('[Ping monitor] show text 1: ' + (arr3[1] === 'true')); + log('[Ping monitor] show text 2: ' + (arr3[2] === 'true')); + } catch (e) { + log('[Ping monitor] catched error: ' + e); + } + */ + + Style = new smStyleManager(); + + Background = color_from_string(Schema.get_string('background')); + + if (!(smDepsGtop)) { + Main.__sm = { + smdialog: new smDialog() + } + + let dialog_timeout = Mainloop.timeout_add_seconds( + 1, + function () { + Main.__sm.smdialog.open(); + Mainloop.source_remove(dialog_timeout); + return true; + }); + } else { + let panel = Main.panel._rightBox; + StatusArea = Main.panel._statusArea; + if (typeof (StatusArea) === 'undefined') { + StatusArea = Main.panel.statusArea; + } + if (Schema.get_boolean('center-display')) { + panel = Main.panel._centerBox; + } + + // Debug + Main.__sm = { + tray: new PanelMenu.Button(0.5), + icon: new Icon(), + elts: [], + }; + + // Items to Monitor + read_from_file(GLib.getenv('HOME') + '/.config/ping-monitor.conf'); + + // Main.__sm.elts.push(new Ping(0, 'google', 'Google', '8.8.8.8', true)); + // Main.__sm.elts.push(new Ping(1, 'rubbish', 'Rubbish', '8.8.4.9', true)); + // Main.__sm.elts.push(new Ping(2, 'apc', 'LPC', '192.168.0.141', true)); + + let tray = Main.__sm.tray; + let elts = Main.__sm.elts; + + if (Schema.get_boolean('move-clock')) { + let dateMenu; + if (Compat.versionCompare(shell_Version, '3.5.90')) { + dateMenu = Main.panel.statusArea.dateMenu; + Main.panel._centerBox.remove_actor(dateMenu.container); + Main.panel._addToPanelBox('dateMenu', dateMenu, -1, Main.panel._rightBox); + } else { + dateMenu = Main.panel._dateMenu; + Main.panel._centerBox.remove_actor(dateMenu.actor); + Main.panel._rightBox.insert_child_at_index(dateMenu.actor, -1); + } + tray.clockMoved = true; + } + + Schema.connect('changed::background', Lang.bind( + this, function (schema, key) { + Background = color_from_string(Schema.get_string(key)); + })); + if (!Compat.versionCompare(shell_Version, '3.5.5')) { + StatusArea.systemMonitor = tray; + panel.insert_child_at_index(tray.actor, 1); + panel.child_set(tray.actor, {y_fill: true}); + } else { + Main.panel._addToPanelBox('ping-monitor', tray, 1, panel); + } + + // The spacing adds a distance between the graphs/text on the top bar + let spacing = Schema.get_boolean('compact-display') ? '1' : '4'; + let box = new St.BoxLayout({style: 'spacing: ' + spacing + 'px;'}); + tray.actor.add_actor(box); + box.add_actor(Main.__sm.icon.actor); + // Add items to panel box + for (let elt in elts) { + box.add_actor(elts[elt].actor); + } + + // Build Menu Info Box Table + let menu_info = new PopupMenu.PopupBaseMenuItem({reactive: false}); + let menu_info_box = new St.BoxLayout(); + menu_info.actor.add(menu_info_box); + Main.__sm.tray.menu.addMenuItem(menu_info, 0); + + build_menu_info(); + + tray.menu.addMenuItem(new PopupMenu.PopupSeparatorMenuItem()); + + tray.menu.connect( + 'open-state-changed', + function (menu, isOpen) { + if (isOpen) { + // Main.__sm.pie.actor.queue_repaint(); + + menu_timeout = Mainloop.timeout_add_seconds( + 5, + function () { + // Main.__sm.pie.actor.queue_repaint(); + return true; + }); + } else { + Mainloop.source_remove(menu_timeout); + } + } + ); + + let _appSys = Shell.AppSystem.get_default(); + let _gsmPrefs = _appSys.lookup_app('gnome-shell-extension-prefs.desktop'); + let item; + + // Reload config. + // item = new PopupMenu.PopupMenuItem(_('Reload config')); + // item.connect('activate', function () { + // read_from_file(GLib.getenv('HOME') + '/.config/ping-monitor.conf'); + // }); + // tray.menu.addMenuItem(item); + + // Preferences. + // item = new PopupMenu.PopupMenuItem(_('Preferences...')); + // item.connect('activate', function () { + // if (_gsmPrefs.get_state() === _gsmPrefs.SHELL_APP_STATE_RUNNING) { + // _gsmPrefs.activate(); + // } else { + // let info = _gsmPrefs.get_app_info(); + // let timestamp = global.display.get_current_time_roundtrip(); + // info.launch_uris([metadata.uuid], global.create_app_launch_context(timestamp, -1)); + // } + // }); + // tray.menu.addMenuItem(item); + + if (Compat.versionCompare(shell_Version, '3.5.5')) { + Main.panel.menuManager.addMenu(tray.menu); + } else { + Main.panel._menus.addMenu(tray.menu); + } + } + + print_info('applet enabling done'); +}; + +var disable = function () { + // restore clock + if (Main.__sm.tray.clockMoved) { + let dateMenu; + if (Compat.versionCompare(shell_Version, '3.5.90')) { + dateMenu = Main.panel.statusArea.dateMenu; + Main.panel._rightBox.remove_actor(dateMenu.container); + Main.panel._addToPanelBox('dateMenu', dateMenu, Main.sessionMode.panel.center.indexOf('dateMenu'), Main.panel._centerBox); + } else { + dateMenu = Main.panel._dateMenu; + Main.panel._rightBox.remove_actor(dateMenu.actor); + Main.panel._centerBox.insert_child_at_index(dateMenu.actor, 0); + } + } + + if (Style) { + Style = null; + } + + Schema.run_dispose(); + for (let eltName in Main.__sm.elts) { + Main.__sm.elts[eltName].destroy(); + } + + if (!Compat.versionCompare(shell_Version, '3.5')) { + Main.__sm.tray.destroy(); + StatusArea.systemMonitor = null; + } else { + Main.__sm.tray.actor.destroy(); + } + Main.__sm = null; + print_info('applet disable'); +}; diff --git a/ping-monitor@samuel.bachmann.gmail.com/locale/ar/LC_MESSAGES/system-monitor.mo b/ping-monitor@samuel.bachmann.gmail.com/locale/ar/LC_MESSAGES/system-monitor.mo new file mode 100644 index 0000000..e3b48b7 Binary files /dev/null and b/ping-monitor@samuel.bachmann.gmail.com/locale/ar/LC_MESSAGES/system-monitor.mo differ diff --git a/ping-monitor@samuel.bachmann.gmail.com/locale/ca/LC_MESSAGES/system-monitor.mo b/ping-monitor@samuel.bachmann.gmail.com/locale/ca/LC_MESSAGES/system-monitor.mo new file mode 100644 index 0000000..1122f5d Binary files /dev/null and b/ping-monitor@samuel.bachmann.gmail.com/locale/ca/LC_MESSAGES/system-monitor.mo differ diff --git a/ping-monitor@samuel.bachmann.gmail.com/locale/cs/LC_MESSAGES/system-monitor.mo b/ping-monitor@samuel.bachmann.gmail.com/locale/cs/LC_MESSAGES/system-monitor.mo new file mode 100644 index 0000000..0450bc1 Binary files /dev/null and b/ping-monitor@samuel.bachmann.gmail.com/locale/cs/LC_MESSAGES/system-monitor.mo differ diff --git a/ping-monitor@samuel.bachmann.gmail.com/locale/de/LC_MESSAGES/system-monitor.mo b/ping-monitor@samuel.bachmann.gmail.com/locale/de/LC_MESSAGES/system-monitor.mo new file mode 100644 index 0000000..6445d1c Binary files /dev/null and b/ping-monitor@samuel.bachmann.gmail.com/locale/de/LC_MESSAGES/system-monitor.mo differ diff --git a/ping-monitor@samuel.bachmann.gmail.com/locale/es_ES/LC_MESSAGES/system-monitor.mo b/ping-monitor@samuel.bachmann.gmail.com/locale/es_ES/LC_MESSAGES/system-monitor.mo new file mode 100644 index 0000000..d7140d9 Binary files /dev/null and b/ping-monitor@samuel.bachmann.gmail.com/locale/es_ES/LC_MESSAGES/system-monitor.mo differ diff --git a/ping-monitor@samuel.bachmann.gmail.com/locale/es_MX/LC_MESSAGES/system-monitor.mo b/ping-monitor@samuel.bachmann.gmail.com/locale/es_MX/LC_MESSAGES/system-monitor.mo new file mode 100644 index 0000000..0de75d7 Binary files /dev/null and b/ping-monitor@samuel.bachmann.gmail.com/locale/es_MX/LC_MESSAGES/system-monitor.mo differ diff --git a/ping-monitor@samuel.bachmann.gmail.com/locale/fa/LC_MESSAGES/system-monitor.mo b/ping-monitor@samuel.bachmann.gmail.com/locale/fa/LC_MESSAGES/system-monitor.mo new file mode 100644 index 0000000..cf115c6 Binary files /dev/null and b/ping-monitor@samuel.bachmann.gmail.com/locale/fa/LC_MESSAGES/system-monitor.mo differ diff --git a/ping-monitor@samuel.bachmann.gmail.com/locale/fi/LC_MESSAGES/system-monitor.mo b/ping-monitor@samuel.bachmann.gmail.com/locale/fi/LC_MESSAGES/system-monitor.mo new file mode 100644 index 0000000..b2974dc Binary files /dev/null and b/ping-monitor@samuel.bachmann.gmail.com/locale/fi/LC_MESSAGES/system-monitor.mo differ diff --git a/ping-monitor@samuel.bachmann.gmail.com/locale/fr/LC_MESSAGES/system-monitor.mo b/ping-monitor@samuel.bachmann.gmail.com/locale/fr/LC_MESSAGES/system-monitor.mo new file mode 100644 index 0000000..6f4c6cb Binary files /dev/null and b/ping-monitor@samuel.bachmann.gmail.com/locale/fr/LC_MESSAGES/system-monitor.mo differ diff --git a/ping-monitor@samuel.bachmann.gmail.com/locale/it/LC_MESSAGES/system-monitor.mo b/ping-monitor@samuel.bachmann.gmail.com/locale/it/LC_MESSAGES/system-monitor.mo new file mode 100644 index 0000000..a204f49 Binary files /dev/null and b/ping-monitor@samuel.bachmann.gmail.com/locale/it/LC_MESSAGES/system-monitor.mo differ diff --git a/ping-monitor@samuel.bachmann.gmail.com/locale/pl/LC_MESSAGES/system-monitor.mo b/ping-monitor@samuel.bachmann.gmail.com/locale/pl/LC_MESSAGES/system-monitor.mo new file mode 100644 index 0000000..15197cc Binary files /dev/null and b/ping-monitor@samuel.bachmann.gmail.com/locale/pl/LC_MESSAGES/system-monitor.mo differ diff --git a/ping-monitor@samuel.bachmann.gmail.com/locale/pt/LC_MESSAGES/system-monitor.mo b/ping-monitor@samuel.bachmann.gmail.com/locale/pt/LC_MESSAGES/system-monitor.mo new file mode 100644 index 0000000..12e333f Binary files /dev/null and b/ping-monitor@samuel.bachmann.gmail.com/locale/pt/LC_MESSAGES/system-monitor.mo differ diff --git a/ping-monitor@samuel.bachmann.gmail.com/locale/pt_BR/LC_MESSAGES/system-monitor.mo b/ping-monitor@samuel.bachmann.gmail.com/locale/pt_BR/LC_MESSAGES/system-monitor.mo new file mode 100644 index 0000000..a99e415 Binary files /dev/null and b/ping-monitor@samuel.bachmann.gmail.com/locale/pt_BR/LC_MESSAGES/system-monitor.mo differ diff --git a/ping-monitor@samuel.bachmann.gmail.com/locale/ro/LC_MESSAGES/system-monitor.mo b/ping-monitor@samuel.bachmann.gmail.com/locale/ro/LC_MESSAGES/system-monitor.mo new file mode 100644 index 0000000..d846079 Binary files /dev/null and b/ping-monitor@samuel.bachmann.gmail.com/locale/ro/LC_MESSAGES/system-monitor.mo differ diff --git a/ping-monitor@samuel.bachmann.gmail.com/locale/ru/LC_MESSAGES/system-monitor.mo b/ping-monitor@samuel.bachmann.gmail.com/locale/ru/LC_MESSAGES/system-monitor.mo new file mode 100644 index 0000000..9a3524c Binary files /dev/null and b/ping-monitor@samuel.bachmann.gmail.com/locale/ru/LC_MESSAGES/system-monitor.mo differ diff --git a/ping-monitor@samuel.bachmann.gmail.com/locale/sk/LC_MESSAGES/system-monitor.mo b/ping-monitor@samuel.bachmann.gmail.com/locale/sk/LC_MESSAGES/system-monitor.mo new file mode 100644 index 0000000..100f58b Binary files /dev/null and b/ping-monitor@samuel.bachmann.gmail.com/locale/sk/LC_MESSAGES/system-monitor.mo differ diff --git a/ping-monitor@samuel.bachmann.gmail.com/locale/uk/LC_MESSAGES/system-monitor.mo b/ping-monitor@samuel.bachmann.gmail.com/locale/uk/LC_MESSAGES/system-monitor.mo new file mode 100644 index 0000000..18f2b35 Binary files /dev/null and b/ping-monitor@samuel.bachmann.gmail.com/locale/uk/LC_MESSAGES/system-monitor.mo differ diff --git a/ping-monitor@samuel.bachmann.gmail.com/locale/zh_CN/LC_MESSAGES/system-monitor.mo b/ping-monitor@samuel.bachmann.gmail.com/locale/zh_CN/LC_MESSAGES/system-monitor.mo new file mode 100644 index 0000000..0735c1d Binary files /dev/null and b/ping-monitor@samuel.bachmann.gmail.com/locale/zh_CN/LC_MESSAGES/system-monitor.mo differ diff --git a/ping-monitor@samuel.bachmann.gmail.com/metadata.json b/ping-monitor@samuel.bachmann.gmail.com/metadata.json new file mode 100644 index 0000000..58a44f7 --- /dev/null +++ b/ping-monitor@samuel.bachmann.gmail.com/metadata.json @@ -0,0 +1,10 @@ +{ + "shell-version": ["3.4","3.6","3.8","3.10", "3.12", "3.14", "3.16", "3.18", "3.20", "3.22", "3.24", "3.26", "3.28", "3.30"], + "uuid": "ping-monitor@samuel.bachmann.gmail.com", + "name": "ping-monitor", + "url": "https://github.com/anybotics/gnome-shell-ping-monitor-applet", + "description": "Display ping information...", + "settings-schema": "org.gnome.shell.extensions.ping-monitor", + "gettext-domain": "ping-monitor", + "version": -1 +} diff --git a/ping-monitor@samuel.bachmann.gmail.com/ping.sh b/ping-monitor@samuel.bachmann.gmail.com/ping.sh new file mode 100755 index 0000000..52f36a7 --- /dev/null +++ b/ping-monitor@samuel.bachmann.gmail.com/ping.sh @@ -0,0 +1,28 @@ +#!/bin/bash +################################################################################## +# This file is part of Ping Monitor Gnome extension. +# Apt Update Indicator 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 3 of the License, or +# (at your option) any later version. +# Apt Update Indicator 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 System Monitor. If not, see . +# Copyright 2019 Samuel Bachmann, samuel.bachmann@gmail.com. +################################################################################## + +############ +# # +# Ping # +# # +############ + +ADDRESS=$1 +COUNT=$2 +DEADLINE=$3 +INTERVAL=$4 + +ping -c ${COUNT} -w ${DEADLINE} -i ${INTERVAL} ${ADDRESS} \ No newline at end of file diff --git a/ping-monitor@samuel.bachmann.gmail.com/prefs.js b/ping-monitor@samuel.bachmann.gmail.com/prefs.js new file mode 100644 index 0000000..af529a9 --- /dev/null +++ b/ping-monitor@samuel.bachmann.gmail.com/prefs.js @@ -0,0 +1,379 @@ +const Gtk = imports.gi.Gtk; +const Gio = imports.gi.Gio; +const Gdk = imports.gi.Gdk; +const GLib = imports.gi.GLib; +const Clutter = imports.gi.Clutter; +const Lang = imports.lang; + +const Gettext = imports.gettext.domain('ping-monitor'); + +let extension = imports.misc.extensionUtils.getCurrentExtension(); +let convenience = extension.imports.convenience; +let Compat = extension.imports.compat; + +const _ = Gettext.gettext; +const N_ = function (e) { + return e; +}; + +let Schema; + +function init() { + convenience.initTranslations(); + Schema = convenience.getSettings(); +} + +String.prototype.capitalize = function () { + return this.replace(/(^|\s)([a-z])/g, function (m, p1, p2) { + return p1 + p2.toUpperCase(); + }); +}; + +function color_to_hex(color) { + var output = N_('#%02x%02x%02x%02x').format( + 255 * color.red, + 255 * color.green, + 255 * color.blue, + 255 * color.alpha); + return output; +} + +function check_sensors(sensor_type) { + let inputs = [sensor_type + '1_input', sensor_type + '2_input', sensor_type + '3_input']; + let sensor_path = '/sys/class/hwmon/'; + let sensor_list = []; + let string_list = []; + let test; + for (let j = 0; j < 6; j++) { + for (let k = 0; k < inputs.length; k++) { + test = sensor_path + 'hwmon' + j + '/' + inputs[k]; + if (!GLib.file_test(test, 1 << 4)) { + test = sensor_path + 'hwmon' + j + '/device/' + inputs[k]; + if (!GLib.file_test(test, 1 << 4)) { + continue; + } + } + let sensor = test.substr(0, test.lastIndexOf('/')); + let result = GLib.file_get_contents(sensor + '/name'); + let label; + if (result[0]) { + label = N_('' + result[1]).split('\n')[0]; + } + string_list.push(label.capitalize() + ' - ' + inputs[k].split('_')[0].capitalize()); + sensor_list.push(test); + } + } + return [sensor_list, string_list]; +} + + +const ColorSelect = new Lang.Class({ + Name: 'PingMonitor.ColorSelect', + + _init: function (name) { + this.label = new Gtk.Label({label: name + _(':')}); + this.picker = new Gtk.ColorButton(); + this.actor = new Gtk.HBox({spacing: 5}); + this.actor.add(this.label); + this.actor.add(this.picker); + this.picker.set_use_alpha(true); + }, + set_value: function (value) { + let clutterColor = Compat.color_from_string(value); + let color = new Gdk.RGBA(); + let ctemp = [clutterColor.red, clutterColor.green, clutterColor.blue, clutterColor.alpha / 255]; + color.parse('rgba(' + ctemp.join(',') + ')'); + this.picker.set_rgba(color); + } +}); + +const IntSelect = new Lang.Class({ + Name: 'PingMonitor.IntSelect', + + _init: function (name) { + this.label = new Gtk.Label({label: name + _(':')}); + this.spin = new Gtk.SpinButton(); + this.actor = new Gtk.HBox(); + this.actor.add(this.label); + this.actor.add(this.spin); + this.spin.set_numeric(true); + }, + set_args: function (minv, maxv, incre, page) { + this.spin.set_range(minv, maxv); + this.spin.set_increments(incre, page); + }, + set_value: function (value) { + this.spin.set_value(value); + } +}); + +const Select = new Lang.Class({ + Name: 'PingMonitor.Select', + + _init: function (name) { + this.label = new Gtk.Label({label: name + _(':')}); + // this.label.set_justify(Gtk.Justification.RIGHT); + this.selector = new Gtk.ComboBoxText(); + this.actor = new Gtk.HBox({spacing: 5}); + this.actor.add(this.label); + this.actor.add(this.selector); + }, + set_value: function (value) { + this.selector.set_active(value); + }, + add: function (items) { + items.forEach(Lang.bind(this, function (item) { + this.selector.append_text(item); + })); + } +}); + +function set_enum(combo, schema, name) { + Schema.set_enum(name, combo.get_active()); +} + +function set_color(color, schema, name) { + Schema.set_string(name, color_to_hex(color.get_rgba())) +} + +function set_string(combo, schema, name, _slist) { + Schema.set_string(name, _slist[combo.get_active()]); +} + +const SettingFrame = new Lang.Class({ + Name: 'PingMonitor.SettingFrame', + + _init: function (name, schema) { + this.schema = schema; + this.label = new Gtk.Label({label: name}); + this.frame = new Gtk.Frame({border_width: 10}); + + this.vbox = new Gtk.VBox({spacing: 20}); + this.hbox0 = new Gtk.HBox({spacing: 20}); + this.hbox1 = new Gtk.HBox({spacing: 20}); + this.hbox2 = new Gtk.HBox({spacing: 20}); + this.hbox3 = new Gtk.HBox({spacing: 20}); + this.frame.add(this.vbox); + this.vbox.pack_start(this.hbox0, true, false, 0); + this.vbox.pack_start(this.hbox1, true, false, 0); + this.vbox.pack_start(this.hbox2, true, false, 0); + this.vbox.pack_start(this.hbox3, true, false, 0); + }, + + /** Enforces child ordering of first 2 boxes by label */ + _reorder: function () { + /** @return {string} label of/inside component */ + const labelOf = el => { + if (el.get_children) { + return labelOf(el.get_children()[0]); + } + return el && el.label || ''; + }; + + [this.hbox0, this.hbox1].forEach(box => { + box.get_children() + .sort((c1, c2) => labelOf(c1).localeCompare(labelOf(c2))) + .forEach((child, index) => box.reorder_child(child, index)); + }); + }, + + add: function (key) { + const configParent = key.substring(0, key.indexOf('-')); + const config = key.substring(configParent.length + 1); + + // hbox0 + if (config === 'display') { + let item = new Gtk.CheckButton({label: _('Display')}); + this.hbox0.add(item); + Schema.bind(key, item, 'active', Gio.SettingsBindFlags.DEFAULT); + } else if (config === 'show-text') { + let item = new Gtk.CheckButton({label: _('Show Text')}); + this.hbox0.add(item); + Schema.bind(key, item, 'active', Gio.SettingsBindFlags.DEFAULT); + } else if (config === 'show-menu') { + let item = new Gtk.CheckButton({label: _('Show In Menu')}); + this.hbox0.add(item); + Schema.bind(key, item, 'active', Gio.SettingsBindFlags.DEFAULT); + // hbox1 + } else if (config === 'refresh-time') { + let item = new IntSelect(_('Refresh Time')); + item.set_args(50, 100000, 1000, 5000); + this.hbox1.add(item.actor); + Schema.bind(key, item.spin, 'value', Gio.SettingsBindFlags.DEFAULT); + } else if (config === 'graph-width') { + let item = new IntSelect(_('Graph Width')); + item.set_args(1, 1000, 1, 10); + this.hbox1.add(item.actor); + Schema.bind(key, item.spin, 'value', Gio.SettingsBindFlags.DEFAULT); + } else if (config === 'style') { + let item = new Select(_('Display Style')); + item.add([_('digit'), _('graph'), _('both')]); + item.set_value(this.schema.get_enum(key)); + this.hbox1.add(item.actor); + item.selector.connect('changed', function (style) { + set_enum(style, Schema, key); + }); + // Schema.bind(key, item.selector, 'active', Gio.SettingsBindFlags.DEFAULT); + // hbox2 + } else if (config.match(/-color$/)) { + let item = new ColorSelect(_(config.split('-')[0].capitalize())); + item.set_value(this.schema.get_string(key)); + this.hbox2.pack_end(item.actor, true, false, 0); + item.picker.connect('color-set', function (color) { + set_color(color, Schema, key); + }); + } else if (config.match(/sensor/)) { + let sensor_type = configParent === 'fan' ? 'fan' : 'temp'; + let [_slist, _strlist] = check_sensors(sensor_type); + let item = new Select(_('Sensor')); + if (_slist.length === 0) { + item.add([_('Please install lm-sensors')]); + } else if (_slist.length === 1) { + this.schema.set_string(key, _slist[0]); + } + item.add(_strlist); + try { + item.set_value(_slist.indexOf(this.schema.get_string(key))); + } catch (e) { + item.set_value(0); + } + // this.hbox3.add(item.actor); + if (configParent === 'fan') { + this.hbox2.pack_end(item.actor, true, false, 0); + } else { + this.hbox2.pack_start(item.actor, true, false, 0); + } + item.selector.connect('changed', function (combo) { + set_string(combo, Schema, key, _slist); + }); + // hbox3 + } else if (config === 'speed-in-bits') { + let item = new Gtk.CheckButton({label: _('Show network speed in bits')}); + this.hbox3.add(item); + Schema.bind(key, item, 'active', Gio.SettingsBindFlags.DEFAULT); + } else if (config === 'individual-cores') { + let item = new Gtk.CheckButton({label: _('Display Individual Cores')}); + this.hbox3.add(item); + Schema.bind(key, item, 'active', Gio.SettingsBindFlags.DEFAULT); + } else if (config === 'time') { + let item = new Gtk.CheckButton({label: _('Show Time Remaining')}); + this.hbox3.add(item); + Schema.bind(key, item, 'active', Gio.SettingsBindFlags.DEFAULT); + } else if (config === 'hidesystem') { + let item = new Gtk.CheckButton({label: _('Hide System Icon')}); + this.hbox3.add(item); + Schema.bind(key, item, 'active', Gio.SettingsBindFlags.DEFAULT); + } else if (config === 'usage-style') { + let item = new Select(_('Usage Style')); + item.add([_('pie'), _('bar'), _('none')]); + item.set_value(this.schema.get_enum(key)); + this.hbox3.pack_end(item.actor, false, false, 20); + + item.selector.connect('changed', function (style) { + set_enum(style, Schema, key); + }); + } else if (config === 'fahrenheit-unit') { + let item = new Gtk.CheckButton({label: _('Display temperature in Fahrenheit')}); + this.hbox3.add(item); + Schema.bind(key, item, 'active', Gio.SettingsBindFlags.DEFAULT); + } else if (config === 'threshold') { + let item = new IntSelect(_('Temperature threshold (0 to disable)')); + item.set_args(0, 300, 5, 5); + this.hbox3.add(item.actor); + Schema.bind(key, item.spin, 'value', Gio.SettingsBindFlags.DEFAULT); + } + if (configParent.indexOf('gpu') !== -1 && + config === 'display') { + let item = new Gtk.Label({label: _('** Only Nvidia GPUs supported so far **')}); + this.hbox3.add(item); + } + this._reorder(); + } +}); + +const App = new Lang.Class({ + Name: 'PingMonitor.App', + + _init: function () { + let setting_items = ['cpu', 'memory', 'swap', 'net', 'disk', 'gpu', 'thermal', 'fan', 'freq', 'battery']; + let keys = Schema.list_keys(); + + this.items = []; + this.settings = []; + + setting_items.forEach(Lang.bind(this, function (setting) { + this.settings[setting] = new SettingFrame(_(setting.capitalize()), Schema); + })); + + this.main_vbox = new Gtk.Box({orientation: Gtk.Orientation.VERTICAL, + spacing: 10, + border_width: 10}); + this.hbox1 = new Gtk.Box({ + orientation: Gtk.Orientation.HORIZONTAL, + spacing: 20, + border_width: 10 + }); + this.main_vbox.pack_start(this.hbox1, false, false, 0); + + keys.forEach(Lang.bind(this, function (key) { + if (key === 'icon-display') { + let item = new Gtk.CheckButton({label: _('Display Icon')}); + // item.set_active(Schema.get_boolean(key)) + this.items.push(item); + this.hbox1.add(item); + /* item.connect('toggled', function(check) { + set_boolean(check, Schema, key); + });*/ + Schema.bind(key, item, 'active', Gio.SettingsBindFlags.DEFAULT); + } else if (key === 'center-display') { + let item = new Gtk.CheckButton({label: _('Display in the Middle')}); + // item.set_active(Schema.get_boolean(key)) + this.items.push(item); + this.hbox1.add(item); + Schema.bind(key, item, 'active', Gio.SettingsBindFlags.DEFAULT); + } else if (key === 'compact-display') { + let item = new Gtk.CheckButton({label: _('Compact Display')}); + this.items.push(item); + this.hbox1.add(item); + Schema.bind(key, item, 'active', Gio.SettingsBindFlags.DEFAULT); + } else if (key === 'show-tooltip') { + let item = new Gtk.CheckButton({label: _('Show tooltip')}); + item.set_active(Schema.get_boolean(key)); + this.items.push(item); + this.hbox1.add(item); + Schema.bind(key, item, 'active', Gio.SettingsBindFlags.DEFAULT); + } else if (key === 'move-clock') { + let item = new Gtk.CheckButton({label: _('Move the clock')}); + // item.set_active(Schema.get_boolean(key)) + this.items.push(item); + this.hbox1.add(item); + Schema.bind(key, item, 'active', Gio.SettingsBindFlags.DEFAULT); + } else if (key === 'background') { + let item = new ColorSelect(_('Background Color')); + item.set_value(Schema.get_string(key)); + this.items.push(item); + this.hbox1.pack_start(item.actor, true, false, 0); + item.picker.connect('color-set', function (color) { + set_color(color, Schema, key); + }); + } else { + let sections = key.split('-'); + if (setting_items.indexOf(sections[0]) >= 0) { + this.settings[sections[0]].add(key); + } + } + })); + this.notebook = new Gtk.Notebook(); + setting_items.forEach(Lang.bind(this, function (setting) { + this.notebook.append_page(this.settings[setting].frame, this.settings[setting].label); + this.main_vbox.pack_start(this.notebook, true, true, 0); + this.main_vbox.show_all(); + })); + this.main_vbox.show_all(); + } +}); + +function buildPrefsWidget() { + let widget = new App(); + return widget.main_vbox; +} diff --git a/ping-monitor@samuel.bachmann.gmail.com/schemas/gschemas.compiled b/ping-monitor@samuel.bachmann.gmail.com/schemas/gschemas.compiled new file mode 100644 index 0000000..0ef631d Binary files /dev/null and b/ping-monitor@samuel.bachmann.gmail.com/schemas/gschemas.compiled differ diff --git a/ping-monitor@samuel.bachmann.gmail.com/schemas/org.gnome.shell.extensions.ping-monitor.gschema.xml b/ping-monitor@samuel.bachmann.gmail.com/schemas/org.gnome.shell.extensions.ping-monitor.gschema.xml new file mode 100644 index 0000000..98b36f2 --- /dev/null +++ b/ping-monitor@samuel.bachmann.gmail.com/schemas/org.gnome.shell.extensions.ping-monitor.gschema.xml @@ -0,0 +1,484 @@ + + + + + + + + + + + + + + ['0', '1', '2'] + Ping ids. + + + + ['lpc', 'npc', 'apc'] + Ping tags. + + + + ['LPC', 'NPC', 'APC'] + Ping names. + + + + ['8.8.8.8', '192.168.0.1', '192.168.0.100'] + Ping ip addresses. + + + + ['true', 'true', 'true'] + Ping show text. + + + + true + Display ping monitor icon + Set to true to display ping monitor icon in status bar.(NOTICE: The icon will be shown when none of the others is shown.) + + + true + Display memory + Set to false to remove memory display in status bar + + + 5000 + Memory refresh time + Time in ms between 2 refresh of memory + + + 100 + Memory graph width + Graph width in pixel + + + true + Display 'mem' + Set to true to show 'mem' before memory display + + + true + Display Memory In Menu + Set to true to show memory in pop-up menu + + + 'graph' + Choose the display style. + + + false + Display swap + Set to false to remove swap display in status bar + + + 5000 + Swap refresh time + Time in ms between 2 refresh of swap + + + 100 + Swap graph width + Graph width in pixel + + + true + Display 'swap' + Set to true to show 'swap' before swap display + + + true + Display Swap In Menu + Set to true to show swap in pop-up menu + + + 'graph' + Choose the display style. + + + true + Display cpu + Set to false to remove cpu display in status bar + + + 1500 + Cpu refresh time + Time in ms between 2 refresh of cpu + + + 100 + Cpu graph width + Graph width in pixel + + + true + Display 'cpu' + Set to true to show 'cpu' before cpu display + + + true + Display Cpu In Menu + Set to true to show cpu in pop-up menu + + + 'graph' + Choose the display style. + + + false + Display one graph per cpu core + Set to true to display one graph per cpu core + + + false + Display gpu usage + Set to false to remove gpu display in status bar + + + 5000 + Memory refresh time + Time in ms between 2 refresh of gpu usage + + + 100 + Gpu usage graph width + Graph width in pixel + + + true + Display 'gpu' + Set to true to show 'gpu' before gpu display + + + false + Display Gpu In Menu + Set to true to show gpu in pop-up menu + + + 'graph' + Choose the display style. + + + false + Display freq + Set to false to remove freq display in status bar + + + 1500 + Cpu frequency refresh time + Time in ms between 2 refresh of cpu + + + 100 + Cpu frequency graph width + Graph width in pixel + + + false + Display freq' + Set to true to show 'freq' before cpu frequency display + + + false + Display Freq In Menu + Set to true to show freq in pop-up menu + + + 'graph' + Choose the display style. + + + true + Display net + Set to false to remove net display in status bar + + + 1000 + Net refresh time + Time in ms between 2 refresh of net + + + 100 + Net graph width + Graph width in pixel + + + true + Display 'net' + Set to true to show 'net' before net display + + + true + Display Net In Menu + Set to true to show net in pop-up menu + + + 'graph' + Choose the display style. + + + false + Show network speed in bits/sec + + + false + Display disk io speed + Set to false to remove disk display in status bar + + + 2000 + Disk IO refresh time + Time in ms between 2 refresh of Disk IO + + + 100 + Disk IO graph width + Graph width in pixel + + + true + Display 'disk' + Set to true to show 'disk' before disk io display + + + true + Display Disk In Menu + Set to true to show disk in pop-up menu + + + 'graph' + Choose the display style. + + + 'pie' + Choose the disk usage display style. + + + false + Display thermal + Set to false to remove thermal display in status bar + + + 5000 + thermal refresh time + Time in ms between 2 refresh of thermal + + + 100 + thermal graph width + Graph width in pixel + + + true + Display 'thermal' + Set to true to show 'thermal' before thermal display + + + true + Display Temps In Menu + Set to true to show thermal in pop-up menu + + + 'graph' + Choose the display style. + + + '/sys/devices/virtual/thermal/thermal_zone0/temp' + Sensor File + Location of the sensor file for cpu temp + + + 0 + Thermal threshold + When the temprature passes the threshold, the text is set to red as an alert. + + + false + Display fan + Set to false to remove fan display in status bar + + + 5000 + fan refresh time + Time in ms between 2 refresh of fan + + + 100 + fan graph width + Graph width in pixel + + + true + Display 'fan' + Set to true to show 'fan' before fan display + + + true + Display Fans In Menu + Set to true to show fan in pop-up menu + + + 'graph' + Choose the display style. + + + '/sys/devices/virtual/thermal/cooling_device0/cur_state' + Sensor File + Location of the sensor file for fan + + + '#f2002e' + Color of fan in the chart + + + false + Display informations next to the clock + True: Set information at the center, False: Set information in status bar (at top right) + + + false + Move the clock to the right when center-display is true + True: Move the clock to the right, False: Keep it in center + + + false + Enable or disable the tooltip + True: show tool tip on mouse hover + + + false + Optimize view for small displays + Optimize texts sizes to fit on a small display + + + '#00b35b' + Color of program memory in the chart + + + '#00ff82' + Color of buffer memory in the chart + + + '#aaf5d0' + Color of cache memory in the chart + + + '#fce94f' + Color of download speed in the chart + + + '#fb74fb' + Color of upload speed in the chart + + + '#ff6e00' + Color of download errors + + + '#e0006e' + Color of upload errors + + + '#ff0000' + Color of collisions + + + '#0072b3' + Color of user cpu in the chart + + + '#0092e6' + Color of system cpu in the chart + + + '#00a3ff' + Color of nice cpu in the chart + + + '#002f3d' + Color of iowait in the chart + + + '#001d26' + Color of other cpu in the chart + + + '#001d26' + Color of freq in the chart + + + '#8b00c3' + Color of used swap in the chart + + + '#c65000' + Color of disk reading speed in the chart + + + '#ff6700' + Color of disk writing speed in the chart + + + '#00b35b' + Color of program gpu memory in the chart + + + '#f2002e' + Color of user thermal in the chart + + + false + Display temperature in Fahrenheit + Set to true to show temperature in Fahrenheit + + + '#ffffff16' + Color of background + + + false + Display battery + Set to false to remove battery display in status bar + + + 5000 + thermal refresh time + Time in ms between 2 refresh of thermal + + + 100 + thermal graph width + Graph width in pixel + + + true + Display 'batt' + Set to true to show 'batt' before net display + + + false + Display 'batt' + Set to true to show battery in pop-up menu + + + 'digit' + Choose the display style. + + + '#f2002e' + Color of battery + + + false + Display battery time remaining rather than percentage + + + false + Hide system battery icon + + + + diff --git a/ping-monitor@samuel.bachmann.gmail.com/stylesheet.css b/ping-monitor@samuel.bachmann.gmail.com/stylesheet.css new file mode 100644 index 0000000..dbadea4 --- /dev/null +++ b/ping-monitor@samuel.bachmann.gmail.com/stylesheet.css @@ -0,0 +1,222 @@ +.sm-title { + font-size: 1em; + padding: 0px 25px 0px 0px; +} + +.sm-label { + color: #bbb; + font-size: 0.75em; + padding-top: 5px; + font-family: monospace; +} + +.sm-label-left { + color: #bbb; + font-size: 0.75em; + padding: 5px 5px 0 0; +} + +.sm-value { + text-align: right; + min-width: 40px; + padding: 2px 5px 0 0; + font-family: monospace; +} + +.sm-value-left { + text-align: left; + font-size: 0.75em; + min-width: 40px; + padding: 2px 5px 0 0; + font-family: monospace; +} + +.sm-status-label { + color: #bbb; + font-size: 0.625em; + padding: 0 2px 0 5px; +} + +.sm-unit-label, +.sm-net-unit-label { + color: #aaa; + font-size: 0.5em; + padding: 0 5px 0 2px; +} + +.sm-disk-unit-label { + color: #aaa; + font-size: 0.625em; + padding: 0 5px 0 2px; +} + +.sm-net-unit-label { + min-width: 25px; +} + +.sm-perc-label { + color: #aaa; + font-size: 0.625em; + padding: 0 5px 0 2px; +} + +.sm-temp-label { + color: #aaa; + font-size: 0.6875em; + padding: 0 5px 0 2px; +} + +.sm-status-value { + min-width: 25px; + text-align: right; +} + +.sm-net-value { + min-width: 40px; + text-align: center; +} + +.sm-disk-value { + min-width: 25px; + text-align: right; +} + +.sm-big-status-value { + min-width: 42px; + text-align: right; +} + +.sm-chart { + padding: 0 2px; +} + +.sm-tooltip-box { + font-size: 0.85em; + font-weight: bold; + color: rgba(255, 255, 255, 0.9); + background-color: rgba(10, 10, 10, 0.7); + border-radius: 5px; + padding: 3px; + border: 1px solid #a5a5a5; +} + +.sm-tooltip-item { + padding: 0px; + spacing: 10px; +} +.sm-status-icon { + padding: 0px 2px; + icon-size: 1.14em; +} + +.sm-popup-menu-item-compact { +} + +/* style definition when 'compact-display' option is activated */ + +.sm-title-compact { + font-size: 0.75em; +} + +.sm-label-compact { + color: #bbb; + font-size: 0.6875em; + font-family: monospace; +} /* Bat, Net... units in menu items */ + +.sm-value-compact { + font-size: 0.6875em; + text-align: right; + font-family: monospace; +} /* Values in menu items */ + +.sm-status-label-compact { + color: #bbb; + font-size: 0.5em; + padding: 2px 0px 0 0px; +} /* names and Disk R and W signs in text items */ + +.sm-unit-label-compact, +.sm-net-unit-label-compact { + color: #aaa; + padding: 0 3px 0px 1px; + text-align: right; + font-size: 0.4375em; +} /* Bat, Net... units in text items */ + +.sm-disk-unit-label-compact { + color: #aaa; + padding: 0 3px 0px 0px; + text-align: right; + font-size: 0.4375em; +} /* Disk units in text items */ + +.sm-perc-label-compact { + padding: 0 3px 0 0px; + color: #aaa; + font-size: 0.5em; +} /* Cpu, Mem ... % sign in text items */ + +.sm-temp-label-compact { + font-size: 0.625em; + color: #aaa; + padding: 0 1px 0 1px; +} /* Thermal °C sign in text items */ + +.sm-status-value-compact { + padding:0 0px 0 1px; + font-size: 0.6875em; + text-align: right; + min-width:16px; +} /* Cpu, Mem... value in text items */ + +.sm-net-value-compact { + padding:0 0px 0 1px; + font-size: 0.6875em; + text-align: right; + min-width:24px; +} /* Net value in text items */ + +.sm-disk-value-compact { + padding: 0 1px 0 1px; + font-size: 0.6875em; + text-align: right; + min-width: 20px; +} /* Disk value in text items */ + +.sm-big-status-value-compact { + padding: 0 0px 0px 1px; + font-size: 0.6875em; + min-width: 38px; + text-align: right; +} /* freq in text_items */ + +.sm-chart-compact { + padding: 0 2px; +} + +.sm-tooltip-box { + font-size: 0.85em; + font-weight: bold; + color: rgba(255, 255, 255, 0.9); + background-color: rgba(10, 10, 10, 0.7); + border-radius: 5px; + padding: 3px; + border: 1px solid #a5a5a5; +} + +.sm-tooltip-item-compact { + padding: 0px; + spacing: 10px; +} + +.sm-status-icon-compact { + padding: 1px 0 0 2px; + icon-size: 1.00em; +} /* BAT icon in text_items */ + +.sm-popup-menu-item-compact { + font-size: 0.6875em; + width: 20px; + padding: 1px 2px 1px 7px; +} diff --git a/po/ar/system-monitor.po b/po/ar/system-monitor.po new file mode 100644 index 0000000..eb3d361 --- /dev/null +++ b/po/ar/system-monitor.po @@ -0,0 +1,373 @@ +# 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. +#: extension.js:751 +msgid "" +msgstr "" +"Project-Id-Version: 1\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2016-12-22 15:04+0100\n" +"PO-Revision-Date: 2013-08-22 01:55+0200\n" +"Last-Translator: Muhammad Fawwaz Orabi \n" +"Language-Team: Arabic \n" +"Language: Arabic\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Generator: Poedit 1.5.4\n" + +#: prefs.js:69 prefs.js:90 prefs.js:110 prefs.js:67 prefs.js:87 prefs.js:107 +msgid ":" +msgstr ":" + +#: prefs.js:161 prefs.js:159 +msgid "Display" +msgstr "اعرضه" + +#: prefs.js:166 prefs.js:164 +msgid "Refresh Time" +msgstr "حدّثه كلّ" + +#: prefs.js:171 prefs.js:169 +msgid "Graph Width" +msgstr "عرض المخطط" + +#: prefs.js:176 prefs.js:174 +msgid "Show Text" +msgstr "اعرض النص" + +#: prefs.js:184 prefs.js:182 +msgid "Display Style" +msgstr "نمط العرض" + +#: prefs.js:267 prefs.js:274 +msgid "Display Icon" +msgstr "اعرض الرمز" + +#: prefs.js:276 prefs.js:283 +msgid "Display in the Middle" +msgstr "اعرضه في المنتصف" + +#: prefs.js:288 prefs.js:306 +msgid "Background Color" +msgstr "لون الخلفية" + +#: prefs.js:197 prefs.js:195 +msgid "Display Individual Cores" +msgstr "اعرض الأنوية مفردة" + +#: prefs.js:193 prefs.js:191 +msgid "Show network speed in bits" +msgstr "اعرض سرعة الشبكة بالبِتّات" + +#: prefs.js:205 prefs.js:208 +msgid "Sensor" +msgstr "الحساس" + +#: prefs.js:207 prefs.js:210 +msgid "Please install lm-sensors" +msgstr "(ثبّت lm-sensors أولاً)" + +#: prefs.js:282 prefs.js:300 +msgid "Move the clock" +msgstr "انقل الساعة" + +#: prefs.js:286 prefs.js:289 +msgid "Compact Display" +msgstr "عرض مصغّر" + +#: extension.js:746 extension.js:1117 +msgid "Cpu" +msgstr "معالج" + +msgid "User" +msgstr "المستخدِم" + +msgid "System" +msgstr "النظام" + +msgid "Other" +msgstr "غيرهما" + +msgid "Nice" +msgstr "Nice" + +msgid "Iowait" +msgstr "lowait" + +#: extension.js:941 extension.js:1378 +msgid "Memory" +msgstr "الذاكرة" + +msgid "Program" +msgstr "البرنامج" + +msgid "Cache" +msgstr "الخبيئة" + +msgid "Buffer" +msgstr "" + +#: extension.js:1134 extension.js:1598 +msgid "Swap" +msgstr "التبديل" + +msgid "Used" +msgstr "مستخدَم" + +#: extension.js:1010 extension.js:1428 +msgid "Net" +msgstr "شبكة" + +#: extension.js:1589 +msgid "Up" +msgstr "رفع" + +#: extension.js:1586 +msgid "Down" +msgstr "تنزيل" + +msgid "Uperrors" +msgstr "أخطاء الرفع" + +msgid "Downerrors" +msgstr "أخطاء التنزيل" + +msgid "collisions" +msgstr "التصادمات" + +msgid "Collisions" +msgstr "التصادمات" + +#: extension.js:836 extension.js:1264 +msgid "Disk" +msgstr "قرص" + +msgid "Write" +msgstr "الكتابة" + +msgid "Read" +msgstr "القراءة" + +#: extension.js:1182 extension.js:1312 extension.js:1322 +msgid "R" +msgstr "ك" + +#: extension.js:1185 extension.js:1315 extension.js:1325 +msgid "W" +msgstr "ق" + +#: prefs.js:185 prefs.js:183 +msgid "graph" +msgstr "مخطط" + +#: prefs.js:185 prefs.js:183 +msgid "digit" +msgstr "رقم" + +#: prefs.js:185 prefs.js:183 +msgid "both" +msgstr "كلاهما" + +msgid "cpu" +msgstr "معالج" + +#: extension.js:811 +msgid "mem" +msgstr "ذاكرة" + +msgid "swap" +msgstr "تبديل" + +msgid "net" +msgstr "شبكة" + +msgid "disk" +msgstr "قرص" + +#: extension.js:1346 extension.js:1900 +msgid "Preferences..." +msgstr "تفضيلات..." + +#: extension.js:1340 extension.js:1894 +msgid "System Monitor..." +msgstr "مِرقاب النظام..." + +msgid "System monitor" +msgstr "مرقاب النظام" + +msgid "user" +msgstr "مستخدِم" + +msgid "system" +msgstr "نظام" + +msgid "other" +msgstr "غيرهما" + +msgid "nice" +msgstr "nice" + +msgid "iowait" +msgstr "iowait" + +msgid "program" +msgstr "برنامج" + +msgid "cache" +msgstr "خبيئة" + +msgid "buffer" +msgstr "" + +msgid "used" +msgstr "مستخدَم" + +msgid "up" +msgstr "رفع" + +msgid "down" +msgstr "تنزيل" + +msgid "uperrors" +msgstr "أخطاء الرفع" + +msgid "downerrors" +msgstr "أخطاء التنزيل" + +msgid "write" +msgstr "كتابة" + +msgid "read" +msgstr "قراءة" + +#: extension.js:167 extension.js:1454 extension.js:1545 extension.js:1554 +#: extension.js:1577 extension.js:1581 extension.js:1585 extension.js:1588 +msgid "KiB/s" +msgstr "ك.ب/ثا" + +#: extension.js:166 extension.js:168 extension.js:1277 extension.js:1321 +#: extension.js:1324 extension.js:1549 extension.js:1558 +msgid "MiB/s" +msgstr "م.ب/ثا" + +#: extension.js:1419 extension.js:1635 +msgid "MiB" +msgstr "م.ب" + +#: extension.js:1714 +#, fuzzy +msgid "GiB" +msgstr "م.ب" + +#: extension.js:184 +msgid "kB" +msgstr "ك.ب" + +#: extension.js:183 extension.js:185 +msgid "MB" +msgstr "م.ب" + +#: extension.js:1179 extension.js:1644 +msgid "Thermal" +msgstr "حرارة" + +msgid "thermal" +msgstr "حرارة" + +#: prefs.js:180 prefs.js:178 +msgid "Show In Menu" +msgstr "أظهره في القائمة" + +#: prefs.js:222 prefs.js:229 +msgid "Show Time Remaining" +msgstr "اعرض الوقت المتبقي" + +#: prefs.js:226 prefs.js:233 +msgid "Hide System Icon" +msgstr "أخفِ رمز النظام" + +#: prefs.js:230 prefs.js:237 +msgid "Usage Style" +msgstr "نمط الاستخدام" + +#: prefs.js:231 prefs.js:238 +msgid "pie" +msgstr "قرص" + +#: prefs.js:231 prefs.js:238 +msgid "bar" +msgstr "أشرطة" + +#: prefs.js:231 prefs.js:238 +msgid "none" +msgstr "لا شيء" + +#: extension.js:68 +#, fuzzy +msgid "" +"Dependencies Missing\n" +"Please install: \n" +"libgtop, Network Manager and gir bindings \n" +"\t on Ubuntu: gir1.2-gtop-2.0, gir1.2-networkmanager-1.0 \n" +"\t on Fedora: libgtop2-devel, NetworkManager-glib-devel \n" +"\t on Arch: libgtop, networkmanager\n" +"\t on openSUSE: typelib-1_0-GTop-2_0, typelib-1_0-NetworkManager-1_0\n" +msgstr "" +"لا تتوفر للإضافة كل ما تعتمد عليه\n" +"رجاء ثبّت ما يلي: \n" +"مدير الشبكة وlubgtop ومرتبطِات gir \n" +"\t في Ubuntu: gir1.2-gtop-2.0 وgir1.2-networkmanager-1.0 \n" +"\t في Fedora: libgtop2-devel وNetworkManager-glib-devel \n" +"\t في Arch: libgtop وnetworkmanager\n" + +#: extension.js:97 extension.js:255 +msgid "System Monitor Extension" +msgstr "ملحق مرقاب النظام" + +#: extension.js:113 extension.js:271 +msgid "Cancel" +msgstr "ألغِ" + +#: extension.js:601 extension.js:875 +msgid "Battery" +msgstr "البطارية" + +msgid "battery" +msgstr "بطارية" + +#: extension.js:896 extension.js:1334 +msgid "Freq" +msgstr "التردد" + +msgid "freq" +msgstr "تردد" + +#: extension.js:1540 extension.js:1692 +msgid "Fan" +msgstr "المروحة" + +msgid "fan" +msgstr "مروحة" + +#: extension.js:1542 extension.js:1566 extension.js:1574 extension.js:1698 +#: extension.js:1722 extension.js:1730 +msgid "rpm" +msgstr "دورة/د" + +#: prefs.js:294 +msgid "Show tooltip" +msgstr "" + +#: extension.js:1097 +msgid "CPU" +msgstr "" + +#: prefs.js:267 +msgid "Display temperature in Fahrenheit" +msgstr "" + +#: prefs.js:277 +msgid "Temperature threshold (0 to disable)" +msgstr "" diff --git a/po/ca/system-monitor.po b/po/ca/system-monitor.po new file mode 100644 index 0000000..516c6b5 --- /dev/null +++ b/po/ca/system-monitor.po @@ -0,0 +1,380 @@ +#: extension.js:751 +msgid "" +msgstr "" +"Project-Id-Version: gnome-shell-system-monitor-applet\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2016-12-22 15:04+0100\n" +"PO-Revision-Date: \n" +"Last-Translator: Ecron\n" +"Language-Team: \n" +"Language: ca\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Generator: Poedit 1.6.4\n" + +#: prefs.js:69 prefs.js:90 prefs.js:110 prefs.js:67 prefs.js:87 prefs.js:107 +msgid ":" +msgstr ":" + +# 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. +#: prefs.js:161 prefs.js:159 +msgid "Display" +msgstr "Mostra" + +#: prefs.js:166 prefs.js:164 +msgid "Refresh Time" +msgstr "Freqüència d'actualització" + +#: prefs.js:171 prefs.js:169 +msgid "Graph Width" +msgstr "Amplada del gràfic" + +#: prefs.js:176 prefs.js:174 +msgid "Show Text" +msgstr "Mostra el text" + +#: prefs.js:184 prefs.js:182 +msgid "Display Style" +msgstr "Estil de visualització" + +#: prefs.js:267 prefs.js:274 +msgid "Display Icon" +msgstr "Mostra la icona" + +#: prefs.js:276 prefs.js:283 +msgid "Display in the Middle" +msgstr "Mostra al centre" + +#: prefs.js:288 prefs.js:306 +msgid "Background Color" +msgstr "Color del fons" + +#: prefs.js:197 prefs.js:195 +msgid "Display Individual Cores" +msgstr "Mostra els nuclis individuals" + +#: prefs.js:193 prefs.js:191 +msgid "Show network speed in bits" +msgstr "Mostra la velocitat de la xarxa en bits" + +#: prefs.js:205 prefs.js:208 +msgid "Sensor" +msgstr "Sensor" + +#: prefs.js:207 prefs.js:210 +msgid "Please install lm-sensors" +msgstr "Instaŀleu lm-sensors" + +#: prefs.js:282 prefs.js:300 +msgid "Move the clock" +msgstr "Mou el rellotge" + +# 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. +#: prefs.js:286 prefs.js:289 +msgid "Compact Display" +msgstr "Visualització compacta" + +#: extension.js:746 extension.js:1117 +msgid "Cpu" +msgstr "CPU" + +msgid "User" +msgstr "Usuari" + +msgid "System" +msgstr "Sistema" + +msgid "Other" +msgstr "Altre" + +msgid "Nice" +msgstr "Nice" + +msgid "Iowait" +msgstr "Espera E/S" + +#: extension.js:941 extension.js:1378 +msgid "Memory" +msgstr "Memòria" + +msgid "Program" +msgstr "Programa" + +msgid "Cache" +msgstr "Memòria cau" + +msgid "Buffer" +msgstr "Memòria intermèdia" + +#: extension.js:1134 extension.js:1598 +msgid "Swap" +msgstr "Intercanvi" + +msgid "Used" +msgstr "Usat" + +#: extension.js:1010 extension.js:1428 +msgid "Net" +msgstr "Xarxa" + +#: extension.js:1589 +msgid "Up" +msgstr "Pujada" + +#: extension.js:1586 +msgid "Down" +msgstr "Baixada" + +msgid "Uperrors" +msgstr "Errors de pujada" + +msgid "Downerrors" +msgstr "Errors de baixada" + +msgid "collisions" +msgstr "col·lisions" + +msgid "Collisions" +msgstr "Col·lisions" + +#: extension.js:836 extension.js:1264 +msgid "Disk" +msgstr "Disc" + +msgid "Write" +msgstr "Escriptura" + +msgid "Read" +msgstr "Lectura" + +#: extension.js:1182 extension.js:1312 extension.js:1322 +msgid "R" +msgstr "L" + +#: extension.js:1185 extension.js:1315 extension.js:1325 +msgid "W" +msgstr "E" + +#: prefs.js:185 prefs.js:183 +msgid "graph" +msgstr "Gràfic" + +#: prefs.js:185 prefs.js:183 +msgid "digit" +msgstr "Numèric" + +#: prefs.js:185 prefs.js:183 +msgid "both" +msgstr "Ambdós" + +msgid "cpu" +msgstr "cpu" + +#: extension.js:811 +msgid "mem" +msgstr "mem" + +msgid "swap" +msgstr "interc" + +msgid "net" +msgstr "xarxa" + +msgid "disk" +msgstr "disc" + +#: extension.js:1346 extension.js:1900 +msgid "Preferences..." +msgstr "Configuració..." + +#: extension.js:1340 extension.js:1894 +msgid "System Monitor..." +msgstr "Monitor del sistema..." + +msgid "System monitor" +msgstr "Monitor del sistema" + +msgid "user" +msgstr "usuari" + +msgid "system" +msgstr "sistema" + +msgid "other" +msgstr "altre" + +msgid "nice" +msgstr "nice" + +msgid "iowait" +msgstr "espera e/s" + +msgid "program" +msgstr "programa" + +msgid "cache" +msgstr "memòria cau" + +msgid "buffer" +msgstr "intermèdia" + +msgid "used" +msgstr "usat" + +msgid "up" +msgstr "pujada" + +msgid "down" +msgstr "baixada" + +msgid "uperrors" +msgstr "errorspujada" + +msgid "downerrors" +msgstr "errorsbaixada" + +msgid "write" +msgstr "escriptura" + +msgid "read" +msgstr "lectura" + +#: extension.js:167 extension.js:1454 extension.js:1545 extension.js:1554 +#: extension.js:1577 extension.js:1581 extension.js:1585 extension.js:1588 +msgid "KiB/s" +msgstr "KiB/s" + +#: extension.js:166 extension.js:168 extension.js:1277 extension.js:1321 +#: extension.js:1324 extension.js:1549 extension.js:1558 +msgid "MiB/s" +msgstr "MiB/s" + +#: extension.js:1419 extension.js:1635 +msgid "MiB" +msgstr "MiB" + +#: extension.js:1714 +#, fuzzy +msgid "GiB" +msgstr "GiB" + +#: extension.js:184 +msgid "kB" +msgstr "kB" + +#: extension.js:183 extension.js:185 +msgid "MB" +msgstr "MB" + +#: extension.js:1179 extension.js:1644 +msgid "Thermal" +msgstr "Temperatura" + +msgid "thermal" +msgstr "temperatura" + +#: prefs.js:180 prefs.js:178 +msgid "Show In Menu" +msgstr "Mostra al menú" + +#: prefs.js:222 prefs.js:229 +msgid "Show Time Remaining" +msgstr "Mostra el temps restant" + +#: prefs.js:226 prefs.js:233 +msgid "Hide System Icon" +msgstr "Oculta la icona del sistema" + +#: prefs.js:230 prefs.js:237 +msgid "Usage Style" +msgstr "Estil d'ús" + +#: prefs.js:231 prefs.js:238 +msgid "pie" +msgstr "tarta" + +#: prefs.js:231 prefs.js:238 +msgid "bar" +msgstr "barres" + +#: prefs.js:231 prefs.js:238 +msgid "none" +msgstr "cap" + +#: extension.js:68 +#, fuzzy +msgid "" +"Dependencies Missing\n" +"Please install: \n" +"libgtop, Network Manager and gir bindings \n" +"\t on Ubuntu: gir1.2-gtop-2.0, gir1.2-networkmanager-1.0 \n" +"\t on Fedora: libgtop2-devel, NetworkManager-glib-devel \n" +"\t on Arch: libgtop, networkmanager\n" +"\t on openSUSE: typelib-1_0-GTop-2_0, typelib-1_0-NetworkManager-1_0\n" +msgstr "" +"Hi falten dependències\n" +"Instaŀleu:\n" +"libgtop, Network Manager i gir bindings \n" +"\t a Ubuntu: gir1.2-gtop-2.0, gir1.2-networkmanager-1.0 \n" +"\t a Fedora: libgtop2-devel, NetworkManager-glib-devel \n" +"\t a Arch: libgtop, networkmanager\n" + +#: extension.js:97 extension.js:255 +msgid "System Monitor Extension" +msgstr "Extensió Monitor del Sistema" + +#: extension.js:113 extension.js:271 +msgid "Cancel" +msgstr "Canceŀla" + +#: extension.js:601 extension.js:875 +msgid "Battery" +msgstr "Bateria" + +msgid "battery" +msgstr "bateria" + +#: extension.js:896 extension.js:1334 +msgid "Freq" +msgstr "Freqüència" + +msgid "freq" +msgstr "freq" + +#: extension.js:1540 extension.js:1692 +msgid "Fan" +msgstr "Ventilador" + +msgid "fan" +msgstr "vent" + +#: extension.js:1542 extension.js:1566 extension.js:1574 extension.js:1698 +#: extension.js:1722 extension.js:1730 +msgid "rpm" +msgstr "rpm" + +#: prefs.js:294 +msgid "Show tooltip" +msgstr "Mostra l'indicador de funció" + +#: extension.js:1097 +msgid "CPU" +msgstr "CPU" + +#: prefs.js:267 +msgid "Display temperature in Fahrenheit" +msgstr "Mostra la temperatura en Fahrenheit" + +#: prefs.js:277 +msgid "Temperature threshold (0 to disable)" +msgstr "Llindar de temperatura (0 per a desactivar)" + +#~ msgid "System Monitor Applet Configurator" +#~ msgstr "Configuració de l'extensió Monitor del Sistema" diff --git a/po/compile.sh b/po/compile.sh new file mode 100755 index 0000000..204708f --- /dev/null +++ b/po/compile.sh @@ -0,0 +1,9 @@ +#!/bin/bash +DEST=$1 + +for p in */ +do + echo $p + `mkdir -p $1/$p/LC_MESSAGES` + `msgfmt ./$p/system-monitor.po -o $1/$p/LC_MESSAGES/system-monitor.mo` +done diff --git a/po/cs/system-monitor.po b/po/cs/system-monitor.po new file mode 100644 index 0000000..5efd31a --- /dev/null +++ b/po/cs/system-monitor.po @@ -0,0 +1,375 @@ +# Translation to czech language (cs_CZ) +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# Jan Lipovský , 2011-2012. +#: extension.js:751 +msgid "" +msgstr "" +"Project-Id-Version: gnome-shell-system-monitor-applet\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2016-12-22 15:04+0100\n" +"PO-Revision-Date: 2012-09-15\n" +"Last-Translator: Jan Lipovský \n" +"Language-Team: \n" +"Language: Czech\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" + +#: prefs.js:69 prefs.js:90 prefs.js:110 prefs.js:67 prefs.js:87 prefs.js:107 +msgid ":" +msgstr ":" + +#: prefs.js:161 prefs.js:159 +msgid "Display" +msgstr "Zobrazit" + +#: prefs.js:166 prefs.js:164 +msgid "Refresh Time" +msgstr "Doba obnovy" + +#: prefs.js:171 prefs.js:169 +msgid "Graph Width" +msgstr "Šířka grafu" + +#: prefs.js:176 prefs.js:174 +msgid "Show Text" +msgstr "Zobrazit text" + +#: prefs.js:184 prefs.js:182 +msgid "Display Style" +msgstr "Styl zobrazení" + +#: prefs.js:267 prefs.js:274 +msgid "Display Icon" +msgstr "Zobrazit ikonu" + +#: prefs.js:276 prefs.js:283 +msgid "Display in the Middle" +msgstr "Zobrazit uprostřed" + +#: prefs.js:288 prefs.js:306 +msgid "Background Color" +msgstr "Barva pozadí" + +#: prefs.js:197 prefs.js:195 +msgid "Display Individual Cores" +msgstr "Zobrazit jednotlivá jádra" + +#: prefs.js:193 prefs.js:191 +msgid "Show network speed in bits" +msgstr "Zobrazit rychlost sítě v bitech" + +#: prefs.js:205 prefs.js:208 +msgid "Sensor" +msgstr "Sensor" + +#: prefs.js:207 prefs.js:210 +msgid "Please install lm-sensors" +msgstr "Nainstalujte si lm-sensors, prosím." + +#: prefs.js:282 prefs.js:300 +msgid "Move the clock" +msgstr "Posunout hodiny" + +#: prefs.js:286 prefs.js:289 +msgid "Compact Display" +msgstr "Kompaktní zobrazení" + +#: extension.js:746 extension.js:1117 +msgid "Cpu" +msgstr "Cpu" + +msgid "User" +msgstr "Uživatel" + +msgid "System" +msgstr "Systém" + +msgid "Other" +msgstr "Jiný" + +msgid "Nice" +msgstr "Nice" + +msgid "Iowait" +msgstr "Iowait" + +#: extension.js:941 extension.js:1378 +msgid "Memory" +msgstr "Paměť" + +msgid "Program" +msgstr "Program" + +msgid "Cache" +msgstr "Cache" + +msgid "Buffer" +msgstr "Buffer" + +#: extension.js:1134 extension.js:1598 +msgid "Swap" +msgstr "Swap" + +msgid "Used" +msgstr "Využito" + +#: extension.js:1010 extension.js:1428 +msgid "Net" +msgstr "Síť" + +#: extension.js:1589 +msgid "Up" +msgstr "Odchozí" + +#: extension.js:1586 +msgid "Down" +msgstr "Příchozí" + +msgid "Uperrors" +msgstr "Odchozí chyby" + +msgid "Downerrors" +msgstr "Příchozí chyby" + +msgid "collisions" +msgstr "kolize" + +msgid "Collisions" +msgstr "Kolize" + +#: extension.js:836 extension.js:1264 +msgid "Disk" +msgstr "Disk" + +msgid "Write" +msgstr "Zápis" + +msgid "Read" +msgstr "Čtení" + +#: extension.js:1182 extension.js:1312 extension.js:1322 +msgid "R" +msgstr "" + +#: extension.js:1185 extension.js:1315 extension.js:1325 +msgid "W" +msgstr "" + +#: prefs.js:185 prefs.js:183 +msgid "graph" +msgstr "graf" + +#: prefs.js:185 prefs.js:183 +msgid "digit" +msgstr "čísla" + +#: prefs.js:185 prefs.js:183 +msgid "both" +msgstr "oboje" + +msgid "cpu" +msgstr "cpu" + +#: extension.js:811 +msgid "mem" +msgstr "pam" + +msgid "swap" +msgstr "swap" + +msgid "net" +msgstr "síť" + +msgid "disk" +msgstr "disk" + +#: extension.js:1346 extension.js:1900 +msgid "Preferences..." +msgstr "Možnosti..." + +#: extension.js:1340 extension.js:1894 +msgid "System Monitor..." +msgstr "Sledování systému..." + +msgid "System monitor" +msgstr "Sledování systému" + +msgid "user" +msgstr "uživatel" + +msgid "system" +msgstr "systém" + +msgid "other" +msgstr "jiný" + +msgid "nice" +msgstr "nice" + +msgid "iowait" +msgstr "iowait" + +msgid "program" +msgstr "program" + +msgid "cache" +msgstr "cache" + +msgid "buffer" +msgstr "buffer" + +msgid "used" +msgstr "využito" + +msgid "up" +msgstr "odchozí" + +msgid "down" +msgstr "příchozí" + +msgid "uperrors" +msgstr "odchozí chyby" + +msgid "downerrors" +msgstr "příchozí chyby" + +msgid "write" +msgstr "zápis" + +msgid "read" +msgstr "čtení" + +#: extension.js:167 extension.js:1454 extension.js:1545 extension.js:1554 +#: extension.js:1577 extension.js:1581 extension.js:1585 extension.js:1588 +msgid "KiB/s" +msgstr "KiB/s" + +#: extension.js:166 extension.js:168 extension.js:1277 extension.js:1321 +#: extension.js:1324 extension.js:1549 extension.js:1558 +msgid "MiB/s" +msgstr "MiB/s" + +#: extension.js:1419 extension.js:1635 +msgid "MiB" +msgstr "MiB" + +#: extension.js:1714 +#, fuzzy +msgid "GiB" +msgstr "MiB" + +#: extension.js:184 +msgid "kB" +msgstr "kB" + +#: extension.js:183 extension.js:185 +msgid "MB" +msgstr "MB" + +#: extension.js:1179 extension.js:1644 +msgid "Thermal" +msgstr "Teplota" + +msgid "thermal" +msgstr "teplota" + +#: prefs.js:180 prefs.js:178 +msgid "Show In Menu" +msgstr "Zobrazit v menu" + +#: prefs.js:222 prefs.js:229 +msgid "Show Time Remaining" +msgstr "Zobrazit zbývající čas" + +#: prefs.js:226 prefs.js:233 +msgid "Hide System Icon" +msgstr "Skrýt systémovou ikonu" + +#: prefs.js:230 prefs.js:237 +msgid "Usage Style" +msgstr "Styl zobrazení" + +#: prefs.js:231 prefs.js:238 +msgid "pie" +msgstr "koláčový" + +#: prefs.js:231 prefs.js:238 +msgid "bar" +msgstr "sloupcový" + +#: prefs.js:231 prefs.js:238 +msgid "none" +msgstr "žádný" + +#: extension.js:68 +#, fuzzy +msgid "" +"Dependencies Missing\n" +"Please install: \n" +"libgtop, Network Manager and gir bindings \n" +"\t on Ubuntu: gir1.2-gtop-2.0, gir1.2-networkmanager-1.0 \n" +"\t on Fedora: libgtop2-devel, NetworkManager-glib-devel \n" +"\t on Arch: libgtop, networkmanager\n" +"\t on openSUSE: typelib-1_0-GTop-2_0, typelib-1_0-NetworkManager-1_0\n" +msgstr "" +"Chybějící závislosti\n" +"Prosím nainstalujte si: \n" +"libgtop, Network Manager a gir bindings \n" +"\t Ubuntu: gir1.2-gtop-2.0, gir1.2-networkmanager-1.0 \n" +"\t Fedora: libgtop2-devel, NetworkManager-glib-devel \n" +"\t Arch: libgtop, networkmanager\n" + +#: extension.js:97 extension.js:255 +msgid "System Monitor Extension" +msgstr "Sledování systému rozšíření" + +#: extension.js:113 extension.js:271 +msgid "Cancel" +msgstr "Zrušit" + +#: extension.js:601 extension.js:875 +msgid "Battery" +msgstr "Baterie" + +msgid "battery" +msgstr "baterie" + +#: extension.js:896 extension.js:1334 +msgid "Freq" +msgstr "Frekvence" + +msgid "freq" +msgstr "frekvence" + +#: extension.js:1540 extension.js:1692 +msgid "Fan" +msgstr "Ventilátor" + +msgid "fan" +msgstr "ventilátor" + +#: extension.js:1542 extension.js:1566 extension.js:1574 extension.js:1698 +#: extension.js:1722 extension.js:1730 +msgid "rpm" +msgstr "ot/min" + +#: prefs.js:294 +msgid "Show tooltip" +msgstr "" + +#: extension.js:1097 +msgid "CPU" +msgstr "" + +#: prefs.js:267 +msgid "Display temperature in Fahrenheit" +msgstr "" + +#: prefs.js:277 +msgid "Temperature threshold (0 to disable)" +msgstr "" + +#~ msgid "System Monitor Applet Configurator" +#~ msgstr "System Monitor Applet Konfigurátor" diff --git a/po/de/system-monitor.po b/po/de/system-monitor.po new file mode 100644 index 0000000..d5174f5 --- /dev/null +++ b/po/de/system-monitor.po @@ -0,0 +1,378 @@ +# German translation. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# Michael Pusterhofer , 2011. +#: extension.js:751 +msgid "" +msgstr "" +"Project-Id-Version: paradoxxxzero/gnome-shell-system-monitor-applet\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2016-12-22 15:04+0100\n" +"PO-Revision-Date: 2012-09-05 20:42+0100\n" +"Last-Translator: Agilo Kern \n" +"Language-Team: LANGUAGE \n" +"Language: \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Poedit-Language: German\n" +"X-Poedit-Country: GERMANY\n" +"X-Poedit-KeywordsList: Collisions\n" + +#: prefs.js:69 prefs.js:90 prefs.js:110 prefs.js:67 prefs.js:87 prefs.js:107 +msgid ":" +msgstr ":" + +#: prefs.js:161 prefs.js:159 +msgid "Display" +msgstr "Anzeigen" + +#: prefs.js:166 prefs.js:164 +msgid "Refresh Time" +msgstr "Aktualisierungs-Intervall" + +#: prefs.js:171 prefs.js:169 +msgid "Graph Width" +msgstr "Diagrammbreite" + +#: prefs.js:176 prefs.js:174 +msgid "Show Text" +msgstr "Anzeige beschriften" + +#: prefs.js:184 prefs.js:182 +msgid "Display Style" +msgstr "Anzeigestil" + +#: prefs.js:267 prefs.js:274 +msgid "Display Icon" +msgstr "Zeige Icon" + +#: prefs.js:276 prefs.js:283 +msgid "Display in the Middle" +msgstr "Anzeige zentrieren" + +#: prefs.js:288 prefs.js:306 +msgid "Background Color" +msgstr "Hintergrundfarbe" + +#: prefs.js:197 prefs.js:195 +msgid "Display Individual Cores" +msgstr "Einzelne Prozessorkerne anzeigen" + +#: prefs.js:193 prefs.js:191 +msgid "Show network speed in bits" +msgstr "Übertragungsrate in Bits anzeigen" + +#: prefs.js:205 prefs.js:208 +msgid "Sensor" +msgstr "Sensor" + +#: prefs.js:207 prefs.js:210 +msgid "Please install lm-sensors" +msgstr "Bitte installieren Sie lm-sensors" + +#: prefs.js:282 prefs.js:300 +msgid "Move the clock" +msgstr "Uhr verschieben" + +#: prefs.js:286 prefs.js:289 +msgid "Compact Display" +msgstr "Kompakte Darstellung" + +#: extension.js:746 extension.js:1117 +msgid "Cpu" +msgstr "CPU" + +msgid "User" +msgstr "Benutzer" + +msgid "System" +msgstr "System" + +msgid "Other" +msgstr "Andere" + +msgid "Nice" +msgstr "Nice" + +msgid "Iowait" +msgstr "IOwait" + +#: extension.js:941 extension.js:1378 +msgid "Memory" +msgstr "Hauptspeicher" + +msgid "Program" +msgstr "Programm" + +msgid "Cache" +msgstr "Zwischenspeicher" + +msgid "Buffer" +msgstr "Pufferspeicher" + +#: extension.js:1134 extension.js:1598 +msgid "Swap" +msgstr "Auslagerungsdateien" + +msgid "Used" +msgstr "Verwendet" + +#: extension.js:1010 extension.js:1428 +msgid "Net" +msgstr "Netzwerk" + +#: extension.js:1589 +msgid "Up" +msgstr "Senden" + +#: extension.js:1586 +msgid "Down" +msgstr "Empfangen" + +msgid "Uperrors" +msgstr "Sendefehler" + +msgid "Downerrors" +msgstr "Empfangsfehler" + +msgid "collisions" +msgstr "Kollisionsdaten" + +msgid "Collisions" +msgstr "Kollisionsdaten" + +#: extension.js:836 extension.js:1264 +msgid "Disk" +msgstr "Festplatte" + +msgid "Write" +msgstr "Schreiben" + +msgid "Read" +msgstr "Lesen" + +#: extension.js:1182 extension.js:1312 extension.js:1322 +msgid "R" +msgstr "" + +#: extension.js:1185 extension.js:1315 extension.js:1325 +msgid "W" +msgstr "" + +#: prefs.js:185 prefs.js:183 +msgid "graph" +msgstr "Diagramm" + +#: prefs.js:185 prefs.js:183 +msgid "digit" +msgstr "Zahl" + +#: prefs.js:185 prefs.js:183 +msgid "both" +msgstr "Beides" + +msgid "cpu" +msgstr "CPU" + +#: extension.js:811 +msgid "mem" +msgstr "Speicher" + +msgid "swap" +msgstr "Zw.-Speicher" + +msgid "net" +msgstr "Netzwerk" + +msgid "disk" +msgstr "Festplatte" + +#: extension.js:1346 extension.js:1900 +msgid "Preferences..." +msgstr "Einstellungen..." + +#: extension.js:1340 extension.js:1894 +msgid "System Monitor..." +msgstr "Systemüberwachung..." + +msgid "System monitor" +msgstr "System Monitor" + +msgid "user" +msgstr "Benutzer" + +msgid "system" +msgstr "System" + +msgid "other" +msgstr "Andere" + +msgid "nice" +msgstr "Nice" + +msgid "iowait" +msgstr "Iowait" + +msgid "program" +msgstr "Programmspeicher" + +msgid "cache" +msgstr "Zwischenspeicher" + +msgid "buffer" +msgstr "Pufferspeicher" + +msgid "used" +msgstr "belegt" + +msgid "up" +msgstr "Senden" + +msgid "down" +msgstr "Empfangen" + +msgid "uperrors" +msgstr "Sendefehler" + +msgid "downerrors" +msgstr "Empfangsfehler" + +msgid "write" +msgstr "schreiben" + +msgid "read" +msgstr "lesen" + +#: extension.js:167 extension.js:1454 extension.js:1545 extension.js:1554 +#: extension.js:1577 extension.js:1581 extension.js:1585 extension.js:1588 +msgid "KiB/s" +msgstr "KB/s" + +#: extension.js:166 extension.js:168 extension.js:1277 extension.js:1321 +#: extension.js:1324 extension.js:1549 extension.js:1558 +msgid "MiB/s" +msgstr "MB/s" + +#: extension.js:1419 extension.js:1635 +msgid "MiB" +msgstr "MB" + +#: extension.js:1714 +#, fuzzy +msgid "GiB" +msgstr "MB" + +#: extension.js:184 +msgid "kB" +msgstr "kB" + +#: extension.js:183 extension.js:185 +msgid "MB" +msgstr "MB" + +#: extension.js:1179 extension.js:1644 +msgid "Thermal" +msgstr "Temperatur" + +msgid "thermal" +msgstr "Temp." + +#: prefs.js:180 prefs.js:178 +msgid "Show In Menu" +msgstr "Im Menü anzeigen" + +#: prefs.js:222 prefs.js:229 +msgid "Show Time Remaining" +msgstr "Verbleibende Zeit anzeigen" + +#: prefs.js:226 prefs.js:233 +msgid "Hide System Icon" +msgstr "Systemeigenes Icon verbergen" + +#: prefs.js:230 prefs.js:237 +msgid "Usage Style" +msgstr "Anzeigestil der Speicherbelegung" + +#: prefs.js:231 prefs.js:238 +msgid "pie" +msgstr "Kreisdiagramm" + +#: prefs.js:231 prefs.js:238 +msgid "bar" +msgstr "Balkendiagramm" + +#: prefs.js:231 prefs.js:238 +msgid "none" +msgstr "nicht anzeigen" + +#: extension.js:68 +#, fuzzy +msgid "" +"Dependencies Missing\n" +"Please install: \n" +"libgtop, Network Manager and gir bindings \n" +"\t on Ubuntu: gir1.2-gtop-2.0, gir1.2-networkmanager-1.0 \n" +"\t on Fedora: libgtop2-devel, NetworkManager-glib-devel \n" +"\t on Arch: libgtop, networkmanager\n" +"\t on openSUSE: typelib-1_0-GTop-2_0, typelib-1_0-NetworkManager-1_0\n" +msgstr "" +"Fehlende Abhängigkeiten\n" +"Bitte installieren Sie: \n" +"libgtop, Netzwerkverwaltung und Gir-Anbindungen\n" +"\t unter Ubuntu: gir1.2-gtop-2.0, gir1.2-networkmanager-1.0 \n" +"\t unter Fedora: libgtop2-devel, NetworkManager-glib-devel \n" +"\t unter Arch Linux: libgtop, networkmanager\n" + +#: extension.js:97 extension.js:255 +msgid "System Monitor Extension" +msgstr "Shell-Erweiterung System Monitor" + +#: extension.js:113 extension.js:271 +msgid "Cancel" +msgstr "Abbrechen" + +#: extension.js:601 extension.js:875 +msgid "Battery" +msgstr "Akku" + +msgid "battery" +msgstr "Akku" + +#: extension.js:896 extension.js:1334 +msgid "Freq" +msgstr "Taktfrequenz" + +msgid "freq" +msgstr "Taktfrequenz" + +#: extension.js:1540 extension.js:1692 +msgid "Fan" +msgstr "Lüfter" + +msgid "fan" +msgstr "Lüfter" + +#: extension.js:1542 extension.js:1566 extension.js:1574 extension.js:1698 +#: extension.js:1722 extension.js:1730 +msgid "rpm" +msgstr "1/min" + +#: prefs.js:294 +msgid "Show tooltip" +msgstr "" + +#: extension.js:1097 +msgid "CPU" +msgstr "" + +#: prefs.js:267 +msgid "Display temperature in Fahrenheit" +msgstr "" + +#: prefs.js:277 +msgid "Temperature threshold (0 to disable)" +msgstr "" + +#~ msgid "System Monitor Applet Configurator" +#~ msgstr "System Monitor Applet Konfigurator" diff --git a/po/es_ES/system-monitor.po b/po/es_ES/system-monitor.po new file mode 100644 index 0000000..c717f4c --- /dev/null +++ b/po/es_ES/system-monitor.po @@ -0,0 +1,379 @@ +#: extension.js:751 +msgid "" +msgstr "" +"Project-Id-Version: gnome-shell-system-monitor-applet\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2016-12-22 15:04+0100\n" +"PO-Revision-Date: \n" +"Last-Translator: picodotdev \n" +"Language-Team: \n" +"Language: es_ES\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Generator: Poedit 1.6.4\n" + +#: prefs.js:69 prefs.js:90 prefs.js:110 prefs.js:67 prefs.js:87 prefs.js:107 +msgid ":" +msgstr ":" + +# 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. +#: prefs.js:161 prefs.js:159 +msgid "Display" +msgstr "Mostrar" + +#: prefs.js:166 prefs.js:164 +msgid "Refresh Time" +msgstr "Frecuencia de actualización" + +#: prefs.js:171 prefs.js:169 +msgid "Graph Width" +msgstr "Ancho del gráfico" + +#: prefs.js:176 prefs.js:174 +msgid "Show Text" +msgstr "Mostrar etiqueta" + +#: prefs.js:184 prefs.js:182 +msgid "Display Style" +msgstr "Estilo mostrado" + +#: prefs.js:267 prefs.js:274 +msgid "Display Icon" +msgstr "Mostrar icono" + +#: prefs.js:276 prefs.js:283 +msgid "Display in the Middle" +msgstr "Mostrar en el centro" + +#: prefs.js:288 prefs.js:306 +msgid "Background Color" +msgstr "Color del fondo" + +#: prefs.js:197 prefs.js:195 +msgid "Display Individual Cores" +msgstr "Mostrar núcleos individuales" + +#: prefs.js:193 prefs.js:191 +msgid "Show network speed in bits" +msgstr "Mostrar velocidad de red en bits" + +#: prefs.js:205 prefs.js:208 +msgid "Sensor" +msgstr "Sensor" + +#: prefs.js:207 prefs.js:210 +msgid "Please install lm-sensors" +msgstr "Instale lm-sensors" + +#: prefs.js:282 prefs.js:300 +msgid "Move the clock" +msgstr "Mover el reloj" + +# 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. +#: prefs.js:286 prefs.js:289 +msgid "Compact Display" +msgstr "Visualización compacta" + +#: extension.js:746 extension.js:1117 +msgid "Cpu" +msgstr "CPU" + +msgid "User" +msgstr "Usuario" + +msgid "System" +msgstr "Sistema" + +msgid "Other" +msgstr "Otro" + +msgid "Nice" +msgstr "" + +msgid "Iowait" +msgstr "Espera E/S" + +#: extension.js:941 extension.js:1378 +msgid "Memory" +msgstr "Memoria" + +msgid "Program" +msgstr "Programa" + +msgid "Cache" +msgstr "Caché" + +msgid "Buffer" +msgstr "Intermedia" + +#: extension.js:1134 extension.js:1598 +msgid "Swap" +msgstr "Intercambio" + +msgid "Used" +msgstr "Usado" + +#: extension.js:1010 extension.js:1428 +msgid "Net" +msgstr "Red" + +#: extension.js:1589 +msgid "Up" +msgstr "Subida" + +#: extension.js:1586 +msgid "Down" +msgstr "Descarga" + +msgid "Uperrors" +msgstr "Errores de subida" + +msgid "Downerrors" +msgstr "Errores de descarga" + +msgid "collisions" +msgstr "colisiones" + +msgid "Collisions" +msgstr "Colisiones" + +#: extension.js:836 extension.js:1264 +msgid "Disk" +msgstr "Disco" + +msgid "Write" +msgstr "Escritura" + +msgid "Read" +msgstr "Lectura" + +#: extension.js:1182 extension.js:1312 extension.js:1322 +msgid "R" +msgstr "L" + +#: extension.js:1185 extension.js:1315 extension.js:1325 +msgid "W" +msgstr "E" + +#: prefs.js:185 prefs.js:183 +msgid "graph" +msgstr "Gráfico" + +#: prefs.js:185 prefs.js:183 +msgid "digit" +msgstr "Numérico" + +#: prefs.js:185 prefs.js:183 +msgid "both" +msgstr "Ambos" + +msgid "cpu" +msgstr "cpu" + +#: extension.js:811 +msgid "mem" +msgstr "mem" + +msgid "swap" +msgstr "swap" + +msgid "net" +msgstr "red" + +msgid "disk" +msgstr "disco" + +#: extension.js:1346 extension.js:1900 +msgid "Preferences..." +msgstr "Configuración..." + +#: extension.js:1340 extension.js:1894 +msgid "System Monitor..." +msgstr "Monitor del sistema..." + +msgid "System monitor" +msgstr "Monitor del sistema" + +msgid "user" +msgstr "usuario" + +msgid "system" +msgstr "sistema" + +msgid "other" +msgstr "otro" + +msgid "nice" +msgstr "" + +msgid "iowait" +msgstr "espera e/s" + +msgid "program" +msgstr "programa" + +msgid "cache" +msgstr "caché" + +msgid "buffer" +msgstr "intermedia" + +msgid "used" +msgstr "usado" + +msgid "up" +msgstr "subida" + +msgid "down" +msgstr "descarga" + +msgid "uperrors" +msgstr "Errores de subida" + +msgid "downerrors" +msgstr "Errores de bajada" + +msgid "write" +msgstr "escritura" + +msgid "read" +msgstr "lectura" + +#: extension.js:167 extension.js:1454 extension.js:1545 extension.js:1554 +#: extension.js:1577 extension.js:1581 extension.js:1585 extension.js:1588 +msgid "KiB/s" +msgstr "KiB/s" + +#: extension.js:166 extension.js:168 extension.js:1277 extension.js:1321 +#: extension.js:1324 extension.js:1549 extension.js:1558 +msgid "MiB/s" +msgstr "MiB/s" + +#: extension.js:1419 extension.js:1635 +msgid "MiB" +msgstr "MiB" + +#: extension.js:1714 +msgid "GiB" +msgstr "GiB" + +#: extension.js:184 +msgid "kB" +msgstr "kB" + +#: extension.js:183 extension.js:185 +msgid "MB" +msgstr "MB" + +#: extension.js:1179 extension.js:1644 +msgid "Thermal" +msgstr "Temperatura" + +msgid "thermal" +msgstr "temperatura" + +#: prefs.js:180 prefs.js:178 +msgid "Show In Menu" +msgstr "Mostrar en el menú" + +#: prefs.js:222 prefs.js:229 +msgid "Show Time Remaining" +msgstr "Mostrar tiempo restante" + +#: prefs.js:226 prefs.js:233 +msgid "Hide System Icon" +msgstr "Ocultar icono del sistema" + +#: prefs.js:230 prefs.js:237 +msgid "Usage Style" +msgstr "Uso de estilo" + +#: prefs.js:231 prefs.js:238 +msgid "pie" +msgstr "tarta" + +#: prefs.js:231 prefs.js:238 +msgid "bar" +msgstr "barras" + +#: prefs.js:231 prefs.js:238 +msgid "none" +msgstr "ninguno" + +#: extension.js:68 +#, fuzzy +msgid "" +"Dependencies Missing\n" +"Please install: \n" +"libgtop, Network Manager and gir bindings \n" +"\t on Ubuntu: gir1.2-gtop-2.0, gir1.2-networkmanager-1.0 \n" +"\t on Fedora: libgtop2-devel, NetworkManager-glib-devel \n" +"\t on Arch: libgtop, networkmanager\n" +"\t on openSUSE: typelib-1_0-GTop-2_0, typelib-1_0-NetworkManager-1_0\n" +msgstr "" +"Faltan dependencias\n" +"Instale:\n" +"libgtop, Network Manager y gir bindings \n" +"\t en Ubuntu: gir1.2-gtop-2.0, gir1.2-networkmanager-1.0 \n" +"\t en Fedora: libgtop2-devel, NetworkManager-glib-devel \n" +"\t en Arch: libgtop, networkmanager\n" + +#: extension.js:97 extension.js:255 +msgid "System Monitor Extension" +msgstr "Extensión monitor del sistema" + +#: extension.js:113 extension.js:271 +msgid "Cancel" +msgstr "Cancelar" + +#: extension.js:601 extension.js:875 +msgid "Battery" +msgstr "Batería" + +msgid "battery" +msgstr "batería" + +#: extension.js:896 extension.js:1334 +msgid "Freq" +msgstr "Frecuencia" + +msgid "freq" +msgstr "frec" + +#: extension.js:1540 extension.js:1692 +msgid "Fan" +msgstr "Ventilador" + +msgid "fan" +msgstr "vent" + +#: extension.js:1542 extension.js:1566 extension.js:1574 extension.js:1698 +#: extension.js:1722 extension.js:1730 +msgid "rpm" +msgstr "rpm" + +#: prefs.js:294 +msgid "Show tooltip" +msgstr "" + +#: extension.js:1097 +msgid "CPU" +msgstr "" + +#: prefs.js:267 +msgid "Display temperature in Fahrenheit" +msgstr "" + +#: prefs.js:277 +msgid "Temperature threshold (0 to disable)" +msgstr "Umbral de temperatura (0 para desactivar)" + +#~ msgid "System Monitor Applet Configurator" +#~ msgstr "Configuración de la extensión monitor del sistema" diff --git a/po/es_MX/system-monitor.po b/po/es_MX/system-monitor.po new file mode 100644 index 0000000..b444b71 --- /dev/null +++ b/po/es_MX/system-monitor.po @@ -0,0 +1,376 @@ +#: extension.js:751 +msgid "" +msgstr "" +"Project-Id-Version: \n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2016-12-22 15:04+0100\n" +"PO-Revision-Date: \n" +"Last-Translator: Carlos A. Gonzalez \n" +"Language-Team: \n" +"Language: \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" + +#: prefs.js:69 prefs.js:90 prefs.js:110 prefs.js:67 prefs.js:87 prefs.js:107 +msgid ":" +msgstr "" + +# 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. +#: prefs.js:161 prefs.js:159 +msgid "Display" +msgstr "Pantalla" + +#: prefs.js:166 prefs.js:164 +msgid "Refresh Time" +msgstr "Intervalo de actualización" + +#: prefs.js:171 prefs.js:169 +msgid "Graph Width" +msgstr "Ancho de la gráfica" + +#: prefs.js:176 prefs.js:174 +msgid "Show Text" +msgstr "Mostrar texto" + +#: prefs.js:184 prefs.js:182 +msgid "Display Style" +msgstr "Estilo de despliegue" + +#: prefs.js:267 prefs.js:274 +msgid "Display Icon" +msgstr "Mostrar icono" + +#: prefs.js:276 prefs.js:283 +msgid "Display in the Middle" +msgstr "Mostrar en medio" + +#: prefs.js:288 prefs.js:306 +msgid "Background Color" +msgstr "Color de fondo" + +#: prefs.js:197 prefs.js:195 +msgid "Display Individual Cores" +msgstr "" + +#: prefs.js:193 prefs.js:191 +msgid "Show network speed in bits" +msgstr "" + +#: prefs.js:205 prefs.js:208 +msgid "Sensor" +msgstr "" + +#: prefs.js:207 prefs.js:210 +msgid "Please install lm-sensors" +msgstr "" + +#: prefs.js:282 prefs.js:300 +msgid "Move the clock" +msgstr "" + +# 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. +#: prefs.js:286 prefs.js:289 +#, fuzzy +msgid "Compact Display" +msgstr "Pantalla" + +#: extension.js:746 extension.js:1117 +msgid "Cpu" +msgstr "" + +msgid "User" +msgstr "Usuario" + +msgid "System" +msgstr "Sistema" + +msgid "Other" +msgstr "Otro" + +msgid "Nice" +msgstr "" + +msgid "Iowait" +msgstr "" + +#: extension.js:941 extension.js:1378 +msgid "Memory" +msgstr "Memoria" + +msgid "Program" +msgstr "Programa" + +msgid "Cache" +msgstr "" + +msgid "Buffer" +msgstr "" + +#: extension.js:1134 extension.js:1598 +msgid "Swap" +msgstr "" + +msgid "Used" +msgstr "Usado" + +#: extension.js:1010 extension.js:1428 +msgid "Net" +msgstr "" + +#: extension.js:1589 +msgid "Up" +msgstr "Arriba" + +#: extension.js:1586 +msgid "Down" +msgstr "Abajo" + +msgid "Uperrors" +msgstr "" + +msgid "Downerrors" +msgstr "" + +msgid "collisions" +msgstr "" + +msgid "Collisions" +msgstr "" + +#: extension.js:836 extension.js:1264 +msgid "Disk" +msgstr "Disco" + +msgid "Write" +msgstr "Escribir" + +msgid "Read" +msgstr "Leer" + +#: extension.js:1182 extension.js:1312 extension.js:1322 +msgid "R" +msgstr "" + +#: extension.js:1185 extension.js:1315 extension.js:1325 +msgid "W" +msgstr "" + +#: prefs.js:185 prefs.js:183 +msgid "graph" +msgstr "Gráfica" + +#: prefs.js:185 prefs.js:183 +msgid "digit" +msgstr "" + +#: prefs.js:185 prefs.js:183 +msgid "both" +msgstr "Ambos" + +msgid "cpu" +msgstr "" + +#: extension.js:811 +msgid "mem" +msgstr "" + +msgid "swap" +msgstr "" + +msgid "net" +msgstr "" + +msgid "disk" +msgstr "disco" + +#: extension.js:1346 extension.js:1900 +msgid "Preferences..." +msgstr "Preferencias..." + +#: extension.js:1340 extension.js:1894 +msgid "System Monitor..." +msgstr "Monitor de sistema..." + +msgid "System monitor" +msgstr "Monitor de sistema" + +msgid "user" +msgstr "usuario" + +msgid "system" +msgstr "sistema" + +msgid "other" +msgstr "otro" + +msgid "nice" +msgstr "nice" + +msgid "iowait" +msgstr "iowait" + +msgid "program" +msgstr "programa" + +msgid "cache" +msgstr "cache" + +msgid "buffer" +msgstr "buffer" + +msgid "used" +msgstr "usado" + +msgid "up" +msgstr "arriba" + +msgid "down" +msgstr "abajo" + +msgid "uperrors" +msgstr "" + +msgid "downerrors" +msgstr "" + +msgid "write" +msgstr "escribir" + +msgid "read" +msgstr "leer" + +#: extension.js:167 extension.js:1454 extension.js:1545 extension.js:1554 +#: extension.js:1577 extension.js:1581 extension.js:1585 extension.js:1588 +msgid "KiB/s" +msgstr "" + +#: extension.js:166 extension.js:168 extension.js:1277 extension.js:1321 +#: extension.js:1324 extension.js:1549 extension.js:1558 +msgid "MiB/s" +msgstr "" + +#: extension.js:1419 extension.js:1635 +msgid "MiB" +msgstr "" + +#: extension.js:1714 +msgid "GiB" +msgstr "GiB" + +#: extension.js:184 +msgid "kB" +msgstr "" + +#: extension.js:183 extension.js:185 +msgid "MB" +msgstr "" + +#: extension.js:1179 extension.js:1644 +msgid "Thermal" +msgstr "" + +#, fuzzy +msgid "thermal" +msgstr "Otro" + +#: prefs.js:180 prefs.js:178 +msgid "Show In Menu" +msgstr "" + +#: prefs.js:222 prefs.js:229 +msgid "Show Time Remaining" +msgstr "" + +#: prefs.js:226 prefs.js:233 +#, fuzzy +msgid "Hide System Icon" +msgstr "Monitor de sistema" + +#: prefs.js:230 prefs.js:237 +#, fuzzy +msgid "Usage Style" +msgstr "Estilo de despliegue" + +#: prefs.js:231 prefs.js:238 +msgid "pie" +msgstr "" + +#: prefs.js:231 prefs.js:238 +msgid "bar" +msgstr "" + +#: prefs.js:231 prefs.js:238 +msgid "none" +msgstr "" + +#: extension.js:68 +msgid "" +"Dependencies Missing\n" +"Please install: \n" +"libgtop, Network Manager and gir bindings \n" +"\t on Ubuntu: gir1.2-gtop-2.0, gir1.2-networkmanager-1.0 \n" +"\t on Fedora: libgtop2-devel, NetworkManager-glib-devel \n" +"\t on Arch: libgtop, networkmanager\n" +"\t on openSUSE: typelib-1_0-GTop-2_0, typelib-1_0-NetworkManager-1_0\n" +msgstr "" + +#: extension.js:97 extension.js:255 +#, fuzzy +msgid "System Monitor Extension" +msgstr "Monitor de sistema" + +#: extension.js:113 extension.js:271 +msgid "Cancel" +msgstr "" + +#: extension.js:601 extension.js:875 +msgid "Battery" +msgstr "" + +msgid "battery" +msgstr "" + +#: extension.js:896 extension.js:1334 +msgid "Freq" +msgstr "" + +msgid "freq" +msgstr "" + +#: extension.js:1540 extension.js:1692 +msgid "Fan" +msgstr "" + +msgid "fan" +msgstr "" + +#: extension.js:1542 extension.js:1566 extension.js:1574 extension.js:1698 +#: extension.js:1722 extension.js:1730 +msgid "rpm" +msgstr "" + +#: prefs.js:294 +msgid "Show tooltip" +msgstr "" + +#: extension.js:1097 +msgid "CPU" +msgstr "" + +#: prefs.js:267 +msgid "Display temperature in Fahrenheit" +msgstr "" + +#: prefs.js:277 +msgid "Temperature threshold (0 to disable)" +msgstr "Umbral de temperatura (0 para desactivar)" + +#~ msgid "System Monitor Applet Configurator" +#~ msgstr "Configurador del applet de monitor de systema" diff --git a/po/fa/system-monitor.po b/po/fa/system-monitor.po new file mode 100644 index 0000000..673814f --- /dev/null +++ b/po/fa/system-monitor.po @@ -0,0 +1,374 @@ +# Copyright (C) 2011 Iranian Free Software Users Group (IFSUG.org)translation team. +# This file is distributed under the same license as the PACKAGE package. +# Arash Mousavi , 2011. +#: extension.js:751 +msgid "" +msgstr "" +"Project-Id-Version: \n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2016-12-22 15:04+0100\n" +"PO-Revision-Date: \n" +"Last-Translator: Arash Mousavi \n" +"Language-Team: Persian \n" +"Language: fa\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Poedit-Language: Persian\n" +"X-Poedit-Country: IRAN, ISLAMIC REPUBLIC OF\n" +"X-Poedit-SourceCharset: utf-8\n" + +#: prefs.js:69 prefs.js:90 prefs.js:110 prefs.js:67 prefs.js:87 prefs.js:107 +msgid ":" +msgstr "" + +#: prefs.js:161 prefs.js:159 +msgid "Display" +msgstr "نمایش" + +#: prefs.js:166 prefs.js:164 +msgid "Refresh Time" +msgstr "زمان نوسازی" + +#: prefs.js:171 prefs.js:169 +msgid "Graph Width" +msgstr "طول گراف" + +#: prefs.js:176 prefs.js:174 +msgid "Show Text" +msgstr "نمایش متن" + +#: prefs.js:184 prefs.js:182 +msgid "Display Style" +msgstr "سبک نمایش" + +#: prefs.js:267 prefs.js:274 +msgid "Display Icon" +msgstr "نمایش شمایل" + +#: prefs.js:276 prefs.js:283 +msgid "Display in the Middle" +msgstr "نمایش در وسط" + +#: prefs.js:288 prefs.js:306 +msgid "Background Color" +msgstr "رنگ پس‌زمینه" + +#: prefs.js:197 prefs.js:195 +msgid "Display Individual Cores" +msgstr "" + +#: prefs.js:193 prefs.js:191 +msgid "Show network speed in bits" +msgstr "" + +#: prefs.js:205 prefs.js:208 +msgid "Sensor" +msgstr "" + +#: prefs.js:207 prefs.js:210 +msgid "Please install lm-sensors" +msgstr "" + +#: prefs.js:282 prefs.js:300 +msgid "Move the clock" +msgstr "" + +#: prefs.js:286 prefs.js:289 +#, fuzzy +msgid "Compact Display" +msgstr "نمایش" + +#: extension.js:746 extension.js:1117 +msgid "Cpu" +msgstr "سی‌پی‌یو" + +msgid "User" +msgstr "کاربر" + +msgid "System" +msgstr "سیستم" + +msgid "Other" +msgstr "دیگر" + +msgid "Nice" +msgstr "نایس" + +msgid "Iowait" +msgstr "" + +#: extension.js:941 extension.js:1378 +msgid "Memory" +msgstr "حافظه" + +msgid "Program" +msgstr "برنامه" + +msgid "Cache" +msgstr "حافظه‌نهان" + +msgid "Buffer" +msgstr "بافر" + +#: extension.js:1134 extension.js:1598 +msgid "Swap" +msgstr "سوئپ" + +msgid "Used" +msgstr "استفاده شده" + +#: extension.js:1010 extension.js:1428 +msgid "Net" +msgstr "شبکه" + +#: extension.js:1589 +msgid "Up" +msgstr "آپلود" + +#: extension.js:1586 +msgid "Down" +msgstr "دانلود" + +msgid "Uperrors" +msgstr "" + +msgid "Downerrors" +msgstr "" + +msgid "collisions" +msgstr "" + +msgid "Collisions" +msgstr "" + +#: extension.js:836 extension.js:1264 +msgid "Disk" +msgstr "دیسک" + +msgid "Write" +msgstr "نوشتن" + +msgid "Read" +msgstr "خواندن" + +#: extension.js:1182 extension.js:1312 extension.js:1322 +msgid "R" +msgstr "" + +#: extension.js:1185 extension.js:1315 extension.js:1325 +msgid "W" +msgstr "" + +#: prefs.js:185 prefs.js:183 +msgid "graph" +msgstr "گراف" + +#: prefs.js:185 prefs.js:183 +msgid "digit" +msgstr "عددی" + +#: prefs.js:185 prefs.js:183 +msgid "both" +msgstr "هر دو" + +msgid "cpu" +msgstr "سی‌پی‌یو" + +#: extension.js:811 +msgid "mem" +msgstr "حافظه" + +msgid "swap" +msgstr "سوئپ" + +msgid "net" +msgstr "شبکه" + +msgid "disk" +msgstr "دیسک" + +#: extension.js:1346 extension.js:1900 +msgid "Preferences..." +msgstr "ترجیحات..." + +#: extension.js:1340 extension.js:1894 +msgid "System Monitor..." +msgstr "پایشگر سیستم..." + +msgid "System monitor" +msgstr "پایشگر سیستم" + +msgid "user" +msgstr "کاربر" + +msgid "system" +msgstr "سیستم" + +msgid "other" +msgstr "دیگر" + +msgid "nice" +msgstr "نایس" + +msgid "iowait" +msgstr "iowait" + +msgid "program" +msgstr "برنامه" + +msgid "cache" +msgstr "حافظه‌نهان" + +msgid "buffer" +msgstr "بافر" + +msgid "used" +msgstr "استفاده شده" + +msgid "up" +msgstr "آپلود" + +msgid "down" +msgstr "دانلود" + +msgid "uperrors" +msgstr "" + +msgid "downerrors" +msgstr "" + +msgid "write" +msgstr "نوشتن" + +msgid "read" +msgstr "خواندن" + +#: extension.js:167 extension.js:1454 extension.js:1545 extension.js:1554 +#: extension.js:1577 extension.js:1581 extension.js:1585 extension.js:1588 +msgid "KiB/s" +msgstr "" + +#: extension.js:166 extension.js:168 extension.js:1277 extension.js:1321 +#: extension.js:1324 extension.js:1549 extension.js:1558 +msgid "MiB/s" +msgstr "" + +#: extension.js:1419 extension.js:1635 +msgid "MiB" +msgstr "" + +#: extension.js:1714 +msgid "GiB" +msgstr "" + +#: extension.js:184 +msgid "kB" +msgstr "" + +#: extension.js:183 extension.js:185 +msgid "MB" +msgstr "" + +#: extension.js:1179 extension.js:1644 +msgid "Thermal" +msgstr "" + +#, fuzzy +msgid "thermal" +msgstr "دیگر" + +#: prefs.js:180 prefs.js:178 +msgid "Show In Menu" +msgstr "" + +#: prefs.js:222 prefs.js:229 +msgid "Show Time Remaining" +msgstr "" + +#: prefs.js:226 prefs.js:233 +#, fuzzy +msgid "Hide System Icon" +msgstr "پایشگر سیستم" + +#: prefs.js:230 prefs.js:237 +#, fuzzy +msgid "Usage Style" +msgstr "سبک نمایش" + +#: prefs.js:231 prefs.js:238 +msgid "pie" +msgstr "" + +#: prefs.js:231 prefs.js:238 +msgid "bar" +msgstr "" + +#: prefs.js:231 prefs.js:238 +msgid "none" +msgstr "" + +#: extension.js:68 +msgid "" +"Dependencies Missing\n" +"Please install: \n" +"libgtop, Network Manager and gir bindings \n" +"\t on Ubuntu: gir1.2-gtop-2.0, gir1.2-networkmanager-1.0 \n" +"\t on Fedora: libgtop2-devel, NetworkManager-glib-devel \n" +"\t on Arch: libgtop, networkmanager\n" +"\t on openSUSE: typelib-1_0-GTop-2_0, typelib-1_0-NetworkManager-1_0\n" +msgstr "" + +#: extension.js:97 extension.js:255 +#, fuzzy +msgid "System Monitor Extension" +msgstr "پایشگر سیستم" + +#: extension.js:113 extension.js:271 +msgid "Cancel" +msgstr "" + +#: extension.js:601 extension.js:875 +msgid "Battery" +msgstr "" + +msgid "battery" +msgstr "" + +#: extension.js:896 extension.js:1334 +msgid "Freq" +msgstr "" + +msgid "freq" +msgstr "" + +#: extension.js:1540 extension.js:1692 +msgid "Fan" +msgstr "" + +msgid "fan" +msgstr "" + +#: extension.js:1542 extension.js:1566 extension.js:1574 extension.js:1698 +#: extension.js:1722 extension.js:1730 +msgid "rpm" +msgstr "" + +#: prefs.js:294 +msgid "Show tooltip" +msgstr "" + +#: extension.js:1097 +msgid "CPU" +msgstr "" + +#: prefs.js:267 +msgid "Display temperature in Fahrenheit" +msgstr "" + +#: prefs.js:277 +msgid "Temperature threshold (0 to disable)" +msgstr "" + +#~ msgid "System Monitor Applet Configurator" +#~ msgstr "پیکربندی برنامک پایشگر سیستم" diff --git a/po/fi/system-monitor.po b/po/fi/system-monitor.po new file mode 100644 index 0000000..6874850 --- /dev/null +++ b/po/fi/system-monitor.po @@ -0,0 +1,374 @@ +# 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: \n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-09-06 21:38+0300\n" +"PO-Revision-Date: 2017-09-06 21:57+0300\n" +"Language-Team: \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Generator: Poedit 1.8.7.1\n" +"Last-Translator: Jiri Grönroos \n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" +"Language: fi\n" + +#: prefs.js:69 prefs.js:90 prefs.js:110 prefs.js:67 prefs.js:87 prefs.js:107 +msgid ":" +msgstr ":" + +#: prefs.js:161 prefs.js:159 +msgid "Display" +msgstr "Näytä" + +#: prefs.js:166 prefs.js:164 +msgid "Refresh Time" +msgstr "Päivitysväli" + +#: prefs.js:171 prefs.js:169 +msgid "Graph Width" +msgstr "Käyrän leveys" + +#: prefs.js:176 prefs.js:174 +msgid "Show Text" +msgstr "Näytä teksti" + +#: prefs.js:184 prefs.js:182 +msgid "Display Style" +msgstr "Esitystyyli" + +#: prefs.js:267 prefs.js:274 +msgid "Display Icon" +msgstr "Näytä kuvake" + +#: prefs.js:276 prefs.js:283 +msgid "Display in the Middle" +msgstr "Näytä keskellä" + +#: prefs.js:288 prefs.js:306 +msgid "Background Color" +msgstr "Taustaväri" + +#: prefs.js:197 prefs.js:195 +msgid "Display Individual Cores" +msgstr "Näytä yksittäiset ytimet" + +#: prefs.js:193 prefs.js:191 +msgid "Show network speed in bits" +msgstr "Näytä verkon nopeus biteissä" + +#: prefs.js:205 prefs.js:208 +msgid "Sensor" +msgstr "Sensori" + +#: prefs.js:207 prefs.js:210 +msgid "Please install lm-sensors" +msgstr "Asenna lm-sensors" + +#: prefs.js:282 prefs.js:300 +msgid "Move the clock" +msgstr "Siirrä kello" + +#: prefs.js:286 prefs.js:289 +msgid "Compact Display" +msgstr "Kompakti näyttö" + +#: extension.js:746 extension.js:1117 +msgid "Cpu" +msgstr "Suoritin" + +msgid "User" +msgstr "Käyttäjä" + +msgid "System" +msgstr "Järjestelmä" + +msgid "Other" +msgstr "Muu" + +msgid "Nice" +msgstr "Nice" + +msgid "Iowait" +msgstr "Iowait" + +#: extension.js:941 extension.js:1378 +msgid "Memory" +msgstr "Muisti" + +msgid "Program" +msgstr "Ohjelma" + +msgid "Cache" +msgstr "Välimuisti" + +msgid "Buffer" +msgstr "Puskuri" + +#: extension.js:1134 extension.js:1598 +msgid "Swap" +msgstr "Swap" + +msgid "Used" +msgstr "Käytetty" + +#: extension.js:1010 extension.js:1428 +msgid "Net" +msgstr "Verkko" + +#: extension.js:1589 +msgid "Up" +msgstr "Lähetys" + +#: extension.js:1586 +msgid "Down" +msgstr "Lataus" + +msgid "Uperrors" +msgstr "Lähetysvirheet" + +msgid "Downerrors" +msgstr "Latausvirheet" + +msgid "collisions" +msgstr "törmäykset" + +msgid "Collisions" +msgstr "Törmäykset" + +#: extension.js:836 extension.js:1264 +msgid "Disk" +msgstr "Levy" + +msgid "Write" +msgstr "Kirjoitus" + +msgid "Read" +msgstr "Luku" + +#: extension.js:1182 extension.js:1312 extension.js:1322 +msgid "R" +msgstr "R" + +#: extension.js:1185 extension.js:1315 extension.js:1325 +msgid "W" +msgstr "W" + +#: prefs.js:185 prefs.js:183 +msgid "graph" +msgstr "käyrä" + +#: prefs.js:185 prefs.js:183 +msgid "digit" +msgstr "lukuarvo" + +#: prefs.js:185 prefs.js:183 +msgid "both" +msgstr "molemmat" + +msgid "cpu" +msgstr "cpu" + +#: extension.js:811 +msgid "mem" +msgstr "mem" + +msgid "swap" +msgstr "swap" + +msgid "net" +msgstr "verkko" + +msgid "disk" +msgstr "levy" + +#: extension.js:1346 extension.js:1900 +msgid "Preferences..." +msgstr "Asetukset..." + +#: extension.js:1340 extension.js:1894 +msgid "System Monitor..." +msgstr "Järjestelmän valvonta..." + +msgid "System monitor" +msgstr "Järjestelmän valvonta" + +msgid "user" +msgstr "käyttäjä" + +msgid "system" +msgstr "järjestelmä" + +msgid "other" +msgstr "muu" + +msgid "nice" +msgstr "nice" + +msgid "iowait" +msgstr "iowait" + +msgid "program" +msgstr "ohjelma" + +msgid "cache" +msgstr "välimuisti" + +msgid "buffer" +msgstr "puskuri" + +msgid "used" +msgstr "käytetty" + +msgid "up" +msgstr "ulos" + +msgid "down" +msgstr "sisään" + +msgid "uperrors" +msgstr "lähetysvirheet" + +msgid "downerrors" +msgstr "latausvirheet" + +msgid "write" +msgstr "kirjoitus" + +msgid "read" +msgstr "luku" + +#: extension.js:167 extension.js:1454 extension.js:1545 extension.js:1554 +#: extension.js:1577 extension.js:1581 extension.js:1585 extension.js:1588 +msgid "KiB/s" +msgstr "KiB/s" + +#: extension.js:166 extension.js:168 extension.js:1277 extension.js:1321 +#: extension.js:1324 extension.js:1549 extension.js:1558 +msgid "MiB/s" +msgstr "MiB/s" + +#: extension.js:178 extension.js:1597 extension.js:1605 +msgid "kbit/s" +msgstr "kbit/s" + +#: extension.js:179 extension.js:1600 extension.js:1608 +msgid "Mbit/s" +msgstr "Mbit/s" + +#: extension.js:1419 extension.js:1635 +msgid "MiB" +msgstr "MiB" + +#: extension.js:1714 +msgid "GiB" +msgstr "GiB" + +#: extension.js:184 +msgid "kB" +msgstr "kt" + +#: extension.js:183 extension.js:185 +msgid "MB" +msgstr "Mt" + +#: extension.js:1179 extension.js:1644 +msgid "Thermal" +msgstr "Lämpötila" + +msgid "thermal" +msgstr "lämpötila" + +#: prefs.js:180 prefs.js:178 +msgid "Show In Menu" +msgstr "Näytä valikossa" + +#: prefs.js:222 prefs.js:229 +msgid "Show Time Remaining" +msgstr "Näytä jäljellä oleva aika" + +#: prefs.js:226 prefs.js:233 +msgid "Hide System Icon" +msgstr "Piilota järjestelmäkuvake" + +#: prefs.js:230 prefs.js:237 +msgid "Usage Style" +msgstr "Käytön tyyli" + +#: prefs.js:231 prefs.js:238 +msgid "pie" +msgstr "piirakka" + +#: prefs.js:231 prefs.js:238 +msgid "bar" +msgstr "palkki" + +#: prefs.js:231 prefs.js:238 +msgid "none" +msgstr "ei mitään" + +#: extension.js:68 +msgid "" +"Dependencies Missing\n" +"Please install: \n" +"libgtop, Network Manager and gir bindings \n" +"\t on Ubuntu: gir1.2-gtop-2.0, gir1.2-networkmanager-1.0 \n" +"\t on Fedora: libgtop2-devel, NetworkManager-glib-devel \n" +"\t on Arch: libgtop, networkmanager\n" +"\t on openSUSE: typelib-1_0-GTop-2_0, typelib-1_0-NetworkManager-1_0\n" +msgstr "" + +#: extension.js:97 extension.js:255 +msgid "System Monitor Extension" +msgstr "Järjestelmän valvonnan laajennus" + +#: extension.js:113 extension.js:271 +msgid "Cancel" +msgstr "Peru" + +#: extension.js:601 extension.js:875 +msgid "Battery" +msgstr "Akku" + +msgid "battery" +msgstr "akku" + +#: extension.js:896 extension.js:1334 +msgid "Freq" +msgstr "Taajuus" + +msgid "freq" +msgstr "taajuus" + +#: extension.js:1540 extension.js:1692 +msgid "Fan" +msgstr "Tuuletin" + +msgid "fan" +msgstr "tuuletin" + +#: extension.js:1542 extension.js:1566 extension.js:1574 extension.js:1698 +#: extension.js:1722 extension.js:1730 +msgid "rpm" +msgstr "rpm" + +#: prefs.js:294 +msgid "Show tooltip" +msgstr "Näytä työkaluvihje" + +#: extension.js:1097 +msgid "CPU" +msgstr "Suoritin" + +#: prefs.js:267 +msgid "Display temperature in Fahrenheit" +msgstr "Näytä lämpötila Fahrenheiteissa" + +#: prefs.js:277 +msgid "Temperature threshold (0 to disable)" +msgstr "" diff --git a/po/fr/system-monitor.po b/po/fr/system-monitor.po new file mode 100644 index 0000000..c56b4c0 --- /dev/null +++ b/po/fr/system-monitor.po @@ -0,0 +1,375 @@ +# French translation. +# Copyright (C) 2011 Florian Mounier aka paradoxxxzero +# This file is distributed under the same license as the +# GNOME shell system monitor extension. +# Guillaume Ayoub , 2011. +# +#: extension.js:751 +msgid "" +msgstr "" +"Project-Id-Version: gnome-shell-system-monitor-applet\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2016-12-22 15:04+0100\n" +"PO-Revision-Date: 2017-04-16 13:37+0200\n" +"Last-Translator: Davy Defaud \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 >= 2;\n" + +#: prefs.js:69 prefs.js:90 prefs.js:110 prefs.js:67 prefs.js:87 prefs.js:107 +msgid ":" +msgstr " :" + +#: prefs.js:161 prefs.js:159 +msgid "Display" +msgstr "Affichage" + +#: prefs.js:166 prefs.js:164 +msgid "Refresh Time" +msgstr "Rafraîchissement" + +#: prefs.js:171 prefs.js:169 +msgid "Graph Width" +msgstr "Largeur du graphe" + +#: prefs.js:176 prefs.js:174 +msgid "Show Text" +msgstr "Afficher le texte" + +#: prefs.js:184 prefs.js:182 +msgid "Display Style" +msgstr "Type d’affichage" + +#: prefs.js:267 prefs.js:274 +msgid "Display Icon" +msgstr "Afficher l’icône" + +#: prefs.js:276 prefs.js:283 +msgid "Display in the Middle" +msgstr "Afficher au milieu" + +#: prefs.js:288 prefs.js:306 +msgid "Background Color" +msgstr "Couleur de fond" + +#: prefs.js:197 prefs.js:195 +msgid "Display Individual Cores" +msgstr "Afficher tous les cœurs" + +#: prefs.js:193 prefs.js:191 +msgid "Show network speed in bits" +msgstr "Afficher le débit réseau en bits" + +#: prefs.js:205 prefs.js:208 +msgid "Sensor" +msgstr "Capteur" + +#: prefs.js:207 prefs.js:210 +msgid "Please install lm-sensors" +msgstr "Veuillez installer lm-sensors" + +#: prefs.js:282 prefs.js:300 +msgid "Move the clock" +msgstr "Déplacer l’horloge" + +#: prefs.js:286 prefs.js:289 +msgid "Compact Display" +msgstr "Affichage compact" + +#: extension.js:746 extension.js:1117 +msgid "Cpu" +msgstr "Processeur" + +msgid "User" +msgstr "Utilisateur" + +msgid "System" +msgstr "Système" + +msgid "Other" +msgstr "Autre" + +msgid "Nice" +msgstr "Politesse" + +msgid "Iowait" +msgstr "Latence d’E‐S" + +#: extension.js:941 extension.js:1378 +msgid "Memory" +msgstr "Mémoire" + +msgid "Program" +msgstr "Programme" + +msgid "Cache" +msgstr "Cache" + +msgid "Buffer" +msgstr "Tampon" + +#: extension.js:1134 extension.js:1598 +msgid "Swap" +msgstr "Échange (swap)" + +msgid "Used" +msgstr "Utilisé" + +#: extension.js:1010 extension.js:1428 +msgid "Net" +msgstr "Réseau" + +#: extension.js:1589 +msgid "Up" +msgstr "Montant" + +#: extension.js:1586 +msgid "Down" +msgstr "Descendant" + +msgid "Uperrors" +msgstr "Erreurs montantes" + +msgid "Downerrors" +msgstr "Erreurs descendantes" + +msgid "collisions" +msgstr "collisions" + +msgid "Collisions" +msgstr "Collisions" + +#: extension.js:836 extension.js:1264 +msgid "Disk" +msgstr "Disque" + +msgid "Write" +msgstr "Écriture" + +msgid "Read" +msgstr "Lecture" + +#: extension.js:1182 extension.js:1312 extension.js:1322 +msgid "R" +msgstr "en lecture" + +#: extension.js:1185 extension.js:1315 extension.js:1325 +msgid "W" +msgstr "en écriture" + +#: prefs.js:185 prefs.js:183 +msgid "graph" +msgstr "graphe" + +#: prefs.js:185 prefs.js:183 +msgid "digit" +msgstr "chiffres" + +#: prefs.js:185 prefs.js:183 +msgid "both" +msgstr "les deux" + +msgid "cpu" +msgstr "processeur" + +#: extension.js:811 +msgid "mem" +msgstr "mém." + +msgid "swap" +msgstr "échange" + +msgid "net" +msgstr "réseau" + +msgid "disk" +msgstr "disque" + +#: extension.js:1346 extension.js:1900 +msgid "Preferences..." +msgstr "Préférences…" + +#: extension.js:1340 extension.js:1894 +msgid "System Monitor..." +msgstr "Moniteur système…" + +msgid "System monitor" +msgstr "Moniteur système" + +msgid "user" +msgstr "utilisateur" + +msgid "system" +msgstr "système" + +msgid "other" +msgstr "autre" + +msgid "nice" +msgstr "politesse" + +msgid "iowait" +msgstr "latence d’E‐S" + +msgid "program" +msgstr "programme" + +msgid "cache" +msgstr "cache" + +msgid "buffer" +msgstr "tampon" + +msgid "used" +msgstr "utilisé" + +msgid "up" +msgstr "montant" + +msgid "down" +msgstr "descendant" + +msgid "uperrors" +msgstr "erreurs montantes" + +msgid "downerrors" +msgstr "erreurs descendantes" + +msgid "write" +msgstr "écriture" + +msgid "read" +msgstr "lecture" + +#: extension.js:167 extension.js:1454 extension.js:1545 extension.js:1554 +#: extension.js:1577 extension.js:1581 extension.js:1585 extension.js:1588 +msgid "KiB/s" +msgstr "Kio/s" + +#: extension.js:166 extension.js:168 extension.js:1277 extension.js:1321 +#: extension.js:1324 extension.js:1549 extension.js:1558 +msgid "MiB/s" +msgstr "Mio/s" + +#: extension.js:1419 extension.js:1635 +msgid "MiB" +msgstr "Mio" + +#: extension.js:1714 +msgid "GiB" +msgstr "Gio" + +#: extension.js:184 +msgid "kB" +msgstr "ko" + +#: extension.js:183 extension.js:185 +msgid "MB" +msgstr "Mo" + +#: extension.js:1179 extension.js:1644 +msgid "Thermal" +msgstr "Température" + +msgid "thermal" +msgstr "température" + +#: prefs.js:180 prefs.js:178 +msgid "Show In Menu" +msgstr "Afficher dans le menu" + +#: prefs.js:222 prefs.js:229 +msgid "Show Time Remaining" +msgstr "Afficher le temps restant" + +#: prefs.js:226 prefs.js:233 +msgid "Hide System Icon" +msgstr "Cacher l’icône système" + +#: prefs.js:230 prefs.js:237 +msgid "Usage Style" +msgstr "Type d’affichage" + +#: prefs.js:231 prefs.js:238 +msgid "pie" +msgstr "circulaire" + +#: prefs.js:231 prefs.js:238 +msgid "bar" +msgstr "en barres" + +#: prefs.js:231 prefs.js:238 +msgid "none" +msgstr "aucun" + +#: extension.js:68 +msgid "" +"Dependencies Missing\n" +"Please install: \n" +"libgtop, Network Manager and gir bindings \n" +"\t on Ubuntu: gir1.2-gtop-2.0, gir1.2-networkmanager-1.0 \n" +"\t on Fedora: libgtop2-devel, NetworkManager-glib-devel \n" +"\t on Arch: libgtop, networkmanager\n" +"\t on openSUSE: typelib-1_0-GTop-2_0, typelib-1_0-NetworkManager-1_0\n" +msgstr "" +"Dépendances manquantes\n" +"\n" +"Veuillez installer libgtop, Network Manager et les bibliothèques de liaisons " +"gir :\n" +"\t- sur Ubuntu : gir1.2-gtop-2.0, gir1.2-networkmanager-1.0 ;\n" +"\t- sur Fedora : libgtop2-devel, NetworkManager-glib-devel ;\n" +"\t- sur Arch : libgtop, networkmanager ;\n" +"\t- sur openSUSE : typelib-1_0-GTop-2_0, typelib-1_0-NetworkManager-1_0.\n" + +#: extension.js:97 extension.js:255 +msgid "System Monitor Extension" +msgstr "Extension de surveillance système" + +#: extension.js:113 extension.js:271 +msgid "Cancel" +msgstr "Annuler" + +#: extension.js:601 extension.js:875 +msgid "Battery" +msgstr "Batterie" + +msgid "battery" +msgstr "batterie" + +#: extension.js:896 extension.js:1334 +msgid "Freq" +msgstr "Fréquence" + +msgid "freq" +msgstr "fréquence" + +#: extension.js:1540 extension.js:1692 +msgid "Fan" +msgstr "Ventilateur" + +msgid "fan" +msgstr "ventilateur" + +#: extension.js:1542 extension.js:1566 extension.js:1574 extension.js:1698 +#: extension.js:1722 extension.js:1730 +msgid "rpm" +msgstr "tr/min" + +#: prefs.js:294 +msgid "Show tooltip" +msgstr "Afficher les infos‐bulles" + +#: extension.js:1097 +msgid "CPU" +msgstr "Processeur" + +#: prefs.js:267 +msgid "Display temperature in Fahrenheit" +msgstr "Afficher les températures en degrés Fahrenheit" + +#: prefs.js:277 +msgid "Temperature threshold (0 to disable)" +msgstr "Seuil de température (0 pour désactiver)" diff --git a/po/it/system-monitor.po b/po/it/system-monitor.po new file mode 100644 index 0000000..aa84b0a --- /dev/null +++ b/po/it/system-monitor.po @@ -0,0 +1,375 @@ +# Traduzione italiana per il pacchetto system-monitor. +# Copyright (C) 2012 THE system-monitor'S COPYRIGHT HOLDER +# This file is distributed under the same license as the system-monitor package. +# Federico Piazza fede.piazza92@gmail.com, 2012 +# Paolo Paterna paolo.paterna@gmail.com, 2015 +#: extension.js:751 +#, fuzzy +msgid "" +msgstr "" +"Project-Id-Version: gnome-shell-system-monitor-applet-translation-2.0\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2016-12-22 15:04+0100\n" +"PO-Revision-Date: 2013-11-26 14:15+0100\n" +"Last-Translator: Paolo Paterna \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" + +#: prefs.js:69 prefs.js:90 prefs.js:110 prefs.js:67 prefs.js:87 prefs.js:107 +msgid ":" +msgstr ":" + +#: prefs.js:161 prefs.js:159 +msgid "Display" +msgstr "Visualizza" + +#: prefs.js:166 prefs.js:164 +msgid "Refresh Time" +msgstr "Tempo di Aggiornamento" + +#: prefs.js:171 prefs.js:169 +msgid "Graph Width" +msgstr "Larghezza del Grafico" + +#: prefs.js:176 prefs.js:174 +msgid "Show Text" +msgstr "Mostra Testo" + +#: prefs.js:184 prefs.js:182 +msgid "Display Style" +msgstr "Modalità di Visualizzazione" + +#: prefs.js:267 prefs.js:274 +msgid "Display Icon" +msgstr "Visualizza Icona" + +#: prefs.js:276 prefs.js:283 +msgid "Display in the Middle" +msgstr "Visualizza nel Centro" + +#: prefs.js:288 prefs.js:306 +msgid "Background Color" +msgstr "Colore di Sfondo" + +#: prefs.js:197 prefs.js:195 +msgid "Display Individual Cores" +msgstr "Mostra Ogni Core" + +#: prefs.js:193 prefs.js:191 +msgid "Show network speed in bits" +msgstr "Mostra velocità della rete in bits" + +#: prefs.js:205 prefs.js:208 +msgid "Sensor" +msgstr "Sensore" + +#: prefs.js:207 prefs.js:210 +msgid "Please install lm-sensors" +msgstr "Si prega di installare lm-sensors" + +#: prefs.js:282 prefs.js:300 +msgid "Move the clock" +msgstr "Sposta l'orologio" + +#: prefs.js:286 prefs.js:289 +msgid "Compact Display" +msgstr "Display Compatto" + +#: extension.js:746 extension.js:1117 +msgid "Cpu" +msgstr "Processore" + +msgid "User" +msgstr "Utente" + +msgid "System" +msgstr "Sistema" + +msgid "Other" +msgstr "Altro" + +msgid "Nice" +msgstr "Nice" + +msgid "Iowait" +msgstr "IOwait" + +#: extension.js:941 extension.js:1378 +msgid "Memory" +msgstr "Memoria" + +msgid "Program" +msgstr "Programma" + +msgid "Cache" +msgstr "Cache" + +msgid "Buffer" +msgstr "Buffer" + +#: extension.js:1134 extension.js:1598 +msgid "Swap" +msgstr "Swap" + +msgid "Used" +msgstr "Usato" + +#: extension.js:1010 extension.js:1428 +msgid "Net" +msgstr "Rete" + +#: extension.js:1589 +msgid "Up" +msgstr "Upload" + +#: extension.js:1586 +msgid "Down" +msgstr "Download" + +msgid "Uperrors" +msgstr "Errori in upload" + +msgid "Downerrors" +msgstr "Errori in download" + +msgid "collisions" +msgstr "collisioni" + +msgid "Collisions" +msgstr "Collisioni" + +#: extension.js:836 extension.js:1264 +msgid "Disk" +msgstr "Disco" + +msgid "Write" +msgstr "Scrittura" + +msgid "Read" +msgstr "Lettura" + +#: extension.js:1182 extension.js:1312 extension.js:1322 +msgid "R" +msgstr "L" + +#: extension.js:1185 extension.js:1315 extension.js:1325 +msgid "W" +msgstr "S" + +#: prefs.js:185 prefs.js:183 +msgid "graph" +msgstr "grafico" + +#: prefs.js:185 prefs.js:183 +msgid "digit" +msgstr "digitale" + +#: prefs.js:185 prefs.js:183 +msgid "both" +msgstr "entrambi" + +msgid "cpu" +msgstr "cpu" + +#: extension.js:811 +msgid "mem" +msgstr "ram" + +msgid "swap" +msgstr "swap" + +msgid "net" +msgstr "rete" + +msgid "disk" +msgstr "disco" + +#: extension.js:1346 extension.js:1900 +msgid "Preferences..." +msgstr "Preferenze..." + +#: extension.js:1340 extension.js:1894 +msgid "System Monitor..." +msgstr "Monitor di Sistema..." + +msgid "System monitor" +msgstr "Monitor di sistema" + +msgid "user" +msgstr "utente" + +msgid "system" +msgstr "sistema" + +msgid "other" +msgstr "altro" + +msgid "nice" +msgstr "nice" + +msgid "iowait" +msgstr "iowait" + +msgid "program" +msgstr "programma" + +msgid "cache" +msgstr "cache" + +msgid "buffer" +msgstr "buffer" + +msgid "used" +msgstr "usato" + +msgid "up" +msgstr "upload" + +msgid "down" +msgstr "download" + +msgid "uperrors" +msgstr "errori in upload" + +msgid "downerrors" +msgstr "errori in download" + +msgid "write" +msgstr "scrittura" + +msgid "read" +msgstr "lettura" + +#: extension.js:167 extension.js:1454 extension.js:1545 extension.js:1554 +#: extension.js:1577 extension.js:1581 extension.js:1585 extension.js:1588 +msgid "KiB/s" +msgstr "KiB/s" + +#: extension.js:166 extension.js:168 extension.js:1277 extension.js:1321 +#: extension.js:1324 extension.js:1549 extension.js:1558 +msgid "MiB/s" +msgstr "MiB/s" + +#: extension.js:1419 extension.js:1635 +msgid "MiB" +msgstr "MiB" + +#: extension.js:1714 +#, fuzzy +msgid "GiB" +msgstr "MiB" + +#: extension.js:184 +msgid "kB" +msgstr "kB" + +#: extension.js:183 extension.js:185 +msgid "MB" +msgstr "MB" + +#: extension.js:1179 extension.js:1644 +msgid "Thermal" +msgstr "Temperatura" + +msgid "thermal" +msgstr "temperatura" + +#: prefs.js:180 prefs.js:178 +msgid "Show In Menu" +msgstr "Mostra nel Menu" + +#: prefs.js:222 prefs.js:229 +msgid "Show Time Remaining" +msgstr "Mostra Autonomia Residua" + +#: prefs.js:226 prefs.js:233 +msgid "Hide System Icon" +msgstr "Nascondi Icona di Sistema" + +#: prefs.js:230 prefs.js:237 +msgid "Usage Style" +msgstr "Visualizzazione Uso" + +#: prefs.js:231 prefs.js:238 +msgid "pie" +msgstr "torta" + +#: prefs.js:231 prefs.js:238 +msgid "bar" +msgstr "barra" + +#: prefs.js:231 prefs.js:238 +msgid "none" +msgstr "nessuno" + +#: extension.js:68 +#, fuzzy +msgid "" +"Dependencies Missing\n" +"Please install: \n" +"libgtop, Network Manager and gir bindings \n" +"\t on Ubuntu: gir1.2-gtop-2.0, gir1.2-networkmanager-1.0 \n" +"\t on Fedora: libgtop2-devel, NetworkManager-glib-devel \n" +"\t on Arch: libgtop, networkmanager\n" +"\t on openSUSE: typelib-1_0-GTop-2_0, typelib-1_0-NetworkManager-1_0\n" +msgstr "" +"Dipendenze Mancanti\n" +"Si prega di installare: \n" +"libgtop, Network Manager e gir bindings \n" +"\t su Ubuntu: gir1.2-gtop-2.0, gir1.2-networkmanager-1.0 \n" +"\t su Fedora: libgtop2-devel, NetworkManager-glib-devel \n" +"\t su Arch: libgtop, networkmanager\n" + +#: extension.js:97 extension.js:255 +msgid "System Monitor Extension" +msgstr "Estensione per System Monitor" + +#: extension.js:113 extension.js:271 +msgid "Cancel" +msgstr "Annulla" + +#: extension.js:601 extension.js:875 +msgid "Battery" +msgstr "Batteria" + +#, fuzzy +msgid "battery" +msgstr "Batteria" + +#: extension.js:896 extension.js:1334 +msgid "Freq" +msgstr "Frequenza" + +msgid "freq" +msgstr "frequenza" + +#: extension.js:1540 extension.js:1692 +msgid "Fan" +msgstr "Ventola" + +msgid "fan" +msgstr "ventola" + +#: extension.js:1542 extension.js:1566 extension.js:1574 extension.js:1698 +#: extension.js:1722 extension.js:1730 +msgid "rpm" +msgstr "giri/min" + +#: prefs.js:294 +msgid "Show tooltip" +msgstr "Mostra Tooltip" + +#: extension.js:1097 +msgid "CPU" +msgstr "Processore" + +#: prefs.js:267 +msgid "Display temperature in Fahrenheit" +msgstr "" + +#: prefs.js:277 +msgid "Temperature threshold (0 to disable)" +msgstr "" diff --git a/po/merge.sh b/po/merge.sh new file mode 100755 index 0000000..051d82c --- /dev/null +++ b/po/merge.sh @@ -0,0 +1,7 @@ +#!/bin/bash + +for p in */ +do + echo $p + `msgmerge -U ./$p/system-monitor.po system-monitor.pot` +done diff --git a/po/pl/system-monitor.po b/po/pl/system-monitor.po new file mode 100644 index 0000000..301bb4d --- /dev/null +++ b/po/pl/system-monitor.po @@ -0,0 +1,372 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# Anna Warzecha , 2011. +#: extension.js:751 +msgid "" +msgstr "" +"Project-Id-Version: PACKAGE VERSION\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2016-12-22 15:04+0100\n" +"PO-Revision-Date: 2011-07-21 23:52+0100\n" +"Last-Translator: Anna Warzecha \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" + +#: prefs.js:69 prefs.js:90 prefs.js:110 prefs.js:67 prefs.js:87 prefs.js:107 +msgid ":" +msgstr "" + +#: prefs.js:161 prefs.js:159 +msgid "Display" +msgstr "Aktywny" + +#: prefs.js:166 prefs.js:164 +msgid "Refresh Time" +msgstr "Częstostliwość odświeżania" + +#: prefs.js:171 prefs.js:169 +msgid "Graph Width" +msgstr "Szerokość" + +#: prefs.js:176 prefs.js:174 +msgid "Show Text" +msgstr "Pokaż tekst" + +#: prefs.js:184 prefs.js:182 +msgid "Display Style" +msgstr "Styl wyświetlania" + +#: prefs.js:267 prefs.js:274 +msgid "Display Icon" +msgstr "Wyświetl ikonę" + +#: prefs.js:276 prefs.js:283 +msgid "Display in the Middle" +msgstr "Wyświetl na środku" + +#: prefs.js:288 prefs.js:306 +msgid "Background Color" +msgstr "Kolor tła" + +#: prefs.js:197 prefs.js:195 +msgid "Display Individual Cores" +msgstr "" + +#: prefs.js:193 prefs.js:191 +msgid "Show network speed in bits" +msgstr "" + +#: prefs.js:205 prefs.js:208 +msgid "Sensor" +msgstr "" + +#: prefs.js:207 prefs.js:210 +msgid "Please install lm-sensors" +msgstr "" + +#: prefs.js:282 prefs.js:300 +msgid "Move the clock" +msgstr "" + +#: prefs.js:286 prefs.js:289 +#, fuzzy +msgid "Compact Display" +msgstr "Aktywny" + +#: extension.js:746 extension.js:1117 +msgid "Cpu" +msgstr "Cpu" + +msgid "User" +msgstr "Użytkownik" + +msgid "System" +msgstr "System" + +msgid "Other" +msgstr "Inne" + +msgid "Nice" +msgstr "" + +msgid "Iowait" +msgstr "Operacje we/wy" + +#: extension.js:941 extension.js:1378 +msgid "Memory" +msgstr "Pamięć" + +msgid "Program" +msgstr "Program" + +msgid "Cache" +msgstr "Pamięć podręczna" + +msgid "Buffer" +msgstr "Bufor" + +#: extension.js:1134 extension.js:1598 +msgid "Swap" +msgstr "Przestrzeń wymiany" + +msgid "Used" +msgstr "Zużycie" + +#: extension.js:1010 extension.js:1428 +msgid "Net" +msgstr "Sieć" + +#: extension.js:1589 +msgid "Up" +msgstr "Góra" + +#: extension.js:1586 +msgid "Down" +msgstr "Dół" + +msgid "Uperrors" +msgstr "" + +msgid "Downerrors" +msgstr "" + +msgid "collisions" +msgstr "" + +msgid "Collisions" +msgstr "" + +#: extension.js:836 extension.js:1264 +msgid "Disk" +msgstr "Dysk" + +msgid "Write" +msgstr "Zapis" + +msgid "Read" +msgstr "Odczyt" + +#: extension.js:1182 extension.js:1312 extension.js:1322 +msgid "R" +msgstr "" + +#: extension.js:1185 extension.js:1315 extension.js:1325 +msgid "W" +msgstr "" + +#: prefs.js:185 prefs.js:183 +msgid "graph" +msgstr "wykres" + +#: prefs.js:185 prefs.js:183 +msgid "digit" +msgstr "wartość liczbowa" + +#: prefs.js:185 prefs.js:183 +msgid "both" +msgstr "oba" + +msgid "cpu" +msgstr "cpu" + +#: extension.js:811 +msgid "mem" +msgstr "pamięć" + +msgid "swap" +msgstr "przestrzeń wymiany" + +msgid "net" +msgstr "sieć" + +msgid "disk" +msgstr "dysk" + +#: extension.js:1346 extension.js:1900 +msgid "Preferences..." +msgstr "Preferencje..." + +#: extension.js:1340 extension.js:1894 +msgid "System Monitor..." +msgstr "Monitor systemu..." + +#, fuzzy +msgid "System monitor" +msgstr "Monitor systemu..." + +msgid "user" +msgstr "użytkownik" + +msgid "system" +msgstr "system" + +msgid "other" +msgstr "inne" + +msgid "nice" +msgstr "" + +msgid "iowait" +msgstr "operacje we/wy" + +msgid "program" +msgstr "program" + +msgid "cache" +msgstr "pamięć podręczna" + +msgid "buffer" +msgstr "bufor" + +msgid "used" +msgstr "zużycie" + +msgid "up" +msgstr "góra" + +msgid "down" +msgstr "dół" + +msgid "uperrors" +msgstr "" + +msgid "downerrors" +msgstr "" + +msgid "write" +msgstr "zapis" + +msgid "read" +msgstr "odczyt" + +#: extension.js:167 extension.js:1454 extension.js:1545 extension.js:1554 +#: extension.js:1577 extension.js:1581 extension.js:1585 extension.js:1588 +msgid "KiB/s" +msgstr "" + +#: extension.js:166 extension.js:168 extension.js:1277 extension.js:1321 +#: extension.js:1324 extension.js:1549 extension.js:1558 +msgid "MiB/s" +msgstr "" + +#: extension.js:1419 extension.js:1635 +msgid "MiB" +msgstr "" + +#: extension.js:1714 +msgid "GiB" +msgstr "" + +#: extension.js:184 +msgid "kB" +msgstr "" + +#: extension.js:183 extension.js:185 +msgid "MB" +msgstr "" + +#: extension.js:1179 extension.js:1644 +msgid "Thermal" +msgstr "" + +#, fuzzy +msgid "thermal" +msgstr "Inne" + +#: prefs.js:180 prefs.js:178 +msgid "Show In Menu" +msgstr "" + +#: prefs.js:222 prefs.js:229 +msgid "Show Time Remaining" +msgstr "" + +#: prefs.js:226 prefs.js:233 +msgid "Hide System Icon" +msgstr "" + +#: prefs.js:230 prefs.js:237 +#, fuzzy +msgid "Usage Style" +msgstr "Styl wyświetlania" + +#: prefs.js:231 prefs.js:238 +msgid "pie" +msgstr "" + +#: prefs.js:231 prefs.js:238 +msgid "bar" +msgstr "" + +#: prefs.js:231 prefs.js:238 +msgid "none" +msgstr "" + +#: extension.js:68 +msgid "" +"Dependencies Missing\n" +"Please install: \n" +"libgtop, Network Manager and gir bindings \n" +"\t on Ubuntu: gir1.2-gtop-2.0, gir1.2-networkmanager-1.0 \n" +"\t on Fedora: libgtop2-devel, NetworkManager-glib-devel \n" +"\t on Arch: libgtop, networkmanager\n" +"\t on openSUSE: typelib-1_0-GTop-2_0, typelib-1_0-NetworkManager-1_0\n" +msgstr "" + +#: extension.js:97 extension.js:255 +#, fuzzy +msgid "System Monitor Extension" +msgstr "Monitor systemu..." + +#: extension.js:113 extension.js:271 +msgid "Cancel" +msgstr "" + +#: extension.js:601 extension.js:875 +msgid "Battery" +msgstr "" + +msgid "battery" +msgstr "" + +#: extension.js:896 extension.js:1334 +msgid "Freq" +msgstr "" + +msgid "freq" +msgstr "" + +#: extension.js:1540 extension.js:1692 +msgid "Fan" +msgstr "" + +msgid "fan" +msgstr "" + +#: extension.js:1542 extension.js:1566 extension.js:1574 extension.js:1698 +#: extension.js:1722 extension.js:1730 +msgid "rpm" +msgstr "" + +#: prefs.js:294 +msgid "Show tooltip" +msgstr "" + +#: extension.js:1097 +msgid "CPU" +msgstr "" + +#: prefs.js:267 +msgid "Display temperature in Fahrenheit" +msgstr "" + +#: prefs.js:277 +msgid "Temperature threshold (0 to disable)" +msgstr "" + +#~ msgid "System Monitor Applet Configurator" +#~ msgstr "Konfigurator Apletu System Monitor" diff --git a/po/pt/system-monitor.po b/po/pt/system-monitor.po new file mode 100644 index 0000000..88f6381 --- /dev/null +++ b/po/pt/system-monitor.po @@ -0,0 +1,374 @@ +# Portuguese translation for the system-monitor-applet. +# Copyright (C) 2011 +# This file is distributed under the same license as the PACKAGE package. +# Emanuel Angelo , 2011. +#: extension.js:751 +msgid "" +msgstr "" +"Project-Id-Version: PACKAGE VERSION\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2016-12-22 15:04+0100\n" +"PO-Revision-Date: 2017-08-05 12:10+0100\n" +"Last-Translator: Waldir Pimenta \n" +"Language-Team: pt_PT \n" +"Language: Portuguese\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" + +#: prefs.js:69 prefs.js:90 prefs.js:110 prefs.js:67 prefs.js:87 prefs.js:107 +msgid ":" +msgstr ":" + +#: prefs.js:161 prefs.js:159 +msgid "Display" +msgstr "Mostrar" + +#: prefs.js:166 prefs.js:164 +msgid "Refresh Time" +msgstr "Frequência de atualização" + +#: prefs.js:171 prefs.js:169 +msgid "Graph Width" +msgstr "Largura do gráfico" + +#: prefs.js:176 prefs.js:174 +msgid "Show Text" +msgstr "Mostrar abreviatura" + +#: prefs.js:184 prefs.js:182 +msgid "Display Style" +msgstr "Aparência" + +#: prefs.js:267 prefs.js:274 +msgid "Display Icon" +msgstr "Mostrar ícone" + +#: prefs.js:276 prefs.js:283 +msgid "Display in the Middle" +msgstr "Posicionar no centro" + +#: prefs.js:288 prefs.js:306 +msgid "Background Color" +msgstr "Cor de fundo" + +#: prefs.js:197 prefs.js:195 +msgid "Display Individual Cores" +msgstr "Mostrar núcleos individuais" + +#: prefs.js:193 prefs.js:191 +msgid "Show network speed in bits" +msgstr "Mostrar velocidade em bits/s" + +#: prefs.js:205 prefs.js:208 +msgid "Sensor" +msgstr "Sensor" + +#: prefs.js:207 prefs.js:210 +msgid "Please install lm-sensors" +msgstr "Por favor instalar lm-sensors" + +#: prefs.js:282 prefs.js:300 +msgid "Move the clock" +msgstr "Deslocar o relógio" + +#: prefs.js:286 prefs.js:289 +msgid "Compact Display" +msgstr "Modo compacto" + +#: extension.js:746 extension.js:1117 +msgid "Cpu" +msgstr "Processador (CPU)" + +msgid "User" +msgstr "Utilizador" + +msgid "System" +msgstr "Sistema" + +msgid "Other" +msgstr "Outro" + +msgid "Nice" +msgstr "Nice" + +msgid "Iowait" +msgstr "IOwait" + +#: extension.js:941 extension.js:1378 +msgid "Memory" +msgstr "Memória (RAM)" + +msgid "Program" +msgstr "Programas" + +msgid "Cache" +msgstr "Reserva (cache)" + +msgid "Buffer" +msgstr "Tampão (buffer)" + +#: extension.js:1134 extension.js:1598 +msgid "Swap" +msgstr "Memória virtual (swap)" + +msgid "Used" +msgstr "Em uso" + +#: extension.js:1010 extension.js:1428 +msgid "Net" +msgstr "Rede" + +#: extension.js:1589 +msgid "Up" +msgstr "Enviados" + +#: extension.js:1586 +msgid "Down" +msgstr "Recebidos" + +msgid "Uperrors" +msgstr "Erros ao enviar" + +msgid "Downerrors" +msgstr "Erros ao receber" + +msgid "collisions" +msgstr "colisões" + +msgid "Collisions" +msgstr "Colisões" + +#: extension.js:836 extension.js:1264 +msgid "Disk" +msgstr "Disco" + +msgid "Write" +msgstr "Escrita" + +msgid "Read" +msgstr "Leitura" + +#: extension.js:1182 extension.js:1312 extension.js:1322 +msgid "R" +msgstr "L" + +#: extension.js:1185 extension.js:1315 extension.js:1325 +msgid "W" +msgstr "E" + +#: prefs.js:185 prefs.js:183 +msgid "graph" +msgstr "gráfico" + +#: prefs.js:185 prefs.js:183 +msgid "digit" +msgstr "valor" + +#: prefs.js:185 prefs.js:183 +msgid "both" +msgstr "ambos" + +msgid "cpu" +msgstr "cpu" + +#: extension.js:811 +msgid "mem" +msgstr "mem" + +msgid "swap" +msgstr "swap" + +msgid "net" +msgstr "rede" + +msgid "disk" +msgstr "disco" + +#: extension.js:1346 extension.js:1900 +msgid "Preferences..." +msgstr "Preferências..." + +#: extension.js:1340 extension.js:1894 +msgid "System Monitor..." +msgstr "Monitor do Sistema..." + +msgid "System monitor" +msgstr "Monitor do sistema" + +msgid "user" +msgstr "utilizador" + +msgid "system" +msgstr "sistema" + +msgid "other" +msgstr "outro" + +msgid "nice" +msgstr "nice" + +msgid "iowait" +msgstr "iowait" + +msgid "program" +msgstr "programa" + +msgid "cache" +msgstr "cache" + +msgid "buffer" +msgstr "buffer" + +msgid "used" +msgstr "usado" + +msgid "up" +msgstr "enviado" + +msgid "down" +msgstr "recebido" + +msgid "uperrors" +msgstr "erros ao enviar" + +msgid "downerrors" +msgstr "erros ao receber" + +msgid "write" +msgstr "escrita" + +msgid "read" +msgstr "leitura" + +#: extension.js:167 extension.js:1454 extension.js:1545 extension.js:1554 +#: extension.js:1577 extension.js:1581 extension.js:1585 extension.js:1588 +msgid "KiB/s" +msgstr "KiB/s" + +#: extension.js:166 extension.js:168 extension.js:1277 extension.js:1321 +#: extension.js:1324 extension.js:1549 extension.js:1558 +msgid "MiB/s" +msgstr "MiB/s" + +#: extension.js:1419 extension.js:1635 +msgid "MiB" +msgstr "MiB" + +#: extension.js:1714 +msgid "GiB" +msgstr "" + +#: extension.js:184 +msgid "kB" +msgstr "kB" + +#: extension.js:183 extension.js:185 +msgid "MB" +msgstr "MB" + +#: extension.js:1179 extension.js:1644 +msgid "Thermal" +msgstr "Temperatura" + +msgid "thermal" +msgstr "temp" + +#: prefs.js:180 prefs.js:178 +msgid "Show In Menu" +msgstr "Mostrar no menu" + +#: prefs.js:222 prefs.js:229 +msgid "Show Time Remaining" +msgstr "Mostrar tempo restante" + +#: prefs.js:226 prefs.js:233 +msgid "Hide System Icon" +msgstr "Esconder ícone do sistema" + +#: prefs.js:230 prefs.js:237 +msgid "Usage Style" +msgstr "Estilo de uso" + +#: prefs.js:231 prefs.js:238 +msgid "pie" +msgstr "circular" + +#: prefs.js:231 prefs.js:238 +msgid "bar" +msgstr "barras" + +#: prefs.js:231 prefs.js:238 +msgid "none" +msgstr "nenhum" + +#: extension.js:68 +msgid "" +"Dependencies Missing\n" +"Please install: \n" +"libgtop, Network Manager and gir bindings \n" +"\t on Ubuntu: gir1.2-gtop-2.0, gir1.2-networkmanager-1.0 \n" +"\t on Fedora: libgtop2-devel, NetworkManager-glib-devel \n" +"\t on Arch: libgtop, networkmanager\n" +"\t on openSUSE: typelib-1_0-GTop-2_0, typelib-1_0-NetworkManager-1_0\n" +msgstr "" +"Dependências em falta\n" +"Por favor instale:\n" +"libgtop, Network Manager e bindings de gir\n" +"\t no Ubuntu: gir1.2-gtop-2.0, gir1.2-networkmanager-1.0\n" +"\t no Fedora: libgtop2-devel, NetworkManager-glib-devel\n" +"\t no Arch: libgtop, networkmanager\n" +"\t on openSUSE: typelib-1_0-GTop-2_0, typelib-1_0-NetworkManager-1_0\n" + +#: extension.js:97 extension.js:255 +msgid "System Monitor Extension" +msgstr "Extensão do Monitor do sistema" + +#: extension.js:113 extension.js:271 +msgid "Cancel" +msgstr "Cancelar" + +#: extension.js:601 extension.js:875 +msgid "Battery" +msgstr "Bateria" + +msgid "battery" +msgstr "bateria" + +#: extension.js:896 extension.js:1334 +msgid "Freq" +msgstr "Freq" + +msgid "freq" +msgstr "freq" + +#: extension.js:1540 extension.js:1692 +msgid "Fan" +msgstr "Ventoinha" + +msgid "fan" +msgstr "vent" + +#: extension.js:1542 extension.js:1566 extension.js:1574 extension.js:1698 +#: extension.js:1722 extension.js:1730 +msgid "rpm" +msgstr "rpm" + +#: prefs.js:294 +msgid "Show tooltip" +msgstr "Mostrar tooltip" + +#: extension.js:1097 +msgid "CPU" +msgstr "CPU" + +#: prefs.js:267 +msgid "Display temperature in Fahrenheit" +msgstr "Mostrar temperatura em Fahrenheit" + +#: prefs.js:277 +msgid "Temperature threshold (0 to disable)" +msgstr "Limite de temperatura (0 para desativar)" + +#~ msgid "System Monitor Applet Configurator" +#~ msgstr "Configurador do System Monitor Applet" diff --git a/po/pt_BR/system-monitor.po b/po/pt_BR/system-monitor.po new file mode 100644 index 0000000..ce7efd2 --- /dev/null +++ b/po/pt_BR/system-monitor.po @@ -0,0 +1,376 @@ +# Brazilian Portuguese translation for system-monitor-applet. +# Copyright (C) 2017 darkxst +# This file is distributed under the same license as the system-monitor-applet package. +# Rafael Fontenelle , 2012, 2017. +#: extension.js:751 +msgid "" +msgstr "" +"Project-Id-Version: system-monitor\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2016-12-22 15:04+0100\n" +"PO-Revision-Date: 2017-01-31 02:54-0200\n" +"Last-Translator: Rafael Fontenelle \n" +"Language-Team: Brazilian Portuguese \n" +"Language: pt_BR\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: Virtaal 1.0.0-beta1\n" + +#: prefs.js:69 prefs.js:90 prefs.js:110 prefs.js:67 prefs.js:87 prefs.js:107 +msgid ":" +msgstr ":" + +#: prefs.js:161 prefs.js:159 +msgid "Display" +msgstr "Exibir" + +#: prefs.js:166 prefs.js:164 +msgid "Refresh Time" +msgstr "Tempo de atualização" + +#: prefs.js:171 prefs.js:169 +msgid "Graph Width" +msgstr "Largura do gráfico" + +#: prefs.js:176 prefs.js:174 +msgid "Show Text" +msgstr "Mostrar identificador" + +#: prefs.js:184 prefs.js:182 +msgid "Display Style" +msgstr "Estilo de apresentação" + +#: prefs.js:267 prefs.js:274 +msgid "Display Icon" +msgstr "Mostrar ícone" + +#: prefs.js:276 prefs.js:283 +msgid "Display in the Middle" +msgstr "Posicionar no centro" + +#: prefs.js:288 prefs.js:306 +msgid "Background Color" +msgstr "Cor de fundo" + +#: prefs.js:197 prefs.js:195 +msgid "Display Individual Cores" +msgstr "Exibir núcleos individuais" + +#: prefs.js:193 prefs.js:191 +msgid "Show network speed in bits" +msgstr "Apresentar velocidade em bits por segundo" + +#: prefs.js:205 prefs.js:208 +msgid "Sensor" +msgstr "Sensor" + +#: prefs.js:207 prefs.js:210 +msgid "Please install lm-sensors" +msgstr "Por favor, instale lm-sensors" + +#: prefs.js:282 prefs.js:300 +msgid "Move the clock" +msgstr "Deslocar o relógio" + +#: prefs.js:286 prefs.js:289 +msgid "Compact Display" +msgstr "Modo compactado" + +#: extension.js:746 extension.js:1117 +msgid "Cpu" +msgstr "Processador (CPU)" + +msgid "User" +msgstr "Utilizador" + +msgid "System" +msgstr "Sistema" + +msgid "Other" +msgstr "Outro" + +msgid "Nice" +msgstr "Nice" + +msgid "Iowait" +msgstr "IOwait" + +#: extension.js:941 extension.js:1378 +msgid "Memory" +msgstr "Memória (RAM)" + +msgid "Program" +msgstr "Programa" + +msgid "Cache" +msgstr "Cache" + +msgid "Buffer" +msgstr "Buffer" + +#: extension.js:1134 extension.js:1598 +msgid "Swap" +msgstr "Memória virtual (swap)" + +msgid "Used" +msgstr "Em utilização" + +#: extension.js:1010 extension.js:1428 +msgid "Net" +msgstr "Rede" + +#: extension.js:1589 +msgid "Up" +msgstr "Enviados" + +#: extension.js:1586 +msgid "Down" +msgstr "Recebidos" + +msgid "Uperrors" +msgstr "Erros ao enviar" + +msgid "Downerrors" +msgstr "Erros ao receber" + +msgid "collisions" +msgstr "colisões" + +msgid "Collisions" +msgstr "Colisões" + +#: extension.js:836 extension.js:1264 +msgid "Disk" +msgstr "Disco" + +msgid "Write" +msgstr "Escrita" + +msgid "Read" +msgstr "Leitura" + +# Leitura +#: extension.js:1182 extension.js:1312 extension.js:1322 +msgid "R" +msgstr "L" + +# Escrita +#: extension.js:1185 extension.js:1315 extension.js:1325 +msgid "W" +msgstr "E" + +#: prefs.js:185 prefs.js:183 +msgid "graph" +msgstr "gráfico" + +#: prefs.js:185 prefs.js:183 +msgid "digit" +msgstr "valor" + +#: prefs.js:185 prefs.js:183 +msgid "both" +msgstr "ambos" + +msgid "cpu" +msgstr "cpu" + +#: extension.js:811 +msgid "mem" +msgstr "mem" + +msgid "swap" +msgstr "swap" + +msgid "net" +msgstr "rede" + +msgid "disk" +msgstr "disco" + +#: extension.js:1346 extension.js:1900 +msgid "Preferences..." +msgstr "Preferências…" + +#: extension.js:1340 extension.js:1894 +msgid "System Monitor..." +msgstr "Monitor do Sistema…" + +msgid "System monitor" +msgstr "Monitor do sistema" + +msgid "user" +msgstr "usuário" + +msgid "system" +msgstr "sistema" + +msgid "other" +msgstr "outro" + +msgid "nice" +msgstr "nice" + +msgid "iowait" +msgstr "iowait" + +msgid "program" +msgstr "programa" + +msgid "cache" +msgstr "cache" + +msgid "buffer" +msgstr "buffer" + +msgid "used" +msgstr "usado" + +msgid "up" +msgstr "enviado" + +msgid "down" +msgstr "recebido" + +msgid "uperrors" +msgstr "erros envio" + +msgid "downerrors" +msgstr "erros recebimento" + +msgid "write" +msgstr "escrita" + +msgid "read" +msgstr "leitura" + +#: extension.js:167 extension.js:1454 extension.js:1545 extension.js:1554 +#: extension.js:1577 extension.js:1581 extension.js:1585 extension.js:1588 +msgid "KiB/s" +msgstr "KB/s" + +#: extension.js:166 extension.js:168 extension.js:1277 extension.js:1321 +#: extension.js:1324 extension.js:1549 extension.js:1558 +msgid "MiB/s" +msgstr "MB/s" + +#: extension.js:1419 extension.js:1635 +msgid "MiB" +msgstr "MB" + +#: extension.js:1714 +#, fuzzy +msgid "GiB" +msgstr "MB" + +#: extension.js:184 +msgid "kB" +msgstr "kB" + +#: extension.js:183 extension.js:185 +msgid "MB" +msgstr "MB" + +#: extension.js:1179 extension.js:1644 +msgid "Thermal" +msgstr "Temperatura" + +msgid "thermal" +msgstr "temp" + +#: prefs.js:180 prefs.js:178 +msgid "Show In Menu" +msgstr "Mostrar no menu" + +#: prefs.js:222 prefs.js:229 +msgid "Show Time Remaining" +msgstr "Mostrar tempo restante" + +#: prefs.js:226 prefs.js:233 +msgid "Hide System Icon" +msgstr "Ocultar ícone de sistema" + +#: prefs.js:230 prefs.js:237 +msgid "Usage Style" +msgstr "Estilo de uso" + +#: prefs.js:231 prefs.js:238 +msgid "pie" +msgstr "setores" + +#: prefs.js:231 prefs.js:238 +msgid "bar" +msgstr "barra" + +#: prefs.js:231 prefs.js:238 +msgid "none" +msgstr "nenhum" + +#: extension.js:68 +msgid "" +"Dependencies Missing\n" +"Please install: \n" +"libgtop, Network Manager and gir bindings \n" +"\t on Ubuntu: gir1.2-gtop-2.0, gir1.2-networkmanager-1.0 \n" +"\t on Fedora: libgtop2-devel, NetworkManager-glib-devel \n" +"\t on Arch: libgtop, networkmanager\n" +"\t on openSUSE: typelib-1_0-GTop-2_0, typelib-1_0-NetworkManager-1_0\n" +msgstr "" +"Dependências faltando\n" +"Por favor instale: \n" +"libgtop, Network Manager e bindings de gir \n" +"\t no Ubuntu: gir1.2-gtop-2.0, gir1.2-networkmanager-1.0 \n" +"\t no Fedora: libgtop2-devel, NetworkManager-glib-devel \n" +"\t no Arch: libgtop, networkmanager\n" +"\t on openSUSE: typelib-1_0-GTop-2_0, typelib-1_0-NetworkManager-1_0\n" + +#: extension.js:97 extension.js:255 +msgid "System Monitor Extension" +msgstr "Extensão de monitor do sistema" + +#: extension.js:113 extension.js:271 +msgid "Cancel" +msgstr "Cancelar" + +#: extension.js:601 extension.js:875 +msgid "Battery" +msgstr "Bateria" + +msgid "battery" +msgstr "bateria" + +#: extension.js:896 extension.js:1334 +msgid "Freq" +msgstr "Freq" + +msgid "freq" +msgstr "freq" + +#: extension.js:1540 extension.js:1692 +msgid "Fan" +msgstr "Ventoinha" + +msgid "fan" +msgstr "vent" + +#: extension.js:1542 extension.js:1566 extension.js:1574 extension.js:1698 +#: extension.js:1722 extension.js:1730 +msgid "rpm" +msgstr "rpm" + +#: prefs.js:294 +msgid "Show tooltip" +msgstr "Mostrar dicas da ferramenta" + +#: extension.js:1097 +msgid "CPU" +msgstr "CPU" + +#: prefs.js:267 +msgid "Display temperature in Fahrenheit" +msgstr "Exibir temperatura em Fahrenheit" + +#: prefs.js:277 +msgid "Temperature threshold (0 to disable)" +msgstr "" diff --git a/po/ro/system-monitor.po b/po/ro/system-monitor.po new file mode 100644 index 0000000..49f7304 --- /dev/null +++ b/po/ro/system-monitor.po @@ -0,0 +1,376 @@ +#: extension.js:751 +msgid "" +msgstr "" +"Project-Id-Version: gnome shell system monitor applet\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2016-12-22 15:04+0100\n" +"PO-Revision-Date: \n" +"Last-Translator: zamox \n" +"Language-Team: \n" +"Language: \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" + +#: prefs.js:69 prefs.js:90 prefs.js:110 prefs.js:67 prefs.js:87 prefs.js:107 +msgid ":" +msgstr "" + +# 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. +#: prefs.js:161 prefs.js:159 +msgid "Display" +msgstr "Afișează" + +#: prefs.js:166 prefs.js:164 +msgid "Refresh Time" +msgstr "Perioadă Recitire Date" + +#: prefs.js:171 prefs.js:169 +msgid "Graph Width" +msgstr "Lățime Grafic" + +#: prefs.js:176 prefs.js:174 +msgid "Show Text" +msgstr "Arată Titlu" + +#: prefs.js:184 prefs.js:182 +msgid "Display Style" +msgstr "Tip Afișaj" + +#: prefs.js:267 prefs.js:274 +msgid "Display Icon" +msgstr "Afișează Pictogramă" + +#: prefs.js:276 prefs.js:283 +msgid "Display in the Middle" +msgstr "Afișează la Centru" + +#: prefs.js:288 prefs.js:306 +msgid "Background Color" +msgstr "Culoare Fundal" + +#: prefs.js:197 prefs.js:195 +msgid "Display Individual Cores" +msgstr "" + +#: prefs.js:193 prefs.js:191 +msgid "Show network speed in bits" +msgstr "" + +#: prefs.js:205 prefs.js:208 +msgid "Sensor" +msgstr "" + +#: prefs.js:207 prefs.js:210 +msgid "Please install lm-sensors" +msgstr "" + +#: prefs.js:282 prefs.js:300 +msgid "Move the clock" +msgstr "" + +# 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. +#: prefs.js:286 prefs.js:289 +#, fuzzy +msgid "Compact Display" +msgstr "Afișează" + +#: extension.js:746 extension.js:1117 +msgid "Cpu" +msgstr "Cpu" + +msgid "User" +msgstr "Utilizator" + +msgid "System" +msgstr "Sistem" + +msgid "Other" +msgstr "Altele" + +msgid "Nice" +msgstr "Nice" + +msgid "Iowait" +msgstr "Iowait" + +#: extension.js:941 extension.js:1378 +msgid "Memory" +msgstr "Memorie" + +msgid "Program" +msgstr "Aplicații" + +msgid "Cache" +msgstr "Cache" + +msgid "Buffer" +msgstr "Buffer" + +#: extension.js:1134 extension.js:1598 +msgid "Swap" +msgstr "Swap" + +msgid "Used" +msgstr "Folosit" + +#: extension.js:1010 extension.js:1428 +msgid "Net" +msgstr "Net" + +#: extension.js:1589 +msgid "Up" +msgstr "Incărcare" + +#: extension.js:1586 +msgid "Down" +msgstr "Descărcare" + +msgid "Uperrors" +msgstr "" + +msgid "Downerrors" +msgstr "" + +msgid "collisions" +msgstr "" + +msgid "Collisions" +msgstr "" + +#: extension.js:836 extension.js:1264 +msgid "Disk" +msgstr "Disc" + +msgid "Write" +msgstr "Scriere" + +msgid "Read" +msgstr "Citire" + +#: extension.js:1182 extension.js:1312 extension.js:1322 +msgid "R" +msgstr "" + +#: extension.js:1185 extension.js:1315 extension.js:1325 +msgid "W" +msgstr "" + +#: prefs.js:185 prefs.js:183 +msgid "graph" +msgstr "grafic" + +#: prefs.js:185 prefs.js:183 +msgid "digit" +msgstr "cifre" + +#: prefs.js:185 prefs.js:183 +msgid "both" +msgstr "ambele" + +msgid "cpu" +msgstr "cpu" + +#: extension.js:811 +msgid "mem" +msgstr "mem" + +msgid "swap" +msgstr "swap" + +msgid "net" +msgstr "net" + +msgid "disk" +msgstr "disc" + +#: extension.js:1346 extension.js:1900 +msgid "Preferences..." +msgstr "Preferințe..." + +#: extension.js:1340 extension.js:1894 +msgid "System Monitor..." +msgstr "Monitor Sistem..." + +#, fuzzy +msgid "System monitor" +msgstr "Monitor Sistem..." + +msgid "user" +msgstr "utilizator" + +msgid "system" +msgstr "sistem" + +msgid "other" +msgstr "altele" + +msgid "nice" +msgstr "nice" + +msgid "iowait" +msgstr "iowait" + +msgid "program" +msgstr "aplicații" + +msgid "cache" +msgstr "cache" + +msgid "buffer" +msgstr "buffer" + +msgid "used" +msgstr "folosit" + +msgid "up" +msgstr "incărcare" + +msgid "down" +msgstr "descărcare" + +msgid "uperrors" +msgstr "" + +msgid "downerrors" +msgstr "" + +msgid "write" +msgstr "scriere" + +msgid "read" +msgstr "citire" + +#: extension.js:167 extension.js:1454 extension.js:1545 extension.js:1554 +#: extension.js:1577 extension.js:1581 extension.js:1585 extension.js:1588 +msgid "KiB/s" +msgstr "" + +#: extension.js:166 extension.js:168 extension.js:1277 extension.js:1321 +#: extension.js:1324 extension.js:1549 extension.js:1558 +msgid "MiB/s" +msgstr "" + +#: extension.js:1419 extension.js:1635 +msgid "MiB" +msgstr "" + +#: extension.js:1714 +msgid "GiB" +msgstr "" + +#: extension.js:184 +msgid "kB" +msgstr "" + +#: extension.js:183 extension.js:185 +msgid "MB" +msgstr "" + +#: extension.js:1179 extension.js:1644 +msgid "Thermal" +msgstr "" + +#, fuzzy +msgid "thermal" +msgstr "Altele" + +#: prefs.js:180 prefs.js:178 +msgid "Show In Menu" +msgstr "" + +#: prefs.js:222 prefs.js:229 +msgid "Show Time Remaining" +msgstr "" + +#: prefs.js:226 prefs.js:233 +msgid "Hide System Icon" +msgstr "" + +#: prefs.js:230 prefs.js:237 +#, fuzzy +msgid "Usage Style" +msgstr "Tip Afișaj" + +#: prefs.js:231 prefs.js:238 +msgid "pie" +msgstr "" + +#: prefs.js:231 prefs.js:238 +msgid "bar" +msgstr "" + +#: prefs.js:231 prefs.js:238 +msgid "none" +msgstr "" + +#: extension.js:68 +msgid "" +"Dependencies Missing\n" +"Please install: \n" +"libgtop, Network Manager and gir bindings \n" +"\t on Ubuntu: gir1.2-gtop-2.0, gir1.2-networkmanager-1.0 \n" +"\t on Fedora: libgtop2-devel, NetworkManager-glib-devel \n" +"\t on Arch: libgtop, networkmanager\n" +"\t on openSUSE: typelib-1_0-GTop-2_0, typelib-1_0-NetworkManager-1_0\n" +msgstr "" + +#: extension.js:97 extension.js:255 +#, fuzzy +msgid "System Monitor Extension" +msgstr "Monitor Sistem..." + +#: extension.js:113 extension.js:271 +msgid "Cancel" +msgstr "" + +#: extension.js:601 extension.js:875 +msgid "Battery" +msgstr "" + +msgid "battery" +msgstr "" + +#: extension.js:896 extension.js:1334 +msgid "Freq" +msgstr "" + +msgid "freq" +msgstr "" + +#: extension.js:1540 extension.js:1692 +msgid "Fan" +msgstr "" + +msgid "fan" +msgstr "" + +#: extension.js:1542 extension.js:1566 extension.js:1574 extension.js:1698 +#: extension.js:1722 extension.js:1730 +msgid "rpm" +msgstr "" + +#: prefs.js:294 +msgid "Show tooltip" +msgstr "" + +#: extension.js:1097 +msgid "CPU" +msgstr "" + +#: prefs.js:267 +msgid "Display temperature in Fahrenheit" +msgstr "" + +#: prefs.js:277 +msgid "Temperature threshold (0 to disable)" +msgstr "" + +#~ msgid "System Monitor Applet Configurator" +#~ msgstr "Configurator al Monitorului de Sistem" diff --git a/po/ru/system-monitor.po b/po/ru/system-monitor.po new file mode 100644 index 0000000..3c05d1f --- /dev/null +++ b/po/ru/system-monitor.po @@ -0,0 +1,367 @@ +# Russian translation. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# Viacheslav Dikonov , 2011. +#: extension.js:751 +msgid "" +msgstr "" +"Project-Id-Version: system-monitor-applet\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2016-12-22 15:04+0100\n" +"PO-Revision-Date: 2017-11-08 22:30-0500\n" +"Last-Translator: Georgii Iesaulov \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" + +#: prefs.js:69 prefs.js:90 prefs.js:110 prefs.js:67 prefs.js:87 prefs.js:107 +msgid ":" +msgstr "" + +#: prefs.js:161 prefs.js:159 +msgid "Display" +msgstr "Показывать" + +#: prefs.js:166 prefs.js:164 +msgid "Refresh Time" +msgstr "Частота обновления" + +#: prefs.js:171 prefs.js:169 +msgid "Graph Width" +msgstr "Ширина графика" + +#: prefs.js:176 prefs.js:174 +msgid "Show Text" +msgstr "Текст" + +#: prefs.js:184 prefs.js:182 +msgid "Display Style" +msgstr "Стиль" + +#: prefs.js:267 prefs.js:274 +msgid "Display Icon" +msgstr "Показывать значок" + +#: prefs.js:276 prefs.js:283 +msgid "Display in the Middle" +msgstr "Поместить в центр" + +#: prefs.js:288 prefs.js:306 +msgid "Background Color" +msgstr "Цвет фона" + +#: prefs.js:197 prefs.js:195 +msgid "Display Individual Cores" +msgstr "Показать отдельные ядра" + +#: prefs.js:193 prefs.js:191 +msgid "Show network speed in bits" +msgstr "Скорость сети в битах" + +#: prefs.js:205 prefs.js:208 +msgid "Sensor" +msgstr "Датчик" + +#: prefs.js:207 prefs.js:210 +msgid "Please install lm-sensors" +msgstr "Установите lm-sensors" + +#: prefs.js:282 prefs.js:300 +msgid "Move the clock" +msgstr "Переместить часы" + +#: prefs.js:286 prefs.js:289 +msgid "Compact Display" +msgstr "Компактный" + +#: extension.js:746 extension.js:1117 +msgid "Cpu" +msgstr "Процессор" + +msgid "User" +msgstr "Пользователь" + +msgid "System" +msgstr "Система" + +msgid "Other" +msgstr "Прочие" + +msgid "Nice" +msgstr "Приоритет" + +msgid "Iowait" +msgstr "IOwait" + +#: extension.js:941 extension.js:1378 +msgid "Memory" +msgstr "Память" + +msgid "Program" +msgstr "Процессы" + +msgid "Cache" +msgstr "Кэш" + +msgid "Buffer" +msgstr "Буфер записи" + +#: extension.js:1134 extension.js:1598 +msgid "Swap" +msgstr "Подкачка" + +msgid "Used" +msgstr "Используется" + +#: extension.js:1010 extension.js:1428 +msgid "Net" +msgstr "Сеть" + +#: extension.js:1589 +msgid "Up" +msgstr "Передача" + +#: extension.js:1586 +msgid "Down" +msgstr "Приём" + +msgid "Uperrors" +msgstr "Ошибки передачи" + +msgid "Downerrors" +msgstr "Ошибки приёма" + +msgid "collisions" +msgstr "коллизии" + +msgid "Collisions" +msgstr "Коллизии" + +#: extension.js:836 extension.js:1264 +msgid "Disk" +msgstr "Диск" + +msgid "Write" +msgstr "Запись" + +msgid "Read" +msgstr "Чтение" + +#: extension.js:1182 extension.js:1312 extension.js:1322 +msgid "R" +msgstr "" + +#: extension.js:1185 extension.js:1315 extension.js:1325 +msgid "W" +msgstr "" + +#: prefs.js:185 prefs.js:183 +msgid "graph" +msgstr "график" + +#: prefs.js:185 prefs.js:183 +msgid "digit" +msgstr "цифровой" + +#: prefs.js:185 prefs.js:183 +msgid "both" +msgstr "вместе" + +msgid "cpu" +msgstr "процессор" + +#: extension.js:811 +msgid "mem" +msgstr "память" + +msgid "swap" +msgstr "подкачка" + +msgid "net" +msgstr "сеть" + +msgid "disk" +msgstr "диск" + +#: extension.js:1346 extension.js:1900 +msgid "Preferences..." +msgstr "Настройка..." + +#: extension.js:1340 extension.js:1894 +msgid "System Monitor..." +msgstr "Системный монитор..." + +msgid "System monitor" +msgstr "Системный монитор" + +msgid "user" +msgstr "пользователь" + +msgid "system" +msgstr "система" + +msgid "other" +msgstr "прочие" + +msgid "nice" +msgstr "приоритет" + +msgid "iowait" +msgstr "iowait" + +msgid "program" +msgstr "процессы" + +msgid "cache" +msgstr "кэш" + +msgid "buffer" +msgstr "буфер записи" + +msgid "used" +msgstr "используется" + +msgid "up" +msgstr "передача" + +msgid "down" +msgstr "приём" + +msgid "uperrors" +msgstr "ошибки передачи" + +msgid "downerrors" +msgstr "ошибки приёма" + +msgid "write" +msgstr "запись" + +msgid "read" +msgstr "чтение" + +#: extension.js:167 extension.js:1454 extension.js:1545 extension.js:1554 +#: extension.js:1577 extension.js:1581 extension.js:1585 extension.js:1588 +msgid "KiB/s" +msgstr "" + +#: extension.js:166 extension.js:168 extension.js:1277 extension.js:1321 +#: extension.js:1324 extension.js:1549 extension.js:1558 +msgid "MiB/s" +msgstr "" + +#: extension.js:1419 extension.js:1635 +msgid "MiB" +msgstr "" + +#: extension.js:1714 +msgid "GiB" +msgstr "" + +#: extension.js:184 +msgid "kB" +msgstr "" + +#: extension.js:183 extension.js:185 +msgid "MB" +msgstr "" + +#: extension.js:1179 extension.js:1644 +msgid "Thermal" +msgstr "Температура" + +msgid "thermal" +msgstr "температура" + +#: prefs.js:180 prefs.js:178 +msgid "Show In Menu" +msgstr "Показывать в меню" + +#: prefs.js:222 prefs.js:229 +msgid "Show Time Remaining" +msgstr "Оставшееся время" + +#: prefs.js:226 prefs.js:233 +msgid "Hide System Icon" +msgstr "Скрыть системный значок" + +#: prefs.js:230 prefs.js:237 +msgid "Usage Style" +msgstr "Стиль" + +#: prefs.js:231 prefs.js:238 +msgid "pie" +msgstr "круговая" + +#: prefs.js:231 prefs.js:238 +msgid "bar" +msgstr "гистограмма" + +#: prefs.js:231 prefs.js:238 +msgid "none" +msgstr "нет" + +#: extension.js:68 +msgid "" +"Dependencies Missing\n" +"Please install: \n" +"libgtop, Network Manager and gir bindings \n" +"\t on Ubuntu: gir1.2-gtop-2.0, gir1.2-networkmanager-1.0 \n" +"\t on Fedora: libgtop2-devel, NetworkManager-glib-devel \n" +"\t on Arch: libgtop, networkmanager\n" +"\t on openSUSE: typelib-1_0-GTop-2_0, typelib-1_0-NetworkManager-1_0\n" +msgstr "" + +#: extension.js:97 extension.js:255 +msgid "System Monitor Extension" +msgstr "Расширение системного монитора" + +#: extension.js:113 extension.js:271 +msgid "Cancel" +msgstr "Отмена" + +#: extension.js:601 extension.js:875 +msgid "Battery" +msgstr "Батарея" + +msgid "battery" +msgstr "батарея" + +#: extension.js:896 extension.js:1334 +msgid "Freq" +msgstr "Частота" + +msgid "freq" +msgstr "частота" + +#: extension.js:1540 extension.js:1692 +msgid "Fan" +msgstr "Вентилятор" + +msgid "fan" +msgstr "вентилятор" + +#: extension.js:1542 extension.js:1566 extension.js:1574 extension.js:1698 +#: extension.js:1722 extension.js:1730 +msgid "rpm" +msgstr "" + +#: prefs.js:294 +msgid "Show tooltip" +msgstr "Показывать подсказку" + +#: extension.js:1097 +msgid "CPU" +msgstr "" + +#: prefs.js:267 +msgid "Display temperature in Fahrenheit" +msgstr "Температура в Фаренгейтах" + +#: prefs.js:277 +msgid "Temperature threshold (0 to disable)" +msgstr "Температурный порог (0 для отключения)" + +#~ msgid "System Monitor Applet Configurator" +#~ msgstr "Настройка апплета системных параметров" diff --git a/po/sk/system-monitor.po b/po/sk/system-monitor.po new file mode 100644 index 0000000..b745165 --- /dev/null +++ b/po/sk/system-monitor.po @@ -0,0 +1,376 @@ +#: extension.js:751 +msgid "" +msgstr "" +"Project-Id-Version: \n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2016-12-22 15:04+0100\n" +"PO-Revision-Date: \n" +"Last-Translator: Dušan Kazik \n" +"Language-Team: \n" +"Language: \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" + +#: prefs.js:69 prefs.js:90 prefs.js:110 prefs.js:67 prefs.js:87 prefs.js:107 +msgid ":" +msgstr "" + +# 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. +#: prefs.js:161 prefs.js:159 +msgid "Display" +msgstr "Zobraziť" + +#: prefs.js:166 prefs.js:164 +msgid "Refresh Time" +msgstr "Obnovovací interval" + +#: prefs.js:171 prefs.js:169 +msgid "Graph Width" +msgstr "Šírka grafu" + +#: prefs.js:176 prefs.js:174 +msgid "Show Text" +msgstr "Zobraziť text" + +#: prefs.js:184 prefs.js:182 +msgid "Display Style" +msgstr "Štýl zobrazenia" + +#: prefs.js:267 prefs.js:274 +msgid "Display Icon" +msgstr "Zobraziť ikonu" + +#: prefs.js:276 prefs.js:283 +msgid "Display in the Middle" +msgstr "Zobraziť v strede" + +#: prefs.js:288 prefs.js:306 +msgid "Background Color" +msgstr "Farba pozadia" + +#: prefs.js:197 prefs.js:195 +msgid "Display Individual Cores" +msgstr "" + +#: prefs.js:193 prefs.js:191 +msgid "Show network speed in bits" +msgstr "" + +#: prefs.js:205 prefs.js:208 +msgid "Sensor" +msgstr "" + +#: prefs.js:207 prefs.js:210 +msgid "Please install lm-sensors" +msgstr "" + +#: prefs.js:282 prefs.js:300 +msgid "Move the clock" +msgstr "" + +# 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. +#: prefs.js:286 prefs.js:289 +#, fuzzy +msgid "Compact Display" +msgstr "Zobraziť" + +#: extension.js:746 extension.js:1117 +msgid "Cpu" +msgstr "Procesor" + +msgid "User" +msgstr "Užívateľ" + +msgid "System" +msgstr "Systém" + +msgid "Other" +msgstr "Ostatné" + +msgid "Nice" +msgstr "" + +msgid "Iowait" +msgstr "I/O čakanie" + +#: extension.js:941 extension.js:1378 +msgid "Memory" +msgstr "Pamäť" + +msgid "Program" +msgstr "Programy" + +msgid "Cache" +msgstr "Vyrovnávacia pamäť" + +msgid "Buffer" +msgstr "Zásobník" + +#: extension.js:1134 extension.js:1598 +msgid "Swap" +msgstr "Odkladací priestor" + +msgid "Used" +msgstr "Použité" + +#: extension.js:1010 extension.js:1428 +msgid "Net" +msgstr "Sieť" + +#: extension.js:1589 +msgid "Up" +msgstr "Odosielanie" + +#: extension.js:1586 +msgid "Down" +msgstr "Sťahovanie" + +msgid "Uperrors" +msgstr "" + +msgid "Downerrors" +msgstr "" + +msgid "collisions" +msgstr "" + +msgid "Collisions" +msgstr "" + +#: extension.js:836 extension.js:1264 +msgid "Disk" +msgstr "Disk" + +msgid "Write" +msgstr "Zápis" + +msgid "Read" +msgstr "Čítanie" + +#: extension.js:1182 extension.js:1312 extension.js:1322 +msgid "R" +msgstr "" + +#: extension.js:1185 extension.js:1315 extension.js:1325 +msgid "W" +msgstr "" + +#: prefs.js:185 prefs.js:183 +msgid "graph" +msgstr "graf" + +#: prefs.js:185 prefs.js:183 +msgid "digit" +msgstr "číslo" + +#: prefs.js:185 prefs.js:183 +msgid "both" +msgstr "oboje" + +msgid "cpu" +msgstr "procesor" + +#: extension.js:811 +msgid "mem" +msgstr "pamäť" + +msgid "swap" +msgstr "odkladací priestor" + +msgid "net" +msgstr "sieť" + +msgid "disk" +msgstr "disk" + +#: extension.js:1346 extension.js:1900 +msgid "Preferences..." +msgstr "Vlastnosti..." + +#: extension.js:1340 extension.js:1894 +msgid "System Monitor..." +msgstr "Monitor systému..." + +msgid "System monitor" +msgstr "Monitor systému" + +msgid "user" +msgstr "užívateľ" + +msgid "system" +msgstr "systém" + +msgid "other" +msgstr "ostatné" + +msgid "nice" +msgstr "" + +msgid "iowait" +msgstr "I/O čakanie" + +msgid "program" +msgstr "programy" + +msgid "cache" +msgstr "vyrovnávacia pamäť" + +msgid "buffer" +msgstr "zásobník" + +msgid "used" +msgstr "použité" + +msgid "up" +msgstr "odosielanie" + +msgid "down" +msgstr "sťahovanie" + +msgid "uperrors" +msgstr "" + +msgid "downerrors" +msgstr "" + +msgid "write" +msgstr "zápis" + +msgid "read" +msgstr "čítanie" + +#: extension.js:167 extension.js:1454 extension.js:1545 extension.js:1554 +#: extension.js:1577 extension.js:1581 extension.js:1585 extension.js:1588 +msgid "KiB/s" +msgstr "" + +#: extension.js:166 extension.js:168 extension.js:1277 extension.js:1321 +#: extension.js:1324 extension.js:1549 extension.js:1558 +msgid "MiB/s" +msgstr "" + +#: extension.js:1419 extension.js:1635 +msgid "MiB" +msgstr "" + +#: extension.js:1714 +msgid "GiB" +msgstr "" + +#: extension.js:184 +msgid "kB" +msgstr "" + +#: extension.js:183 extension.js:185 +msgid "MB" +msgstr "" + +#: extension.js:1179 extension.js:1644 +msgid "Thermal" +msgstr "" + +#, fuzzy +msgid "thermal" +msgstr "Ostatné" + +#: prefs.js:180 prefs.js:178 +msgid "Show In Menu" +msgstr "" + +#: prefs.js:222 prefs.js:229 +msgid "Show Time Remaining" +msgstr "" + +#: prefs.js:226 prefs.js:233 +#, fuzzy +msgid "Hide System Icon" +msgstr "Monitor systému" + +#: prefs.js:230 prefs.js:237 +#, fuzzy +msgid "Usage Style" +msgstr "Štýl zobrazenia" + +#: prefs.js:231 prefs.js:238 +msgid "pie" +msgstr "" + +#: prefs.js:231 prefs.js:238 +msgid "bar" +msgstr "" + +#: prefs.js:231 prefs.js:238 +msgid "none" +msgstr "" + +#: extension.js:68 +msgid "" +"Dependencies Missing\n" +"Please install: \n" +"libgtop, Network Manager and gir bindings \n" +"\t on Ubuntu: gir1.2-gtop-2.0, gir1.2-networkmanager-1.0 \n" +"\t on Fedora: libgtop2-devel, NetworkManager-glib-devel \n" +"\t on Arch: libgtop, networkmanager\n" +"\t on openSUSE: typelib-1_0-GTop-2_0, typelib-1_0-NetworkManager-1_0\n" +msgstr "" + +#: extension.js:97 extension.js:255 +#, fuzzy +msgid "System Monitor Extension" +msgstr "Monitor systému" + +#: extension.js:113 extension.js:271 +msgid "Cancel" +msgstr "" + +#: extension.js:601 extension.js:875 +msgid "Battery" +msgstr "" + +msgid "battery" +msgstr "" + +#: extension.js:896 extension.js:1334 +msgid "Freq" +msgstr "" + +msgid "freq" +msgstr "" + +#: extension.js:1540 extension.js:1692 +msgid "Fan" +msgstr "" + +msgid "fan" +msgstr "" + +#: extension.js:1542 extension.js:1566 extension.js:1574 extension.js:1698 +#: extension.js:1722 extension.js:1730 +msgid "rpm" +msgstr "" + +#: prefs.js:294 +msgid "Show tooltip" +msgstr "" + +#: extension.js:1097 +msgid "CPU" +msgstr "" + +#: prefs.js:267 +msgid "Display temperature in Fahrenheit" +msgstr "" + +#: prefs.js:277 +msgid "Temperature threshold (0 to disable)" +msgstr "" + +#~ msgid "System Monitor Applet Configurator" +#~ msgstr "Konfigurátor apletu systémového monitoru" diff --git a/po/system-monitor.pot b/po/system-monitor.pot new file mode 100644 index 0000000..dad580d --- /dev/null +++ b/po/system-monitor.pot @@ -0,0 +1,375 @@ +# 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. +# +#: extension.js:751 +#, fuzzy +msgid "" +msgstr "" +"Project-Id-Version: PACKAGE VERSION\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2016-12-22 15:04+0100\n" +"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"Last-Translator: FULL NAME \n" +"Language-Team: LANGUAGE \n" +"Language: \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" + +#: prefs.js:69 prefs.js:90 prefs.js:110 prefs.js:67 prefs.js:87 prefs.js:107 +msgid ":" +msgstr "" + +#: prefs.js:161 prefs.js:159 +msgid "Display" +msgstr "" + +#: prefs.js:166 prefs.js:164 +msgid "Refresh Time" +msgstr "" + +#: prefs.js:171 prefs.js:169 +msgid "Graph Width" +msgstr "" + +#: prefs.js:176 prefs.js:174 +msgid "Show Text" +msgstr "" + +#: prefs.js:184 prefs.js:182 +msgid "Display Style" +msgstr "" + +#: prefs.js:267 prefs.js:274 +msgid "Display Icon" +msgstr "" + +#: prefs.js:276 prefs.js:283 +msgid "Display in the Middle" +msgstr "" + +#: prefs.js:288 prefs.js:306 +msgid "Background Color" +msgstr "" + +#: prefs.js:197 prefs.js:195 +msgid "Display Individual Cores" +msgstr "" + +#: prefs.js:193 prefs.js:191 +msgid "Show network speed in bits" +msgstr "" + +#: prefs.js:205 prefs.js:208 +msgid "Sensor" +msgstr "" + +#: prefs.js:207 prefs.js:210 +msgid "Please install lm-sensors" +msgstr "" + +#: prefs.js:282 prefs.js:300 +msgid "Move the clock" +msgstr "" + +#: prefs.js:286 prefs.js:289 +msgid "Compact Display" +msgstr "" + +#: extension.js:746 extension.js:1117 +msgid "Cpu" +msgstr "" + +msgid "User" +msgstr "" + +msgid "System" +msgstr "" + +msgid "Other" +msgstr "" + +msgid "Nice" +msgstr "" + +msgid "Iowait" +msgstr "" + +#: extension.js:941 extension.js:1378 +msgid "Memory" +msgstr "" + +msgid "Program" +msgstr "" + +msgid "Cache" +msgstr "" + +msgid "Buffer" +msgstr "" + +#: extension.js:1134 extension.js:1598 +msgid "Swap" +msgstr "" + +msgid "Used" +msgstr "" + +#: extension.js:1010 extension.js:1428 +msgid "Net" +msgstr "" + +#: extension.js:1589 +msgid "Up" +msgstr "" + +#: extension.js:1586 +msgid "Down" +msgstr "" + +msgid "Uperrors" +msgstr "" + +msgid "Downerrors" +msgstr "" + +msgid "collisions" +msgstr "" + +msgid "Collisions" +msgstr "" + +#: extension.js:836 extension.js:1264 +msgid "Disk" +msgstr "" + +msgid "Write" +msgstr "" + +msgid "Read" +msgstr "" + +#: extension.js:1182 extension.js:1312 extension.js:1322 +msgid "R" +msgstr "" + +#: extension.js:1185 extension.js:1315 extension.js:1325 +msgid "W" +msgstr "" + +#: prefs.js:185 prefs.js:183 +msgid "graph" +msgstr "" + +#: prefs.js:185 prefs.js:183 +msgid "digit" +msgstr "" + +#: prefs.js:185 prefs.js:183 +msgid "both" +msgstr "" + +msgid "cpu" +msgstr "" + +#: extension.js:811 +msgid "mem" +msgstr "" + +msgid "swap" +msgstr "" + +msgid "net" +msgstr "" + +msgid "disk" +msgstr "" + +#: extension.js:1346 extension.js:1900 +msgid "Preferences..." +msgstr "" + +#: extension.js:1340 extension.js:1894 +msgid "System Monitor..." +msgstr "" + +msgid "System monitor" +msgstr "" + +msgid "user" +msgstr "" + +msgid "system" +msgstr "" + +msgid "other" +msgstr "" + +msgid "nice" +msgstr "" + +msgid "iowait" +msgstr "" + +msgid "program" +msgstr "" + +msgid "cache" +msgstr "" + +msgid "buffer" +msgstr "" + +msgid "used" +msgstr "" + +msgid "up" +msgstr "" + +msgid "down" +msgstr "" + +msgid "uperrors" +msgstr "" + +msgid "downerrors" +msgstr "" + +msgid "write" +msgstr "" + +msgid "read" +msgstr "" + +#: extension.js:167 extension.js:1454 extension.js:1545 extension.js:1554 +#: extension.js:1577 extension.js:1581 extension.js:1585 extension.js:1588 +msgid "KiB/s" +msgstr "" + +#: extension.js:166 extension.js:168 extension.js:1277 extension.js:1321 +#: extension.js:1324 extension.js:1549 extension.js:1558 +msgid "MiB/s" +msgstr "" + +#: extension.js:178 extension.js:1597 extension.js:1605 +msgid "kbit/s" +msgstr "" + +#: extension.js:179 extension.js:1600 extension.js:1608 +msgid "Mbit/s" +msgstr "" + +#: extension.js:1419 extension.js:1635 +msgid "MiB" +msgstr "" + +#: extension.js:1714 +msgid "GiB" +msgstr "" + +#: extension.js:184 +msgid "kB" +msgstr "" + +#: extension.js:183 extension.js:185 +msgid "MB" +msgstr "" + +#: extension.js:1179 extension.js:1644 +msgid "Thermal" +msgstr "" + +msgid "thermal" +msgstr "" + +#: prefs.js:180 prefs.js:178 +msgid "Show In Menu" +msgstr "" + +#: prefs.js:222 prefs.js:229 +msgid "Show Time Remaining" +msgstr "" + +#: prefs.js:226 prefs.js:233 +msgid "Hide System Icon" +msgstr "" + +#: prefs.js:230 prefs.js:237 +msgid "Usage Style" +msgstr "" + +#: prefs.js:231 prefs.js:238 +msgid "pie" +msgstr "" + +#: prefs.js:231 prefs.js:238 +msgid "bar" +msgstr "" + +#: prefs.js:231 prefs.js:238 +msgid "none" +msgstr "" + +#: extension.js:68 +msgid "" +"Dependencies Missing\n" +"Please install: \n" +"libgtop, Network Manager and gir bindings \n" +"\t on Ubuntu: gir1.2-gtop-2.0, gir1.2-networkmanager-1.0 \n" +"\t on Fedora: libgtop2-devel, NetworkManager-glib-devel \n" +"\t on Arch: libgtop, networkmanager\n" +"\t on openSUSE: typelib-1_0-GTop-2_0, typelib-1_0-NetworkManager-1_0\n" +msgstr "" + +#: extension.js:97 extension.js:255 +msgid "System Monitor Extension" +msgstr "" + +#: extension.js:113 extension.js:271 +msgid "Cancel" +msgstr "" + +#: extension.js:601 extension.js:875 +msgid "Battery" +msgstr "" + +msgid "battery" +msgstr "" + +#: extension.js:896 extension.js:1334 +msgid "Freq" +msgstr "" + +msgid "freq" +msgstr "" + +#: extension.js:1540 extension.js:1692 +msgid "Fan" +msgstr "" + +msgid "fan" +msgstr "" + +#: extension.js:1542 extension.js:1566 extension.js:1574 extension.js:1698 +#: extension.js:1722 extension.js:1730 +msgid "rpm" +msgstr "" + +#: prefs.js:294 +msgid "Show tooltip" +msgstr "" + +#: extension.js:1097 +msgid "CPU" +msgstr "" + +#: prefs.js:267 +msgid "Display temperature in Fahrenheit" +msgstr "" + +#: prefs.js:277 +msgid "Temperature threshold (0 to disable)" +msgstr "" + diff --git a/po/uk/system-monitor.po b/po/uk/system-monitor.po new file mode 100644 index 0000000..ea48ce5 --- /dev/null +++ b/po/uk/system-monitor.po @@ -0,0 +1,366 @@ +# Ukrainian translation. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# Georgii Iesaulov , 2017. +msgid "" +msgstr "" +"Project-Id-Version: system-monitor-applet\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-11-07 00:00+0500\n" +"PO-Revision-Date: 2017-11-07 00:00+0500\n" +"Last-Translator: Georgii Iesaulov \n" +"Language-Team: \n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"MIME-Version: 1.0\n" +"Language: uk\n" + +#: prefs.js:69 prefs.js:90 prefs.js:110 prefs.js:67 prefs.js:87 prefs.js:107 +msgid ":" +msgstr "" + +#: prefs.js:161 prefs.js:159 +msgid "Display" +msgstr "Показувати" + +#: prefs.js:166 prefs.js:164 +msgid "Refresh Time" +msgstr "Частота оновлення" + +#: prefs.js:171 prefs.js:169 +msgid "Graph Width" +msgstr "Ширина графіка" + +#: prefs.js:176 prefs.js:174 +msgid "Show Text" +msgstr "Показувати текст" + +#: prefs.js:184 prefs.js:182 +msgid "Display Style" +msgstr "Стиль відображення" + +#: prefs.js:267 prefs.js:274 +msgid "Display Icon" +msgstr "Показувати значок" + +#: prefs.js:276 prefs.js:283 +msgid "Display in the Middle" +msgstr "Показувати у центрі" + +#: prefs.js:288 prefs.js:306 +msgid "Background Color" +msgstr "Колір фону" + +#: prefs.js:197 prefs.js:195 +msgid "Display Individual Cores" +msgstr "Показати окремі ядра" + +#: prefs.js:193 prefs.js:191 +msgid "Show network speed in bits" +msgstr "Видобразити швидкість мережі у бітах" + +#: prefs.js:205 prefs.js:208 +msgid "Sensor" +msgstr "Датчик" + +#: prefs.js:207 prefs.js:210 +msgid "Please install lm-sensors" +msgstr "Встановіть lm-sensors" + +#: prefs.js:282 prefs.js:300 +msgid "Move the clock" +msgstr "Перемістіти годинник" + +#: prefs.js:286 prefs.js:289 +msgid "Compact Display" +msgstr "Компактний показ" + +#: extension.js:746 extension.js:1117 +msgid "Cpu" +msgstr "Процесор" + +msgid "User" +msgstr "Користувач" + +msgid "System" +msgstr "Система" + +msgid "Other" +msgstr "Інше" + +msgid "Nice" +msgstr "Пріоритет" + +msgid "Iowait" +msgstr "IOwait" + +#: extension.js:941 extension.js:1378 +msgid "Memory" +msgstr "Пам'ять" + +msgid "Program" +msgstr "Програми" + +msgid "Cache" +msgstr "Кеш" + +msgid "Buffer" +msgstr "Буфер" + +#: extension.js:1134 extension.js:1598 +msgid "Swap" +msgstr "Підкачка" + +msgid "Used" +msgstr "Використовується" + +#: extension.js:1010 extension.js:1428 +msgid "Net" +msgstr "Мережа" + +#: extension.js:1589 +msgid "Up" +msgstr "Передача" + +#: extension.js:1586 +msgid "Down" +msgstr "Завантаження" + +msgid "Uperrors" +msgstr "Помилки передачі" + +msgid "Downerrors" +msgstr "Помилки завантаження" + +msgid "collisions" +msgstr "колізії" + +msgid "Collisions" +msgstr "Колізії" + +#: extension.js:836 extension.js:1264 +msgid "Disk" +msgstr "Диск" + +msgid "Write" +msgstr "Запис" + +msgid "Read" +msgstr "Читання" + +#: extension.js:1182 extension.js:1312 extension.js:1322 +msgid "R" +msgstr "" + +#: extension.js:1185 extension.js:1315 extension.js:1325 +msgid "W" +msgstr "" + +#: prefs.js:185 prefs.js:183 +msgid "graph" +msgstr "графік" + +#: prefs.js:185 prefs.js:183 +msgid "digit" +msgstr "цифровий" + +#: prefs.js:185 prefs.js:183 +msgid "both" +msgstr "разом" + +msgid "cpu" +msgstr "процесор" + +#: extension.js:811 +msgid "mem" +msgstr "пам'ять" + +msgid "swap" +msgstr "підкачка" + +msgid "net" +msgstr "мережа" + +msgid "disk" +msgstr "диск" + +#: extension.js:1346 extension.js:1900 +msgid "Preferences..." +msgstr "Налаштування..." + +#: extension.js:1340 extension.js:1894 +msgid "System Monitor..." +msgstr "Системний монітор..." + +msgid "System monitor" +msgstr "Системний монітор" + +msgid "user" +msgstr "користувач" + +msgid "system" +msgstr "система" + +msgid "other" +msgstr "інше" + +msgid "nice" +msgstr "пріоритет" + +msgid "iowait" +msgstr "iowait" + +msgid "program" +msgstr "програми" + +msgid "cache" +msgstr "кеш" + +msgid "buffer" +msgstr "буфер" + +msgid "used" +msgstr "використовується" + +msgid "up" +msgstr "передача" + +msgid "down" +msgstr "завантаження" + +msgid "uperrors" +msgstr "помилки передачі" + +msgid "downerrors" +msgstr "помилки завантаження" + +msgid "write" +msgstr "запис" + +msgid "read" +msgstr "читання" + +#: extension.js:167 extension.js:1454 extension.js:1545 extension.js:1554 +#: extension.js:1577 extension.js:1581 extension.js:1585 extension.js:1588 +msgid "KiB/s" +msgstr "" + +#: extension.js:166 extension.js:168 extension.js:1277 extension.js:1321 +#: extension.js:1324 extension.js:1549 extension.js:1558 +msgid "MiB/s" +msgstr "" + +#: extension.js:1419 extension.js:1635 +msgid "MiB" +msgstr "" + +#: extension.js:1714 +msgid "GiB" +msgstr "" + +#: extension.js:184 +msgid "kB" +msgstr "" + +#: extension.js:183 extension.js:185 +msgid "MB" +msgstr "" + +#: extension.js:1179 extension.js:1644 +msgid "Thermal" +msgstr "Температура" + +msgid "thermal" +msgstr "температура" + +#: prefs.js:180 prefs.js:178 +msgid "Show In Menu" +msgstr "Показувати у меню" + +#: prefs.js:222 prefs.js:229 +msgid "Show Time Remaining" +msgstr "Показати час роботи на батареї" + +#: prefs.js:226 prefs.js:233 +msgid "Hide System Icon" +msgstr "Сховати системний значок" + +#: prefs.js:230 prefs.js:237 +msgid "Usage Style" +msgstr "Стиль" + +#: prefs.js:231 prefs.js:238 +msgid "pie" +msgstr "кругова" + +#: prefs.js:231 prefs.js:238 +msgid "bar" +msgstr "гістограма" + +#: prefs.js:231 prefs.js:238 +msgid "none" +msgstr "немає" + +#: extension.js:68 +msgid "" +"Dependencies Missing\n" +"Please install: \n" +"libgtop, Network Manager and gir bindings \n" +"\t on Ubuntu: gir1.2-gtop-2.0, gir1.2-networkmanager-1.0 \n" +"\t on Fedora: libgtop2-devel, NetworkManager-glib-devel \n" +"\t on Arch: libgtop, networkmanager\n" +"\t on openSUSE: typelib-1_0-GTop-2_0, typelib-1_0-NetworkManager-1_0\n" +msgstr "" + +#: extension.js:97 extension.js:255 +msgid "System Monitor Extension" +msgstr "Розширення системного монитора" + +#: extension.js:113 extension.js:271 +msgid "Cancel" +msgstr "Скасувати" + +#: extension.js:601 extension.js:875 +msgid "Battery" +msgstr "Батарея" + +msgid "battery" +msgstr "батарея" + +#: extension.js:896 extension.js:1334 +msgid "Freq" +msgstr "Частота" + +msgid "freq" +msgstr "частота" + +#: extension.js:1540 extension.js:1692 +msgid "Fan" +msgstr "Вентилятор" + +msgid "fan" +msgstr "вентилятор" + +#: extension.js:1542 extension.js:1566 extension.js:1574 extension.js:1698 +#: extension.js:1722 extension.js:1730 +msgid "rpm" +msgstr "" + +#: prefs.js:294 +msgid "Show tooltip" +msgstr "Показувати підказку" + +#: extension.js:1097 +msgid "CPU" +msgstr "" + +#: prefs.js:267 +msgid "Display temperature in Fahrenheit" +msgstr "Видобразити температуру у Фаренгейтах" + +#: prefs.js:277 +msgid "Temperature threshold (0 to disable)" +msgstr "Температурний поріг (0 щоб вимкнути)" + +#~ msgid "System Monitor Applet Configurator" +#~ msgstr "Конфігуратор аплетів системного монітора" diff --git a/po/zh_CN/system-monitor.po b/po/zh_CN/system-monitor.po new file mode 100644 index 0000000..01e50f5 --- /dev/null +++ b/po/zh_CN/system-monitor.po @@ -0,0 +1,376 @@ +# 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. +#: extension.js:751 +msgid "" +msgstr "" +"Project-Id-Version: 0.99\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2016-12-22 15:04+0100\n" +"PO-Revision-Date: 2014-07-07 12:17+0800\n" +"Last-Translator: Star Brilliant \n" +"Language-Team: LANGUAGE \n" +"Language: Chinese\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Generator: Poedit 1.6.5\n" + +#: prefs.js:69 prefs.js:90 prefs.js:110 prefs.js:67 prefs.js:87 prefs.js:107 +msgid ":" +msgstr ":" + +#: prefs.js:161 prefs.js:159 +msgid "Display" +msgstr "显示" + +#: prefs.js:166 prefs.js:164 +msgid "Refresh Time" +msgstr "刷新时间" + +#: prefs.js:171 prefs.js:169 +msgid "Graph Width" +msgstr "图形宽度" + +#: prefs.js:176 prefs.js:174 +msgid "Show Text" +msgstr "显示文字" + +#: prefs.js:184 prefs.js:182 +msgid "Display Style" +msgstr "显示风格" + +#: prefs.js:267 prefs.js:274 +msgid "Display Icon" +msgstr "显示图标" + +#: prefs.js:276 prefs.js:283 +msgid "Display in the Middle" +msgstr "居中显示" + +#: prefs.js:288 prefs.js:306 +msgid "Background Color" +msgstr "背景色" + +#: prefs.js:197 prefs.js:195 +msgid "Display Individual Cores" +msgstr "单独显示每个核心" + +#: prefs.js:193 prefs.js:191 +msgid "Show network speed in bits" +msgstr "以位为单位显示网络速度" + +#: prefs.js:205 prefs.js:208 +msgid "Sensor" +msgstr "传感器" + +#: prefs.js:207 prefs.js:210 +msgid "Please install lm-sensors" +msgstr "请安装 lm-sensors" + +#: prefs.js:282 prefs.js:300 +msgid "Move the clock" +msgstr "移走时钟" + +#: prefs.js:286 prefs.js:289 +msgid "Compact Display" +msgstr "紧凑显示" + +#: extension.js:746 extension.js:1117 +msgid "Cpu" +msgstr "处理器" + +msgid "User" +msgstr "用户" + +msgid "System" +msgstr "系统" + +msgid "Other" +msgstr "其他" + +msgid "Nice" +msgstr "优先级" + +msgid "Iowait" +msgstr "IO 等待" + +#: extension.js:941 extension.js:1378 +msgid "Memory" +msgstr "内存" + +msgid "Program" +msgstr "程序" + +msgid "Cache" +msgstr "缓存" + +msgid "Buffer" +msgstr "缓冲" + +#: extension.js:1134 extension.js:1598 +msgid "Swap" +msgstr "交换分区" + +msgid "Used" +msgstr "已用" + +#: extension.js:1010 extension.js:1428 +msgid "Net" +msgstr "网络" + +#: extension.js:1589 +msgid "Up" +msgstr "上传" + +#: extension.js:1586 +msgid "Down" +msgstr "下载" + +msgid "Uperrors" +msgstr "上传错误" + +msgid "Downerrors" +msgstr "下载错误" + +msgid "collisions" +msgstr "冲突" + +msgid "Collisions" +msgstr "冲突" + +#: extension.js:836 extension.js:1264 +msgid "Disk" +msgstr "硬盘" + +msgid "Write" +msgstr "写入" + +msgid "Read" +msgstr "读取" + +#: extension.js:1182 extension.js:1312 extension.js:1322 +msgid "R" +msgstr "读" + +#: extension.js:1185 extension.js:1315 extension.js:1325 +msgid "W" +msgstr "写" + +#: prefs.js:185 prefs.js:183 +msgid "graph" +msgstr "图形" + +#: prefs.js:185 prefs.js:183 +msgid "digit" +msgstr "数字" + +#: prefs.js:185 prefs.js:183 +msgid "both" +msgstr "同时" + +msgid "cpu" +msgstr "处理器" + +#: extension.js:811 +msgid "mem" +msgstr "内存" + +msgid "swap" +msgstr "交换" + +msgid "net" +msgstr "网络" + +msgid "disk" +msgstr "硬盘" + +#: extension.js:1346 extension.js:1900 +msgid "Preferences..." +msgstr "首选项..." + +#: extension.js:1340 extension.js:1894 +msgid "System Monitor..." +msgstr "系统监视器..." + +msgid "System monitor" +msgstr "系统监视器" + +msgid "user" +msgstr "用户" + +msgid "system" +msgstr "系统" + +msgid "other" +msgstr "其他" + +msgid "nice" +msgstr "优先级" + +msgid "iowait" +msgstr "IO 等待" + +msgid "program" +msgstr "程序" + +msgid "cache" +msgstr "缓存" + +msgid "buffer" +msgstr "缓冲" + +msgid "used" +msgstr "已用" + +msgid "up" +msgstr "上传" + +msgid "down" +msgstr "下载" + +msgid "uperrors" +msgstr "上传错误" + +msgid "downerrors" +msgstr "下载错误" + +msgid "write" +msgstr "写入" + +msgid "read" +msgstr "读取" + +#: extension.js:167 extension.js:1454 extension.js:1545 extension.js:1554 +#: extension.js:1577 extension.js:1581 extension.js:1585 extension.js:1588 +msgid "KiB/s" +msgstr "KiB/s" + +#: extension.js:166 extension.js:168 extension.js:1277 extension.js:1321 +#: extension.js:1324 extension.js:1549 extension.js:1558 +msgid "MiB/s" +msgstr "MiB/s" + +#: extension.js:1419 extension.js:1635 +msgid "MiB" +msgstr "MiB" + +#: extension.js:1714 +#, fuzzy +msgid "GiB" +msgstr "MiB" + +#: extension.js:184 +msgid "kB" +msgstr "kB" + +#: extension.js:183 extension.js:185 +msgid "MB" +msgstr "MB" + +#: extension.js:1179 extension.js:1644 +msgid "Thermal" +msgstr "温度" + +msgid "thermal" +msgstr "温度" + +#: prefs.js:180 prefs.js:178 +msgid "Show In Menu" +msgstr "在菜单中显示" + +#: prefs.js:222 prefs.js:229 +msgid "Show Time Remaining" +msgstr "显示剩余时间" + +#: prefs.js:226 prefs.js:233 +msgid "Hide System Icon" +msgstr "隐藏系统图标" + +#: prefs.js:230 prefs.js:237 +msgid "Usage Style" +msgstr "用量显示风格" + +#: prefs.js:231 prefs.js:238 +msgid "pie" +msgstr "扇形图" + +#: prefs.js:231 prefs.js:238 +msgid "bar" +msgstr "条形图" + +#: prefs.js:231 prefs.js:238 +msgid "none" +msgstr "无" + +#: extension.js:68 +#, fuzzy +msgid "" +"Dependencies Missing\n" +"Please install: \n" +"libgtop, Network Manager and gir bindings \n" +"\t on Ubuntu: gir1.2-gtop-2.0, gir1.2-networkmanager-1.0 \n" +"\t on Fedora: libgtop2-devel, NetworkManager-glib-devel \n" +"\t on Arch: libgtop, networkmanager\n" +"\t on openSUSE: typelib-1_0-GTop-2_0, typelib-1_0-NetworkManager-1_0\n" +msgstr "" +"缺失依赖项\n" +"请安装:\n" +"libgtop、Network Manager 及其 gir 绑定\n" +"\t 于 Ubuntu:gir1.2-gtop-2.0, gir1.2-networkmanager-1.0 \n" +"\t 于 Fedora:libgtop2-devel, NetworkManager-glib-devel \n" +"\t 于 Arch:libgtop, networkmanager\n" + +#: extension.js:97 extension.js:255 +msgid "System Monitor Extension" +msgstr "系统监视器扩展" + +#: extension.js:113 extension.js:271 +msgid "Cancel" +msgstr "取消" + +#: extension.js:601 extension.js:875 +msgid "Battery" +msgstr "电池" + +msgid "battery" +msgstr "电池" + +#: extension.js:896 extension.js:1334 +msgid "Freq" +msgstr "主频" + +msgid "freq" +msgstr "主频" + +#: extension.js:1540 extension.js:1692 +msgid "Fan" +msgstr "风扇" + +msgid "fan" +msgstr "风扇" + +#: extension.js:1542 extension.js:1566 extension.js:1574 extension.js:1698 +#: extension.js:1722 extension.js:1730 +msgid "rpm" +msgstr "rpm" + +#: prefs.js:294 +msgid "Show tooltip" +msgstr "" + +#: extension.js:1097 +msgid "CPU" +msgstr "" + +#: prefs.js:267 +msgid "Display temperature in Fahrenheit" +msgstr "" + +#: prefs.js:277 +msgid "Temperature threshold (0 to disable)" +msgstr "" + +#~ msgid "System Monitor Applet Configurator" +#~ msgstr "面板系统监视器配置"