diff --git a/404.html b/404.html new file mode 100644 index 000000000..b446010e3 --- /dev/null +++ b/404.html @@ -0,0 +1,24 @@ + + + + + + Kangaroo + + + + + + + + + + + +
+ + + diff --git a/ads.txt b/ads.txt new file mode 100644 index 000000000..ba6d7a325 --- /dev/null +++ b/ads.txt @@ -0,0 +1 @@ +google.com, pub-3975819313740938, DIRECT, f08c47fec0942fa0 \ No newline at end of file diff --git a/assets/css/0.styles.f9dd3f8d.css b/assets/css/0.styles.f9dd3f8d.css new file mode 100644 index 000000000..65ba5e4e1 --- /dev/null +++ b/assets/css/0.styles.f9dd3f8d.css @@ -0,0 +1 @@ +.qrcodeBtn{position:relative;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.qrcodeBtn:hover{color:#3eaf7c;cursor:pointer}.qrcodeBtn #qrcodeContainer{position:absolute;right:0;top:50px}code[class*=language-],pre[class*=language-]{color:#ccc;background:none;font-family:Consolas,Monaco,Andale Mono,Ubuntu Mono,monospace;font-size:1em;text-align:left;white-space:pre;word-spacing:normal;word-break:normal;word-wrap:normal;line-height:1.5;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-hyphens:none;-ms-hyphens:none;hyphens:none}pre[class*=language-]{padding:1em;margin:.5em 0;overflow:auto}:not(pre)>code[class*=language-],pre[class*=language-]{background:#2d2d2d}:not(pre)>code[class*=language-]{padding:.1em;border-radius:.3em;white-space:normal}.token.block-comment,.token.cdata,.token.comment,.token.doctype,.token.prolog{color:#999}.token.punctuation{color:#ccc}.token.attr-name,.token.deleted,.token.namespace,.token.tag{color:#e2777a}.token.function-name{color:#6196cc}.token.boolean,.token.function,.token.number{color:#f08d49}.token.class-name,.token.constant,.token.property,.token.symbol{color:#f8c555}.token.atrule,.token.builtin,.token.important,.token.keyword,.token.selector{color:#cc99cd}.token.attr-value,.token.char,.token.regex,.token.string,.token.variable{color:#7ec699}.token.entity,.token.operator,.token.url{color:#67cdcc}.token.bold,.token.important{font-weight:700}.token.italic{font-style:italic}.token.entity{cursor:help}.token.inserted{color:green}.theme-default-content code{color:#476582;padding:.25rem .5rem;margin:0;font-size:.85em;background-color:rgba(27,31,35,.05);border-radius:3px}.theme-default-content code .token.deleted{color:#ec5975}.theme-default-content code .token.inserted{color:#3eaf7c}.theme-default-content pre,.theme-default-content pre[class*=language-]{line-height:1.4;padding:1.25rem 1.5rem;margin:.85rem 0;background-color:#282c34;border-radius:6px;overflow:auto}.theme-default-content pre[class*=language-] code,.theme-default-content pre code{color:#fff;padding:0;background-color:transparent;border-radius:0}div[class*=language-]{position:relative;background-color:#282c34;border-radius:6px}div[class*=language-] .highlight-lines{-webkit-user-select:none;user-select:none;padding-top:1.3rem;position:absolute;top:0;left:0;width:100%;line-height:1.4}div[class*=language-] .highlight-lines .highlighted{background-color:rgba(0,0,0,.66)}div[class*=language-] pre,div[class*=language-] pre[class*=language-]{background:transparent;position:relative;z-index:1}div[class*=language-]:before{position:absolute;z-index:3;top:.8em;right:1em;font-size:.75rem;color:hsla(0,0%,100%,.4)}div[class*=language-]:not(.line-numbers-mode) .line-numbers-wrapper{display:none}div[class*=language-].line-numbers-mode .highlight-lines .highlighted{position:relative}div[class*=language-].line-numbers-mode .highlight-lines .highlighted:before{content:" ";position:absolute;z-index:3;left:0;top:0;display:block;width:3.5rem;height:100%;background-color:rgba(0,0,0,.66)}div[class*=language-].line-numbers-mode pre{padding-left:4.5rem;vertical-align:middle}div[class*=language-].line-numbers-mode .line-numbers-wrapper{position:absolute;top:0;width:3.5rem;text-align:center;color:hsla(0,0%,100%,.3);padding:1.25rem 0;line-height:1.4}div[class*=language-].line-numbers-mode .line-numbers-wrapper br{-webkit-user-select:none;user-select:none}div[class*=language-].line-numbers-mode .line-numbers-wrapper .line-number{position:relative;z-index:4;-webkit-user-select:none;user-select:none;font-size:.85em}div[class*=language-].line-numbers-mode:after{content:"";position:absolute;z-index:2;top:0;left:0;width:3.5rem;height:100%;border-radius:6px 0 0 6px;border-right:1px solid rgba(0,0,0,.66);background-color:#282c34}div[class~=language-js]:before{content:"js"}div[class~=language-ts]:before{content:"ts"}div[class~=language-html]:before{content:"html"}div[class~=language-md]:before{content:"md"}div[class~=language-vue]:before{content:"vue"}div[class~=language-css]:before{content:"css"}div[class~=language-sass]:before{content:"sass"}div[class~=language-scss]:before{content:"scss"}div[class~=language-less]:before{content:"less"}div[class~=language-stylus]:before{content:"stylus"}div[class~=language-go]:before{content:"go"}div[class~=language-java]:before{content:"java"}div[class~=language-c]:before{content:"c"}div[class~=language-sh]:before{content:"sh"}div[class~=language-yaml]:before{content:"yaml"}div[class~=language-py]:before{content:"py"}div[class~=language-docker]:before{content:"docker"}div[class~=language-dockerfile]:before{content:"dockerfile"}div[class~=language-makefile]:before{content:"makefile"}div[class~=language-javascript]:before{content:"js"}div[class~=language-typescript]:before{content:"ts"}div[class~=language-markup]:before{content:"html"}div[class~=language-markdown]:before{content:"md"}div[class~=language-json]:before{content:"json"}div[class~=language-ruby]:before{content:"rb"}div[class~=language-python]:before{content:"py"}div[class~=language-bash]:before{content:"sh"}div[class~=language-php]:before{content:"php"}.custom-block .custom-block-title{font-weight:600;margin-bottom:-.4rem}.custom-block.danger,.custom-block.tip,.custom-block.warning{padding:.1rem 1.5rem;border-left-width:.5rem;border-left-style:solid;margin:1rem 0}.custom-block.tip{background-color:#f3f5f7;border-color:#42b983}.custom-block.warning{background-color:rgba(255,229,100,.3);border-color:#e7c000;color:#6b5900}.custom-block.warning .custom-block-title{color:#b29400}.custom-block.warning a{color:#2c3e50}.custom-block.danger{background-color:#ffe6e6;border-color:#c00;color:#4d0000}.custom-block.danger .custom-block-title{color:#900}.custom-block.danger a{color:#2c3e50}.custom-block.details{display:block;position:relative;border-radius:2px;margin:1.6em 0;padding:1.6em;background-color:#eee}.custom-block.details h4{margin-top:0}.custom-block.details figure:last-child,.custom-block.details p:last-child{margin-bottom:0;padding-bottom:0}.custom-block.details summary{outline:none;cursor:pointer}.arrow{display:inline-block;width:0;height:0}.arrow.up{border-bottom:6px solid #ccc}.arrow.down,.arrow.up{border-left:4px solid transparent;border-right:4px solid transparent}.arrow.down{border-top:6px solid #ccc}.arrow.right{border-left:6px solid #ccc}.arrow.left,.arrow.right{border-top:4px solid transparent;border-bottom:4px solid transparent}.arrow.left{border-right:6px solid #ccc}.theme-default-content:not(.custom){max-width:740px;margin:0 auto;padding:2rem 2.5rem}@media (max-width:959px){.theme-default-content:not(.custom){padding:2rem}}@media (max-width:419px){.theme-default-content:not(.custom){padding:1.5rem}}.table-of-contents .badge{vertical-align:middle}body,html{padding:0;margin:0;background-color:#fff}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-size:16px;color:#2c3e50}.page{padding-left:20rem}.navbar{z-index:20;right:0;height:3.6rem;background-color:#fff;box-sizing:border-box;border-bottom:1px solid #eaecef}.navbar,.sidebar-mask{position:fixed;top:0;left:0}.sidebar-mask{z-index:9;width:100vw;height:100vh;display:none}.sidebar{font-size:16px;background-color:#fff;width:20rem;position:fixed;z-index:10;margin:0;top:3.6rem;left:0;bottom:0;box-sizing:border-box;border-right:1px solid #eaecef;overflow-y:auto}.theme-default-content:not(.custom)>:first-child{margin-top:3.6rem}.theme-default-content:not(.custom) a:hover{text-decoration:underline}.theme-default-content:not(.custom) p.demo{padding:1rem 1.5rem;border:1px solid #ddd;border-radius:4px}.theme-default-content:not(.custom) img{max-width:100%}.theme-default-content.custom{padding:0;margin:0}.theme-default-content.custom img{max-width:100%}a{font-weight:500;text-decoration:none}a,p a code{color:#3eaf7c}p a code{font-weight:400}kbd{background:#eee;border:.15rem solid #ddd;border-bottom:.25rem solid #ddd;border-radius:.15rem;padding:0 .15em}blockquote{font-size:1rem;color:#999;border-left:.2rem solid #dfe2e5;margin:1rem 0;padding:.25rem 0 .25rem 1rem}blockquote>p{margin:0}ol,ul{padding-left:1.2em}strong{font-weight:600}h1,h2,h3,h4,h5,h6{font-weight:600;line-height:1.25}.theme-default-content:not(.custom)>h1,.theme-default-content:not(.custom)>h2,.theme-default-content:not(.custom)>h3,.theme-default-content:not(.custom)>h4,.theme-default-content:not(.custom)>h5,.theme-default-content:not(.custom)>h6{margin-top:-3.1rem;padding-top:4.6rem;margin-bottom:0}.theme-default-content:not(.custom)>h1:first-child,.theme-default-content:not(.custom)>h2:first-child,.theme-default-content:not(.custom)>h3:first-child,.theme-default-content:not(.custom)>h4:first-child,.theme-default-content:not(.custom)>h5:first-child,.theme-default-content:not(.custom)>h6:first-child{margin-top:-1.5rem;margin-bottom:1rem}.theme-default-content:not(.custom)>h1:first-child+.custom-block,.theme-default-content:not(.custom)>h1:first-child+p,.theme-default-content:not(.custom)>h1:first-child+pre,.theme-default-content:not(.custom)>h2:first-child+.custom-block,.theme-default-content:not(.custom)>h2:first-child+p,.theme-default-content:not(.custom)>h2:first-child+pre,.theme-default-content:not(.custom)>h3:first-child+.custom-block,.theme-default-content:not(.custom)>h3:first-child+p,.theme-default-content:not(.custom)>h3:first-child+pre,.theme-default-content:not(.custom)>h4:first-child+.custom-block,.theme-default-content:not(.custom)>h4:first-child+p,.theme-default-content:not(.custom)>h4:first-child+pre,.theme-default-content:not(.custom)>h5:first-child+.custom-block,.theme-default-content:not(.custom)>h5:first-child+p,.theme-default-content:not(.custom)>h5:first-child+pre,.theme-default-content:not(.custom)>h6:first-child+.custom-block,.theme-default-content:not(.custom)>h6:first-child+p,.theme-default-content:not(.custom)>h6:first-child+pre{margin-top:2rem}h1:focus .header-anchor,h1:hover .header-anchor,h2:focus .header-anchor,h2:hover .header-anchor,h3:focus .header-anchor,h3:hover .header-anchor,h4:focus .header-anchor,h4:hover .header-anchor,h5:focus .header-anchor,h5:hover .header-anchor,h6:focus .header-anchor,h6:hover .header-anchor{opacity:1}h1{font-size:2.2rem}h2{font-size:1.65rem;padding-bottom:.3rem;border-bottom:1px solid #eaecef}h3{font-size:1.35rem}a.header-anchor{font-size:.85em;float:left;margin-left:-.87em;padding-right:.23em;margin-top:.125em;opacity:0}a.header-anchor:focus,a.header-anchor:hover{text-decoration:none}.line-number,code,kbd{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}ol,p,ul{line-height:1.7}hr{border:0;border-top:1px solid #eaecef}table{border-collapse:collapse;margin:1rem 0;display:block;overflow-x:auto}tr{border-top:1px solid #dfe2e5}tr:nth-child(2n){background-color:#f6f8fa}td,th{border:1px solid #dfe2e5;padding:.6em 1em}.theme-container.sidebar-open .sidebar-mask{display:block}.theme-container.no-navbar .theme-default-content:not(.custom)>h1,.theme-container.no-navbar h2,.theme-container.no-navbar h3,.theme-container.no-navbar h4,.theme-container.no-navbar h5,.theme-container.no-navbar h6{margin-top:1.5rem;padding-top:0}.theme-container.no-navbar .sidebar{top:0}@media (min-width:720px){.theme-container.no-sidebar .sidebar{display:none}.theme-container.no-sidebar .page{padding-left:0}}@media (max-width:959px){.sidebar{font-size:15px;width:16.4rem}.page{padding-left:16.4rem}}@media (max-width:719px){.sidebar{top:0;padding-top:3.6rem;transform:translateX(-100%);transition:transform .2s ease}.page{padding-left:0}.theme-container.sidebar-open .sidebar{transform:translateX(0)}.theme-container.no-navbar .sidebar{padding-top:0}}@media (max-width:419px){h1{font-size:1.9rem}.theme-default-content div[class*=language-]{margin:.85rem -1.5rem;border-radius:0}}#nprogress{pointer-events:none}#nprogress .bar{background:#3eaf7c;position:fixed;z-index:1031;top:0;left:0;width:100%;height:2px}#nprogress .peg{display:block;position:absolute;right:0;width:100px;height:100%;box-shadow:0 0 10px #3eaf7c,0 0 5px #3eaf7c;opacity:1;transform:rotate(3deg) translateY(-4px)}#nprogress .spinner{display:block;position:fixed;z-index:1031;top:15px;right:15px}#nprogress .spinner-icon{width:18px;height:18px;box-sizing:border-box;border-color:#3eaf7c transparent transparent #3eaf7c;border-style:solid;border-width:2px;border-radius:50%;-webkit-animation:nprogress-spinner .4s linear infinite;animation:nprogress-spinner .4s linear infinite}.nprogress-custom-parent{overflow:hidden;position:relative}.nprogress-custom-parent #nprogress .bar,.nprogress-custom-parent #nprogress .spinner{position:absolute}@-webkit-keyframes nprogress-spinner{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}@keyframes nprogress-spinner{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.go-to-top[data-v-5fd4ef0c]{cursor:pointer;position:fixed;bottom:2rem;right:2.5rem;width:2rem;color:#3eaf7c;z-index:1}.go-to-top[data-v-5fd4ef0c]:hover{color:#72cda4}@media (max-width:959px){.go-to-top[data-v-5fd4ef0c]{display:none}}.fade-enter-active[data-v-5fd4ef0c],.fade-leave-active[data-v-5fd4ef0c]{transition:opacity .3s}.fade-enter[data-v-5fd4ef0c],.fade-leave-to[data-v-5fd4ef0c]{opacity:0}@font-face{font-family:octicons-link;src:url(data:font/woff;charset=utf-8;base64,d09GRgABAAAAAAZwABAAAAAACFQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABEU0lHAAAGaAAAAAgAAAAIAAAAAUdTVUIAAAZcAAAACgAAAAoAAQAAT1MvMgAAAyQAAABJAAAAYFYEU3RjbWFwAAADcAAAAEUAAACAAJThvmN2dCAAAATkAAAABAAAAAQAAAAAZnBnbQAAA7gAAACyAAABCUM+8IhnYXNwAAAGTAAAABAAAAAQABoAI2dseWYAAAFsAAABPAAAAZwcEq9taGVhZAAAAsgAAAA0AAAANgh4a91oaGVhAAADCAAAABoAAAAkCA8DRGhtdHgAAAL8AAAADAAAAAwGAACfbG9jYQAAAsAAAAAIAAAACABiATBtYXhwAAACqAAAABgAAAAgAA8ASm5hbWUAAAToAAABQgAAAlXu73sOcG9zdAAABiwAAAAeAAAAME3QpOBwcmVwAAAEbAAAAHYAAAB/aFGpk3jaTY6xa8JAGMW/O62BDi0tJLYQincXEypYIiGJjSgHniQ6umTsUEyLm5BV6NDBP8Tpts6F0v+k/0an2i+itHDw3v2+9+DBKTzsJNnWJNTgHEy4BgG3EMI9DCEDOGEXzDADU5hBKMIgNPZqoD3SilVaXZCER3/I7AtxEJLtzzuZfI+VVkprxTlXShWKb3TBecG11rwoNlmmn1P2WYcJczl32etSpKnziC7lQyWe1smVPy/Lt7Kc+0vWY/gAgIIEqAN9we0pwKXreiMasxvabDQMM4riO+qxM2ogwDGOZTXxwxDiycQIcoYFBLj5K3EIaSctAq2kTYiw+ymhce7vwM9jSqO8JyVd5RH9gyTt2+J/yUmYlIR0s04n6+7Vm1ozezUeLEaUjhaDSuXHwVRgvLJn1tQ7xiuVv/ocTRF42mNgZGBgYGbwZOBiAAFGJBIMAAizAFoAAABiAGIAznjaY2BkYGAA4in8zwXi+W2+MjCzMIDApSwvXzC97Z4Ig8N/BxYGZgcgl52BCSQKAA3jCV8CAABfAAAAAAQAAEB42mNgZGBg4f3vACQZQABIMjKgAmYAKEgBXgAAeNpjYGY6wTiBgZWBg2kmUxoDA4MPhGZMYzBi1AHygVLYQUCaawqDA4PChxhmh/8ODDEsvAwHgMKMIDnGL0x7gJQCAwMAJd4MFwAAAHjaY2BgYGaA4DAGRgYQkAHyGMF8NgYrIM3JIAGVYYDT+AEjAwuDFpBmA9KMDEwMCh9i/v8H8sH0/4dQc1iAmAkALaUKLgAAAHjaTY9LDsIgEIbtgqHUPpDi3gPoBVyRTmTddOmqTXThEXqrob2gQ1FjwpDvfwCBdmdXC5AVKFu3e5MfNFJ29KTQT48Ob9/lqYwOGZxeUelN2U2R6+cArgtCJpauW7UQBqnFkUsjAY/kOU1cP+DAgvxwn1chZDwUbd6CFimGXwzwF6tPbFIcjEl+vvmM/byA48e6tWrKArm4ZJlCbdsrxksL1AwWn/yBSJKpYbq8AXaaTb8AAHja28jAwOC00ZrBeQNDQOWO//sdBBgYGRiYWYAEELEwMTE4uzo5Zzo5b2BxdnFOcALxNjA6b2ByTswC8jYwg0VlNuoCTWAMqNzMzsoK1rEhNqByEyerg5PMJlYuVueETKcd/89uBpnpvIEVomeHLoMsAAe1Id4AAAAAAAB42oWQT07CQBTGv0JBhagk7HQzKxca2sJCE1hDt4QF+9JOS0nbaaYDCQfwCJ7Au3AHj+LO13FMmm6cl7785vven0kBjHCBhfpYuNa5Ph1c0e2Xu3jEvWG7UdPDLZ4N92nOm+EBXuAbHmIMSRMs+4aUEd4Nd3CHD8NdvOLTsA2GL8M9PODbcL+hD7C1xoaHeLJSEao0FEW14ckxC+TU8TxvsY6X0eLPmRhry2WVioLpkrbp84LLQPGI7c6sOiUzpWIWS5GzlSgUzzLBSikOPFTOXqly7rqx0Z1Q5BAIoZBSFihQYQOOBEdkCOgXTOHA07HAGjGWiIjaPZNW13/+lm6S9FT7rLHFJ6fQbkATOG1j2OFMucKJJsxIVfQORl+9Jyda6Sl1dUYhSCm1dyClfoeDve4qMYdLEbfqHf3O/AdDumsjAAB42mNgYoAAZQYjBmyAGYQZmdhL8zLdDEydARfoAqIAAAABAAMABwAKABMAB///AA8AAQAAAAAAAAAAAAAAAAABAAAAAA==) format("woff")}.markdown-body .octicon{display:inline-block;fill:currentColor;vertical-align:text-bottom}.markdown-body .anchor{float:left;line-height:1;margin-left:-20px;padding-right:4px}.markdown-body .anchor:focus{outline:none}.markdown-body h1 .octicon-link,.markdown-body h2 .octicon-link,.markdown-body h3 .octicon-link,.markdown-body h4 .octicon-link,.markdown-body h5 .octicon-link,.markdown-body h6 .octicon-link{color:#1b1f23;vertical-align:middle;visibility:hidden}.markdown-body h1:hover .anchor,.markdown-body h2:hover .anchor,.markdown-body h3:hover .anchor,.markdown-body h4:hover .anchor,.markdown-body h5:hover .anchor,.markdown-body h6:hover .anchor{text-decoration:none}.markdown-body h1:hover .anchor .octicon-link,.markdown-body h2:hover .anchor .octicon-link,.markdown-body h3:hover .anchor .octicon-link,.markdown-body h4:hover .anchor .octicon-link,.markdown-body h5:hover .anchor .octicon-link,.markdown-body h6:hover .anchor .octicon-link{visibility:visible}.markdown-body{-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%;color:#24292e;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Helvetica,Arial,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol;font-size:16px;line-height:1.5;word-wrap:break-word}.markdown-body .pl-c{color:#6a737d}.markdown-body .pl-c1,.markdown-body .pl-s .pl-v{color:#005cc5}.markdown-body .pl-e,.markdown-body .pl-en{color:#6f42c1}.markdown-body .pl-s .pl-s1,.markdown-body .pl-smi{color:#24292e}.markdown-body .pl-ent{color:#22863a}.markdown-body .pl-k{color:#d73a49}.markdown-body .pl-pds,.markdown-body .pl-s,.markdown-body .pl-s .pl-pse .pl-s1,.markdown-body .pl-sr,.markdown-body .pl-sr .pl-cce,.markdown-body .pl-sr .pl-sra,.markdown-body .pl-sr .pl-sre{color:#032f62}.markdown-body .pl-smw,.markdown-body .pl-v{color:#e36209}.markdown-body .pl-bu{color:#b31d28}.markdown-body .pl-ii{background-color:#b31d28;color:#fafbfc}.markdown-body .pl-c2{background-color:#d73a49;color:#fafbfc}.markdown-body .pl-c2:before{content:"^M"}.markdown-body .pl-sr .pl-cce{color:#22863a;font-weight:700}.markdown-body .pl-ml{color:#735c0f}.markdown-body .pl-mh,.markdown-body .pl-mh .pl-en,.markdown-body .pl-ms{color:#005cc5;font-weight:700}.markdown-body .pl-mi{color:#24292e;font-style:italic}.markdown-body .pl-mb{color:#24292e;font-weight:700}.markdown-body .pl-md{background-color:#ffeef0;color:#b31d28}.markdown-body .pl-mi1{background-color:#f0fff4;color:#22863a}.markdown-body .pl-mc{background-color:#ffebda;color:#e36209}.markdown-body .pl-mi2{background-color:#005cc5;color:#f6f8fa}.markdown-body .pl-mdr{color:#6f42c1;font-weight:700}.markdown-body .pl-ba{color:#586069}.markdown-body .pl-sg{color:#959da5}.markdown-body .pl-corl{color:#032f62;text-decoration:underline}.markdown-body details{display:block}.markdown-body summary{display:list-item}.markdown-body a{background-color:transparent}.markdown-body a:active,.markdown-body a:hover{outline-width:0}.markdown-body strong{font-weight:inherit;font-weight:bolder}.markdown-body h1{margin:.67em 0}.markdown-body img{border-style:none}.markdown-body code,.markdown-body kbd,.markdown-body pre{font-family:monospace,monospace;font-size:1em}.markdown-body hr{box-sizing:content-box;overflow:visible}.markdown-body input{font:inherit;margin:0;overflow:visible}.markdown-body [type=checkbox]{box-sizing:border-box;padding:0}.markdown-body *{box-sizing:border-box}.markdown-body input{font-family:inherit;font-size:inherit;line-height:inherit}.markdown-body a{color:#0366d6;text-decoration:none}.markdown-body a:hover{text-decoration:underline}.markdown-body strong{font-weight:600}.markdown-body hr{background:transparent;border-bottom:1px solid #dfe2e5;height:0;margin:15px 0;overflow:hidden}.markdown-body hr:after,.markdown-body hr:before{content:"";display:table}.markdown-body hr:after{clear:both}.markdown-body table{border-collapse:collapse;border-spacing:0}.markdown-body td,.markdown-body th{padding:0}.markdown-body details summary{cursor:pointer}.markdown-body h1,.markdown-body h2,.markdown-body h3,.markdown-body h4,.markdown-body h5,.markdown-body h6{margin-bottom:0;margin-top:0}.markdown-body h1{font-size:32px}.markdown-body h1,.markdown-body h2{font-weight:600}.markdown-body h2{font-size:24px}.markdown-body h3{font-size:20px}.markdown-body h3,.markdown-body h4{font-weight:600}.markdown-body h4{font-size:16px}.markdown-body h5{font-size:14px}.markdown-body h5,.markdown-body h6{font-weight:600}.markdown-body h6{font-size:12px}.markdown-body p{margin-bottom:10px;margin-top:0}.markdown-body blockquote{margin:0}.markdown-body ol,.markdown-body ul{margin-bottom:0;margin-top:0;padding-left:0}.markdown-body ol ol,.markdown-body ul ol{list-style-type:lower-roman}.markdown-body ol ol ol,.markdown-body ol ul ol,.markdown-body ul ol ol,.markdown-body ul ul ol{list-style-type:lower-alpha}.markdown-body dd{margin-left:0}.markdown-body code,.markdown-body pre{font-family:SFMono-Regular,Consolas,Liberation Mono,Menlo,Courier,monospace;font-size:12px}.markdown-body pre{margin-bottom:0;margin-top:0}.markdown-body input::-webkit-inner-spin-button,.markdown-body input::-webkit-outer-spin-button{-webkit-appearance:none;appearance:none;margin:0}.markdown-body .border{border:1px solid #e1e4e8!important}.markdown-body .border-0{border:0!important}.markdown-body .border-bottom{border-bottom:1px solid #e1e4e8!important}.markdown-body .rounded-1{border-radius:3px!important}.markdown-body .bg-white{background-color:#fff!important}.markdown-body .bg-gray-light{background-color:#fafbfc!important}.markdown-body .text-gray-light{color:#6a737d!important}.markdown-body .mb-0{margin-bottom:0!important}.markdown-body .my-2{margin-bottom:8px!important;margin-top:8px!important}.markdown-body .py-0{padding-bottom:0!important;padding-top:0!important}.markdown-body .py-2{padding-bottom:8px!important;padding-top:8px!important}.markdown-body .pl-3,.markdown-body .px-3{padding-left:16px!important}.markdown-body .px-3{padding-right:16px!important}.markdown-body .f6{font-size:12px!important}.markdown-body .lh-condensed{line-height:1.25!important}.markdown-body .text-bold{font-weight:600!important}.markdown-body:after,.markdown-body:before{content:"";display:table}.markdown-body:after{clear:both}.markdown-body>:first-child{margin-top:0!important}.markdown-body>:last-child{margin-bottom:0!important}.markdown-body a:not([href]){color:inherit;text-decoration:none}.markdown-body blockquote,.markdown-body dl,.markdown-body ol,.markdown-body p,.markdown-body pre,.markdown-body table,.markdown-body ul{margin-bottom:16px;margin-top:0}.markdown-body hr{background-color:#e1e4e8;border:0;height:.25em;margin:24px 0;padding:0}.markdown-body blockquote{border-left:.25em solid #dfe2e5;color:#6a737d;padding:0 1em}.markdown-body blockquote>:first-child{margin-top:0}.markdown-body blockquote>:last-child{margin-bottom:0}.markdown-body kbd{border:1px solid #c6cbd1;border-bottom-color:#959da5;box-shadow:inset 0 -1px 0 #959da5;font-size:11px}.markdown-body h1,.markdown-body h2,.markdown-body h3,.markdown-body h4,.markdown-body h5,.markdown-body h6{font-weight:600;line-height:1.25;margin-bottom:16px;margin-top:24px}.markdown-body h1{font-size:2em}.markdown-body h1,.markdown-body h2{border-bottom:1px solid #eaecef;padding-bottom:.3em}.markdown-body h2{font-size:1.5em}.markdown-body h3{font-size:1.25em}.markdown-body h4{font-size:1em}.markdown-body h5{font-size:.875em}.markdown-body h6{color:#6a737d;font-size:.85em}.markdown-body ol,.markdown-body ul{padding-left:2em}.markdown-body ol ol,.markdown-body ol ul,.markdown-body ul ol,.markdown-body ul ul{margin-bottom:0;margin-top:0}.markdown-body li{word-wrap:break-all}.markdown-body li>p{margin-top:16px}.markdown-body li+li{margin-top:.25em}.markdown-body dl{padding:0}.markdown-body dl dt{font-size:1em;font-style:italic;font-weight:600;margin-top:16px;padding:0}.markdown-body dl dd{margin-bottom:16px;padding:0 16px}.markdown-body table{display:block;overflow:auto;width:100%}.markdown-body table th{font-weight:600}.markdown-body table td,.markdown-body table th{border:1px solid #dfe2e5;padding:6px 13px}.markdown-body table tr{background-color:#fff;border-top:1px solid #c6cbd1}.markdown-body table tr:nth-child(2n){background-color:#f6f8fa}.markdown-body img{background-color:#fff;box-sizing:content-box;max-width:100%}.markdown-body img[align=right]{padding-left:20px}.markdown-body img[align=left]{padding-right:20px}.markdown-body code{background-color:rgba(27,31,35,.05);border-radius:3px;font-size:85%;margin:0;padding:.2em .4em}.markdown-body pre{word-wrap:normal}.markdown-body pre>code{background:transparent;border:0;font-size:100%;margin:0;padding:0;white-space:pre;word-break:normal}.markdown-body .highlight{margin-bottom:16px}.markdown-body .highlight pre{margin-bottom:0;word-break:normal}.markdown-body .highlight pre,.markdown-body pre{background-color:#f6f8fa;border-radius:3px;font-size:85%;line-height:1.45;overflow:auto;padding:16px}.markdown-body pre code{background-color:transparent;border:0;display:inline;line-height:inherit;margin:0;max-width:auto;overflow:visible;padding:0;word-wrap:normal}.markdown-body .commit-tease-sha{color:#444d56;display:inline-block;font-family:SFMono-Regular,Consolas,Liberation Mono,Menlo,Courier,monospace;font-size:90%}.markdown-body .blob-wrapper{border-bottom-left-radius:3px;border-bottom-right-radius:3px;overflow-x:auto;overflow-y:hidden}.markdown-body .blob-wrapper-embedded{max-height:240px;overflow-y:auto}.markdown-body .blob-num{-moz-user-select:none;-ms-user-select:none;-webkit-user-select:none;color:rgba(27,31,35,.3);cursor:pointer;font-family:SFMono-Regular,Consolas,Liberation Mono,Menlo,Courier,monospace;font-size:12px;line-height:20px;min-width:50px;padding-left:10px;padding-right:10px;text-align:right;user-select:none;vertical-align:top;white-space:nowrap;width:1%}.markdown-body .blob-num:hover{color:rgba(27,31,35,.6)}.markdown-body .blob-num:before{content:attr(data-line-number)}.markdown-body .blob-code{line-height:20px;padding-left:10px;padding-right:10px;position:relative;vertical-align:top}.markdown-body .blob-code-inner{color:#24292e;font-family:SFMono-Regular,Consolas,Liberation Mono,Menlo,Courier,monospace;font-size:12px;overflow:visible;white-space:pre;word-wrap:normal}.markdown-body .pl-token.active,.markdown-body .pl-token:hover{background:#ffea7f;cursor:pointer}.markdown-body kbd{background-color:#fafbfc;border:1px solid #d1d5da;border-bottom-color:#c6cbd1;border-radius:3px;box-shadow:inset 0 -1px 0 #c6cbd1;color:#444d56;display:inline-block;font:11px SFMono-Regular,Consolas,Liberation Mono,Menlo,Courier,monospace;line-height:10px;padding:3px 5px;vertical-align:middle}.markdown-body :checked+.radio-label{border-color:#0366d6;position:relative;z-index:1}.markdown-body .tab-size[data-tab-size="1"]{-moz-tab-size:1;-o-tab-size:1;tab-size:1}.markdown-body .tab-size[data-tab-size="2"]{-moz-tab-size:2;-o-tab-size:2;tab-size:2}.markdown-body .tab-size[data-tab-size="3"]{-moz-tab-size:3;-o-tab-size:3;tab-size:3}.markdown-body .tab-size[data-tab-size="4"]{-moz-tab-size:4;-o-tab-size:4;tab-size:4}.markdown-body .tab-size[data-tab-size="5"]{-moz-tab-size:5;-o-tab-size:5;tab-size:5}.markdown-body .tab-size[data-tab-size="6"]{-moz-tab-size:6;-o-tab-size:6;tab-size:6}.markdown-body .tab-size[data-tab-size="7"]{-moz-tab-size:7;-o-tab-size:7;tab-size:7}.markdown-body .tab-size[data-tab-size="8"]{-moz-tab-size:8;-o-tab-size:8;tab-size:8}.markdown-body .tab-size[data-tab-size="9"]{-moz-tab-size:9;-o-tab-size:9;tab-size:9}.markdown-body .tab-size[data-tab-size="10"]{-moz-tab-size:10;-o-tab-size:10;tab-size:10}.markdown-body .tab-size[data-tab-size="11"]{-moz-tab-size:11;-o-tab-size:11;tab-size:11}.markdown-body .tab-size[data-tab-size="12"]{-moz-tab-size:12;-o-tab-size:12;tab-size:12}.markdown-body .task-list-item{list-style-type:none}.markdown-body .task-list-item+.task-list-item{margin-top:3px}.markdown-body .task-list-item input{margin:0 .2em .25em -1.6em;vertical-align:middle}.markdown-body hr{border-bottom-color:#eee}.markdown-body .pl-0{padding-left:0!important}.markdown-body .pl-1{padding-left:4px!important}.markdown-body .pl-2{padding-left:8px!important}.markdown-body .pl-3{padding-left:16px!important}.markdown-body .pl-4{padding-left:24px!important}.markdown-body .pl-5{padding-left:32px!important}.markdown-body .pl-6{padding-left:40px!important}.markdown-body .pl-7{padding-left:48px!important}.markdown-body .pl-8{padding-left:64px!important}.markdown-body .pl-9{padding-left:80px!important}.markdown-body .pl-10{padding-left:96px!important}.markdown-body .pl-11{padding-left:112px!important}.markdown-body .pl-12{padding-left:128px!important}.clearfix:after,.vssue .vssue-new-comment .vssue-new-comment-footer:after{display:block;clear:both;content:""}.vssue{width:100%;color:#2c3e50;font-size:16px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Helvetica,Arial,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol;padding:10px}.vssue .vssue-button{outline:none;cursor:pointer;padding:10px 20px;font-size:1.05;font-weight:700;color:#3eaf7c;background-color:transparent;border:2px solid #3eaf7c;border-radius:10px}.vssue .vssue-button:disabled{cursor:not-allowed;color:#eaecef;border-color:#eaecef}.vssue .vssue-button:disabled .vssue-icon{fill:#eaecef}.vssue .vssue-button:not(:disabled).vssue-button-default{color:#a3aab1;border-color:#a3aab1}.vssue .vssue-button:not(:disabled).vssue-button-primary{color:#3eaf7c;border-color:#3eaf7c}.vssue .vssue-icon{width:1em;height:1em;vertical-align:-.15em;fill:#3eaf7c;overflow:hidden}.vssue .vssue-icon-loading{-webkit-animation:vssue-keyframe-rotation 1s linear infinite;animation:vssue-keyframe-rotation 1s linear infinite}@-webkit-keyframes vssue-keyframe-rotation{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}@keyframes vssue-keyframe-rotation{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.vssue .fade-appear-active,.vssue .fade-enter-active{transition:all .3s ease}.vssue .fade-leave-active{transition:all .3s cubic-bezier(1,.5,.8,1)}.vssue .fade-appear,.vssue .fade-enter,.vssue .fade-leave-to{opacity:0}.vssue .vssue-notice{position:relative;z-index:100;transform:translateY(-11px)}.vssue .vssue-notice .vssue-alert{position:absolute;z-index:101;cursor:pointer;top:0;padding:10px 20px;width:100%;color:#3eaf7c;border:2px solid #c3ead8;border-radius:5px;background-color:#f5fbf8}.vssue .vssue-notice .vssue-progress{position:absolute;top:0;left:0;height:2px;background-color:#3eaf7c}.vssue .vssue-status{text-align:center;padding-top:20px;padding-bottom:10px;color:#3eaf7c}.vssue .vssue-status .vssue-icon{font-size:1.4em}.vssue .vssue-status .vssue-status-info{margin-top:10px;margin-bottom:10px}.vssue .vssue-header{padding-bottom:10px;border-bottom:1px solid #eaecef;margin-bottom:10px;overflow:hidden}.vssue .vssue-header .vssue-header-powered-by{float:right}.vssue .vssue-new-comment{border-bottom:1px solid #eaecef;margin-top:10px;margin-bottom:10px}.vssue .vssue-new-comment .vssue-comment-avatar{float:left;width:50px;height:50px}.vssue .vssue-new-comment .vssue-comment-avatar img{width:50px;height:50px}.vssue .vssue-new-comment .vssue-comment-avatar .vssue-icon{cursor:pointer;padding:5px;font-size:50px;fill:#757f8a}.vssue .vssue-new-comment .vssue-new-comment-body{position:relative}@media screen and (max-width:719px){.vssue .vssue-new-comment .vssue-new-comment-body{margin-left:60px}}@media screen and (min-width:720px){.vssue .vssue-new-comment .vssue-new-comment-body{margin-left:70px}}.vssue .vssue-new-comment .vssue-new-comment-body .vssue-new-comment-loading{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.vssue .vssue-new-comment .vssue-new-comment-footer{margin-top:10px;margin-bottom:10px}.vssue .vssue-new-comment .vssue-new-comment-footer .vssue-current-user{color:#a3aab1}.vssue .vssue-new-comment .vssue-new-comment-footer .vssue-current-user .vssue-logout{cursor:pointer;text-decoration:underline;color:#a3aab1;font-weight:400}@media screen and (max-width:719px){.vssue .vssue-new-comment .vssue-new-comment-footer{text-align:center}.vssue .vssue-new-comment .vssue-new-comment-footer .vssue-new-comment-operations{margin-top:10px}}@media screen and (min-width:720px){.vssue .vssue-new-comment .vssue-new-comment-footer{margin-left:70px;text-align:right}.vssue .vssue-new-comment .vssue-new-comment-footer .vssue-current-user{float:left}}.vssue .vssue-new-comment .vssue-new-comment-input{resize:none;outline:none;width:100%;padding:15px;font-size:16px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Helvetica,Arial,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol;background-color:#f5fbf8;border:1px solid #eaecef;border-radius:5px}.vssue .vssue-new-comment .vssue-new-comment-input:disabled{cursor:not-allowed;background-color:#f0f2f4}.vssue .vssue-new-comment .vssue-new-comment-input:focus{background-color:#fff;border-color:#9adbbe;box-shadow:0 0 1px 1px #9adbbe}.vssue .vssue-new-comment .vssue-new-comment-input::-moz-placeholder{color:#a3aab1}.vssue .vssue-new-comment .vssue-new-comment-input:-ms-input-placeholder{color:#a3aab1}.vssue .vssue-new-comment .vssue-new-comment-input::placeholder{color:#a3aab1}.vssue .vssue-comments .vssue-comment{margin:15px 0}.vssue .vssue-comments .vssue-comment.vssue-comment-edit-mode .vssue-comment-main{border-color:#9adbbe;box-shadow:0 0 1px 1px #9adbbe}.vssue .vssue-comments .vssue-comment.vssue-comment-disabled{pointer-events:none}.vssue .vssue-comments .vssue-comment.vssue-comment-disabled .vssue-comment-body{background-color:#f9f9fa}.vssue .vssue-comments .vssue-comment .vssue-comment-avatar{float:left;width:50px;height:50px}.vssue .vssue-comments .vssue-comment .vssue-comment-avatar img{width:50px;height:50px}@media screen and (max-width:719px){.vssue .vssue-comments .vssue-comment .vssue-comment-body{margin-left:60px}}@media screen and (min-width:720px){.vssue .vssue-comments .vssue-comment .vssue-comment-body{margin-left:70px}}.vssue .vssue-comments .vssue-comment .vssue-comment-header{padding:10px 15px;overflow:hidden;border-top-left-radius:5px;border-top-right-radius:5px;border:1px solid #eaecef;border-bottom:none}.vssue .vssue-comments .vssue-comment .vssue-comment-header .vssue-comment-created-at{float:right;cursor:default;color:#a3aab1}.vssue .vssue-comments .vssue-comment .vssue-comment-main{padding:15px;border:1px solid #eaecef}.vssue .vssue-comments .vssue-comment .vssue-comment-main .vssue-edit-comment-input{resize:none;outline:none;border:none;width:100%;background:transparent}.vssue .vssue-comments .vssue-comment .vssue-comment-footer{padding:10px 15px;overflow:hidden;border-bottom-left-radius:5px;border-bottom-right-radius:5px;border:1px solid #eaecef;border-top:none}.vssue .vssue-comments .vssue-comment .vssue-comment-footer .vssue-comment-hint{cursor:default;color:#a3aab1}.vssue .vssue-comments .vssue-comment .vssue-comment-footer .vssue-comment-reactions .vssue-comment-reaction{cursor:pointer;display:inline-block;margin-right:8px;color:#3eaf7c}.vssue .vssue-comments .vssue-comment .vssue-comment-footer .vssue-comment-operations{float:right;color:#3eaf7c}.vssue .vssue-comments .vssue-comment .vssue-comment-footer .vssue-comment-operations .vssue-comment-operation{cursor:pointer;margin-left:8px}.vssue .vssue-comments .vssue-comment .vssue-comment-footer .vssue-comment-operations .vssue-comment-operation.vssue-comment-operation-muted{color:#a3aab1}.vssue .vssue-comments .vssue-comment .vssue-comment-footer .vssue-comment-operations .vssue-comment-operation.vssue-comment-operation-muted .vssue-icon{fill:#a3aab1}.vssue .vssue-pagination{cursor:default;display:flex;padding:5px;color:#a3aab1}@media screen and (max-width:719px){.vssue .vssue-pagination{flex-direction:column;justify-content:center;text-align:center}}.vssue .vssue-pagination .vssue-pagination-loading,.vssue .vssue-pagination .vssue-pagination-page,.vssue .vssue-pagination .vssue-pagination-per-page{flex:1}@media screen and (max-width:719px){.vssue .vssue-pagination .vssue-pagination-page{margin-top:10px}}@media screen and (min-width:720px){.vssue .vssue-pagination .vssue-pagination-page{text-align:right}}.vssue .vssue-pagination .vssue-pagination-select{outline:none;-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid #9adbbe;padding-left:.2rem;padding-right:1rem;background-color:transparent;background-image:url("data:image/svg+xml;charset=utf8,%3Csvg class='icon' viewBox='0 0 1024 1024' xmlns='http://www.w3.org/2000/svg'%3E%3Cdefs%3E%3Cstyle/%3E%3C/defs%3E%3Cpath d='M676.395 432.896a21.333 21.333 0 0 0-30.166 0L511.061 568.021 377.728 434.645a21.333 21.333 0 0 0-30.165 30.166l148.394 148.48a21.419 21.419 0 0 0 30.208 0l150.23-150.187a21.333 21.333 0 0 0 0-30.208'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:100%}.vssue .vssue-pagination .vssue-pagination-select:disabled{cursor:not-allowed}.vssue .vssue-pagination .vssue-pagination-select:focus{background-color:#fff;box-shadow:0 0 .2px .2px #9adbbe}.vssue .vssue-pagination .vssue-pagination-link{display:inline-block;min-width:1em;text-align:center}.vssue .vssue-pagination .vssue-pagination-link.disabled{pointer-events:none}.vssue .vssue-pagination .vssue-pagination-link:not(.disabled){color:#3eaf7c;font-weight:500;cursor:pointer}.vssue,.vssue *{box-sizing:border-box}.vssue :not(.vssue-comment-content) a{cursor:pointer;font-weight:500;color:#3eaf7c;text-decoration:none}.vssue :not(.vssue-comment-content) hr{display:block;height:1px;border:0;border-top:1px solid #eaecef;margin:1.2rem 0;padding:0}.social-share{position:relative;box-sizing:border-box}.social-share-list{list-style:none;padding:0;margin:0;line-height:1}.social-share-network{position:relative;display:inline-block;vertical-align:middle}.social-share-trigger{color:#6a8bad}.social-share-btn{position:relative;width:56px;height:56px;padding:0;border-radius:50%;font-size:32px;font-family:inherit;text-align:center;background:none;border:none;box-shadow:none;-webkit-appearance:none;-moz-appearance:none;appearance:none;cursor:pointer;-webkit-tap-highlight-color:rgba(0,0,0,0);transition:all .3s ease-out}.social-share-btn:not(.social-share-trigger){color:#3eaf7c}.social-share-btn:not(.social-share-trigger):hover{background-color:hsla(0,0%,73.7%,.15)}.social-share-icon-svg svg{width:1em!important;height:1em!important;fill:currentColor!important;vertical-align:-.15em!important;overflow:hidden!important}.social-share-icon-img{position:absolute;top:50%;left:50%;display:block;width:1em;height:1em;margin:-.5em 0 0 -.5em;background-repeat:no-repeat;background-position:50%;background-size:contain}.social-share-global{position:fixed;right:0;bottom:50%;z-index:99999;background-color:#fff;border:1px solid #efefef;border-right:none;border-radius:8px 0 0 8px;transform:translateY(50%);transition:all .3s ease-out;box-shadow:-2px 1px 6px rgba(0,0,0,.08)}.social-share-global .social-share-network{display:block}.social-share-global .social-share-btn{width:60px;height:60px;border-radius:5px;font-size:36px}.social-share-overlay{position:fixed;top:0;left:0;right:0;bottom:0;z-index:99999;display:flex;justify-content:center;align-items:center;background-color:rgba(0,0,0,.5);transition:all .3s ease-out;opacity:0}.social-share-overlay.show{opacity:1}.social-share-qrcode{display:block;border-radius:4px;overflow:hidden;box-shadow:0 0 4px rgba(0,0,0,.08)}@media screen and (max-width:719px){.social-share-btn{width:40px;height:40px;font-size:28px}.social-share-global{bottom:15%;border-radius:5px 0 0 5px;transform:translate(0);box-shadow:-1px 1px 3px rgba(0,0,0,.03)}.social-share-global .social-share-btn{width:40px;height:40px;font-size:28px;border-radius:3px}}.vuepress-flowchart{overflow:scroll;text-align:center;font-size:0;min-height:200px;display:flex;justify-content:center;align-items:center;transition:all 1s;padding:10px}.vuepress-flowchart>svg{max-width:100%;height:auto}.vuepress-flowchart.loading{background-color:#f3f6f8}.vuepress-flowchart.vue .end-element,.vuepress-flowchart.vue .operation-element,.vuepress-flowchart.vue .parallel-element,.vuepress-flowchart.vue .start-element{rx:5px;ry:5px}.vuepress-flowchart-loading-icon{width:40px;height:40px;fill:#3eaf7c}.icon.outbound{color:#aaa;display:inline-block;vertical-align:middle;position:relative;top:-1px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.home{padding:3.6rem 2rem 0;max-width:960px;margin:0 auto;display:block}.home .hero{text-align:center}.home .hero img{max-width:100%;max-height:280px;display:block;margin:3rem auto 1.5rem}.home .hero h1{font-size:3rem}.home .hero .action,.home .hero .description,.home .hero h1{margin:1.8rem auto}.home .hero .description{max-width:35rem;font-size:1.6rem;line-height:1.3;color:#6a8bad}.home .hero .action-button{display:inline-block;font-size:1.2rem;color:#fff;background-color:#3eaf7c;padding:.8rem 1.6rem;border-radius:4px;transition:background-color .1s ease;box-sizing:border-box;border-bottom:1px solid #389d70}.home .hero .action-button:hover{background-color:#4abf8a}.home .features{border-top:1px solid #eaecef;padding:1.2rem 0;margin-top:2.5rem;display:flex;flex-wrap:wrap;align-items:flex-start;align-content:stretch;justify-content:space-between}.home .feature{flex-grow:1;flex-basis:30%;max-width:30%}.home .feature h2{font-size:1.4rem;font-weight:500;border-bottom:none;padding-bottom:0;color:#3a5169}.home .feature p{color:#4e6e8e}.home .footer{padding:2.5rem;border-top:1px solid #eaecef;text-align:center;color:#4e6e8e}@media (max-width:719px){.home .features{flex-direction:column}.home .feature{max-width:100%;padding:0 2.5rem}}@media (max-width:419px){.home{padding-left:1.5rem;padding-right:1.5rem}.home .hero img{max-height:210px;margin:2rem auto 1.2rem}.home .hero h1{font-size:2rem}.home .hero .action,.home .hero .description,.home .hero h1{margin:1.2rem auto}.home .hero .description{font-size:1.2rem}.home .hero .action-button{font-size:1rem;padding:.6rem 1.2rem}.home .feature h2{font-size:1.25rem}}.search-box{display:inline-block;position:relative;margin-right:1rem}.search-box input{cursor:text;width:10rem;height:2rem;color:#4e6e8e;display:inline-block;border:1px solid #cfd4db;border-radius:2rem;font-size:.9rem;line-height:2rem;padding:0 .5rem 0 2rem;outline:none;transition:all .2s ease;background:#fff url(/assets/img/search.83621669.svg) .6rem .5rem no-repeat;background-size:1rem}.search-box input:focus{cursor:auto;border-color:#3eaf7c}.search-box .suggestions{background:#fff;width:20rem;position:absolute;top:2rem;border:1px solid #cfd4db;border-radius:6px;padding:.4rem;list-style-type:none}.search-box .suggestions.align-right{right:0}.search-box .suggestion{line-height:1.4;padding:.4rem .6rem;border-radius:4px;cursor:pointer}.search-box .suggestion a{white-space:normal;color:#5d82a6}.search-box .suggestion a .page-title{font-weight:600}.search-box .suggestion a .header{font-size:.9em;margin-left:.25em}.search-box .suggestion.focused{background-color:#f3f4f5}.search-box .suggestion.focused a{color:#3eaf7c}@media (max-width:959px){.search-box input{cursor:pointer;width:0;border-color:transparent;position:relative}.search-box input:focus{cursor:text;left:0;width:10rem}}@media (-ms-high-contrast:none){.search-box input{height:2rem}}@media (max-width:959px) and (min-width:719px){.search-box .suggestions{left:0}}@media (max-width:719px){.search-box{margin-right:0}.search-box input{left:1rem}.search-box .suggestions{right:0}}@media (max-width:419px){.search-box .suggestions{width:calc(100vw - 4rem)}.search-box input:focus{width:8rem}}.sidebar-button{cursor:pointer;display:none;width:1.25rem;height:1.25rem;position:absolute;padding:.6rem;top:.6rem;left:1rem}.sidebar-button .icon{display:block;width:1.25rem;height:1.25rem}@media (max-width:719px){.sidebar-button{display:block}}.dropdown-enter,.dropdown-leave-to{height:0!important}.dropdown-wrapper{cursor:pointer}.dropdown-wrapper .dropdown-title,.dropdown-wrapper .mobile-dropdown-title{display:block;font-size:.9rem;font-family:inherit;cursor:inherit;padding:inherit;line-height:1.4rem;background:transparent;border:none;font-weight:500;color:#2c3e50}.dropdown-wrapper .dropdown-title:hover,.dropdown-wrapper .mobile-dropdown-title:hover{border-color:transparent}.dropdown-wrapper .dropdown-title .arrow,.dropdown-wrapper .mobile-dropdown-title .arrow{vertical-align:middle;margin-top:-1px;margin-left:.4rem}.dropdown-wrapper .mobile-dropdown-title{display:none;font-weight:600}.dropdown-wrapper .mobile-dropdown-title font-size inherit:hover{color:#3eaf7c}.dropdown-wrapper .nav-dropdown .dropdown-item{color:inherit;line-height:1.7rem}.dropdown-wrapper .nav-dropdown .dropdown-item h4{margin:.45rem 0 0;border-top:1px solid #eee;padding:1rem 1.5rem .45rem 1.25rem}.dropdown-wrapper .nav-dropdown .dropdown-item .dropdown-subitem-wrapper{padding:0;list-style:none}.dropdown-wrapper .nav-dropdown .dropdown-item .dropdown-subitem-wrapper .dropdown-subitem{font-size:.9em}.dropdown-wrapper .nav-dropdown .dropdown-item a{display:block;line-height:1.7rem;position:relative;border-bottom:none;font-weight:400;margin-bottom:0;padding:0 1.5rem 0 1.25rem}.dropdown-wrapper .nav-dropdown .dropdown-item a.router-link-active,.dropdown-wrapper .nav-dropdown .dropdown-item a:hover{color:#3eaf7c}.dropdown-wrapper .nav-dropdown .dropdown-item a.router-link-active:after{content:"";width:0;height:0;border-left:5px solid #3eaf7c;border-top:3px solid transparent;border-bottom:3px solid transparent;position:absolute;top:calc(50% - 2px);left:9px}.dropdown-wrapper .nav-dropdown .dropdown-item:first-child h4{margin-top:0;padding-top:0;border-top:0}@media (max-width:719px){.dropdown-wrapper.open .dropdown-title{margin-bottom:.5rem}.dropdown-wrapper .dropdown-title{display:none}.dropdown-wrapper .mobile-dropdown-title{display:block}.dropdown-wrapper .nav-dropdown{transition:height .1s ease-out;overflow:hidden}.dropdown-wrapper .nav-dropdown .dropdown-item h4{border-top:0;margin-top:0;padding-top:0}.dropdown-wrapper .nav-dropdown .dropdown-item>a,.dropdown-wrapper .nav-dropdown .dropdown-item h4{font-size:15px;line-height:2rem}.dropdown-wrapper .nav-dropdown .dropdown-item .dropdown-subitem{font-size:14px;padding-left:1rem}}@media (min-width:719px){.dropdown-wrapper{height:1.8rem}.dropdown-wrapper.open .nav-dropdown,.dropdown-wrapper:hover .nav-dropdown{display:block!important}.dropdown-wrapper.open:blur{display:none}.dropdown-wrapper .nav-dropdown{display:none;height:auto!important;box-sizing:border-box;max-height:calc(100vh - 2.7rem);overflow-y:auto;position:absolute;top:100%;right:0;background-color:#fff;padding:.6rem 0;border:1px solid;border-color:#ddd #ddd #ccc;text-align:left;border-radius:.25rem;white-space:nowrap;margin:0}}.nav-links{display:inline-block}.nav-links a{line-height:1.4rem;color:inherit}.nav-links a.router-link-active,.nav-links a:hover{color:#3eaf7c}.nav-links .nav-item{position:relative;display:inline-block;margin-left:1.5rem;line-height:2rem}.nav-links .nav-item:first-child{margin-left:0}.nav-links .repo-link{margin-left:1.5rem}@media (max-width:719px){.nav-links .nav-item,.nav-links .repo-link{margin-left:0}}@media (min-width:719px){.nav-links a.router-link-active,.nav-links a:hover{color:#2c3e50}.nav-item>a:not(.external).router-link-active,.nav-item>a:not(.external):hover{margin-bottom:-2px;border-bottom:2px solid #46bd87}}.navbar{padding:.7rem 1.5rem;line-height:2.2rem}.navbar a,.navbar img,.navbar span{display:inline-block}.navbar .logo{height:2.2rem;min-width:2.2rem;margin-right:.8rem;vertical-align:top}.navbar .site-name{font-size:1.3rem;font-weight:600;color:#2c3e50;position:relative}.navbar .links{padding-left:1.5rem;box-sizing:border-box;background-color:#fff;white-space:nowrap;font-size:.9rem;position:absolute;right:1.5rem;top:.7rem;display:flex}.navbar .links .search-box{flex:0 0 auto;vertical-align:top}@media (max-width:719px){.navbar{padding-left:4rem}.navbar .can-hide{display:none}.navbar .links{padding-left:1.5rem}.navbar .site-name{width:calc(100vw - 9.4rem);overflow:hidden;white-space:nowrap;text-overflow:ellipsis}}.page-edit{max-width:740px;margin:0 auto;padding:2rem 2.5rem}@media (max-width:959px){.page-edit{padding:2rem}}@media (max-width:419px){.page-edit{padding:1.5rem}}.page-edit{padding-top:1rem;padding-bottom:1rem;overflow:auto}.page-edit .edit-link{display:inline-block}.page-edit .edit-link a{color:#4e6e8e;margin-right:.25rem}.page-edit .last-updated{float:right;font-size:.9em}.page-edit .last-updated .prefix{font-weight:500;color:#4e6e8e}.page-edit .last-updated .time{font-weight:400;color:#767676}@media (max-width:719px){.page-edit .edit-link{margin-bottom:.5rem}.page-edit .last-updated{font-size:.8em;float:none;text-align:left}}.page-nav{max-width:740px;margin:0 auto;padding:2rem 2.5rem}@media (max-width:959px){.page-nav{padding:2rem}}@media (max-width:419px){.page-nav{padding:1.5rem}}.page-nav{padding-top:1rem;padding-bottom:0}.page-nav .inner{min-height:2rem;margin-top:0;border-top:1px solid #eaecef;padding-top:1rem;overflow:auto}.page-nav .next{float:right}.page{padding-bottom:2rem;display:block}.sidebar-group .sidebar-group{padding-left:.5em}.sidebar-group:not(.collapsable) .sidebar-heading:not(.clickable){cursor:auto;color:inherit}.sidebar-group.is-sub-group{padding-left:0}.sidebar-group.is-sub-group>.sidebar-heading{font-size:.95em;line-height:1.4;font-weight:400;padding-left:2rem}.sidebar-group.is-sub-group>.sidebar-heading:not(.clickable){opacity:.5}.sidebar-group.is-sub-group>.sidebar-group-items{padding-left:1rem}.sidebar-group.is-sub-group>.sidebar-group-items>li>.sidebar-link{font-size:.95em;border-left:none}.sidebar-group.depth-2>.sidebar-heading{border-left:none}.sidebar-heading{color:#2c3e50;transition:color .15s ease;cursor:pointer;font-size:1.1em;font-weight:700;padding:.35rem 1.5rem .35rem 1.25rem;width:100%;box-sizing:border-box;margin:0;border-left:.25rem solid transparent}.sidebar-heading.open,.sidebar-heading:hover{color:inherit}.sidebar-heading .arrow{position:relative;top:-.12em;left:.5em}.sidebar-heading.clickable.active{font-weight:600;color:#3eaf7c;border-left-color:#3eaf7c}.sidebar-heading.clickable:hover{color:#3eaf7c}.sidebar-group-items{transition:height .1s ease-out;font-size:.95em;overflow:hidden}.sidebar .sidebar-sub-headers{padding-left:1rem;font-size:.95em}a.sidebar-link{font-size:1em;font-weight:400;display:inline-block;color:#2c3e50;border-left:.25rem solid transparent;padding:.35rem 1rem .35rem 1.25rem;line-height:1.4;width:100%;box-sizing:border-box}a.sidebar-link:hover{color:#3eaf7c}a.sidebar-link.active{font-weight:600;color:#3eaf7c;border-left-color:#3eaf7c}.sidebar-group a.sidebar-link{padding-left:2rem}.sidebar-sub-headers a.sidebar-link{padding-top:.25rem;padding-bottom:.25rem;border-left:none}.sidebar-sub-headers a.sidebar-link.active{font-weight:500}.sidebar ul{padding:0;margin:0;list-style-type:none}.sidebar a{display:inline-block}.sidebar .nav-links{display:none;border-bottom:1px solid #eaecef;padding:.5rem 0 .75rem}.sidebar .nav-links a{font-weight:600}.sidebar .nav-links .nav-item,.sidebar .nav-links .repo-link{display:block;line-height:1.25rem;font-size:1.1em;padding:.5rem 0 .5rem 1.5rem}.sidebar>.sidebar-links{padding:1.5rem 0}.sidebar>.sidebar-links>li>a.sidebar-link{font-size:1.1em;line-height:1.7;font-weight:700}.sidebar>.sidebar-links>li:not(:first-child){margin-top:.75rem}@media (max-width:719px){.sidebar .nav-links{display:block}.sidebar .nav-links .dropdown-wrapper .nav-dropdown .dropdown-item a.router-link-active:after{top:calc(1rem - 2px)}.sidebar>.sidebar-links{padding:1rem 0}}.badge[data-v-15b7b770]{display:inline-block;font-size:14px;height:18px;line-height:18px;border-radius:3px;padding:0 6px;color:#fff}.badge.green[data-v-15b7b770],.badge.tip[data-v-15b7b770],.badge[data-v-15b7b770]{background-color:#42b983}.badge.error[data-v-15b7b770]{background-color:#da5961}.badge.warn[data-v-15b7b770],.badge.warning[data-v-15b7b770],.badge.yellow[data-v-15b7b770]{background-color:#e7c000}.badge+.badge[data-v-15b7b770]{margin-left:5px}.theme-code-block[data-v-759a7d02]{display:none}.theme-code-block__active[data-v-759a7d02]{display:block}.theme-code-block>pre[data-v-759a7d02]{background-color:orange}.theme-code-group__nav[data-v-deefee04]{margin-bottom:-35px;background-color:#282c34;padding-bottom:22px;border-top-left-radius:6px;border-top-right-radius:6px;padding-left:10px;padding-top:10px}.theme-code-group__ul[data-v-deefee04]{margin:auto 0;padding-left:0;display:inline-flex;list-style:none}.theme-code-group__nav-tab[data-v-deefee04]{border:0;padding:5px;cursor:pointer;background-color:transparent;font-size:.85em;line-height:1.4;color:hsla(0,0%,100%,.9);font-weight:600}.theme-code-group__nav-tab-active[data-v-deefee04]{border-bottom:1px solid #42b983}.pre-blank[data-v-deefee04]{color:#42b983} \ No newline at end of file diff --git a/assets/img/installer-mac-home.1c2c56c2.png b/assets/img/installer-mac-home.1c2c56c2.png new file mode 100644 index 000000000..a76715b16 Binary files /dev/null and b/assets/img/installer-mac-home.1c2c56c2.png differ diff --git a/assets/img/installer-mac-home.d7b285b1.png b/assets/img/installer-mac-home.d7b285b1.png new file mode 100644 index 000000000..76a3d546d Binary files /dev/null and b/assets/img/installer-mac-home.d7b285b1.png differ diff --git a/assets/img/installer-windows-portable.126dcdef.png b/assets/img/installer-windows-portable.126dcdef.png new file mode 100644 index 000000000..6f61bdc14 Binary files /dev/null and b/assets/img/installer-windows-portable.126dcdef.png differ diff --git a/assets/img/installer-windows-portable.e1181841.png b/assets/img/installer-windows-portable.e1181841.png new file mode 100644 index 000000000..1d85a7eb8 Binary files /dev/null and b/assets/img/installer-windows-portable.e1181841.png differ diff --git a/assets/img/kangaroo-connection-mysql.51e03644.png b/assets/img/kangaroo-connection-mysql.51e03644.png new file mode 100644 index 000000000..28eb96782 Binary files /dev/null and b/assets/img/kangaroo-connection-mysql.51e03644.png differ diff --git a/assets/img/kangaroo-connection-mysql.8c9f88d3.png b/assets/img/kangaroo-connection-mysql.8c9f88d3.png new file mode 100644 index 000000000..3ae19f276 Binary files /dev/null and b/assets/img/kangaroo-connection-mysql.8c9f88d3.png differ diff --git a/assets/img/kangaroo-connection-ssh.1ebb9917.png b/assets/img/kangaroo-connection-ssh.1ebb9917.png new file mode 100644 index 000000000..1234214d6 Binary files /dev/null and b/assets/img/kangaroo-connection-ssh.1ebb9917.png differ diff --git a/assets/img/kangaroo-connection-ssh.eb458bf4.png b/assets/img/kangaroo-connection-ssh.eb458bf4.png new file mode 100644 index 000000000..273fc12d3 Binary files /dev/null and b/assets/img/kangaroo-connection-ssh.eb458bf4.png differ diff --git a/assets/img/kangaroo-designer.4995d831.png b/assets/img/kangaroo-designer.4995d831.png new file mode 100644 index 000000000..21c74c27b Binary files /dev/null and b/assets/img/kangaroo-designer.4995d831.png differ diff --git a/assets/img/kangaroo-designer.8d04d91b.png b/assets/img/kangaroo-designer.8d04d91b.png new file mode 100644 index 000000000..c6f106a4b Binary files /dev/null and b/assets/img/kangaroo-designer.8d04d91b.png differ diff --git a/assets/img/kangaroo-explorer.9acb1194.png b/assets/img/kangaroo-explorer.9acb1194.png new file mode 100644 index 000000000..769334282 Binary files /dev/null and b/assets/img/kangaroo-explorer.9acb1194.png differ diff --git a/assets/img/kangaroo-explorer.fee693df.png b/assets/img/kangaroo-explorer.fee693df.png new file mode 100644 index 000000000..57f93d1b4 Binary files /dev/null and b/assets/img/kangaroo-explorer.fee693df.png differ diff --git a/assets/img/kangaroo-export.3124be3c.png b/assets/img/kangaroo-export.3124be3c.png new file mode 100644 index 000000000..20d39b025 Binary files /dev/null and b/assets/img/kangaroo-export.3124be3c.png differ diff --git a/assets/img/kangaroo-export.9cb15f01.png b/assets/img/kangaroo-export.9cb15f01.png new file mode 100644 index 000000000..01f4ef4e7 Binary files /dev/null and b/assets/img/kangaroo-export.9cb15f01.png differ diff --git a/assets/img/kangaroo-form.85f37fb8.png b/assets/img/kangaroo-form.85f37fb8.png new file mode 100644 index 000000000..2c901807d Binary files /dev/null and b/assets/img/kangaroo-form.85f37fb8.png differ diff --git a/assets/img/kangaroo-form.89d98c9c.png b/assets/img/kangaroo-form.89d98c9c.png new file mode 100644 index 000000000..ada697587 Binary files /dev/null and b/assets/img/kangaroo-form.89d98c9c.png differ diff --git a/assets/img/kangaroo-function.049d88b3.png b/assets/img/kangaroo-function.049d88b3.png new file mode 100644 index 000000000..e6e939972 Binary files /dev/null and b/assets/img/kangaroo-function.049d88b3.png differ diff --git a/assets/img/kangaroo-function.48ce7bf9.png b/assets/img/kangaroo-function.48ce7bf9.png new file mode 100644 index 000000000..3fa1a24c3 Binary files /dev/null and b/assets/img/kangaroo-function.48ce7bf9.png differ diff --git a/assets/img/kangaroo-grid.4621185f.png b/assets/img/kangaroo-grid.4621185f.png new file mode 100644 index 000000000..d5da28eae Binary files /dev/null and b/assets/img/kangaroo-grid.4621185f.png differ diff --git a/assets/img/kangaroo-grid.867ad913.png b/assets/img/kangaroo-grid.867ad913.png new file mode 100644 index 000000000..d56198a57 Binary files /dev/null and b/assets/img/kangaroo-grid.867ad913.png differ diff --git a/assets/img/kangaroo-grid2.9abc5d45.png b/assets/img/kangaroo-grid2.9abc5d45.png new file mode 100644 index 000000000..5f6276872 Binary files /dev/null and b/assets/img/kangaroo-grid2.9abc5d45.png differ diff --git a/assets/img/kangaroo-grid2.d6646d83.png b/assets/img/kangaroo-grid2.d6646d83.png new file mode 100644 index 000000000..35c168151 Binary files /dev/null and b/assets/img/kangaroo-grid2.d6646d83.png differ diff --git a/assets/img/kangaroo-import.34a61527.png b/assets/img/kangaroo-import.34a61527.png new file mode 100644 index 000000000..ed7954959 Binary files /dev/null and b/assets/img/kangaroo-import.34a61527.png differ diff --git a/assets/img/kangaroo-import.4d98afab.png b/assets/img/kangaroo-import.4d98afab.png new file mode 100644 index 000000000..a1e633153 Binary files /dev/null and b/assets/img/kangaroo-import.4d98afab.png differ diff --git a/assets/img/kangaroo-query.3f71aaa4.png b/assets/img/kangaroo-query.3f71aaa4.png new file mode 100644 index 000000000..c9e0a0944 Binary files /dev/null and b/assets/img/kangaroo-query.3f71aaa4.png differ diff --git a/assets/img/kangaroo-query.8b4b7339.png b/assets/img/kangaroo-query.8b4b7339.png new file mode 100644 index 000000000..815cb67ae Binary files /dev/null and b/assets/img/kangaroo-query.8b4b7339.png differ diff --git a/assets/img/kangaroo-search.ca9a0987.png b/assets/img/kangaroo-search.ca9a0987.png new file mode 100644 index 000000000..e4a4f4b4f Binary files /dev/null and b/assets/img/kangaroo-search.ca9a0987.png differ diff --git a/assets/img/kangaroo-search.fdc5052b.png b/assets/img/kangaroo-search.fdc5052b.png new file mode 100644 index 000000000..261b0737c Binary files /dev/null and b/assets/img/kangaroo-search.fdc5052b.png differ diff --git a/assets/img/kangaroo-setting.0614d4db.png b/assets/img/kangaroo-setting.0614d4db.png new file mode 100644 index 000000000..6283730f7 Binary files /dev/null and b/assets/img/kangaroo-setting.0614d4db.png differ diff --git a/assets/img/kangaroo-setting.64c3f8ad.png b/assets/img/kangaroo-setting.64c3f8ad.png new file mode 100644 index 000000000..b4eac24d1 Binary files /dev/null and b/assets/img/kangaroo-setting.64c3f8ad.png differ diff --git a/assets/img/kangaroo-shortcut.247a63fa.png b/assets/img/kangaroo-shortcut.247a63fa.png new file mode 100644 index 000000000..fe428b4f4 Binary files /dev/null and b/assets/img/kangaroo-shortcut.247a63fa.png differ diff --git a/assets/img/kangaroo-shortcut.66417ce8.png b/assets/img/kangaroo-shortcut.66417ce8.png new file mode 100644 index 000000000..95dd3104f Binary files /dev/null and b/assets/img/kangaroo-shortcut.66417ce8.png differ diff --git a/assets/img/kangaroo-sql-builder.26ae43db.png b/assets/img/kangaroo-sql-builder.26ae43db.png new file mode 100644 index 000000000..25473babb Binary files /dev/null and b/assets/img/kangaroo-sql-builder.26ae43db.png differ diff --git a/assets/img/kangaroo-sql-builder.9579f7ec.png b/assets/img/kangaroo-sql-builder.9579f7ec.png new file mode 100644 index 000000000..553533fd8 Binary files /dev/null and b/assets/img/kangaroo-sql-builder.9579f7ec.png differ diff --git a/assets/img/kangaroo-sqlite-create.339d584f.png b/assets/img/kangaroo-sqlite-create.339d584f.png new file mode 100644 index 000000000..83d4d6e36 Binary files /dev/null and b/assets/img/kangaroo-sqlite-create.339d584f.png differ diff --git a/assets/img/kangaroo-sqlite-create.d9ad1aba.png b/assets/img/kangaroo-sqlite-create.d9ad1aba.png new file mode 100644 index 000000000..c3bf043e3 Binary files /dev/null and b/assets/img/kangaroo-sqlite-create.d9ad1aba.png differ diff --git a/assets/img/kangaroo-start.0a124f8a.png b/assets/img/kangaroo-start.0a124f8a.png new file mode 100644 index 000000000..506e0793e Binary files /dev/null and b/assets/img/kangaroo-start.0a124f8a.png differ diff --git a/assets/img/kangaroo-start.870926ae.png b/assets/img/kangaroo-start.870926ae.png new file mode 100644 index 000000000..03032dede Binary files /dev/null and b/assets/img/kangaroo-start.870926ae.png differ diff --git a/assets/img/kangaroo-view.913c3289.png b/assets/img/kangaroo-view.913c3289.png new file mode 100644 index 000000000..067dafe81 Binary files /dev/null and b/assets/img/kangaroo-view.913c3289.png differ diff --git a/assets/img/kangaroo-view.e72fe9fc.png b/assets/img/kangaroo-view.e72fe9fc.png new file mode 100644 index 000000000..3d5c4939a Binary files /dev/null and b/assets/img/kangaroo-view.e72fe9fc.png differ diff --git a/assets/img/kangaroo-workspace.c330b5d3.png b/assets/img/kangaroo-workspace.c330b5d3.png new file mode 100644 index 000000000..5b1c7b3f5 Binary files /dev/null and b/assets/img/kangaroo-workspace.c330b5d3.png differ diff --git a/assets/img/kangaroo-workspace.de367f1b.png b/assets/img/kangaroo-workspace.de367f1b.png new file mode 100644 index 000000000..4e1e7b15e Binary files /dev/null and b/assets/img/kangaroo-workspace.de367f1b.png differ diff --git a/assets/img/kangaroo_mp.aba271a6.png b/assets/img/kangaroo_mp.aba271a6.png new file mode 100644 index 000000000..b53698a98 Binary files /dev/null and b/assets/img/kangaroo_mp.aba271a6.png differ diff --git a/assets/img/search.83621669.svg b/assets/img/search.83621669.svg new file mode 100644 index 000000000..03d83913e --- /dev/null +++ b/assets/img/search.83621669.svg @@ -0,0 +1 @@ + diff --git a/assets/js/10.d1080268.js b/assets/js/10.d1080268.js new file mode 100644 index 000000000..babc1e397 --- /dev/null +++ b/assets/js/10.d1080268.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[10],{538:function(t,e){t.exports="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAuQAAAB3CAMAAAB8F6WTAAACH1BMVEX////19PLt7OrNx8LW0c3z8vHu7ev9/f3EwMDy8e+/uLHw7uz/4qj8/Pv5+frh//9eYqguNDbx7+729fPx7+3Cvr719PT49/ek4v/D///29vby8O7y8vJeNIUuYqj//8X+xYVeNDaCxP///+Px16LTzsne1MouNGSBNGPW8O5dYKGkYjba1dLhp2TGv7lep+Pd2dXh4qjPycUuNIWkYmXDhTbr6ufy1aCgj3+f1u+BNIW68O76+PK70c1VWIyBNDTWuoxyc26ihTTy8b26vbYuX6Dx8PIuhcXGwLni39xdNGXx8NYXFxaorKfZ8+/Bv7qztrC7gTXW1aHBhIX28u6/vbfm5uTV0880X4vyvIJ+u+36+/sqU4ueYGJcodXJuKeZnJaLjYiFh4KeXzbHaRhmlBTd3NjV2NJbX5/VoV/TeiyWtNQugryfoZrh/+PFyMDhrIS/9vHCu7VQ24GTlo/RpW7Adzvz9fn77t6BYaZaY4dehIWCYmTmhhuPThe+tpG/pIzaikOGm7iol4knUXZiY2Ph/8Vde6G+voP2tFlFQz/w8vW4xth0pc6PWqDjvZ3fxYOJkVzimj2IYDbiizXnfAf19+CvvdDQw7efpWa9j1WxXRbn7PLN3eylckHz5NXd0cXO6rNlZyxFZwrX8Nbr39Vcg7/n0L3Es2D1qDpXk7iGp6661Kd7jZbts2jW0bguf7T60JJyWIxFXH3m5bLG+XWsAAAVfElEQVR42uydj1taVRjHBeQa0aU43ro1rLRHMs3KsKE2qqnokzkUDR0qM3EwAiWszK2VpnM+TnOZTmtlbau1tXr6XX9g73sucmCBV+DyyF1+3fCcu/Hhfe/9cDzQEyvR6e47zGHu5ehQ8pKCpCz/MNjBYhigaHpSGsaQKot8LwWTvAzD5xfKYDBlMHkDiqInhWEsKvOclivXC5PcWG/TKRBbvVF6cA54+cM4qJLBCo+RBxRJT8rDGFI9ltPG5XphktfrrKWKxGqrxwfvsmr5vHvgtdauMgjCFMLkDSiSngoAY0i1WC41LtdLQnKjrlSx6EhZmdZqEsvzj2iCJniEHSyGAYqmpwLAGFIdlkuayfeyK3m9VTnJrfVlfL22XKNEyu31PMIOFsMARdRTAWAMqQ7JsXH5XhKS20oVjK3MZNMoFZso2ooBg4Ai60lpGEOa1CE5aibfS0JynZKS68pMunKllhWdKOrKDx4jAYqqJ8VhDGlSw36lDDWT76WAkmuUCl7DYsAgoMh6UhjGoh7J5XsptOT6xNdu9Fl+sWvIDjJg7hiWfVGSADI15MKCKHWCIDnT2Neh5PuRnFdyJT9yRFcMGAQUWU+Kw5gYanjlWcbvT3I+neS2+17v7YVftnwk19+VNa93TZ9L8Brq8w9ilAOULjZjGpQr5lbklkIwbmohEFiY4vLoVT2Sy/eSQfJeO4cByxWU3OtyeTvvGckXP3kL8slig1LFGCJbEWU6+zEQ/vzFf6qnAj8eSr6H5AOakxp4I70XLFdK8grO53R7lbRT0+sczB1jiLYmMpYDoBkUR8ubaRbr8+rJsrCwPrX159bU+sJCnicIHb9z5/ubN7+/dH3mx/+Z5LEQyV7ygbSWH3/1lf1IbkjKmtfnO++84LNbDHen6e0evWHPwDVkMDI97h/rJaGY09lb4hzEQ/JEhmFZdbtd0bHp8fHW1lWZAtIBmpnjKPmizH1lilkYWohUrlRGtoYW8AzlA9PuhNtubkRdGzc3qne0hhyjHsmTq3YOxroq0vSSUfL33y+3Dgz0Dljpka/NZvPPOUve6QWjnM6BCxcvcDC19I3iTUetwTI0WV3Xk8015PwhayzqjpWEuga5Eic9NgTFAXE3QJT3Sr90IpEl+tR4/Bh9gtQmPVl+ONWyt+TNV5+mudoMf73KDJnM1EV3JhZmfevPypWfViort9Z3O2rEcrKHffrB0bbgWGxwROu6eSn8Ae2jKi0Ne73XJOfFkM2eneSYXit1vOaV0v6/Xsl5Jfe5nZgB5/IFPV7Djh5D+2t44sOjWUouTPv9rjFnScztdpY46UoVbnxs5MnXRrOQHGPiExHpvajkFQ6DFDru3kNy+sLz+afjaUbAY8By5CK5ZSpS+dNKO2gemPLggbMPPP4unqgcYDNfBzecXZ2mR2IbwTsznxqkwp7rYEKz/u61ldxtGtQKMSuXk+T9b0xIeleZayZA8k9Ac1D9+BsbZvPla3Ds+KtX4DZVcksi3MSykwbE9OIBEMrSdPvosAUuVnVdm7mmxWLpPo3fmt5uazwmDRPBa8hmPK93u0rcNg3vdto1FrzjUx5LZ2XjMXpfXLY6apNpaTEk2pqUsXhNFrhH/+Nfmc3DfXD3pvNXzAhLBzDQNZylmQJoNZMW0jcJj0x7gHKkOmq+T8/C3Ips/fbTyrlz51Y2NyORW/Ez1MQKyQKmmdsMjp0khiOP1PuDn8/FWfgUZqe2+/SwhQx19L9dS6dkCEvG36OJktQjuSUpLvFM6AwZdIcsydlb8s8+i0t+/A26dv9+5XLpB75Xjr96KS551c+lH5jx2KUq+icpkpPdrHkvwm6FJur0+dYspPvZYRIeHRol7R/2VFc9ZarsqCV9L/DwDWYOjzQku8FrSJJisEdDUbuBmHgNTpsef1cgpP2ZFrwvGM8/UJdCS49ZxZLGpv24J19aNRACGhC4reuvGuUrzVhTf907px7lMwCan06VfBcAP6GGoSLsClZPLEeqw/TFSxlZkchvm7+dw6zMbgYiAqGwalZINjCUvAEQQkM0eGfOI3VGeezUDk0SMLq6rlaawqD71PljsOIkKOqRnCQlqgmd6RrU8K4zJCn7lBz9je9T+p+ZYCu59I0t7ekkNxAvbMfHaKanXU6XlxgqwqPk65b2D+FsW2BzQeAst7/8LoqKs/gwo+R2p6tkzG0n0/4QTiW5wC24Lxp/Fy09xgBbcpYlkiT5Qz10wwMj3JMTTGbJb8zfSEhO9+TDmiHvlac8SIACmh7qoXU81GPpzsy6Holszm6D49uzs4HIdRKXnBWyf5jBc20muBHiCOFCG8HwtTgLFmpP0qltf/kYBX0nTYHWdPu5YfhDdUsuTGtCXXbNoOukJhfJG9FfdB1X8zSSX8osOUHJ3VG/HxZN/ziVnMDPyu8+rIVzGx62gJKoJX3ZVtOCM2mYQXIO3l1xlUT9Lv/4NDfeICQkR6VrAXw3LT2GiHxSxGTJpXroaD+Sl7KV/DHY53vI2b5JvQAELAnLgc0BzvaQ3CBOBTa3m841bc8GpkTDruSskGxg8zttwd5Bjht0BtuenReI9Ox7oockndrOvmF4WQTgxDQ8PDTZdNuibsnJuKbLwLmc5RqSpeRsT467FhyC5DCQXckFKaRzzefzudxufyvc/OrzrsHB9pd/uU1IePhUC+og0LUXXraNeHAWHwq7wWuYmNjHQ6GSMX80Zg2FQtw4HIG9jyAYhxrRijS0VAwLGUvsyOkc3l2BWzRKosQlFzIAJMnfen7+6ltUcrgrArCSP04PIwGJeAz0xFl3ZpbArQe2ZmdhHZ8NrAs0KDkrJAuYUZiLBINfxWJfBYN9c1GJ9RjvsAhJpxZ24bC8NMFKTqdc5c+nYHW/NMqQ6pFcYNGOj1S4o4NHiJCSzJLrNTQp767EEntykP6aT15yKZqyGu9Fn9cFhvsuenm9RRA6+5aGiVD90YcJLTv7RjnhzWNNMIsPjWmF4GAP7XeKsTG6kncRsDXcCBf/tVELUFACIdzBaJklF1aj8S35KqEqpJG8tm94b8mvzs/P61IkxwriT7jwpAWfgLBm4oxkYmFmFgKB2e3tQGBhhqSRPCvYjblAXxDSdnTuY7PLQllGRCad2vZnztNt3VFpWr1U19PZd75F5ZILrbFxq8nA5nKSx1Pey94nv0zfXaE2w/RXue2KcTfEd/niMnp+8XzNMk8PCeGaFiMHZgpGEJH+/uI0vmGAo/gwcX+4hgzGwZbAVG4sh2/T/i4DHvq0Eop7wUMpHIw/SqGlYljIUmJHTuf0J3njL2iUVBOOqquAkhYAkmN081el7QoFQP44Pen59GgHbgQ6eowGADS+KyBPyMDCCDMz61OB7Z2p9ZkZ2uQQlsIKyQpGbsztBCKzgZ2qudZW831QGEgOST61sEenZz4+7T4Nizg8NRlEPZIbk+J3l+uN/0kmyfXl8WhA8hzCJMcsry1/uTzx9/LfE8sT8SLOjnjgcuBNp0Ogv8lZnncIOIoPM9jJYuLRcbSc53mJRMdiCi0jRkzsyOm0cwSGIxbHbj2dOIKDiMgkOaZekpwCsA7RAd05mh560OQQ6MERiWfMyMJWRE3FzM6MR29ySB1hKYlCsoQZNPPX5uauzS+eWG392GyHJujfTDm1ZyW4NIWjHnjMEUHtksPqxyInea9dG4+9tzRfybkL37Iv3phNMkt+AJgMktNcXTSmhIP/mphlMdz1metslh9MU246W65xvH5idfVENh2qXXLI/iXXDeymV5ez5NxuvvyGfXE5BK8hl38QoxygOSWLXUYuJZ2OrIsxioyRN4zTwi/DSfMJMwxyiHok52STIrlMcpZcr6/QVOj1Gvy6ZyTnU2IyKFqMUjCPw+HgDiUvvOSpuWck54qip33ADiUvpORapYLXsBgwCCiynhSGsahHcvleCiZ5mZKSi6KuGDAIKLKeFIaxqOd/ZN5PL4X7cCG7VpnY8bNz7AePkQBF1ZPiMIZUi+TQuHwvhfqYOFN9l1aZdJ0Uxfqug8dIgKLqSWkYQ9arRXJoXLYXJrnRpuBCLpSZtFa7MouKVSuKADtYDAMUUU/KwxhSLR8Th43L91KYj24u48UzrzcosMloeP6MyDNY4THygCLpSQaWJ1INrztLmGYyvRTgQ/gF+oNEHLS9d3++ec82KJp4nsEKjpEHFElPBYAxpCp2K0wzmV6Y5Mo//JEjRx7JL0DAGhlMCUzegKLoSXkYQ6rFcaaZTC9McqUfnjcpER5qRNjBYhigiHpSGsaQanGcNi7fS1zyguRhJcJgB4lhgCLqSWkYQ6oq++kFJS/5Tw7/icPDf+JQLdlHL1Tyw/zL3hn7Ng1EYdxMSFVEmoUmA4nrqCpS6rhRydKlEksqVhYm/gGkiqUD0BExd2Vk5p/kPr+zX6IYHneXk+rT+9T0HFv3/e5dvl6uBoIqZWnIVclLQ65KXhpyVfLSkKuSl4Zclbw05KrkpSFXJS8NuSp5achVyUtDrkpeGnJV8tKQq5KXhlyVvDpD/vxyedRqefncxdDfrAeUDlDf/H15fQZ3hvzy7ISfnJxduhj6m/WA0gHqm78vr8/gzpAvgecBLF0M/c16QOkA9c3fl9dncGfIj/7xdHA8FCwlszBhAGEUOPhgZJBMiD9dYIfy2MmRFRccP+T5aHQ1OVzIS/wnKNvn52/Gf/foGoBMGZyOjDbSSyNj5HJylNNNsOMohELFQgopZ3xCAEo8Ak6HsN4juLPCweUUB+sKJyKGHMhXk8Ot5KUJ0uzL0CHkewMQKegg5ELAuJVzU+0R2HFwWvmHHAa5QcgitgCUeKYUk9r3E6oimBUOBiObvYZ1/JDTD1p4yGnAlAU81qPRx8UI1gZwPjaon2Z1WONwvqhPHL+9mvAA3ELObsaG3IgzX5gpzadDYhCqo04ZVBshhjRO6swj/2UccbV+95qjUMt0CDmmjCwRBTjQ5JlmBai9ROyBCJR5Ru10rewBNZkHKwxMLxRKvgclbsgBC1zJuRgOuRn+7BPWAFSDYrAy5KP6cF3RiWJ7AG4UdlsZmxJzdUecfJNl6yIjRtN0Y2QQYohxNp155FsL0eDduC7UXnXwL9sREoBDjqp2L0lAeUGtaOIKilYzb9R4sYLAWWleqLICrqZEDbn5OkjIUcFuyOmNDk8wYWjo8eN6Yk/wABz35AW7rci+PZhdT/BFDNswxjnkN4SiztauOVNnH1VSDuxVh0I2bScL4JCjmN1LMlDeGhfZDgHu1HixgsCYQTjjPChRQ440HibkV9srOd7kinrsAMwX27FETs/bkOO680reEfLHmoM13KwRA2LYhjHOIacY2M6DduS8kpc4g0Ib5v/7l3ClTg2Ak7B3SQBKPCjH2DtD7sUKAm9lApS4ISfQ4fbkvGKW0ztMD07sreSUUx5AUMjJZUWcbPD1YZzNiEGNgBH35BaFlZzhdttqvrYWO7fd3XxRNZ14Cd1dyblUGShnjXPF80aNMysYbPKxKSsgH0GJG3Lkopwe7u7Kymyv1tPh53GWb7J1wXtyzsq6an7d5gEEhRxLd7MnNzyYEcM2jPG4uwJM05lHTr/KFjUaFRdZw3QoBD2p0+yGJokmj6qylyxbAIq8vMrQcSdr8KLGixUEzmg1MufuiRL1Prn59u1w98kLfP99PIQ1ZoruruAQRfJWhlLPA3C8T767+ZniwHIyek2IYRvGeNwnByaznXnk9lYy7op8eBhToXTVIeT4QaJOAHw3tjR5lARLs2wBKPHQz96FwoPnDY0nKwgMpGnwzk6UCH+sf+tqGm4WTpFvkNMW5amVI/pzJfF5TBOgEcGCvEN+Ef53Z8LNwinynJWbJ1eO4M+VxOPJIY8Pjh/yk4vlUavbixMXQ3+zHlA6QH3z9+X1GbwfcujFy2etXr5wMvQ26wVlD9Q/f19ej8H6L4NUyUtDrkpeGnJV8tKQq5KXhlyVvDTkquSlIVclLw25KnlpyFXJSz9B64mB9BO0GuknaP1h52xS2wiCKBy0yCJokaUF1sKGkE3EgGOdQaATBHKHQBbZOOuILA2+QU6arnnVelOuNM5QRTKCbtC08bTrzat+ksc/+rzK6vo8Xt91gtZS9TpBK6CCjOtYdYLWUvUugqD1x/+H/P+kpDfXZryswnOYlgJ+mld/QXpY7T63BKN/HfL1zYjUMFfCD8iVCZCSAKkhEigU8rYK3meSFPKmEDlh5d12aE1yfQ/Wclby9QziCJtOYfi1F5PYSC62V5AX8nb2GPIwKen4sEkLuVehzo/jVVLI20LkhKE1ufVngrXiesS/tEOufk00Mhv5j0K+PtOaxADekgfekcKTYoim7c+hHEBjchyteSFvqwinZj+cXzZ0mjgToteAQ8hOZRI8PBU/n55AgUoES3mwVpkrHqyuTtaTB+qTe/YN2/X2BL/1vCGJRRvJwnwHKGNX1r3/xf5GQ15pTeBQDaKvvCM8pWKIpu3X+40KHa8cR2tWyNsq8uSXRikCSic6A9FrPETtYMtwu6K4LjOi9S1YC7tRUQS6OlmvPBSpQO4Ztqssg189b0liGY20LAfGDl/A/gbvyQ9r0ppgipQUUQuSkoTrM8BRqeY4WrNC3lbRi33OL6GzcU/kELKDOgy5srrMiNV3YC3iwbgtaXpQ2B8qd4Pcs7pdj+qXq0kSS2mkMcbY4Qz7G34lJ60JpkzIo6SkovH5XvCYOwhYjta8kLdVSvUyhoq60mniDEQvOcTsyP0yQw5clx2x+g6sZfBgujpTD/cfijkj96xu1yP86nlLEgs3koUbIWd/wyEnrYneqRZFNMlPUt+3oDF5jtaskLdValtss+hMidg4ROyU3jDkAOSkgqUMWAtb47/B5upNGLvkntXtOqlfo8+exhrJwjL5kLO/8ZCT1iSkl9sJ7wg3RBFSkmgUjx83oDE5jtaMkL8EgpJmKQJKp4mzkeg1HmJ2KiesXP8tf3GZBpbyYC0s+mIxZLl6vDUm9+y8XfCr+pYkFmwkCxMdxtjJjP6mhZxsKEE5bQkAvIkhmggNBI3JcbRmhLytgq5JnhUBpZM6I0RLDlHw006pumiNfxUI1fdgLeyGxZAl68lAfXLPTnW74FfPW5JYvJEsXNFhjN0IEWN/kwlaIrMIUtKzP+sHVPLtENeVXt+fWDDIKl/Y9zefoLWXJ/MySEkf3q0mGb+Lq+Tb2R3S6/vdWDLIKlnY97cTtC5EqBO0ODpBqxO0LlOvE7T66ONVD3kfffSQ9/G7XTogAAAAYRjUv7Xm2CEDSM4aycmTnDzJyZOcPMnJk5w8ycmTnDzJyZOcPMnJk5w8ycmTnDzJyZOcvE8OcQcpgk1DMMPMFAAAAABJRU5ErkJggg=="},539:function(t,e){t.exports="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAuUAAAAcCAMAAADx5jE0AAACZFBMVEVnwjr////Nx8LEwMDW0c0uNDaw3ZlXwjpsuUXv7u2k0Yyt2pZ8q2QTExJFNDdxc29yoll4qF9UkjdmrjnSzcldi0az4JxioOpxtU6hzok2VDVsm1VptUKr2JNVVVVlq0JOrjpOVDd4pl/mICD4+Pd1pFyiop/rJCTOycRovztewjr8/PsiTIiUwnu2//+ey4VnmTdwnlhFmTr//7apqaZmAGZklExns0A7NDfmMC3jGxveGBdrpeva2tcuX59lnEpXbTby8vF6msOHioNOlHDjODbHycQ3aKX+/f3f4N67ubWxsa14e3VzrFdollBTgjyAsu5Uk98oVI+Zx4DdIiA7id1Jide2t7M3Z6KipZ+bnJd/vYqNjoh/mXFeX1w7hTp2q+xtlMTJxru8vbs/b6osWpeBrWlgjkhinEYxbTi+KRDQ0cXCwb2zxaBHi2aFw2NZh0J7oTE2Yx/JCQRfnOU2dL9mi7qSlI5+gHuCknmMu3Nrilt1qlrim1Rurk2oaCjkJyXQFQ8vedWPrdGBpNHLy8tCfMPIxMFoamZzkWPyq0/oUE1ERUNLeTNFcy3bKyg+bCe2ZgCKuO9hltdGg83tzq2DhYD7wGxutkllp0TnQz9ltj7bhDKiVBqpvtjBxs1ag7jC1LIsZ7BJdq64yKYcVZmzkXd2iWvys2iddWRpeGFehTfiLiucXRzm5uR0ntKUpojNPiTSahXb//+Q2/9mtv///9urt8eGnboAZrbJs5v+2pY6OpDuvYqWhnPFdHMAAGbpZWCViVhsoVHLhEaQOjpxtzmdiDXpjIzGa1FObTbKbyR4HQTHAAAI0ElEQVR42u2biVMSURzHH7RgS1aQEBLSoQtBRIQRRaFFROFRQSKoZXmUlllZamqXR9plZfd93/d93/f5T/XYWN66OC1EMo3tZ9XF7+6bfeN8+M2P5y7g8/txcPRl+MOh5YCDoy/DWc7R9wlZvnplGZ9G2crVgIOjO6IVWv5fRbtCBHodZPlFrRTrhlR7EXBw0DknxfW8v4oel54DvQyyfLUW22b299PkbKO+oOZcNeegI5LqeX8dvbS3qzmyfKW0X/diLs3Olq4EiCEQEMaa5ntp3nvNa0AMLKupmRli97whIAKSU5scxcXJ/ZuKjwKOWDi6kfoL9t84pz/Ke8pW4LxeAF9Bv+AcdEF6hCbLTkXhXXKrAODz526Wl2FmKXam3dfm6zid33ag/QwmNWNlLJbrmq3HO9+963R6m3Xgj6mRJC4IYVLuBqzoiv239S4CNzuyOooBRyxIRJKgTIkq4xyU95Rp9bxeQK8FiDlGVSJD8zmiATBCk2XBkJ1l/7V1+L9ZrV/olvOxbAzz5ctt+U/a8211+QdgNcfY1l7uOTuPO1tanJ2dXVVMzWfOnj0TRMS8xJqhA4IMnReB5f2bMlyEHbcTriwe7gAcsZCqSg0KPUDItJyZ8Xm9Al2zjQoh6XRYhCZLsWMwjQ2hOJtYmBHcLl9789Xa3XI/hh2oc7vbOs60ud2eOximwfi/r+WwklvTSKyd3mbGwdmnT8+O0HKJbKgoCLR8D0AcmzYCQEZY4A5RfFuPVxc1FM3CiX/Z8kGC5eDfB4pDCS1i6IWy6C1//OlhVJaja4qQ5oyIYfmucn+OWVPU4DicO3j7rlDsJxoW5ZLbtSJs4RuG5RoMu+Nx72/z+fL3uz3tGGZmsXyNF0o+OkBa2s3jrYzevOD0jILILRcGYVg+bb14BJRcvH4aQCSbXXhhcXJyk6MQj4PlSFpBQs8HEtCOxvTFLGf/G0BxWCSP3PIJE8dRL1+8fIAyVssj0pxp+bCBNIaF4hwiK4Pk8usGc+M1RsdSjWFbPO6S/SXwa79vCwaB+W9obnFCw4OaO7tOMSzfsi4zQstTabW8RrkXIEaIDeIRUHLoOqIYJ6qL4S6LB8EPg/gwKh2M76k2T4fyox19wMjfnv1PWc4ieYSW7xv4NmT01WcoY7c8Qs3JybJhJnCSTSeP7HQsfA8Yffmdgwc9brmtpMQmd3sObj2gYbG8ympFlrdYq2g9eUFmZkH72cylS5euIgOUB1hK5cjyEPNIy5HmaoOaITloIvCiZLiT4gEaQXyAxTdpckIE1RmeJhCMhCLDn+xnJw37LkggR5BvoumB78WBwYtBfFCr1CGhkyXJVEzPqDyaWr7vES/KWk5diak5PYKTZe3LNQReXl6Of4SSb3JAyRkdS32dx22Tk9jcHlsbslxAA4Rodaa5qIm60py16EjmDMjZgtLS0nXzAWDkkO75PLVMSEkurJlLWo40lxgMpOQIB4Ev1AGQcqUxtzE3NxfEBWg4u+Wo6g8bQ9VyNssnp1MjkgKDhiXAgYHh80B8EKvEOnGeUFixGQDJUAkV0zMqj8Ry9Cpay9GVNlcIhXliEIQW6eBkaX15To65sKhhoaOxW19eRFCVfNOP14BpeXn9AU8JZXmJr64eY7Pcmqbv2fKl62ZDCpZAxpIBygMw8t1iWYiaCCxvwu2wlscZ0vBBv8QdLxCko44kvDqPIc+kjrOfjUYkLb+RDg8FLI8XJpUJpKjhMkZqCr2Woyy6Wo4alj+u5SmpA4QKdQoIQo/gZFn78gYCr/5Vye8fagyzPLt0a70HWh4QveTg1gulrB1LS8uUNJIpU6a0dNE6llXzITMuzB87dizVmaAchsEcWS6uqKhITJRI1ErLXEbHkrdRzehYUqX2WTvIemO6skMH4gOq5aSx0EnKU6a3pKKj0kmv2c+GhodGTE+/kT5+edJy+EvgnREflCplUGloEYKZRWn5yfyoLUfXRZIzInKybDgIu/3QzkMBye2DAwFzjWWdT26z1UHPbfVbMIzN8lNTrVMopt70Mj59jm0/OxZExG5TZaJRpFKpRAqxTGlZ2/3Tpzrs0+dmDU6Yd2zWbb7izyr8AOIB6sup8jsZaRjWgySgWs5+NjxMjRi/OPCOGEJ25DfiU84pcVLEUGkxXS2URW85WkeM3vIUMTQaXZUekZNl7csPE0T11UO8V/cvZ+Dbw2s5hp09KJfXnz+/VS7f+hSDsKwk1t70Tp1CblNhw7KGYfmW0ggt32OSpSryKivzDEYlw/JpBnX4SqLuSo6dyCg6rMly2c1xshytscTelzMtp0bA1/DH9GEjwQ3yo2h8mKuaCyCTTFBpE5KLlkVtOVpHjN7yFBM02jQJhEdoskF2FRZqqLZ8EerLcwmi7Nqrq5ueY1k9WF6OYRd8ck8mduYStHwd+3o5uNVq9U4l8Tpbb4E/tlwpEyuMskqDwWihLGf8V2jaMUBDl1uOE3qXnsDN11k7ll5eLyfXUhYHd2iNJYHqxNnOhpZTI+AQmI0XJMDveK00InEmKRVCIyomtCyKlcSBA391KkfyGVnElk8zChVKJDmK0GRZ+vLBemLUwMvPtVl2F29RTx1L5nlfXeaTp+fldfUX2DsWoKtqtXZ5oeM3na1h/+FfhXpvNsstFqVCIZNByytlJmg5Kyc2HK7OuJ3hd2zQAY7YsCgslNJ5BmQ0yhiWs4HWERHRWG4wIslpEZosG9tdLi11f/BwhuVlgY7FP6PgUkFHeealS0vKMamU/W6tW7VTu5zOLm/trRh0S9pTOVchMuYZ8owyi7gSWs7OsQ3Xr1/fcIyTPGaSLCMopZctO4FylEV9txbqUqK/W+vEsmVIchTRJsvGolkIpuUrpVK/NHCHVoCOwKuc6kjuvD1VVVtbdWpNbH/ovZWVsl+sXbt2COD4R4nDnbexI6AT9hQFvKG8OvgEhZmvMWuzuacoOPrYUxTcE3Ecff+JOO7pZo7/4OlmDo6+C38RZzlHXydgOQdHH2fRT6YgWxTxDMOFAAAAAElFTkSuQmCC"},612:function(t,e,l){"use strict";l.r(e);var s=l(13),o=Object(s.a)({},(function(){var t=this,e=t.$createElement,s=t._self._c||e;return s("ContentSlotsDistributor",{attrs:{"slot-key":t.$parent.slotKey}},[s("h1",{attrs:{id:"data-view"}},[s("a",{staticClass:"header-anchor",attrs:{href:"#data-view"}},[t._v("#")]),t._v(" Data view")]),t._v(" "),s("h2",{attrs:{id:"show-the-top-builder-pane"}},[s("a",{staticClass:"header-anchor",attrs:{href:"#show-the-top-builder-pane"}},[t._v("#")]),t._v(" Show the top builder pane")]),t._v(" "),s("p",[s("img",{attrs:{src:l(538),alt:"Datagrid Builder"}}),t._v("\nclick "),s("strong",[t._v("SQL builder tools")]),t._v(" icon in the lower left corner of workspace, then "),s("strong",[t._v("Builder")]),t._v(" pane will show on the top\n"),s("img",{attrs:{src:l(539),alt:"Datagrid toolbar"}})]),t._v(" "),s("h2",{attrs:{id:"select-columns"}},[s("a",{staticClass:"header-anchor",attrs:{href:"#select-columns"}},[t._v("#")]),t._v(" Select columns")]),t._v(" "),s("ul",[s("li",[t._v("step 1: click "),s("strong",[t._v("Column")]),t._v(" button to switch to column tab")]),t._v(" "),s("li",[t._v("step 2: select columns you want")]),t._v(" "),s("li",[t._v("step 3: click "),s("strong",[t._v("Apply")]),t._v(" button(right most) on the toolbar")])]),t._v(" "),s("h2",{attrs:{id:"add-where-statement"}},[s("a",{staticClass:"header-anchor",attrs:{href:"#add-where-statement"}},[t._v("#")]),t._v(" Add where statement")]),t._v(" "),s("ul",[s("li",[t._v("step 1: click "),s("strong",[t._v("Where")]),t._v(" button to switch to where tab")]),t._v(" "),s("li",[t._v("step 2: click the plus button to add conditions")]),t._v(" "),s("li",[t._v("step 3: then you could click bracket button to add bracket(left or right)")]),t._v(" "),s("li",[t._v("step 4: add more conditions as you need.")]),t._v(" "),s("li",[t._v("step 5: click "),s("strong",[t._v("Apply")]),t._v(" button(right most) on the toolbar")])]),t._v(" "),s("h2",{attrs:{id:"add-sort-column"}},[s("a",{staticClass:"header-anchor",attrs:{href:"#add-sort-column"}},[t._v("#")]),t._v(" Add sort column")]),t._v(" "),s("ul",[s("li",[t._v("step 1: click "),s("strong",[t._v("Order")]),t._v(" button to switch to order tab")]),t._v(" "),s("li",[t._v("step 2: click the plus button to add order columns")]),t._v(" "),s("li",[t._v("step 3: then choose column name and order method")]),t._v(" "),s("li",[t._v("step 4: click "),s("strong",[t._v("Apply")]),t._v(" button(right most) on the toolbar")])]),t._v(" "),s("h2",{attrs:{id:"add-dataset-limit"}},[s("a",{staticClass:"header-anchor",attrs:{href:"#add-dataset-limit"}},[t._v("#")]),t._v(" Add dataset limit")]),t._v(" "),s("ul",[s("li",[t._v("step 1: click "),s("strong",[t._v("Limit")]),t._v(" button to switch to limit tab")]),t._v(" "),s("li",[t._v("step 2: input page rows limit number in the entry")]),t._v(" "),s("li",[t._v("step 3: click "),s("strong",[t._v("Apply")]),t._v(" button(right most) on the toolbar")])]),t._v(" "),s("h2",{attrs:{id:"change-edit-mode"}},[s("a",{staticClass:"header-anchor",attrs:{href:"#change-edit-mode"}},[t._v("#")]),t._v(" Change edit mode")]),t._v(" "),s("ul",[s("li",[t._v("step 1: click mode icon on the datagrid toolbar")]),t._v(" "),s("li",[t._v("step 2: then choose mode on the pop over gui;")])]),t._v(" "),s("Vssue",{attrs:{"issue-id":9,title:t.$title}})],1)}),[],!1,null,null,null);e.default=o.exports}}]); \ No newline at end of file diff --git a/assets/js/100.f1c5495c.js b/assets/js/100.f1c5495c.js new file mode 100644 index 000000000..7c342a13a --- /dev/null +++ b/assets/js/100.f1c5495c.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[100],{684:function(t,e,a){"use strict";a.r(e);var r=a(13),o=Object(r.a)({},(function(){var t=this,e=t.$createElement,a=t._self._c||e;return a("ContentSlotsDistributor",{attrs:{"slot-key":t.$parent.slotKey}},[a("h1",{attrs:{id:"kangaroo-v1-91-1-dev"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#kangaroo-v1-91-1-dev"}},[t._v("#")]),t._v(" Kangaroo v1.91.1 (Dev)")]),t._v(" "),a("p",[t._v("This is a technical preview version, please don't use it in the production environment.")]),t._v(" "),a("h2",{attrs:{id:"new-features-bug-fixes"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#new-features-bug-fixes"}},[t._v("#")]),t._v(" New features & bug-fixes")]),t._v(" "),a("ol",[a("li",[t._v("Refactor workbench and workspace")]),t._v(" "),a("li",[t._v("Refactor import/export")]),t._v(" "),a("li",[t._v("Refactor intellisense")]),t._v(" "),a("li",[t._v("Refactor toolbars")]),t._v(" "),a("li",[t._v("Refactor sql builder")]),t._v(" "),a("li",[t._v("Refactor app expire notification")]),t._v(" "),a("li",[t._v("Improve titlebar skin support")]),t._v(" "),a("li",[t._v("Improve dialog style")]),t._v(" "),a("li",[t._v("Split setting into app setting and server setting")]),t._v(" "),a("li",[t._v("Move intellisense data to user document folder")]),t._v(" "),a("li",[t._v("Update the Chinese translation")]),t._v(" "),a("li",[t._v("Fixed: can't open url with default app")]),t._v(" "),a("li",[t._v("Fixed: insert sql error(user_name -> user__name)")]),t._v(" "),a("li",[t._v("Fixed: model view crashed")]),t._v(" "),a("li",[t._v("Fixed: DSV formats has a extra column")]),t._v(" "),a("li",[t._v("Fixed: scalable image size issue")]),t._v(" "),a("li",[t._v("Fixed: warning messages")])]),t._v(" "),a("h2",{attrs:{id:"crash-issues-existed"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#crash-issues-existed"}},[t._v("#")]),t._v(" Crash issues existed")]),t._v(" "),a("ol",[a("li",[t._v("PostgreSQL: OID type not yet supported(libgda), it will crash.")])]),t._v(" "),a("div",[a("script2",{attrs:{type:"text/javascript",async:"true",src:"https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"}}),t._v(" "),a("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),t._v(" "),a("script2",{attrs:{type:"text/javascript"}},[t._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),t._v(" "),a("h2",{attrs:{id:"installer-portable-packages"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#installer-portable-packages"}},[t._v("#")]),t._v(" Installer & Portable packages "),a("Badge",{attrs:{text:"link expired",type:"warning"}})],1),t._v(" "),a("p",[t._v("Recommend to use tool "),a("code",[t._v("sha256sum")]),t._v(" to verify the sums and signature of your packages that download from the internet, make sure they are safe and 100% correct.")]),t._v(" "),a("table",[a("thead",[a("tr",[a("th",[t._v("Packages")]),t._v(" "),a("th",[t._v("Windows")]),t._v(" "),a("th",[t._v("Linux")]),t._v(" "),a("th",[t._v("MacOS")]),t._v(" "),a("th",[t._v("iOS")]),t._v(" "),a("th",[t._v("Android")])])]),t._v(" "),a("tbody",[a("tr",[a("td",[t._v("Installer"),a("br"),t._v("(Github.com)")]),t._v(" "),a("td",[a("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.91.1.220128/kangaroo-1.91.1.220128-AMD64.exe",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows"),a("OutboundLink")],1)]),t._v(" "),a("td",[a("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.91.1.220128/kangaroo-1.91.1.220128-1-x86_64.pkg.tar.zst",target:"_blank",rel:"noopener noreferrer"}},[t._v("Arch"),a("OutboundLink")],1)]),t._v(" "),a("td",[t._v("[MacOS]")]),t._v(" "),a("td"),t._v(" "),a("td")]),t._v(" "),a("tr",[a("td",[t._v("Portable"),a("br"),t._v("(Github.com)")]),t._v(" "),a("td",[a("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.91.1.220128/kangaroo-1.91.1.220128-AMD64.7z",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows"),a("OutboundLink")],1)]),t._v(" "),a("td",[a("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.91.1.220128/kangaroo-1.91.1.220128-arch.tar.gz",target:"_blank",rel:"noopener noreferrer"}},[t._v("Arch"),a("OutboundLink")],1)]),t._v(" "),a("td",[t._v("[MacOS]")]),t._v(" "),a("td"),t._v(" "),a("td")]),t._v(" "),a("tr",[a("td",[t._v("SHA256SUM"),a("br"),t._v("(Github.com)")]),t._v(" "),a("td",[a("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.91.1.220128/kangaroo-1.91.1.220128.sha256sum",target:"_blank",rel:"noopener noreferrer"}},[t._v("SHA256SUM"),a("OutboundLink")],1)]),t._v(" "),a("td"),t._v(" "),a("td"),t._v(" "),a("td"),t._v(" "),a("td")]),t._v(" "),a("tr",[a("td",[t._v("-----------------")]),t._v(" "),a("td",[t._v("-----------------")]),t._v(" "),a("td",[t._v("-----------------")]),t._v(" "),a("td",[t._v("-----------------")]),t._v(" "),a("td"),t._v(" "),a("td")]),t._v(" "),a("tr",[a("td",[t._v("Installer"),a("br"),t._v("(Injdk.cn)")]),t._v(" "),a("td",[a("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.91.1.220128/kangaroo-1.91.1.220128-AMD64.exe",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows"),a("OutboundLink")],1)]),t._v(" "),a("td",[a("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.91.1.220128/kangaroo-1.91.1.220128-1-x86_64.pkg.tar.zst",target:"_blank",rel:"noopener noreferrer"}},[t._v("Arch"),a("OutboundLink")],1)]),t._v(" "),a("td",[t._v("[MacOS]")]),t._v(" "),a("td"),t._v(" "),a("td")]),t._v(" "),a("tr",[a("td",[t._v("Portable"),a("br"),t._v("(Injdk.cn)")]),t._v(" "),a("td",[a("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.91.1.220128/kangaroo-1.91.1.220128-AMD64.7z",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows"),a("OutboundLink")],1)]),t._v(" "),a("td",[a("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.91.1.220128/kangaroo-1.91.1.220128-arch.tar.gz",target:"_blank",rel:"noopener noreferrer"}},[t._v("Arch"),a("OutboundLink")],1)]),t._v(" "),a("td",[t._v("[MacOS]")]),t._v(" "),a("td"),t._v(" "),a("td")]),t._v(" "),a("tr",[a("td",[t._v("SHA256SUM"),a("br"),t._v("(Injdk.cn)")]),t._v(" "),a("td",[a("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.91.1.220128/kangaroo-1.91.1.220128.sha256sum",target:"_blank",rel:"noopener noreferrer"}},[t._v("SHA256SUM"),a("OutboundLink")],1)]),t._v(" "),a("td"),t._v(" "),a("td"),t._v(" "),a("td"),t._v(" "),a("td")])])]),t._v(" "),a("h2",{attrs:{id:"share-with-friends"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#share-with-friends"}},[t._v("#")]),t._v(" Share with friends")]),t._v(" "),a("social-share",{attrs:{networks:["facebook","twitter","whatsapp","telegram","linkedin","reddit","line","skype","pinterest"]}})],1)}),[],!1,null,null,null);e.default=o.exports}}]); \ No newline at end of file diff --git a/assets/js/101.ad15d235.js b/assets/js/101.ad15d235.js new file mode 100644 index 000000000..4e931ac46 --- /dev/null +++ b/assets/js/101.ad15d235.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[101],{685:function(t,e,a){"use strict";a.r(e);var r=a(13),o=Object(r.a)({},(function(){var t=this,e=t.$createElement,a=t._self._c||e;return a("ContentSlotsDistributor",{attrs:{"slot-key":t.$parent.slotKey}},[a("h1",{attrs:{id:"kangaroo-v1-92-1-dev"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#kangaroo-v1-92-1-dev"}},[t._v("#")]),t._v(" Kangaroo v1.92.1 (Dev)")]),t._v(" "),a("p",[t._v("This is a technical preview version, release for testing, be careful when using in the production environment.")]),t._v(" "),a("h2",{attrs:{id:"new-features-bug-fixes"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#new-features-bug-fixes"}},[t._v("#")]),t._v(" New features & bug-fixes")]),t._v(" "),a("ol",[a("li",[t._v("Add explorer view(Table + Iconic)")]),t._v(" "),a("li",[t._v("Add search and sort support")]),t._v(" "),a("li",[t._v("SQLite: load objects for explorer")]),t._v(" "),a("li",[t._v("MariaDB: load objects for explorer")]),t._v(" "),a("li",[t._v("MySQL: load objects for explorer")]),t._v(" "),a("li",[t._v("PostgreSQL: load objects for explorer")]),t._v(" "),a("li",[t._v("Add context menu for objects")]),t._v(" "),a("li",[t._v("Implement context menu for table and view")]),t._v(" "),a("li",[t._v("Refactor workspace toolbar")]),t._v(" "),a("li",[t._v("Update database object icon")]),t._v(" "),a("li",[t._v("Update the Chinese translation")])]),t._v(" "),a("div",[a("script2",{attrs:{type:"text/javascript",async:"true",src:"https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"}}),t._v(" "),a("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),t._v(" "),a("script2",{attrs:{type:"text/javascript"}},[t._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),t._v(" "),a("h2",{attrs:{id:"installer-portable-packages"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#installer-portable-packages"}},[t._v("#")]),t._v(" Installer & Portable packages "),a("Badge",{attrs:{text:"link expired",type:"warning"}})],1),t._v(" "),a("p",[t._v("Recommend to use tool "),a("code",[t._v("sha256sum")]),t._v(" to verify the sums and signature of your packages that download from the internet, make sure they are safe and 100% correct.")]),t._v(" "),a("table",[a("thead",[a("tr",[a("th",[t._v("Packages")]),t._v(" "),a("th",[t._v("Windows")]),t._v(" "),a("th",[t._v("Linux")]),t._v(" "),a("th",[t._v("MacOS")]),t._v(" "),a("th",[t._v("iOS")]),t._v(" "),a("th",[t._v("Android")])])]),t._v(" "),a("tbody",[a("tr",[a("td",[t._v("Installer"),a("br"),t._v("(Github.com)")]),t._v(" "),a("td",[a("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.92.1.220228/kangaroo-1.92.1.220228-AMD64.exe",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows"),a("OutboundLink")],1)]),t._v(" "),a("td",[a("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.92.1.220228/kangaroo-1.92.1.220228-1-x86_64.pkg.tar.zst",target:"_blank",rel:"noopener noreferrer"}},[t._v("Arch"),a("OutboundLink")],1)]),t._v(" "),a("td",[t._v("[MacOS]")]),t._v(" "),a("td"),t._v(" "),a("td")]),t._v(" "),a("tr",[a("td",[t._v("Portable"),a("br"),t._v("(Github.com)")]),t._v(" "),a("td",[a("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.92.1.220228/kangaroo-1.92.1.220228-AMD64.7z",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows"),a("OutboundLink")],1)]),t._v(" "),a("td",[a("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.92.1.220228/kangaroo-1.92.1.220228-arch.tar.gz",target:"_blank",rel:"noopener noreferrer"}},[t._v("Arch"),a("OutboundLink")],1)]),t._v(" "),a("td",[t._v("[MacOS]")]),t._v(" "),a("td"),t._v(" "),a("td")]),t._v(" "),a("tr",[a("td",[t._v("SHA256SUM"),a("br"),t._v("(Github.com)")]),t._v(" "),a("td",[a("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.92.1.220228/kangaroo-1.92.1.220228.sha256sum",target:"_blank",rel:"noopener noreferrer"}},[t._v("SHA256SUM"),a("OutboundLink")],1)]),t._v(" "),a("td"),t._v(" "),a("td"),t._v(" "),a("td"),t._v(" "),a("td")]),t._v(" "),a("tr",[a("td",[t._v("-----------------")]),t._v(" "),a("td",[t._v("-----------------")]),t._v(" "),a("td",[t._v("-----------------")]),t._v(" "),a("td",[t._v("-----------------")]),t._v(" "),a("td"),t._v(" "),a("td")]),t._v(" "),a("tr",[a("td",[t._v("Installer"),a("br"),t._v("(Injdk.cn)")]),t._v(" "),a("td",[a("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.92.1.220228/kangaroo-1.92.1.220228-AMD64.exe",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows"),a("OutboundLink")],1)]),t._v(" "),a("td",[a("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.92.1.220228/kangaroo-1.92.1.220228-1-x86_64.pkg.tar.zst",target:"_blank",rel:"noopener noreferrer"}},[t._v("Arch"),a("OutboundLink")],1)]),t._v(" "),a("td",[t._v("[MacOS]")]),t._v(" "),a("td"),t._v(" "),a("td")]),t._v(" "),a("tr",[a("td",[t._v("Portable"),a("br"),t._v("(Injdk.cn)")]),t._v(" "),a("td",[a("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.92.1.220228/kangaroo-1.92.1.220228-AMD64.7z",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows"),a("OutboundLink")],1)]),t._v(" "),a("td",[a("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.92.1.220228/kangaroo-1.92.1.220228-arch.tar.gz",target:"_blank",rel:"noopener noreferrer"}},[t._v("Arch"),a("OutboundLink")],1)]),t._v(" "),a("td",[t._v("[MacOS]")]),t._v(" "),a("td"),t._v(" "),a("td")]),t._v(" "),a("tr",[a("td",[t._v("SHA256SUM"),a("br"),t._v("(Injdk.cn)")]),t._v(" "),a("td",[a("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.92.1.220228/kangaroo-1.92.1.220228.sha256sum",target:"_blank",rel:"noopener noreferrer"}},[t._v("SHA256SUM"),a("OutboundLink")],1)]),t._v(" "),a("td"),t._v(" "),a("td"),t._v(" "),a("td"),t._v(" "),a("td")])])]),t._v(" "),a("h2",{attrs:{id:"share-with-friends"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#share-with-friends"}},[t._v("#")]),t._v(" Share with friends")]),t._v(" "),a("social-share",{attrs:{networks:["facebook","twitter","whatsapp","telegram","linkedin","reddit","line","skype","pinterest"]}})],1)}),[],!1,null,null,null);e.default=o.exports}}]); \ No newline at end of file diff --git a/assets/js/102.081665f1.js b/assets/js/102.081665f1.js new file mode 100644 index 000000000..24e360c51 --- /dev/null +++ b/assets/js/102.081665f1.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[102],{686:function(e,t,r){"use strict";r.r(t);var a=r(13),o=Object(a.a)({},(function(){var e=this,t=e.$createElement,r=e._self._c||t;return r("ContentSlotsDistributor",{attrs:{"slot-key":e.$parent.slotKey}},[r("h1",{attrs:{id:"kangaroo-v1-93-1-dev"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#kangaroo-v1-93-1-dev"}},[e._v("#")]),e._v(" Kangaroo v1.93.1 (Dev)")]),e._v(" "),r("p",[e._v("This is a technical preview version, release for testing, be careful when using in the production environment.")]),e._v(" "),r("h2",{attrs:{id:"new-features-bug-fixes"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#new-features-bug-fixes"}},[e._v("#")]),e._v(" New features & bug-fixes")]),e._v(" "),r("ul",[r("li",[e._v("SQLite: Add index designer")]),e._v(" "),r("li",[e._v("SQLite: Add trigger designer")]),e._v(" "),r("li",[e._v("SQLite: Refactor data view designer to improve support")]),e._v(" "),r("li",[e._v("MySQL: Add index object support")]),e._v(" "),r("li",[e._v("MySQL: Add trigger object support")]),e._v(" "),r("li",[e._v("MySQL: Add index designer")]),e._v(" "),r("li",[e._v("MySQL: Add trigger designer")]),e._v(" "),r("li",[e._v("MySQL: Refactor data view designer to improve support")]),e._v(" "),r("li",[e._v("MariaDB: Add index object support")]),e._v(" "),r("li",[e._v("MariaDB: Add trigger object support")]),e._v(" "),r("li",[e._v("MariaDB: Add index designer")]),e._v(" "),r("li",[e._v("MariaDB: Add trigger designer")]),e._v(" "),r("li",[e._v("MariaDB: Refactor data view designer to improve support")]),e._v(" "),r("li",[e._v("PostgreSQL: Add index designer")]),e._v(" "),r("li",[e._v("PostgreSQL: Add trigger designer")]),e._v(" "),r("li",[e._v("PostgreSQL: Refactor data view designer to improve support")]),e._v(" "),r("li",[e._v("Add connection detail view for workspace")]),e._v(" "),r("li",[e._v("Update repository tree icon")]),e._v(" "),r("li",[e._v("Update the Chinese translation")]),e._v(" "),r("li",[e._v("Refactor starter view")]),e._v(" "),r("li",[e._v("Refactor repository view")]),e._v(" "),r("li",[e._v("Fixed: data view designer's restore issue")]),e._v(" "),r("li",[e._v("Fixed: workspace menu loading issue")]),e._v(" "),r("li",[e._v("Fixed: crash while active_id is null")]),e._v(" "),r("li",[e._v("Fixed: editor input issue while having selection")]),e._v(" "),r("li",[e._v("Fixed: can't load schema views for MySQL/MariaDB")]),e._v(" "),r("li",[e._v("Fixed: crashed while PostgreSQL database is empty")])]),e._v(" "),r("div",[r("script2",{attrs:{type:"text/javascript",async:"true",src:"https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"}}),e._v(" "),r("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),e._v(" "),r("script2",{attrs:{type:"text/javascript"}},[e._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),e._v(" "),r("h2",{attrs:{id:"installer-portable-packages"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#installer-portable-packages"}},[e._v("#")]),e._v(" Installer & Portable packages "),r("Badge",{attrs:{text:"link expired",type:"warning"}})],1),e._v(" "),r("p",[e._v("Recommend to use tool "),r("code",[e._v("sha256sum")]),e._v(" to verify the sums and signature of your packages that download from the internet, make sure they are safe and 100% correct.")]),e._v(" "),r("table",[r("thead",[r("tr",[r("th",[e._v("Packages")]),e._v(" "),r("th",[e._v("Windows")]),e._v(" "),r("th",[e._v("Linux")]),e._v(" "),r("th",[e._v("MacOS")]),e._v(" "),r("th",[e._v("iOS")]),e._v(" "),r("th",[e._v("Android")])])]),e._v(" "),r("tbody",[r("tr",[r("td",[e._v("Installer"),r("br"),e._v("(Github.com)")]),e._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.93.1.220401/kangaroo-1.93.1.220401-AMD64.exe",target:"_blank",rel:"noopener noreferrer"}},[e._v("Windows"),r("OutboundLink")],1)]),e._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.93.1.220401/kangaroo-1.93.1.220401-1-x86_64.pkg.tar.zst",target:"_blank",rel:"noopener noreferrer"}},[e._v("Arch"),r("OutboundLink")],1)]),e._v(" "),r("td",[e._v("[MacOS]")]),e._v(" "),r("td"),e._v(" "),r("td")]),e._v(" "),r("tr",[r("td",[e._v("Portable"),r("br"),e._v("(Github.com)")]),e._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.93.1.220401/kangaroo-1.93.1.220401-AMD64.7z",target:"_blank",rel:"noopener noreferrer"}},[e._v("Windows"),r("OutboundLink")],1)]),e._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.93.1.220401/kangaroo-1.93.1.220401-arch.tar.gz",target:"_blank",rel:"noopener noreferrer"}},[e._v("Arch"),r("OutboundLink")],1)]),e._v(" "),r("td",[e._v("[MacOS]")]),e._v(" "),r("td"),e._v(" "),r("td")]),e._v(" "),r("tr",[r("td",[e._v("SHA256SUM"),r("br"),e._v("(Github.com)")]),e._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.93.1.220401/kangaroo-1.93.1.220401.sha256sum",target:"_blank",rel:"noopener noreferrer"}},[e._v("SHA256SUM"),r("OutboundLink")],1)]),e._v(" "),r("td"),e._v(" "),r("td"),e._v(" "),r("td"),e._v(" "),r("td")]),e._v(" "),r("tr",[r("td",[e._v("-----------------")]),e._v(" "),r("td",[e._v("-----------------")]),e._v(" "),r("td",[e._v("-----------------")]),e._v(" "),r("td",[e._v("-----------------")]),e._v(" "),r("td"),e._v(" "),r("td")]),e._v(" "),r("tr",[r("td",[e._v("Installer"),r("br"),e._v("(Injdk.cn)")]),e._v(" "),r("td",[r("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.93.1.220401/kangaroo-1.93.1.220401-AMD64.exe",target:"_blank",rel:"noopener noreferrer"}},[e._v("Windows"),r("OutboundLink")],1)]),e._v(" "),r("td",[r("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.93.1.220401/kangaroo-1.93.1.220401-1-x86_64.pkg.tar.zst",target:"_blank",rel:"noopener noreferrer"}},[e._v("Arch"),r("OutboundLink")],1)]),e._v(" "),r("td",[e._v("[MacOS]")]),e._v(" "),r("td"),e._v(" "),r("td")]),e._v(" "),r("tr",[r("td",[e._v("Portable"),r("br"),e._v("(Injdk.cn)")]),e._v(" "),r("td",[r("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.93.1.220401/kangaroo-1.93.1.220401-AMD64.7z",target:"_blank",rel:"noopener noreferrer"}},[e._v("Windows"),r("OutboundLink")],1)]),e._v(" "),r("td",[r("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.93.1.220401/kangaroo-1.93.1.220401-arch.tar.gz",target:"_blank",rel:"noopener noreferrer"}},[e._v("Arch"),r("OutboundLink")],1)]),e._v(" "),r("td",[e._v("[MacOS]")]),e._v(" "),r("td"),e._v(" "),r("td")]),e._v(" "),r("tr",[r("td",[e._v("SHA256SUM"),r("br"),e._v("(Injdk.cn)")]),e._v(" "),r("td",[r("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.93.1.220401/kangaroo-1.93.1.220401.sha256sum",target:"_blank",rel:"noopener noreferrer"}},[e._v("SHA256SUM"),r("OutboundLink")],1)]),e._v(" "),r("td"),e._v(" "),r("td"),e._v(" "),r("td"),e._v(" "),r("td")])])]),e._v(" "),r("h2",{attrs:{id:"share-with-friends"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#share-with-friends"}},[e._v("#")]),e._v(" Share with friends")]),e._v(" "),r("social-share",{attrs:{networks:["facebook","twitter","whatsapp","telegram","linkedin","reddit","line","skype","pinterest"]}})],1)}),[],!1,null,null,null);t.default=o.exports}}]); \ No newline at end of file diff --git a/assets/js/103.7b48f60f.js b/assets/js/103.7b48f60f.js new file mode 100644 index 000000000..591dbdcac --- /dev/null +++ b/assets/js/103.7b48f60f.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[103],{687:function(t,e,r){"use strict";r.r(e);var a=r(13),n=Object(a.a)({},(function(){var t=this,e=t.$createElement,r=t._self._c||e;return r("ContentSlotsDistributor",{attrs:{"slot-key":t.$parent.slotKey}},[r("h1",{attrs:{id:"kangaroo-v1-94-1-dev"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#kangaroo-v1-94-1-dev"}},[t._v("#")]),t._v(" Kangaroo v1.94.1 (Dev)")]),t._v(" "),r("p",[t._v("This is a technical preview version, release for testing, be careful when using in the production environment.")]),t._v(" "),r("h2",{attrs:{id:"new-features-bug-fixes"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#new-features-bug-fixes"}},[t._v("#")]),t._v(" New features & bug-fixes")]),t._v(" "),r("ul",[r("li",[t._v("MySQL: Add function designer")]),t._v(" "),r("li",[t._v("MySQL: Add procedure designer")]),t._v(" "),r("li",[t._v("MySQL: Add user designer")]),t._v(" "),r("li",[t._v("MariaDB: Add function designer")]),t._v(" "),r("li",[t._v("MariaDB: Add procedure designer")]),t._v(" "),r("li",[t._v("MariaDB: Add user designer")]),t._v(" "),r("li",[t._v("PostgreSQL: Add function designer")]),t._v(" "),r("li",[t._v("PostgreSQL: Add procedure designer")]),t._v(" "),r("li",[t._v("PostgreSQL: Add user designer")]),t._v(" "),r("li",[t._v("Add runtime version support on About window")]),t._v(" "),r("li",[t._v("Update the Chinese translation")]),t._v(" "),r("li",[t._v("Fixed: workspace view issue")]),t._v(" "),r("li",[t._v("Fixed: autosave cache file issue")])]),t._v(" "),r("h2",{attrs:{id:"known-issues"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#known-issues"}},[t._v("#")]),t._v(" Known issues")]),t._v(" "),r("ul",[r("li",[t._v("MySQL: throw error message 'can't run this command now' after call function/procedure(libgda).")]),t._v(" "),r("li",[t._v("MariaDB: throw error message 'can't run this command now' after call function/procedure(libgda).")])]),t._v(" "),r("div",[r("script2",{attrs:{type:"text/javascript",async:"true",src:"https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"}}),t._v(" "),r("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),t._v(" "),r("script2",{attrs:{type:"text/javascript"}},[t._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),t._v(" "),r("h2",{attrs:{id:"installer-portable-packages"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#installer-portable-packages"}},[t._v("#")]),t._v(" Installer & Portable packages "),r("Badge",{attrs:{text:"link expired",type:"warning"}})],1),t._v(" "),r("p",[t._v("Recommend to use tool "),r("code",[t._v("sha256sum")]),t._v(" to verify the sums and signature of your packages that download from the internet, make sure they are safe and 100% correct.")]),t._v(" "),r("table",[r("thead",[r("tr",[r("th",[t._v("Packages")]),t._v(" "),r("th",[t._v("Windows")]),t._v(" "),r("th",[t._v("Linux")]),t._v(" "),r("th",[t._v("MacOS")]),t._v(" "),r("th",[t._v("iOS")]),t._v(" "),r("th",[t._v("Android")])])]),t._v(" "),r("tbody",[r("tr",[r("td",[t._v("Installer"),r("br"),t._v("(Github.com)")]),t._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.94.1.220501/kangaroo-1.94.1.220501-AMD64.exe",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows"),r("OutboundLink")],1)]),t._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.94.1.220501/kangaroo-1.94.1.220501-1-x86_64.pkg.tar.zst",target:"_blank",rel:"noopener noreferrer"}},[t._v("Arch"),r("OutboundLink")],1)]),t._v(" "),r("td",[t._v("[MacOS]")]),t._v(" "),r("td"),t._v(" "),r("td")]),t._v(" "),r("tr",[r("td",[t._v("Portable"),r("br"),t._v("(Github.com)")]),t._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.94.1.220501/kangaroo-1.94.1.220501-AMD64.7z",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows"),r("OutboundLink")],1)]),t._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.94.1.220501/kangaroo-1.94.1.220501-arch.tar.gz",target:"_blank",rel:"noopener noreferrer"}},[t._v("Arch"),r("OutboundLink")],1)]),t._v(" "),r("td",[t._v("[MacOS]")]),t._v(" "),r("td"),t._v(" "),r("td")]),t._v(" "),r("tr",[r("td",[t._v("SHA256SUM"),r("br"),t._v("(Github.com)")]),t._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.94.1.220501/kangaroo-1.94.1.220501.sha256sum",target:"_blank",rel:"noopener noreferrer"}},[t._v("SHA256SUM"),r("OutboundLink")],1)]),t._v(" "),r("td"),t._v(" "),r("td"),t._v(" "),r("td"),t._v(" "),r("td")]),t._v(" "),r("tr",[r("td",[t._v("-----------------")]),t._v(" "),r("td",[t._v("-----------------")]),t._v(" "),r("td",[t._v("-----------------")]),t._v(" "),r("td",[t._v("-----------------")]),t._v(" "),r("td"),t._v(" "),r("td")]),t._v(" "),r("tr",[r("td",[t._v("Installer"),r("br"),t._v("(Injdk.cn)")]),t._v(" "),r("td",[r("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.94.1.220501/kangaroo-1.94.1.220501-AMD64.exe",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows"),r("OutboundLink")],1)]),t._v(" "),r("td",[r("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.94.1.220501/kangaroo-1.94.1.220501-1-x86_64.pkg.tar.zst",target:"_blank",rel:"noopener noreferrer"}},[t._v("Arch"),r("OutboundLink")],1)]),t._v(" "),r("td",[t._v("[MacOS]")]),t._v(" "),r("td"),t._v(" "),r("td")]),t._v(" "),r("tr",[r("td",[t._v("Portable"),r("br"),t._v("(Injdk.cn)")]),t._v(" "),r("td",[r("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.94.1.220501/kangaroo-1.94.1.220501-AMD64.7z",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows"),r("OutboundLink")],1)]),t._v(" "),r("td",[r("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.94.1.220501/kangaroo-1.94.1.220501-arch.tar.gz",target:"_blank",rel:"noopener noreferrer"}},[t._v("Arch"),r("OutboundLink")],1)]),t._v(" "),r("td",[t._v("[MacOS]")]),t._v(" "),r("td"),t._v(" "),r("td")]),t._v(" "),r("tr",[r("td",[t._v("SHA256SUM"),r("br"),t._v("(Injdk.cn)")]),t._v(" "),r("td",[r("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.94.1.220501/kangaroo-1.94.1.220501.sha256sum",target:"_blank",rel:"noopener noreferrer"}},[t._v("SHA256SUM"),r("OutboundLink")],1)]),t._v(" "),r("td"),t._v(" "),r("td"),t._v(" "),r("td"),t._v(" "),r("td")])])]),t._v(" "),r("h2",{attrs:{id:"share-with-friends"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#share-with-friends"}},[t._v("#")]),t._v(" Share with friends")]),t._v(" "),r("social-share",{attrs:{networks:["facebook","twitter","whatsapp","telegram","linkedin","reddit","line","skype","pinterest"]}})],1)}),[],!1,null,null,null);e.default=n.exports}}]); \ No newline at end of file diff --git a/assets/js/104.13228891.js b/assets/js/104.13228891.js new file mode 100644 index 000000000..50ed3dc70 --- /dev/null +++ b/assets/js/104.13228891.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[104],{688:function(t,e,a){"use strict";a.r(e);var r=a(13),n=Object(r.a)({},(function(){var t=this,e=t.$createElement,a=t._self._c||e;return a("ContentSlotsDistributor",{attrs:{"slot-key":t.$parent.slotKey}},[a("h1",{attrs:{id:"kangaroo-v1-95-1-dev"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#kangaroo-v1-95-1-dev"}},[t._v("#")]),t._v(" Kangaroo v1.95.1 (Dev)")]),t._v(" "),a("p",[t._v("This is a technical preview version, release for testing, be careful when using in the production environment.")]),t._v(" "),a("h2",{attrs:{id:"new-features-bug-fixes"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#new-features-bug-fixes"}},[t._v("#")]),t._v(" New features & bug-fixes")]),t._v(" "),a("ul",[a("li",[t._v("MySQL: Add role designer")]),t._v(" "),a("li",[t._v("MySQL: Add schema designer")]),t._v(" "),a("li",[t._v("MySQL: Add database designer")]),t._v(" "),a("li",[t._v("MariaDB: Add role designer")]),t._v(" "),a("li",[t._v("MariaDB: Add schema designer")]),t._v(" "),a("li",[t._v("MariaDB: Add database designer")]),t._v(" "),a("li",[t._v("PostgreSQL: Add role designer")]),t._v(" "),a("li",[t._v("PostgreSQL: Add schema designer")]),t._v(" "),a("li",[t._v("PostgreSQL: Add database designer")]),t._v(" "),a("li",[t._v("Update explorer view with database and schema support")]),t._v(" "),a("li",[t._v("Refactor object tree context menu")]),t._v(" "),a("li",[t._v("Bind tab title with explorer title")]),t._v(" "),a("li",[t._v("Update the Chinese translation")])]),t._v(" "),a("h2",{attrs:{id:"known-issues"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#known-issues"}},[t._v("#")]),t._v(" Known issues")]),t._v(" "),a("ul",[a("li",[t._v("MySQL: throw error message 'can't run this command now' after call function/procedure(libgda).")]),t._v(" "),a("li",[t._v("MariaDB: throw error message 'can't run this command now' after call function/procedure(libgda).")])]),t._v(" "),a("div",[a("script2",{attrs:{type:"text/javascript",async:"true",src:"https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"}}),t._v(" "),a("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),t._v(" "),a("script2",{attrs:{type:"text/javascript"}},[t._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),t._v(" "),a("h2",{attrs:{id:"installer-portable-packages"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#installer-portable-packages"}},[t._v("#")]),t._v(" Installer & Portable packages "),a("Badge",{attrs:{text:"link expired",type:"warning"}})],1),t._v(" "),a("p",[t._v("Recommend to use tool "),a("code",[t._v("sha256sum")]),t._v(" to verify the sums and signature of your packages that download from the internet, make sure they are safe and 100% correct.")]),t._v(" "),a("table",[a("thead",[a("tr",[a("th",[t._v("Packages")]),t._v(" "),a("th",[t._v("Windows")]),t._v(" "),a("th",[t._v("Linux")]),t._v(" "),a("th",[t._v("MacOS")]),t._v(" "),a("th",[t._v("iOS")]),t._v(" "),a("th",[t._v("Android")])])]),t._v(" "),a("tbody",[a("tr",[a("td",[t._v("Installer"),a("br"),t._v("(Github.com)")]),t._v(" "),a("td",[a("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.95.1.220601/kangaroo-1.95.1.220601-AMD64.exe",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows"),a("OutboundLink")],1)]),t._v(" "),a("td",[a("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.95.1.220601/kangaroo-1.95.1.220601-1-x86_64.pkg.tar.zst",target:"_blank",rel:"noopener noreferrer"}},[t._v("Arch"),a("OutboundLink")],1)]),t._v(" "),a("td",[t._v("[MacOS]")]),t._v(" "),a("td"),t._v(" "),a("td")]),t._v(" "),a("tr",[a("td",[t._v("Portable"),a("br"),t._v("(Github.com)")]),t._v(" "),a("td",[a("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.95.1.220601/kangaroo-1.95.1.220601-AMD64.7z",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows"),a("OutboundLink")],1)]),t._v(" "),a("td",[a("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.95.1.220601/kangaroo-1.95.1.220601-arch.tar.gz",target:"_blank",rel:"noopener noreferrer"}},[t._v("Arch"),a("OutboundLink")],1)]),t._v(" "),a("td",[t._v("[MacOS]")]),t._v(" "),a("td"),t._v(" "),a("td")]),t._v(" "),a("tr",[a("td",[t._v("SHA256SUM"),a("br"),t._v("(Github.com)")]),t._v(" "),a("td",[a("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.95.1.220601/kangaroo-1.95.1.220601.sha256sum",target:"_blank",rel:"noopener noreferrer"}},[t._v("SHA256SUM"),a("OutboundLink")],1)]),t._v(" "),a("td"),t._v(" "),a("td"),t._v(" "),a("td"),t._v(" "),a("td")]),t._v(" "),a("tr",[a("td",[t._v("-----------------")]),t._v(" "),a("td",[t._v("-----------------")]),t._v(" "),a("td",[t._v("-----------------")]),t._v(" "),a("td",[t._v("-----------------")]),t._v(" "),a("td"),t._v(" "),a("td")]),t._v(" "),a("tr",[a("td",[t._v("Installer"),a("br"),t._v("(Injdk.cn)")]),t._v(" "),a("td",[a("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.95.1.220601/kangaroo-1.95.1.220601-AMD64.exe",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows"),a("OutboundLink")],1)]),t._v(" "),a("td",[a("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.95.1.220601/kangaroo-1.95.1.220601-1-x86_64.pkg.tar.zst",target:"_blank",rel:"noopener noreferrer"}},[t._v("Arch"),a("OutboundLink")],1)]),t._v(" "),a("td",[t._v("[MacOS]")]),t._v(" "),a("td"),t._v(" "),a("td")]),t._v(" "),a("tr",[a("td",[t._v("Portable"),a("br"),t._v("(Injdk.cn)")]),t._v(" "),a("td",[a("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.95.1.220601/kangaroo-1.95.1.220601-AMD64.7z",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows"),a("OutboundLink")],1)]),t._v(" "),a("td",[a("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.95.1.220601/kangaroo-1.95.1.220601-arch.tar.gz",target:"_blank",rel:"noopener noreferrer"}},[t._v("Arch"),a("OutboundLink")],1)]),t._v(" "),a("td",[t._v("[MacOS]")]),t._v(" "),a("td"),t._v(" "),a("td")]),t._v(" "),a("tr",[a("td",[t._v("SHA256SUM"),a("br"),t._v("(Injdk.cn)")]),t._v(" "),a("td",[a("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.95.1.220601/kangaroo-1.95.1.220601.sha256sum",target:"_blank",rel:"noopener noreferrer"}},[t._v("SHA256SUM"),a("OutboundLink")],1)]),t._v(" "),a("td"),t._v(" "),a("td"),t._v(" "),a("td"),t._v(" "),a("td")])])]),t._v(" "),a("h2",{attrs:{id:"share-with-friends"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#share-with-friends"}},[t._v("#")]),t._v(" Share with friends")]),t._v(" "),a("social-share",{attrs:{networks:["facebook","twitter","whatsapp","telegram","linkedin","reddit","line","skype","pinterest"]}})],1)}),[],!1,null,null,null);e.default=n.exports}}]); \ No newline at end of file diff --git a/assets/js/105.e88daf6d.js b/assets/js/105.e88daf6d.js new file mode 100644 index 000000000..d0c5779b9 --- /dev/null +++ b/assets/js/105.e88daf6d.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[105],{689:function(t,a,r){"use strict";r.r(a);var e=r(13),n=Object(e.a)({},(function(){var t=this,a=t.$createElement,r=t._self._c||a;return r("ContentSlotsDistributor",{attrs:{"slot-key":t.$parent.slotKey}},[r("h1",{attrs:{id:"kangaroo-v1-96-1-dev"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#kangaroo-v1-96-1-dev"}},[t._v("#")]),t._v(" Kangaroo v1.96.1 (Dev)")]),t._v(" "),r("p",[t._v("This is a technical preview version, release for testing, be careful when using in the production environment.")]),t._v(" "),r("h2",{attrs:{id:"new-features-bug-fixes"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#new-features-bug-fixes"}},[t._v("#")]),t._v(" New features & bug-fixes")]),t._v(" "),r("ul",[r("li",[t._v("Replace libgda with ODBC")]),t._v(" "),r("li",[t._v("Add general database support")]),t._v(" "),r("li",[t._v("Update the Chinese translation")])]),t._v(" "),r("div",[r("script2",{attrs:{type:"text/javascript",async:"true",src:"https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"}}),t._v(" "),r("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),t._v(" "),r("script2",{attrs:{type:"text/javascript"}},[t._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),t._v(" "),r("h2",{attrs:{id:"installer-portable-packages"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#installer-portable-packages"}},[t._v("#")]),t._v(" Installer & Portable packages "),r("Badge",{attrs:{text:"link expired",type:"warning"}})],1),t._v(" "),r("p",[t._v("Recommend to use tool "),r("code",[t._v("sha256sum")]),t._v(" to verify the sums and signature of your packages that download from the internet, make sure they are safe and 100% correct.")]),t._v(" "),r("table",[r("thead",[r("tr",[r("th",[t._v("Packages")]),t._v(" "),r("th",[t._v("Windows")]),t._v(" "),r("th",[t._v("Linux")]),t._v(" "),r("th",[t._v("MacOS")]),t._v(" "),r("th",[t._v("iOS")]),t._v(" "),r("th",[t._v("Android")])])]),t._v(" "),r("tbody",[r("tr",[r("td",[t._v("Installer"),r("br"),t._v("(Github.com)")]),t._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.96.1.220701/kangaroo-1.96.1.220701-AMD64.exe",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows"),r("OutboundLink")],1)]),t._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.96.1.220701/kangaroo-1.96.1.220701-1-x86_64.pkg.tar.zst",target:"_blank",rel:"noopener noreferrer"}},[t._v("Arch"),r("OutboundLink")],1)]),t._v(" "),r("td",[t._v("[MacOS]")]),t._v(" "),r("td"),t._v(" "),r("td")]),t._v(" "),r("tr",[r("td",[t._v("Portable"),r("br"),t._v("(Github.com)")]),t._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.96.1.220701/kangaroo-1.96.1.220701-AMD64.7z",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows"),r("OutboundLink")],1)]),t._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.96.1.220701/kangaroo-1.96.1.220701-arch.tar.gz",target:"_blank",rel:"noopener noreferrer"}},[t._v("Arch"),r("OutboundLink")],1)]),t._v(" "),r("td",[t._v("[MacOS]")]),t._v(" "),r("td"),t._v(" "),r("td")]),t._v(" "),r("tr",[r("td",[t._v("SHA256SUM"),r("br"),t._v("(Github.com)")]),t._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.96.1.220701/kangaroo-1.96.1.220701.sha256sum",target:"_blank",rel:"noopener noreferrer"}},[t._v("SHA256SUM"),r("OutboundLink")],1)]),t._v(" "),r("td"),t._v(" "),r("td"),t._v(" "),r("td"),t._v(" "),r("td")]),t._v(" "),r("tr",[r("td",[t._v("-----------------")]),t._v(" "),r("td",[t._v("-----------------")]),t._v(" "),r("td",[t._v("-----------------")]),t._v(" "),r("td",[t._v("-----------------")]),t._v(" "),r("td"),t._v(" "),r("td")]),t._v(" "),r("tr",[r("td",[t._v("Installer"),r("br"),t._v("(Injdk.cn)")]),t._v(" "),r("td",[r("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.96.1.220701/kangaroo-1.96.1.220701-AMD64.exe",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows"),r("OutboundLink")],1)]),t._v(" "),r("td",[r("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.96.1.220701/kangaroo-1.96.1.220701-1-x86_64.pkg.tar.zst",target:"_blank",rel:"noopener noreferrer"}},[t._v("Arch"),r("OutboundLink")],1)]),t._v(" "),r("td",[t._v("[MacOS]")]),t._v(" "),r("td"),t._v(" "),r("td")]),t._v(" "),r("tr",[r("td",[t._v("Portable"),r("br"),t._v("(Injdk.cn)")]),t._v(" "),r("td",[r("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.96.1.220701/kangaroo-1.96.1.220701-AMD64.7z",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows"),r("OutboundLink")],1)]),t._v(" "),r("td",[r("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.96.1.220701/kangaroo-1.96.1.220701-arch.tar.gz",target:"_blank",rel:"noopener noreferrer"}},[t._v("Arch"),r("OutboundLink")],1)]),t._v(" "),r("td",[t._v("[MacOS]")]),t._v(" "),r("td"),t._v(" "),r("td")]),t._v(" "),r("tr",[r("td",[t._v("SHA256SUM"),r("br"),t._v("(Injdk.cn)")]),t._v(" "),r("td",[r("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.96.1.220701/kangaroo-1.96.1.220701.sha256sum",target:"_blank",rel:"noopener noreferrer"}},[t._v("SHA256SUM"),r("OutboundLink")],1)]),t._v(" "),r("td"),t._v(" "),r("td"),t._v(" "),r("td"),t._v(" "),r("td")])])]),t._v(" "),r("h2",{attrs:{id:"share-with-friends"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#share-with-friends"}},[t._v("#")]),t._v(" Share with friends")]),t._v(" "),r("social-share",{attrs:{networks:["facebook","twitter","whatsapp","telegram","linkedin","reddit","line","skype","pinterest"]}})],1)}),[],!1,null,null,null);a.default=n.exports}}]); \ No newline at end of file diff --git a/assets/js/106.a703c1f8.js b/assets/js/106.a703c1f8.js new file mode 100644 index 000000000..1aaf6fd01 --- /dev/null +++ b/assets/js/106.a703c1f8.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[106],{690:function(t,r,e){"use strict";e.r(r);var a=e(13),o=Object(a.a)({},(function(){var t=this,r=t.$createElement,e=t._self._c||r;return e("ContentSlotsDistributor",{attrs:{"slot-key":t.$parent.slotKey}},[e("h1",{attrs:{id:"kangaroo-v1-97-1-dev"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#kangaroo-v1-97-1-dev"}},[t._v("#")]),t._v(" Kangaroo v1.97.1 (Dev)")]),t._v(" "),e("p",[t._v("This is a technical preview version, step forward to beta version, release for test and professional users, be careful while using it in the production environment.")]),t._v(" "),e("h2",{attrs:{id:"new-features-bug-fixes"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#new-features-bug-fixes"}},[t._v("#")]),t._v(" New features & bug-fixes")]),t._v(" "),e("ul",[e("li",[t._v("Update windows deploy script")]),t._v(" "),e("li",[t._v("Update ArchLinux build script")]),t._v(" "),e("li",[t._v("Upgrade close confirm dialog")]),t._v(" "),e("li",[t._v("Refactor datagrid with ColumnView")]),t._v(" "),e("li",[t._v("Windows installer support ODBC drivers")]),t._v(" "),e("li",[t._v("Improve Windows installer l10n support")]),t._v(" "),e("li",[t._v("Improve object explorer sort support")]),t._v(" "),e("li",[t._v("Improve content builder")]),t._v(" "),e("li",[t._v("Improve SQL builder")]),t._v(" "),e("li",[t._v("Improve DBNull value support")]),t._v(" "),e("li",[t._v("Update the Chinese translation")]),t._v(" "),e("li",[t._v("Fixed ODBC connection issues")])]),t._v(" "),e("div",[e("script2",{attrs:{type:"text/javascript",async:"true",src:"https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"}}),t._v(" "),e("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),t._v(" "),e("script2",{attrs:{type:"text/javascript"}},[t._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),t._v(" "),e("h2",{attrs:{id:"installer-portable-packages"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#installer-portable-packages"}},[t._v("#")]),t._v(" Installer & Portable packages "),e("Badge",{attrs:{text:"link expired",type:"warning"}})],1),t._v(" "),e("p",[t._v("Recommend to use tool "),e("code",[t._v("sha256sum")]),t._v(" to verify the sums and signature of your packages that download from the internet, make sure they are safe and 100% correct.")]),t._v(" "),e("table",[e("thead",[e("tr",[e("th",[t._v("Packages")]),t._v(" "),e("th",[t._v("Windows")]),t._v(" "),e("th",[t._v("Linux")]),t._v(" "),e("th",[t._v("MacOS")]),t._v(" "),e("th",[t._v("iOS")]),t._v(" "),e("th",[t._v("Android")])])]),t._v(" "),e("tbody",[e("tr",[e("td",[t._v("Installer"),e("br"),t._v("(Github.com)")]),t._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.97.1.220731/kangaroo-1.97.1.220731-AMD64.exe",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows"),e("OutboundLink")],1)]),t._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.97.1.220731/kangaroo-1.97.1.220731-1-x86_64.pkg.tar.zst",target:"_blank",rel:"noopener noreferrer"}},[t._v("Arch"),e("OutboundLink")],1)]),t._v(" "),e("td",[t._v("[MacOS]")]),t._v(" "),e("td"),t._v(" "),e("td")]),t._v(" "),e("tr",[e("td",[t._v("Portable"),e("br"),t._v("(Github.com)")]),t._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.97.1.220731/kangaroo-1.97.1.220731-AMD64.7z",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows"),e("OutboundLink")],1)]),t._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.97.1.220731/kangaroo-1.97.1.220731-arch.tar.gz",target:"_blank",rel:"noopener noreferrer"}},[t._v("Arch"),e("OutboundLink")],1)]),t._v(" "),e("td",[t._v("[MacOS]")]),t._v(" "),e("td"),t._v(" "),e("td")]),t._v(" "),e("tr",[e("td",[t._v("SHA256SUM"),e("br"),t._v("(Github.com)")]),t._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.97.1.220731/kangaroo-1.97.1.220731.sha256sum",target:"_blank",rel:"noopener noreferrer"}},[t._v("SHA256SUM"),e("OutboundLink")],1)]),t._v(" "),e("td"),t._v(" "),e("td"),t._v(" "),e("td"),t._v(" "),e("td")]),t._v(" "),e("tr",[e("td",[t._v("-----------------")]),t._v(" "),e("td",[t._v("-----------------")]),t._v(" "),e("td",[t._v("-----------------")]),t._v(" "),e("td",[t._v("-----------------")]),t._v(" "),e("td"),t._v(" "),e("td")]),t._v(" "),e("tr",[e("td",[t._v("Installer"),e("br"),t._v("(Injdk.cn)")]),t._v(" "),e("td",[e("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.97.1.220731/kangaroo-1.97.1.220731-AMD64.exe",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows"),e("OutboundLink")],1)]),t._v(" "),e("td",[e("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.97.1.220731/kangaroo-1.97.1.220731-1-x86_64.pkg.tar.zst",target:"_blank",rel:"noopener noreferrer"}},[t._v("Arch"),e("OutboundLink")],1)]),t._v(" "),e("td",[t._v("[MacOS]")]),t._v(" "),e("td"),t._v(" "),e("td")]),t._v(" "),e("tr",[e("td",[t._v("Portable"),e("br"),t._v("(Injdk.cn)")]),t._v(" "),e("td",[e("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.97.1.220731/kangaroo-1.97.1.220731-AMD64.7z",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows"),e("OutboundLink")],1)]),t._v(" "),e("td",[e("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.97.1.220731/kangaroo-1.97.1.220731-arch.tar.gz",target:"_blank",rel:"noopener noreferrer"}},[t._v("Arch"),e("OutboundLink")],1)]),t._v(" "),e("td",[t._v("[MacOS]")]),t._v(" "),e("td"),t._v(" "),e("td")]),t._v(" "),e("tr",[e("td",[t._v("SHA256SUM"),e("br"),t._v("(Injdk.cn)")]),t._v(" "),e("td",[e("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.97.1.220731/kangaroo-1.97.1.220731.sha256sum",target:"_blank",rel:"noopener noreferrer"}},[t._v("SHA256SUM"),e("OutboundLink")],1)]),t._v(" "),e("td"),t._v(" "),e("td"),t._v(" "),e("td"),t._v(" "),e("td")])])]),t._v(" "),e("h2",{attrs:{id:"share-with-friends"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#share-with-friends"}},[t._v("#")]),t._v(" Share with friends")]),t._v(" "),e("social-share",{attrs:{networks:["facebook","twitter","whatsapp","telegram","linkedin","reddit","line","skype","pinterest"]}})],1)}),[],!1,null,null,null);r.default=o.exports}}]); \ No newline at end of file diff --git a/assets/js/107.46d26aee.js b/assets/js/107.46d26aee.js new file mode 100644 index 000000000..f149556c6 --- /dev/null +++ b/assets/js/107.46d26aee.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[107],{691:function(a,t,e){"use strict";e.r(t);var r=e(13),o=Object(r.a)({},(function(){var a=this,t=a.$createElement,e=a._self._c||t;return e("ContentSlotsDistributor",{attrs:{"slot-key":a.$parent.slotKey}},[e("h1",{attrs:{id:"kangaroo-v1-98-1-dev"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#kangaroo-v1-98-1-dev"}},[a._v("#")]),a._v(" Kangaroo v1.98.1 (Dev)")]),a._v(" "),e("p",[a._v("This is a technical preview version, step forward to beta version, release for test and professional users, be careful while using it in the production environment.")]),a._v(" "),e("h2",{attrs:{id:"new-features-bug-fixes"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#new-features-bug-fixes"}},[a._v("#")]),a._v(" New features & bug-fixes")]),a._v(" "),e("ul",[e("li",[a._v("DataGrid add style for current cell")]),a._v(" "),e("li",[a._v("SQLite: refactor table designer")]),a._v(" "),e("li",[a._v("MySQL: refactor table designer")]),a._v(" "),e("li",[a._v("PostgreSQL: refactor table designer")]),a._v(" "),e("li",[a._v("Normalize column's length/precision/scale")]),a._v(" "),e("li",[a._v("Update the Chinese translation")]),a._v(" "),e("li",[a._v("Fixed ODBC CHAR/WCHAR data type issue")]),a._v(" "),e("li",[a._v("Fixed connection's driver missed issue")]),a._v(" "),e("li",[a._v("Fixed drop SQLite file to create connection issue")]),a._v(" "),e("li",[a._v("Fixed MySQL/MariaDB encoding(Chinese) issue")])]),a._v(" "),e("div",[e("script2",{attrs:{type:"text/javascript",async:"true",src:"https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"}}),a._v(" "),e("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),a._v(" "),e("script2",{attrs:{type:"text/javascript"}},[a._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),a._v(" "),e("h2",{attrs:{id:"installer-portable-packages"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#installer-portable-packages"}},[a._v("#")]),a._v(" Installer & Portable packages "),e("Badge",{attrs:{text:"link expired",type:"warning"}})],1),a._v(" "),e("p",[a._v("Windows users could install Kangaroo via winget tool directly, just run command: "),e("code",[a._v("winget install Taozuhong.Kangaroo")]),a._v(". Or download the package then install it manually.")]),a._v(" "),e("table",[e("thead",[e("tr",[e("th",[a._v("Packages")]),a._v(" "),e("th",[a._v("Windows")]),a._v(" "),e("th",[a._v("Linux")]),a._v(" "),e("th",[a._v("MacOS")]),a._v(" "),e("th",[a._v("iOS")]),a._v(" "),e("th",[a._v("Android")])])]),a._v(" "),e("tbody",[e("tr",[e("td",[a._v("Installer"),e("br"),a._v("(Github.com)")]),a._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.98.1.220904/kangaroo-1.98.1.220904-AMD64.exe",target:"_blank",rel:"noopener noreferrer"}},[a._v("Windows"),e("OutboundLink")],1)]),a._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.98.1.220904/kangaroo-1.98.1.220904-1-x86_64.pkg.tar.zst",target:"_blank",rel:"noopener noreferrer"}},[a._v("Arch"),e("OutboundLink")],1)]),a._v(" "),e("td",[a._v("[MacOS]")]),a._v(" "),e("td"),a._v(" "),e("td")]),a._v(" "),e("tr",[e("td",[a._v("Portable"),e("br"),a._v("(Github.com)")]),a._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.98.1.220904/kangaroo-1.98.1.220904-AMD64.7z",target:"_blank",rel:"noopener noreferrer"}},[a._v("Windows"),e("OutboundLink")],1)]),a._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.98.1.220904/kangaroo-1.98.1.220904-arch.tar.gz",target:"_blank",rel:"noopener noreferrer"}},[a._v("Arch"),e("OutboundLink")],1)]),a._v(" "),e("td",[a._v("[MacOS]")]),a._v(" "),e("td"),a._v(" "),e("td")]),a._v(" "),e("tr",[e("td",[a._v("-----------------")]),a._v(" "),e("td",[a._v("-----------------")]),a._v(" "),e("td",[a._v("-----------------")]),a._v(" "),e("td",[a._v("-----------------")]),a._v(" "),e("td"),a._v(" "),e("td")]),a._v(" "),e("tr",[e("td",[a._v("Installer"),e("br"),a._v("(Cloud@China)")]),a._v(" "),e("td",[e("a",{attrs:{href:"https://kangaroo.awaysoft.com/downloads/v1.98.1.220904/kangaroo-1.98.1.220904-AMD64.exe",target:"_blank",rel:"noopener noreferrer"}},[a._v("Server 1"),e("OutboundLink")],1),a._v(" "),e("br"),a._v(" "),e("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.98.1.220904/kangaroo-1.98.1.220904-AMD64.exe",target:"_blank",rel:"noopener noreferrer"}},[a._v("Server 2"),e("OutboundLink")],1)]),a._v(" "),e("td",[e("a",{attrs:{href:"https://kangaroo.awaysoft.com/downloads/v1.98.1.220904/kangaroo-1.98.1.220904-1-x86_64.pkg.tar.zst",target:"_blank",rel:"noopener noreferrer"}},[a._v("Server 1"),e("OutboundLink")],1),a._v(" "),e("br"),a._v(" "),e("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.98.1.220904/kangaroo-1.98.1.220904-1-x86_64.pkg.tar.zst",target:"_blank",rel:"noopener noreferrer"}},[a._v("Server 2"),e("OutboundLink")],1)]),a._v(" "),e("td",[a._v("[MacOS]")]),a._v(" "),e("td"),a._v(" "),e("td")]),a._v(" "),e("tr",[e("td",[a._v("Portable"),e("br"),a._v("(Cloud@China)")]),a._v(" "),e("td",[e("a",{attrs:{href:"https://kangaroo.awaysoft.com/downloads/v1.98.1.220904/kangaroo-1.98.1.220904-AMD64.7z",target:"_blank",rel:"noopener noreferrer"}},[a._v("Server 1"),e("OutboundLink")],1),a._v(" "),e("br"),a._v(" "),e("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.98.1.220904/kangaroo-1.98.1.220904-AMD64.7z",target:"_blank",rel:"noopener noreferrer"}},[a._v("Server 2"),e("OutboundLink")],1)]),a._v(" "),e("td",[e("a",{attrs:{href:"https://kangaroo.awaysoft.com/downloads/v1.98.1.220904/kangaroo-1.98.1.220904-arch.tar.gz",target:"_blank",rel:"noopener noreferrer"}},[a._v("Server 1"),e("OutboundLink")],1),a._v(" "),e("br"),a._v(" "),e("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.98.1.220904/kangaroo-1.98.1.220904-arch.tar.gz",target:"_blank",rel:"noopener noreferrer"}},[a._v("Server 2"),e("OutboundLink")],1)]),a._v(" "),e("td",[a._v("[MacOS]")]),a._v(" "),e("td"),a._v(" "),e("td")])])]),a._v(" "),e("div",[e("script2",{attrs:{type:"text/javascript",async:"true",src:"https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"}}),a._v(" "),e("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),a._v(" "),e("script2",{attrs:{type:"text/javascript"}},[a._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),a._v(" "),e("h2",{attrs:{id:"sha256sum"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#sha256sum"}},[a._v("#")]),a._v(" SHA256SUM")]),a._v(" "),e("p",[a._v("Recommend to use tools like "),e("code",[a._v("sha256sum")]),a._v(" or "),e("code",[a._v("7-Zip")]),a._v(" to verify the checksum and signature of your packages, make sure they are safe and 100% correct.")]),a._v(" "),e("table",[e("thead",[e("tr",[e("th",[a._v("sha256sum checksum")]),a._v(" "),e("th",[a._v("Package name")])])]),a._v(" "),e("tbody",[e("tr",[e("td",[a._v("b9ae08ebdfc3f2fb3d96f2bc7d8c4a36d41201b933960d581a178c3002793c1f")]),a._v(" "),e("td",[a._v("kangaroo-1.98.1.220904-1-x86_64.pkg.tar.zst")])]),a._v(" "),e("tr",[e("td",[a._v("2eb866162f4f5d9f1a30d76a4986a82d4c68218a055528ce58b812b4cb6e8ab6")]),a._v(" "),e("td",[a._v("kangaroo-1.98.1.220904-AMD64.7z")])]),a._v(" "),e("tr",[e("td",[a._v("af96328d31e351eeb46c67a2bae644fbffd995525bc348952f8e853ba21ef46a")]),a._v(" "),e("td",[a._v("kangaroo-1.98.1.220904-AMD64.exe")])]),a._v(" "),e("tr",[e("td",[a._v("c1b07a5d500c125ec838a0e7859be6c649ea99883eab6d9953d3422276e67eaf")]),a._v(" "),e("td",[a._v("kangaroo-1.98.1.220904-arch.tar.gz")])])])]),a._v(" "),e("h2",{attrs:{id:"share-with-friends"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#share-with-friends"}},[a._v("#")]),a._v(" Share with friends")]),a._v(" "),e("social-share",{attrs:{networks:["facebook","twitter","whatsapp","telegram","linkedin","reddit","line","skype","pinterest"]}})],1)}),[],!1,null,null,null);t.default=o.exports}}]); \ No newline at end of file diff --git a/assets/js/108.9d7c2395.js b/assets/js/108.9d7c2395.js new file mode 100644 index 000000000..8b4431e6a --- /dev/null +++ b/assets/js/108.9d7c2395.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[108],{693:function(a,t,e){"use strict";e.r(t);var r=e(13),o=Object(r.a)({},(function(){var a=this,t=a.$createElement,e=a._self._c||t;return e("ContentSlotsDistributor",{attrs:{"slot-key":a.$parent.slotKey}},[e("h1",{attrs:{id:"kangaroo-v1-99-1-dev"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#kangaroo-v1-99-1-dev"}},[a._v("#")]),a._v(" Kangaroo v1.99.1 (Dev)")]),a._v(" "),e("p",[a._v("This is a technical preview version, step forward to beta version, release for test and professional users, be careful while using it in the production environment.")]),a._v(" "),e("h2",{attrs:{id:"new-features-bug-fixes"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#new-features-bug-fixes"}},[a._v("#")]),a._v(" New features & bug-fixes")]),a._v(" "),e("ul",[e("li",[a._v("Normalize DataModel and MetaModel")]),a._v(" "),e("li",[a._v("Refactor documents dialog")]),a._v(" "),e("li",[a._v("Refactor export pages")]),a._v(" "),e("li",[a._v("Refactor import pages")]),a._v(" "),e("li",[a._v("Refactor connection dialog")]),a._v(" "),e("li",[a._v("Add attach database dialog")]),a._v(" "),e("li",[a._v("Upgrade libsoup2 to libsoup3")]),a._v(" "),e("li",[a._v("Add ODBC general support")]),a._v(" "),e("li",[a._v("Add ODBC help entry point")]),a._v(" "),e("li",[a._v("Add object search support")]),a._v(" "),e("li",[a._v("Update Windows and ArchLinux installer and deploy script")]),a._v(" "),e("li",[a._v("SQLite: attach and detach database")]),a._v(" "),e("li",[a._v("SQLite: load extension support")]),a._v(" "),e("li",[a._v("Improve the way to create new connection")]),a._v(" "),e("li",[a._v("Update Chinese translation")]),a._v(" "),e("li",[a._v("Fixed shortcut file issue")])]),a._v(" "),e("div",[e("script2",{attrs:{type:"text/javascript",async:"true",src:"https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"}}),a._v(" "),e("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),a._v(" "),e("script2",{attrs:{type:"text/javascript"}},[a._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),a._v(" "),e("h2",{attrs:{id:"installer-portable-packages"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#installer-portable-packages"}},[a._v("#")]),a._v(" Installer & Portable packages "),e("Badge",{attrs:{text:"link expired",type:"warning"}})],1),a._v(" "),e("p",[a._v("Windows users could install Kangaroo via winget tool directly, just run command: "),e("code",[a._v("winget install Taozuhong.Kangaroo")]),a._v(". Or download the package then install it manually.")]),a._v(" "),e("table",[e("thead",[e("tr",[e("th",[a._v("Packages")]),a._v(" "),e("th",[a._v("Windows")]),a._v(" "),e("th",[a._v("Linux")]),a._v(" "),e("th",[a._v("MacOS")]),a._v(" "),e("th",[a._v("iOS")]),a._v(" "),e("th",[a._v("Android")])])]),a._v(" "),e("tbody",[e("tr",[e("td",[a._v("Installer"),e("br"),a._v("(Github.com)")]),a._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.99.1.221001/kangaroo-1.99.1.221001-AMD64.exe",target:"_blank",rel:"noopener noreferrer"}},[a._v("Windows"),e("OutboundLink")],1)]),a._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.99.1.221001/kangaroo-1.99.1.221001-1-x86_64.pkg.tar.zst",target:"_blank",rel:"noopener noreferrer"}},[a._v("Arch"),e("OutboundLink")],1)]),a._v(" "),e("td",[a._v("[MacOS]")]),a._v(" "),e("td"),a._v(" "),e("td")]),a._v(" "),e("tr",[e("td",[a._v("Portable"),e("br"),a._v("(Github.com)")]),a._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.99.1.221001/kangaroo-1.99.1.221001-AMD64.7z",target:"_blank",rel:"noopener noreferrer"}},[a._v("Windows"),e("OutboundLink")],1)]),a._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.99.1.221001/kangaroo-1.99.1.221001-arch.tar.gz",target:"_blank",rel:"noopener noreferrer"}},[a._v("Arch"),e("OutboundLink")],1)]),a._v(" "),e("td",[a._v("[MacOS]")]),a._v(" "),e("td"),a._v(" "),e("td")]),a._v(" "),e("tr",[e("td",[a._v("-----------------")]),a._v(" "),e("td",[a._v("-----------------")]),a._v(" "),e("td",[a._v("-----------------")]),a._v(" "),e("td",[a._v("-----------------")]),a._v(" "),e("td"),a._v(" "),e("td")]),a._v(" "),e("tr",[e("td",[a._v("Installer"),e("br"),a._v("(Cloud@China)")]),a._v(" "),e("td",[e("a",{attrs:{href:"https://kangaroo.awaysoft.com/downloads/v1.99.1.221001/kangaroo-1.99.1.221001-AMD64.exe",target:"_blank",rel:"noopener noreferrer"}},[a._v("Server 1"),e("OutboundLink")],1),a._v(" "),e("br"),a._v(" "),e("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.99.1.221001/kangaroo-1.99.1.221001-AMD64.exe",target:"_blank",rel:"noopener noreferrer"}},[a._v("Server 2"),e("OutboundLink")],1)]),a._v(" "),e("td",[e("a",{attrs:{href:"https://kangaroo.awaysoft.com/downloads/v1.99.1.221001/kangaroo-1.99.1.221001-1-x86_64.pkg.tar.zst",target:"_blank",rel:"noopener noreferrer"}},[a._v("Server 1"),e("OutboundLink")],1),a._v(" "),e("br"),a._v(" "),e("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.99.1.221001/kangaroo-1.99.1.221001-1-x86_64.pkg.tar.zst",target:"_blank",rel:"noopener noreferrer"}},[a._v("Server 2"),e("OutboundLink")],1)]),a._v(" "),e("td",[a._v("[MacOS]")]),a._v(" "),e("td"),a._v(" "),e("td")]),a._v(" "),e("tr",[e("td",[a._v("Portable"),e("br"),a._v("(Cloud@China)")]),a._v(" "),e("td",[e("a",{attrs:{href:"https://kangaroo.awaysoft.com/downloads/v1.99.1.221001/kangaroo-1.99.1.221001-AMD64.7z",target:"_blank",rel:"noopener noreferrer"}},[a._v("Server 1"),e("OutboundLink")],1),a._v(" "),e("br"),a._v(" "),e("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.99.1.221001/kangaroo-1.99.1.221001-AMD64.7z",target:"_blank",rel:"noopener noreferrer"}},[a._v("Server 2"),e("OutboundLink")],1)]),a._v(" "),e("td",[e("a",{attrs:{href:"https://kangaroo.awaysoft.com/downloads/v1.99.1.221001/kangaroo-1.99.1.221001-arch.tar.gz",target:"_blank",rel:"noopener noreferrer"}},[a._v("Server 1"),e("OutboundLink")],1),a._v(" "),e("br"),a._v(" "),e("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.99.1.221001/kangaroo-1.99.1.221001-arch.tar.gz",target:"_blank",rel:"noopener noreferrer"}},[a._v("Server 2"),e("OutboundLink")],1)]),a._v(" "),e("td",[a._v("[MacOS]")]),a._v(" "),e("td"),a._v(" "),e("td")])])]),a._v(" "),e("div",[e("script2",{attrs:{type:"text/javascript",async:"true",src:"https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"}}),a._v(" "),e("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),a._v(" "),e("script2",{attrs:{type:"text/javascript"}},[a._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),a._v(" "),e("h2",{attrs:{id:"sha256sum"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#sha256sum"}},[a._v("#")]),a._v(" SHA256SUM")]),a._v(" "),e("p",[a._v("Recommend to use tools like "),e("code",[a._v("sha256sum")]),a._v(" or "),e("code",[a._v("7-Zip")]),a._v(" to verify the checksum and signature of your packages, make sure they are safe and 100% correct.")]),a._v(" "),e("table",[e("thead",[e("tr",[e("th",[a._v("sha256sum checksum")]),a._v(" "),e("th",[a._v("Package name")])])]),a._v(" "),e("tbody",[e("tr",[e("td",[a._v("d2a49deb6803af0909f2c34aa4bd4c058fd9229bd35162127fc6f7a63423e61f")]),a._v(" "),e("td",[a._v("kangaroo-1.99.1.221001-1-x86_64.pkg.tar.zst")])]),a._v(" "),e("tr",[e("td",[a._v("1d59c87696fae3218d78e4012f7f188de8a25c73acd2e7d6e87041048e412761")]),a._v(" "),e("td",[a._v("kangaroo-1.99.1.221001-AMD64.7z")])]),a._v(" "),e("tr",[e("td",[a._v("98b0ba13c7da75f3132d1cff66dd32969b15d8800e6a24ded3e4a34a126842e9")]),a._v(" "),e("td",[a._v("kangaroo-1.99.1.221001-AMD64.exe")])]),a._v(" "),e("tr",[e("td",[a._v("d4b50aeb4b4e35b4e72d8247b8050a5dc9d7d3e088bc4dd9e83af28982e3a6e6")]),a._v(" "),e("td",[a._v("kangaroo-1.99.1.221001-arch.tar.gz")])])])]),a._v(" "),e("h2",{attrs:{id:"share-with-friends"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#share-with-friends"}},[a._v("#")]),a._v(" Share with friends")]),a._v(" "),e("social-share",{attrs:{networks:["facebook","twitter","whatsapp","telegram","linkedin","reddit","line","skype","pinterest"]}})],1)}),[],!1,null,null,null);t.default=o.exports}}]); \ No newline at end of file diff --git a/assets/js/109.8b52ad90.js b/assets/js/109.8b52ad90.js new file mode 100644 index 000000000..66e233de9 --- /dev/null +++ b/assets/js/109.8b52ad90.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[109],{692:function(a,t,e){"use strict";e.r(t);var r=e(13),o=Object(r.a)({},(function(){var a=this,t=a.$createElement,e=a._self._c||t;return e("ContentSlotsDistributor",{attrs:{"slot-key":a.$parent.slotKey}},[e("h1",{attrs:{id:"kangaroo-v2-0-0-beta"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#kangaroo-v2-0-0-beta"}},[a._v("#")]),a._v(" Kangaroo v2.0.0 (Beta)")]),a._v(" "),e("p",[a._v("This is a stable version, features and maturity reached the version target, recommend for all users.")]),a._v(" "),e("h2",{attrs:{id:"new-features-bug-fixes"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#new-features-bug-fixes"}},[a._v("#")]),a._v(" New features & bug-fixes")]),a._v(" "),e("ul",[e("li",[a._v("Refactor importer page (columns/preview)")]),a._v(" "),e("li",[a._v("Refactor columns selection dialog")]),a._v(" "),e("li",[a._v("Refactor SQLite columns dialog")]),a._v(" "),e("li",[a._v("Refactor PostgreSQL columns dialog")]),a._v(" "),e("li",[a._v("Refactor MySQL columns dialog")]),a._v(" "),e("li",[a._v("Refactor type values dialog (Enum/set)")]),a._v(" "),e("li",[a._v("Refactor documents dialog")]),a._v(" "),e("li",[a._v("Refactor DataGrid events and context menu")]),a._v(" "),e("li",[a._v("Replace icon with symbolic icon")]),a._v(" "),e("li",[a._v("Implement form view edit and save support")]),a._v(" "),e("li",[a._v("Implement table view edit and save support")]),a._v(" "),e("li",[a._v("Implement Binary/BLOB import/export/save support")]),a._v(" "),e("li",[a._v("Improve SQLite schema support")]),a._v(" "),e("li",[a._v("Form view navigation support")]),a._v(" "),e("li",[a._v("Update Chinese translation")]),a._v(" "),e("li",[a._v("Fixed numeric value lost its decimal issue")]),a._v(" "),e("li",[a._v("Fixed toolbar icon size issue")]),a._v(" "),e("li",[a._v("Fixed explorer DataGrid issue")]),a._v(" "),e("li",[a._v("Fixed import data failure issue")]),a._v(" "),e("li",[a._v("Fixed index loading crash issue")]),a._v(" "),e("li",[a._v("Fixed repo tree node change issue")]),a._v(" "),e("li",[a._v("Fixed SQLite function crash issue")]),a._v(" "),e("li",[a._v("Fixed application warning messages")]),a._v(" "),e("li",[a._v("Fixed compiler warning messages")]),a._v(" "),e("li",[a._v("Fixed context menu dump action issue")])]),a._v(" "),e("div",[e("script2",{attrs:{type:"text/javascript",async:"true",src:"https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"}}),a._v(" "),e("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),a._v(" "),e("script2",{attrs:{type:"text/javascript"}},[a._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),a._v(" "),e("h2",{attrs:{id:"installer-portable-packages"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#installer-portable-packages"}},[a._v("#")]),a._v(" Installer & Portable packages "),e("Badge",{attrs:{text:"link expired",type:"warning"}})],1),a._v(" "),e("p",[a._v("Windows users could install Kangaroo via winget tool directly, just run command: "),e("code",[a._v("winget install Taozuhong.Kangaroo")]),a._v(". Or download the package then install it manually.")]),a._v(" "),e("table",[e("thead",[e("tr",[e("th",[a._v("Packages")]),a._v(" "),e("th",[a._v("Windows")]),a._v(" "),e("th",[a._v("Linux")]),a._v(" "),e("th",[a._v("MacOS")]),a._v(" "),e("th",[a._v("iOS")]),a._v(" "),e("th",[a._v("Android")])])]),a._v(" "),e("tbody",[e("tr",[e("td",[a._v("Installer"),e("br"),a._v("(Github.com)")]),a._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v2.0.0.221101/kangaroo-2.0.0.221101-AMD64.exe",target:"_blank",rel:"noopener noreferrer"}},[a._v("Windows"),e("OutboundLink")],1)]),a._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v2.0.0.221101/kangaroo-2.0.0.221101-1-x86_64.pkg.tar.zst",target:"_blank",rel:"noopener noreferrer"}},[a._v("Arch"),e("OutboundLink")],1)]),a._v(" "),e("td",[a._v("[MacOS]")]),a._v(" "),e("td"),a._v(" "),e("td")]),a._v(" "),e("tr",[e("td",[a._v("Portable"),e("br"),a._v("(Github.com)")]),a._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v2.0.0.221101/kangaroo-2.0.0.221101-AMD64.7z",target:"_blank",rel:"noopener noreferrer"}},[a._v("Windows"),e("OutboundLink")],1)]),a._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v2.0.0.221101/kangaroo-2.0.0.221101-arch.tar.gz",target:"_blank",rel:"noopener noreferrer"}},[a._v("Arch"),e("OutboundLink")],1)]),a._v(" "),e("td",[a._v("[MacOS]")]),a._v(" "),e("td"),a._v(" "),e("td")]),a._v(" "),e("tr",[e("td",[a._v("-----------------")]),a._v(" "),e("td",[a._v("-----------------")]),a._v(" "),e("td",[a._v("-----------------")]),a._v(" "),e("td",[a._v("-----------------")]),a._v(" "),e("td"),a._v(" "),e("td")]),a._v(" "),e("tr",[e("td",[a._v("Installer"),e("br"),a._v("(Cloud@China)")]),a._v(" "),e("td",[e("a",{attrs:{href:"https://kangaroo.awaysoft.com/downloads/v2.0.0.221101/kangaroo-2.0.0.221101-AMD64.exe",target:"_blank",rel:"noopener noreferrer"}},[a._v("Server 1"),e("OutboundLink")],1),a._v(" "),e("br"),a._v(" "),e("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v2.0.0.221101/kangaroo-2.0.0.221101-AMD64.exe",target:"_blank",rel:"noopener noreferrer"}},[a._v("Server 2"),e("OutboundLink")],1)]),a._v(" "),e("td",[e("a",{attrs:{href:"https://kangaroo.awaysoft.com/downloads/v2.0.0.221101/kangaroo-2.0.0.221101-1-x86_64.pkg.tar.zst",target:"_blank",rel:"noopener noreferrer"}},[a._v("Server 1"),e("OutboundLink")],1),a._v(" "),e("br"),a._v(" "),e("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v2.0.0.221101/kangaroo-2.0.0.221101-1-x86_64.pkg.tar.zst",target:"_blank",rel:"noopener noreferrer"}},[a._v("Server 2"),e("OutboundLink")],1)]),a._v(" "),e("td",[a._v("[MacOS]")]),a._v(" "),e("td"),a._v(" "),e("td")]),a._v(" "),e("tr",[e("td",[a._v("Portable"),e("br"),a._v("(Cloud@China)")]),a._v(" "),e("td",[e("a",{attrs:{href:"https://kangaroo.awaysoft.com/downloads/v2.0.0.221101/kangaroo-2.0.0.221101-AMD64.7z",target:"_blank",rel:"noopener noreferrer"}},[a._v("Server 1"),e("OutboundLink")],1),a._v(" "),e("br"),a._v(" "),e("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v2.0.0.221101/kangaroo-2.0.0.221101-AMD64.7z",target:"_blank",rel:"noopener noreferrer"}},[a._v("Server 2"),e("OutboundLink")],1)]),a._v(" "),e("td",[e("a",{attrs:{href:"https://kangaroo.awaysoft.com/downloads/v2.0.0.221101/kangaroo-2.0.0.221101-arch.tar.gz",target:"_blank",rel:"noopener noreferrer"}},[a._v("Server 1"),e("OutboundLink")],1),a._v(" "),e("br"),a._v(" "),e("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v2.0.0.221101/kangaroo-2.0.0.221101-arch.tar.gz",target:"_blank",rel:"noopener noreferrer"}},[a._v("Server 2"),e("OutboundLink")],1)]),a._v(" "),e("td",[a._v("[MacOS]")]),a._v(" "),e("td"),a._v(" "),e("td")])])]),a._v(" "),e("div",[e("script2",{attrs:{type:"text/javascript",async:"true",src:"https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"}}),a._v(" "),e("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),a._v(" "),e("script2",{attrs:{type:"text/javascript"}},[a._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),a._v(" "),e("h2",{attrs:{id:"sha256sum"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#sha256sum"}},[a._v("#")]),a._v(" SHA256SUM")]),a._v(" "),e("p",[a._v("Recommend to use tools like "),e("code",[a._v("sha256sum")]),a._v(" or "),e("code",[a._v("7-Zip")]),a._v(" to verify the checksum and signature of your packages, make sure they are safe and 100% correct.")]),a._v(" "),e("table",[e("thead",[e("tr",[e("th",[a._v("sha256sum checksum")]),a._v(" "),e("th",[a._v("Package name")])])]),a._v(" "),e("tbody",[e("tr",[e("td",[a._v("5d2eb07a8f05cccc1c07886c56b3b2de9752f6e6efcf0ced62f8d97a02fc7117")]),a._v(" "),e("td",[a._v("kangaroo-2.0.0.221101-AMD64.exe")])]),a._v(" "),e("tr",[e("td",[a._v("3f6fd583a70396563ce63d4416482f1f4b752e55259c8fcf95c281fa479338e5")]),a._v(" "),e("td",[a._v("kangaroo-2.0.0.221101-AMD64.7z")])]),a._v(" "),e("tr",[e("td",[a._v("8f133c6b4a512de64a94d7cfe87184dd91e84d71965ede03076dadef3da4e785")]),a._v(" "),e("td",[a._v("kangaroo-2.0.0.221101-1-x86_64.pkg.tar.zst")])]),a._v(" "),e("tr",[e("td",[a._v("08c705cb664ac6aeb1b8238520f1c8f9219e6639561c8b7d109cfb5f17f62ed5")]),a._v(" "),e("td",[a._v("kangaroo-2.0.0.221101-arch.tar.gz")])])])]),a._v(" "),e("h2",{attrs:{id:"share-with-friends"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#share-with-friends"}},[a._v("#")]),a._v(" Share with friends")]),a._v(" "),e("social-share",{attrs:{networks:["facebook","twitter","whatsapp","telegram","linkedin","reddit","line","skype","pinterest"]}})],1)}),[],!1,null,null,null);t.default=o.exports}}]); \ No newline at end of file diff --git a/assets/js/11.4895e8f8.js b/assets/js/11.4895e8f8.js new file mode 100644 index 000000000..86cd8e5a0 --- /dev/null +++ b/assets/js/11.4895e8f8.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[11],{559:function(t,s,a){t.exports=a.p+"assets/img/kangaroo-connection-mysql.51e03644.png"},560:function(t,s,a){t.exports=a.p+"assets/img/kangaroo-connection-ssh.eb458bf4.png"},719:function(t,s,a){"use strict";a.r(s);var r=a(13),e=Object(r.a)({},(function(){var t=this,s=t.$createElement,r=t._self._c||s;return r("ContentSlotsDistributor",{attrs:{"slot-key":t.$parent.slotKey}},[r("h1",{attrs:{id:"连接管理"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#连接管理"}},[t._v("#")]),t._v(" 连接管理")]),t._v(" "),r("h2",{attrs:{id:"数据库连接限制"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#数据库连接限制"}},[t._v("#")]),t._v(" 数据库连接限制")]),t._v(" "),r("p",[t._v("目前版本的数据库连接具有如下限制:")]),t._v(" "),r("ul",[r("li",[t._v("安全套接字连接(SSL) 暂未支持")]),t._v(" "),r("li",[t._v("安全外壳协议连接(SSH) 暂不支持加密密匙")])]),t._v(" "),r("h2",{attrs:{id:"sqlite"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#sqlite"}},[t._v("#")]),t._v(" SQLite")]),t._v(" "),r("p",[t._v("连接 SQLite 数据库是很容易的,只需按照如下步骤操作:")]),t._v(" "),r("ul",[r("li",[t._v("第一步: 点击标题栏上加号(+)按钮或者主菜单的__连接数据库__")]),t._v(" "),r("li",[t._v("第二步: 在连接起始页中选择__新建连接__,打开连接对话框。")]),t._v(" "),r("li",[t._v("第三步: 输入连接名字、选择数据库类型为 SQLite,然后选择左边加号创建或右边打开图标加载数据库文件。")]),t._v(" "),r("li",[t._v("第四步: 点击__测试连接__按钮测试连接可用性,然后点击__保存__按钮保存连接。")]),t._v(" "),r("li",[t._v("第五步: 连接起始页中选择点击新建的数据库连接,即可打开数据库。")])]),t._v(" "),r("h2",{attrs:{id:"mysql-mariadb"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#mysql-mariadb"}},[t._v("#")]),t._v(" MySQL / MariaDB")]),t._v(" "),r("p",[t._v("MySQL / MariaDB 数据库连接类似于SQLite数据库连接,稍微复杂一些,因为它支持多种登录认证方式。所以您需要提前准备好连接所需相关素材,最顺畅的连接方式是使用原生密码认证登录方式(mysql_native_password), 原生密码认证登录方式可按如下步骤设置:")]),t._v(" "),r("div",{staticClass:"language-sql extra-class"},[r("pre",{pre:!0,attrs:{class:"language-sql"}},[r("code",[r("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),r("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" 打开控制台终端,执行命令\n"),r("span",{pre:!0,attrs:{class:"token number"}},[t._v("2")]),r("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" mysql "),r("span",{pre:!0,attrs:{class:"token operator"}},[t._v("-")]),t._v("u root "),r("span",{pre:!0,attrs:{class:"token operator"}},[t._v("-")]),t._v("p\n"),r("span",{pre:!0,attrs:{class:"token number"}},[t._v("3")]),r("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" 输入密码\n"),r("span",{pre:!0,attrs:{class:"token number"}},[t._v("4")]),r("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),r("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("ALTER")]),t._v(" "),r("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("USER")]),t._v(" root"),r("span",{pre:!0,attrs:{class:"token variable"}},[t._v("@localhost")]),t._v(" IDENTIFIED "),r("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("WITH")]),t._v(" mysql_native_password "),r("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("BY")]),t._v(" "),r("span",{pre:!0,attrs:{class:"token string"}},[t._v("'password'")]),r("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(";")]),t._v("\n")])])]),r("p",[t._v("更新登录认证方式后,连接数据库就很容易了,请参考下图:\n"),r("img",{attrs:{src:a(559),alt:"Make a MySQL connection"}})]),t._v(" "),r("p",[t._v("如果您的数据库系统架设在私有网络或防火墙后面,集成 SSH2 客户端可帮助您轻松建立连接,请参考下图:")]),t._v(" "),r("p",[r("img",{attrs:{src:a(560),alt:"Make a MySQL connection with SSH"}})]),t._v(" "),r("h2",{attrs:{id:"postgresql"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#postgresql"}},[t._v("#")]),t._v(" PostgreSQL")]),t._v(" "),r("p",[t._v("PostgreSQL 数据库连接和MySQL数据库连接的差异性很少,参考 MySQL 连接即可;")]),t._v(" "),r("Vssue",{attrs:{"issue-id":7,title:t.$title}})],1)}),[],!1,null,null,null);s.default=e.exports}}]); \ No newline at end of file diff --git a/assets/js/110.74e967fd.js b/assets/js/110.74e967fd.js new file mode 100644 index 000000000..5aee8e727 --- /dev/null +++ b/assets/js/110.74e967fd.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[110],{696:function(a,r,e){"use strict";e.r(r);var t=e(13),o=Object(t.a)({},(function(){var a=this,r=a.$createElement,e=a._self._c||r;return e("ContentSlotsDistributor",{attrs:{"slot-key":a.$parent.slotKey}},[e("h1",{attrs:{id:"kangaroo-v2-1-1-beta"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#kangaroo-v2-1-1-beta"}},[a._v("#")]),a._v(" Kangaroo v2.1.1 (Beta)")]),a._v(" "),e("p",[a._v("This is a stable version, features and maturity reached the version target, recommend for all users.")]),a._v(" "),e("h2",{attrs:{id:"new-features-bug-fixes"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#new-features-bug-fixes"}},[a._v("#")]),a._v(" New features & bug-fixes")]),a._v(" "),e("ul",[e("li",[a._v("Add dynamic QR code support")]),a._v(" "),e("li",[a._v("Add debian package support")]),a._v(" "),e("li",[a._v("Implement designer's clone menu action")]),a._v(" "),e("li",[a._v("Implement designer's copy/paste action")]),a._v(" "),e("li",[a._v("Add designer's cut menu item")]),a._v(" "),e("li",[a._v("Add SQL "),e("code",[a._v("EXPLAIN")]),a._v(" statement with format support")]),a._v(" "),e("li",[a._v("Add SQL "),e("code",[a._v("ANALYZE")]),a._v(" statement support")]),a._v(" "),e("li",[a._v("Refactor SQL beautify and minify")]),a._v(" "),e("li",[a._v("Improve editor undo support")]),a._v(" "),e("li",[a._v("Update linux package script")]),a._v(" "),e("li",[a._v("Update Chinese translation")]),a._v(" "),e("li",[a._v("Fixed: app crashed while closing book page")]),a._v(" "),e("li",[a._v("Fixed: SSH label issue")])]),a._v(" "),e("div",[e("script2",{attrs:{type:"text/javascript",async:"true",src:"https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"}}),a._v(" "),e("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),a._v(" "),e("script2",{attrs:{type:"text/javascript"}},[a._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),a._v(" "),e("h2",{attrs:{id:"installer-portable-packages"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#installer-portable-packages"}},[a._v("#")]),a._v(" Installer & Portable packages "),e("Badge",{attrs:{text:"link expired",type:"warning"}})],1),a._v(" "),e("p",[a._v("Windows users could install Kangaroo via winget tool directly, just run command: "),e("code",[a._v("winget install Taozuhong.Kangaroo")]),a._v(". Or download the package then install it manually.")]),a._v(" "),e("h3",{attrs:{id:"windows-platform"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#windows-platform"}},[a._v("#")]),a._v(" Windows platform")]),a._v(" "),e("table",[e("thead",[e("tr",[e("th",[a._v("Platform")]),a._v(" "),e("th",[a._v("Architect")]),a._v(" "),e("th",[a._v("Installer")]),a._v(" "),e("th",[a._v("Portable")])])]),a._v(" "),e("tbody",[e("tr",[e("td",[a._v("Windows")]),a._v(" "),e("td",[a._v("x86-64")]),a._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v2.1.1.221201/kangaroo-2.1.1.221201-x86_64.exe",target:"_blank",rel:"noopener noreferrer"}},[a._v("Github"),e("OutboundLink")],1),a._v(" "),e("br"),a._v(" "),e("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/releases/download/v2.1.1.221201/kangaroo-2.1.1.221201-x86_64.exe",target:"_blank",rel:"noopener noreferrer"}},[a._v("GitEE"),e("OutboundLink")],1),a._v(" "),e("br"),a._v(" "),e("a",{attrs:{href:"https://kangaroo.awaysoft.com/downloads/v2.1.1.221201/kangaroo-2.1.1.221201-x86_64.exe",target:"_blank",rel:"noopener noreferrer"}},[a._v("Server 3"),e("OutboundLink")],1),a._v(" "),e("br"),a._v(" "),e("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v2.1.1.221201/kangaroo-2.1.1.221201-x86_64.exe",target:"_blank",rel:"noopener noreferrer"}},[a._v("Server 4"),e("OutboundLink")],1)]),a._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v2.1.1.221201/kangaroo-2.1.1.221201-x86_64.zip",target:"_blank",rel:"noopener noreferrer"}},[a._v("Github"),e("OutboundLink")],1),a._v(" "),e("br"),a._v(" "),e("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/releases/download/v2.1.1.221201/kangaroo-2.1.1.221201-x86_64.zip",target:"_blank",rel:"noopener noreferrer"}},[a._v("GitEE"),e("OutboundLink")],1),a._v(" "),e("br"),e("a",{attrs:{href:"https://kangaroo.awaysoft.com/downloads/v2.1.1.221201/kangaroo-2.1.1.221201-x86_64.zip",target:"_blank",rel:"noopener noreferrer"}},[a._v("Server 3"),e("OutboundLink")],1),a._v(" "),e("br"),a._v(" "),e("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v2.1.1.221201/kangaroo-2.1.1.221201-x86_64.zip",target:"_blank",rel:"noopener noreferrer"}},[a._v("Server 4"),e("OutboundLink")],1)])]),a._v(" "),e("tr",[e("td",[a._v("Wine / ...")]),a._v(" "),e("td",[a._v("x86-64")]),a._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v2.1.1.221201/kangaroo-2.1.1.221201-x86_64.exe",target:"_blank",rel:"noopener noreferrer"}},[a._v("Github"),e("OutboundLink")],1),a._v(" "),e("br"),a._v(" "),e("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/releases/download/v2.1.1.221201/kangaroo-2.1.1.221201-x86_64.exe",target:"_blank",rel:"noopener noreferrer"}},[a._v("GitEE"),e("OutboundLink")],1),a._v(" "),e("br"),a._v(" "),e("a",{attrs:{href:"https://kangaroo.awaysoft.com/downloads/v2.1.1.221201/kangaroo-2.1.1.221201-x86_64.exe",target:"_blank",rel:"noopener noreferrer"}},[a._v("Server 3"),e("OutboundLink")],1),a._v(" "),e("br"),a._v(" "),e("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v2.1.1.221201/kangaroo-2.1.1.221201-x86_64.exe",target:"_blank",rel:"noopener noreferrer"}},[a._v("Server 4"),e("OutboundLink")],1)]),a._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v2.1.1.221201/kangaroo-2.1.1.221201-x86_64.zip",target:"_blank",rel:"noopener noreferrer"}},[a._v("Github"),e("OutboundLink")],1),a._v(" "),e("br"),a._v(" "),e("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/releases/download/v2.1.1.221201/kangaroo-2.1.1.221201-x86_64.zip",target:"_blank",rel:"noopener noreferrer"}},[a._v("GitEE"),e("OutboundLink")],1),a._v(" "),e("br"),e("a",{attrs:{href:"https://kangaroo.awaysoft.com/downloads/v2.1.1.221201/kangaroo-2.1.1.221201-x86_64.zip",target:"_blank",rel:"noopener noreferrer"}},[a._v("Server 3"),e("OutboundLink")],1),a._v(" "),e("br"),a._v(" "),e("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v2.1.1.221201/kangaroo-2.1.1.221201-x86_64.zip",target:"_blank",rel:"noopener noreferrer"}},[a._v("Server 4"),e("OutboundLink")],1)])])])]),a._v(" "),e("h3",{attrs:{id:"macos-platform"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#macos-platform"}},[a._v("#")]),a._v(" macOS platform")]),a._v(" "),e("table",[e("thead",[e("tr",[e("th",[a._v("Platform")]),a._v(" "),e("th",[a._v("Architect")]),a._v(" "),e("th",[a._v("Installer")]),a._v(" "),e("th",[a._v("Portable")])])]),a._v(" "),e("tbody",[e("tr",[e("td",[a._v("macOS")]),a._v(" "),e("td",[a._v("ARM64")]),a._v(" "),e("td",[a._v("Coming soon")]),a._v(" "),e("td",[a._v("Coming soon")])])])]),a._v(" "),e("h3",{attrs:{id:"linux-platform"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#linux-platform"}},[a._v("#")]),a._v(" Linux platform")]),a._v(" "),e("table",[e("thead",[e("tr",[e("th",[a._v("Distribution")]),a._v(" "),e("th",[a._v("Architect")]),a._v(" "),e("th",[a._v("Installer")]),a._v(" "),e("th",[a._v("Portable")])])]),a._v(" "),e("tbody",[e("tr",[e("td",[a._v("Arch Linux")]),a._v(" "),e("td",[a._v("x86-64")]),a._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v2.1.1.221201/kangaroo-2.1.1.221201-1-x86_64.pkg.tar.zst",target:"_blank",rel:"noopener noreferrer"}},[a._v("Github"),e("OutboundLink")],1),a._v(" "),e("br"),a._v(" "),e("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/releases/download/v2.1.1.221201/kangaroo-2.1.1.221201-1-x86_64.pkg.tar.zst",target:"_blank",rel:"noopener noreferrer"}},[a._v("GitEE"),e("OutboundLink")],1),a._v(" "),e("br"),e("a",{attrs:{href:"https://kangaroo.awaysoft.com/downloads/v2.1.1.221201/kangaroo-2.1.1.221201-1-x86_64.pkg.tar.zst",target:"_blank",rel:"noopener noreferrer"}},[a._v("Server 3"),e("OutboundLink")],1),a._v(" "),e("br"),a._v(" "),e("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v2.1.1.221201/kangaroo-2.1.1.221201-1-x86_64.pkg.tar.zst",target:"_blank",rel:"noopener noreferrer"}},[a._v("Server 4"),e("OutboundLink")],1)]),a._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v2.1.1.221201/kangaroo-2.1.1.221201-x86_64.tar.zst",target:"_blank",rel:"noopener noreferrer"}},[a._v("Github"),e("OutboundLink")],1),a._v(" "),e("br"),a._v(" "),e("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/releases/download/v2.1.1.221201/kangaroo-2.1.1.221201-x86_64.tar.zst",target:"_blank",rel:"noopener noreferrer"}},[a._v("GitEE"),e("OutboundLink")],1),a._v(" "),e("br"),e("a",{attrs:{href:"https://kangaroo.awaysoft.com/downloads/v2.1.1.221201/kangaroo-2.1.1.221201-x86_64.tar.zst",target:"_blank",rel:"noopener noreferrer"}},[a._v("Server 3"),e("OutboundLink")],1),a._v(" "),e("br"),a._v(" "),e("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v2.1.1.221201/kangaroo-2.1.1.221201-x86_64.tar.zst",target:"_blank",rel:"noopener noreferrer"}},[a._v("Server 4"),e("OutboundLink")],1)])]),a._v(" "),e("tr",[e("td",[a._v("Debian")]),a._v(" "),e("td",[a._v("x86-64")]),a._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v2.1.1.221201/kangaroo-2.1.1.221201-x86_64.deb",target:"_blank",rel:"noopener noreferrer"}},[a._v("Github"),e("OutboundLink")],1),a._v(" "),e("br"),e("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/releases/download/v2.1.1.221201/kangaroo-2.1.1.221201-x86_64.deb",target:"_blank",rel:"noopener noreferrer"}},[a._v("Gitee"),e("OutboundLink")],1),a._v(" "),e("br"),e("a",{attrs:{href:"https://kangaroo.awaysoft.com/downloads/v2.1.1.221201/kangaroo-2.1.1.221201-x86_64.deb",target:"_blank",rel:"noopener noreferrer"}},[a._v("Server 3"),e("OutboundLink")],1),a._v(" "),e("br"),e("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v2.1.1.221201/kangaroo-2.1.1.221201-x86_64.deb",target:"_blank",rel:"noopener noreferrer"}},[a._v("Server 4"),e("OutboundLink")],1)]),a._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v2.1.1.221201/kangaroo-2.1.1.221201-x86_64.tar.zst",target:"_blank",rel:"noopener noreferrer"}},[a._v("Github"),e("OutboundLink")],1),a._v(" "),e("br"),e("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/releases/download/v2.1.1.221201/kangaroo-2.1.1.221201-x86_64.tar.zst",target:"_blank",rel:"noopener noreferrer"}},[a._v("GitEE"),e("OutboundLink")],1),a._v(" "),e("br"),e("a",{attrs:{href:"https://kangaroo.awaysoft.com/downloads/v2.1.1.221201/kangaroo-2.1.1.221201-x86_64.tar.zst",target:"_blank",rel:"noopener noreferrer"}},[a._v("Server 3"),e("OutboundLink")],1),a._v(" "),e("br"),e("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v2.1.1.221201/kangaroo-2.1.1.221201-x86_64.tar.zst",target:"_blank",rel:"noopener noreferrer"}},[a._v("Server 4"),e("OutboundLink")],1)])])])]),a._v(" "),e("div",[e("script2",{attrs:{type:"text/javascript",async:"true",src:"https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"}}),a._v(" "),e("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),a._v(" "),e("script2",{attrs:{type:"text/javascript"}},[a._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),a._v(" "),e("h2",{attrs:{id:"sha256sum"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#sha256sum"}},[a._v("#")]),a._v(" SHA256SUM")]),a._v(" "),e("p",[a._v("Recommend to use tools like "),e("code",[a._v("sha256sum")]),a._v(" or "),e("code",[a._v("7-Zip")]),a._v(" to verify the checksum and signature of your packages, make sure they are safe and 100% correct.")]),a._v(" "),e("table",[e("thead",[e("tr",[e("th",[a._v("sha256sum checksum")]),a._v(" "),e("th",[a._v("Package name")])])]),a._v(" "),e("tbody",[e("tr",[e("td",[a._v("6de2d62f013661ae17736b4dae785ee717157d11a6004b3c951e181f64d296ae")]),a._v(" "),e("td",[a._v("kangaroo-2.1.1.221201-x86_64.exe")])]),a._v(" "),e("tr",[e("td",[a._v("962097751fe1201aa45a8a7a2968bdf1b0618108558e450efc0cc60959bc234f")]),a._v(" "),e("td",[a._v("kangaroo-2.1.1.221201-x86_64.deb")])]),a._v(" "),e("tr",[e("td",[a._v("178d70c391f94fc74e845c3929840ec10fbc13113d3ceab3fced80cbcd8e303d")]),a._v(" "),e("td",[a._v("kangaroo-2.1.1.221201-1-x86_64.pkg.tar.zst")])]),a._v(" "),e("tr",[e("td",[a._v("9d1727380136502aa070b2c5101381ba0f1ebd2bc3cfae2445654afc87ff5b10")]),a._v(" "),e("td",[a._v("kangaroo-2.1.1.221201-x86_64.tar.zst")])]),a._v(" "),e("tr",[e("td",[a._v("462ec4f64b54c80d29ae9d3b51d29db355b23aa6df395e2e2d9c5c8cf1f55ced")]),a._v(" "),e("td",[a._v("kangaroo-2.1.1.221201-x86_64.zip")])])])]),a._v(" "),e("h2",{attrs:{id:"share-with-friends"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#share-with-friends"}},[a._v("#")]),a._v(" Share with friends")]),a._v(" "),e("social-share",{attrs:{networks:["facebook","twitter","whatsapp","telegram","linkedin","reddit","line","skype","pinterest"]}})],1)}),[],!1,null,null,null);r.default=o.exports}}]); \ No newline at end of file diff --git a/assets/js/111.fff7f505.js b/assets/js/111.fff7f505.js new file mode 100644 index 000000000..a60330148 --- /dev/null +++ b/assets/js/111.fff7f505.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[111],{694:function(a,r,e){"use strict";e.r(r);var t=e(13),o=Object(t.a)({},(function(){var a=this,r=a.$createElement,e=a._self._c||r;return e("ContentSlotsDistributor",{attrs:{"slot-key":a.$parent.slotKey}},[e("h1",{attrs:{id:"kangaroo-v2-2-1-beta"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#kangaroo-v2-2-1-beta"}},[a._v("#")]),a._v(" Kangaroo v2.2.1 (Beta)")]),a._v(" "),e("p",[a._v("This is a stable version, features and maturity reached the version target, recommend for all users.")]),a._v(" "),e("h2",{attrs:{id:"new-features-bug-fixes"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#new-features-bug-fixes"}},[a._v("#")]),a._v(" New features & bug-fixes")]),a._v(" "),e("ul",[e("li",[a._v("Add executor dialog")]),a._v(" "),e("li",[a._v("Add dump & tranform dialog")]),a._v(" "),e("li",[a._v("Add time cost for query")]),a._v(" "),e("li",[a._v("SQLite: fixed index load issue")]),a._v(" "),e("li",[a._v("SQLite: fixed backup name issue")]),a._v(" "),e("li",[a._v("MariaDB: fixed schema scope issue")]),a._v(" "),e("li",[a._v("MySQL: fixed schema scope issue")]),a._v(" "),e("li",[a._v("PostgreSQL: fixed v15 user info issue")]),a._v(" "),e("li",[a._v("Update intellisense proposal's icon")]),a._v(" "),e("li",[a._v("Update Chinese translation")]),a._v(" "),e("li",[a._v("Update Windows installer to select drivers defaultly")]),a._v(" "),e("li",[a._v("Update GTK library to 4.9.2")])]),a._v(" "),e("div",[e("script2",{attrs:{type:"text/javascript",async:"true",src:"https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"}}),a._v(" "),e("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),a._v(" "),e("script2",{attrs:{type:"text/javascript"}},[a._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),a._v(" "),e("h2",{attrs:{id:"installer-portable-packages"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#installer-portable-packages"}},[a._v("#")]),a._v(" Installer & Portable packages "),e("Badge",{attrs:{text:"link expired",type:"warning"}})],1),a._v(" "),e("p",[a._v("Windows users could install Kangaroo via winget tool directly, just run command: "),e("code",[a._v("winget install Taozuhong.Kangaroo")]),a._v(". Or download the package then install it manually.")]),a._v(" "),e("h3",{attrs:{id:"windows-platform"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#windows-platform"}},[a._v("#")]),a._v(" Windows platform")]),a._v(" "),e("table",[e("thead",[e("tr",[e("th",[a._v("Platform")]),a._v(" "),e("th",[a._v("Architect")]),a._v(" "),e("th",[a._v("Installer")]),a._v(" "),e("th",[a._v("Portable")])])]),a._v(" "),e("tbody",[e("tr",[e("td",[a._v("Windows")]),a._v(" "),e("td",[a._v("x86-64")]),a._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v2.2.1.230101/kangaroo-2.2.1.230101-x86_64.exe",target:"_blank",rel:"noopener noreferrer"}},[a._v("Github"),e("OutboundLink")],1),a._v(" "),e("br"),a._v(" "),e("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/releases/download/v2.2.1.230101/kangaroo-2.2.1.230101-x86_64.exe",target:"_blank",rel:"noopener noreferrer"}},[a._v("GitEE"),e("OutboundLink")],1),a._v(" "),e("br"),a._v(" "),e("a",{attrs:{href:"https://kangaroo.awaysoft.com/downloads/v2.2.1.230101/kangaroo-2.2.1.230101-x86_64.exe",target:"_blank",rel:"noopener noreferrer"}},[a._v("Server 3"),e("OutboundLink")],1),a._v(" "),e("br"),a._v(" "),e("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v2.2.1.230101/kangaroo-2.2.1.230101-x86_64.exe",target:"_blank",rel:"noopener noreferrer"}},[a._v("Server 4"),e("OutboundLink")],1)]),a._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v2.2.1.230101/kangaroo-2.2.1.230101-x86_64.zip",target:"_blank",rel:"noopener noreferrer"}},[a._v("Github"),e("OutboundLink")],1),a._v(" "),e("br"),a._v(" "),e("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/releases/download/v2.2.1.230101/kangaroo-2.2.1.230101-x86_64.zip",target:"_blank",rel:"noopener noreferrer"}},[a._v("GitEE"),e("OutboundLink")],1),a._v(" "),e("br"),e("a",{attrs:{href:"https://kangaroo.awaysoft.com/downloads/v2.2.1.230101/kangaroo-2.2.1.230101-x86_64.zip",target:"_blank",rel:"noopener noreferrer"}},[a._v("Server 3"),e("OutboundLink")],1),a._v(" "),e("br"),a._v(" "),e("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v2.2.1.230101/kangaroo-2.2.1.230101-x86_64.zip",target:"_blank",rel:"noopener noreferrer"}},[a._v("Server 4"),e("OutboundLink")],1)])]),a._v(" "),e("tr",[e("td",[a._v("Wine / ...")]),a._v(" "),e("td",[a._v("x86-64")]),a._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v2.2.1.230101/kangaroo-2.2.1.230101-x86_64.exe",target:"_blank",rel:"noopener noreferrer"}},[a._v("Github"),e("OutboundLink")],1),a._v(" "),e("br"),a._v(" "),e("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/releases/download/v2.2.1.230101/kangaroo-2.2.1.230101-x86_64.exe",target:"_blank",rel:"noopener noreferrer"}},[a._v("GitEE"),e("OutboundLink")],1),a._v(" "),e("br"),a._v(" "),e("a",{attrs:{href:"https://kangaroo.awaysoft.com/downloads/v2.2.1.230101/kangaroo-2.2.1.230101-x86_64.exe",target:"_blank",rel:"noopener noreferrer"}},[a._v("Server 3"),e("OutboundLink")],1),a._v(" "),e("br"),a._v(" "),e("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v2.2.1.230101/kangaroo-2.2.1.230101-x86_64.exe",target:"_blank",rel:"noopener noreferrer"}},[a._v("Server 4"),e("OutboundLink")],1)]),a._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v2.2.1.230101/kangaroo-2.2.1.230101-x86_64.zip",target:"_blank",rel:"noopener noreferrer"}},[a._v("Github"),e("OutboundLink")],1),a._v(" "),e("br"),a._v(" "),e("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/releases/download/v2.2.1.230101/kangaroo-2.2.1.230101-x86_64.zip",target:"_blank",rel:"noopener noreferrer"}},[a._v("GitEE"),e("OutboundLink")],1),a._v(" "),e("br"),e("a",{attrs:{href:"https://kangaroo.awaysoft.com/downloads/v2.2.1.230101/kangaroo-2.2.1.230101-x86_64.zip",target:"_blank",rel:"noopener noreferrer"}},[a._v("Server 3"),e("OutboundLink")],1),a._v(" "),e("br"),a._v(" "),e("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v2.2.1.230101/kangaroo-2.2.1.230101-x86_64.zip",target:"_blank",rel:"noopener noreferrer"}},[a._v("Server 4"),e("OutboundLink")],1)])])])]),a._v(" "),e("h3",{attrs:{id:"macos-platform"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#macos-platform"}},[a._v("#")]),a._v(" macOS platform")]),a._v(" "),e("table",[e("thead",[e("tr",[e("th",[a._v("Platform")]),a._v(" "),e("th",[a._v("Architect")]),a._v(" "),e("th",[a._v("Installer")]),a._v(" "),e("th",[a._v("Portable")])])]),a._v(" "),e("tbody",[e("tr",[e("td",[a._v("macOS")]),a._v(" "),e("td",[a._v("ARM64")]),a._v(" "),e("td",[a._v("Coming soon")]),a._v(" "),e("td",[a._v("Coming soon")])])])]),a._v(" "),e("h3",{attrs:{id:"linux-platform"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#linux-platform"}},[a._v("#")]),a._v(" Linux platform")]),a._v(" "),e("table",[e("thead",[e("tr",[e("th",[a._v("Distribution")]),a._v(" "),e("th",[a._v("Architect")]),a._v(" "),e("th",[a._v("Installer")]),a._v(" "),e("th",[a._v("Portable")])])]),a._v(" "),e("tbody",[e("tr",[e("td",[a._v("Arch Linux")]),a._v(" "),e("td",[a._v("x86-64")]),a._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v2.2.1.230101/kangaroo-2.2.1.230101-1-x86_64.pkg.tar.zst",target:"_blank",rel:"noopener noreferrer"}},[a._v("Github"),e("OutboundLink")],1),a._v(" "),e("br"),a._v(" "),e("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/releases/download/v2.2.1.230101/kangaroo-2.2.1.230101-1-x86_64.pkg.tar.zst",target:"_blank",rel:"noopener noreferrer"}},[a._v("GitEE"),e("OutboundLink")],1),a._v(" "),e("br"),e("a",{attrs:{href:"https://kangaroo.awaysoft.com/downloads/v2.2.1.230101/kangaroo-2.2.1.230101-1-x86_64.pkg.tar.zst",target:"_blank",rel:"noopener noreferrer"}},[a._v("Server 3"),e("OutboundLink")],1),a._v(" "),e("br"),a._v(" "),e("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v2.2.1.230101/kangaroo-2.2.1.230101-1-x86_64.pkg.tar.zst",target:"_blank",rel:"noopener noreferrer"}},[a._v("Server 4"),e("OutboundLink")],1)]),a._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v2.2.1.230101/kangaroo-2.2.1.230101-x86_64.tar.zst",target:"_blank",rel:"noopener noreferrer"}},[a._v("Github"),e("OutboundLink")],1),a._v(" "),e("br"),a._v(" "),e("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/releases/download/v2.2.1.230101/kangaroo-2.2.1.230101-x86_64.tar.zst",target:"_blank",rel:"noopener noreferrer"}},[a._v("GitEE"),e("OutboundLink")],1),a._v(" "),e("br"),e("a",{attrs:{href:"https://kangaroo.awaysoft.com/downloads/v2.2.1.230101/kangaroo-2.2.1.230101-x86_64.tar.zst",target:"_blank",rel:"noopener noreferrer"}},[a._v("Server 3"),e("OutboundLink")],1),a._v(" "),e("br"),a._v(" "),e("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v2.2.1.230101/kangaroo-2.2.1.230101-x86_64.tar.zst",target:"_blank",rel:"noopener noreferrer"}},[a._v("Server 4"),e("OutboundLink")],1)])]),a._v(" "),e("tr",[e("td",[a._v("Debian")]),a._v(" "),e("td",[a._v("x86-64")]),a._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v2.2.1.230101/kangaroo-2.2.1.230101-x86_64.deb",target:"_blank",rel:"noopener noreferrer"}},[a._v("Github"),e("OutboundLink")],1),a._v(" "),e("br"),e("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/releases/download/v2.2.1.230101/kangaroo-2.2.1.230101-x86_64.deb",target:"_blank",rel:"noopener noreferrer"}},[a._v("Gitee"),e("OutboundLink")],1),a._v(" "),e("br"),e("a",{attrs:{href:"https://kangaroo.awaysoft.com/downloads/v2.2.1.230101/kangaroo-2.2.1.230101-x86_64.deb",target:"_blank",rel:"noopener noreferrer"}},[a._v("Server 3"),e("OutboundLink")],1),a._v(" "),e("br"),e("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v2.2.1.230101/kangaroo-2.2.1.230101-x86_64.deb",target:"_blank",rel:"noopener noreferrer"}},[a._v("Server 4"),e("OutboundLink")],1)]),a._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v2.2.1.230101/kangaroo-2.2.1.230101-x86_64.tar.zst",target:"_blank",rel:"noopener noreferrer"}},[a._v("Github"),e("OutboundLink")],1),a._v(" "),e("br"),e("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/releases/download/v2.2.1.230101/kangaroo-2.2.1.230101-x86_64.tar.zst",target:"_blank",rel:"noopener noreferrer"}},[a._v("GitEE"),e("OutboundLink")],1),a._v(" "),e("br"),e("a",{attrs:{href:"https://kangaroo.awaysoft.com/downloads/v2.2.1.230101/kangaroo-2.2.1.230101-x86_64.tar.zst",target:"_blank",rel:"noopener noreferrer"}},[a._v("Server 3"),e("OutboundLink")],1),a._v(" "),e("br"),e("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v2.2.1.230101/kangaroo-2.2.1.230101-x86_64.tar.zst",target:"_blank",rel:"noopener noreferrer"}},[a._v("Server 4"),e("OutboundLink")],1)])])])]),a._v(" "),e("div",[e("script2",{attrs:{type:"text/javascript",async:"true",src:"https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"}}),a._v(" "),e("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),a._v(" "),e("script2",{attrs:{type:"text/javascript"}},[a._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),a._v(" "),e("h2",{attrs:{id:"sha256sum"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#sha256sum"}},[a._v("#")]),a._v(" SHA256SUM")]),a._v(" "),e("p",[a._v("Recommend to use tools like "),e("code",[a._v("sha256sum")]),a._v(" or "),e("code",[a._v("7-Zip")]),a._v(" to verify the checksum and signature of your packages, make sure they are safe and 100% correct.")]),a._v(" "),e("table",[e("thead",[e("tr",[e("th",[a._v("sha256sum checksum")]),a._v(" "),e("th",[a._v("Package name")])])]),a._v(" "),e("tbody",[e("tr",[e("td",[a._v("f8f1c499457740ae5ae105fc8f44de891c1372acd14e02fb3d9cd243322eef62")]),a._v(" "),e("td",[a._v("kangaroo-2.2.1.230101-x86_64.exe")])]),a._v(" "),e("tr",[e("td",[a._v("b40b165ac2ac6e9cce1710b5af004768e5957b06ff9fad81d2bfe7643ea12168")]),a._v(" "),e("td",[a._v("kangaroo-2.2.1.230101-x86_64.deb")])]),a._v(" "),e("tr",[e("td",[a._v("ac5798dbb2a680df9ea72e337fa839fc009bca60efc71c0baf7decddad3ae68a")]),a._v(" "),e("td",[a._v("kangaroo-2.2.1.230101-1-x86_64.pkg.tar.zst")])]),a._v(" "),e("tr",[e("td",[a._v("21e9c511d51b20673b43d245af0ec95928113f7479284854c7422bd463f26992")]),a._v(" "),e("td",[a._v("kangaroo-2.2.1.230101-x86_64.tar.zst")])]),a._v(" "),e("tr",[e("td",[a._v("50631a8ecdca13d55a3a53c882934f5068f2bf6c87601f39cd94dd50fd98a2d8")]),a._v(" "),e("td",[a._v("kangaroo-2.2.1.230101-x86_64.zip")])])])]),a._v(" "),e("h2",{attrs:{id:"share-with-friends"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#share-with-friends"}},[a._v("#")]),a._v(" Share with friends")]),a._v(" "),e("social-share",{attrs:{networks:["facebook","twitter","whatsapp","telegram","linkedin","reddit","line","skype","pinterest"]}})],1)}),[],!1,null,null,null);r.default=o.exports}}]); \ No newline at end of file diff --git a/assets/js/112.45a7020c.js b/assets/js/112.45a7020c.js new file mode 100644 index 000000000..b9b3876b4 --- /dev/null +++ b/assets/js/112.45a7020c.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[112],{697:function(a,r,e){"use strict";e.r(r);var t=e(13),o=Object(t.a)({},(function(){var a=this,r=a.$createElement,e=a._self._c||r;return e("ContentSlotsDistributor",{attrs:{"slot-key":a.$parent.slotKey}},[e("h1",{attrs:{id:"kangaroo-v2-3-1-beta"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#kangaroo-v2-3-1-beta"}},[a._v("#")]),a._v(" Kangaroo v2.3.1 (Beta)")]),a._v(" "),e("p",[a._v("This is a stable version, features and maturity reached the version target, recommend for all users.")]),a._v(" "),e("h2",{attrs:{id:"new-features-bug-fixes"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#new-features-bug-fixes"}},[a._v("#")]),a._v(" New features & bug-fixes")]),a._v(" "),e("ul",[e("li",[a._v("Add query file pane")]),a._v(" "),e("li",[a._v("Add model file pane")]),a._v(" "),e("li",[a._v("Update toolbar style")]),a._v(" "),e("li",[a._v("Workspace add split support (vertical or horizontal)")]),a._v(" "),e("li",[a._v("Workspace add status bar")]),a._v(" "),e("li",[a._v("Workspace add language support")]),a._v(" "),e("li",[a._v("Workspace add line ending support")]),a._v(" "),e("li",[a._v("Workspace add file encoding support")]),a._v(" "),e("li",[a._v("Workspace add word wrap support")]),a._v(" "),e("li",[a._v("Workspace add indentation support")]),a._v(" "),e("li",[a._v("Workspace add position support")]),a._v(" "),e("li",[a._v("Workspace add pane switching support")]),a._v(" "),e("li",[a._v("Workspace add worksheet message support")]),a._v(" "),e("li",[a._v("Update about window(System information)")]),a._v(" "),e("li",[a._v("Update RPM installer script")]),a._v(" "),e("li",[a._v("Update Chinese translation")]),a._v(" "),e("li",[a._v("Remove view submenu from main menu")])]),a._v(" "),e("div",[e("script2",{attrs:{type:"text/javascript",async:"true",src:"https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"}}),a._v(" "),e("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),a._v(" "),e("script2",{attrs:{type:"text/javascript"}},[a._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),a._v(" "),e("h2",{attrs:{id:"installer-portable-packages"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#installer-portable-packages"}},[a._v("#")]),a._v(" Installer & Portable packages "),e("Badge",{attrs:{text:"link expired",type:"warning"}})],1),a._v(" "),e("p",[a._v("Windows users could install Kangaroo via winget tool directly, just run command: "),e("code",[a._v("winget install Taozuhong.Kangaroo")]),a._v(". Or download the package then install it manually.")]),a._v(" "),e("h3",{attrs:{id:"windows-platform"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#windows-platform"}},[a._v("#")]),a._v(" Windows platform")]),a._v(" "),e("table",[e("thead",[e("tr",[e("th",[a._v("Platform")]),a._v(" "),e("th",[a._v("Architect")]),a._v(" "),e("th",[a._v("Installer")]),a._v(" "),e("th",[a._v("Portable")])])]),a._v(" "),e("tbody",[e("tr",[e("td",[a._v("Windows")]),a._v(" "),e("td",[a._v("x86-64")]),a._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v2.3.1.230201/kangaroo-2.3.1.230201-x86_64.exe",target:"_blank",rel:"noopener noreferrer"}},[a._v("Github"),e("OutboundLink")],1),a._v(" "),e("br"),a._v(" "),e("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/releases/download/v2.3.1.230201/kangaroo-2.3.1.230201-x86_64.exe",target:"_blank",rel:"noopener noreferrer"}},[a._v("GitEE"),e("OutboundLink")],1),a._v(" "),e("br"),a._v(" "),e("a",{attrs:{href:"https://kangaroo.awaysoft.com/downloads/v2.3.1.230201/kangaroo-2.3.1.230201-x86_64.exe",target:"_blank",rel:"noopener noreferrer"}},[a._v("Server 3"),e("OutboundLink")],1),a._v(" "),e("br"),a._v(" "),e("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v2.3.1.230201/kangaroo-2.3.1.230201-x86_64.exe",target:"_blank",rel:"noopener noreferrer"}},[a._v("Server 4"),e("OutboundLink")],1)]),a._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v2.3.1.230201/kangaroo-2.3.1.230201-x86_64.zip",target:"_blank",rel:"noopener noreferrer"}},[a._v("Github"),e("OutboundLink")],1),a._v(" "),e("br"),a._v(" "),e("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/releases/download/v2.3.1.230201/kangaroo-2.3.1.230201-x86_64.zip",target:"_blank",rel:"noopener noreferrer"}},[a._v("GitEE"),e("OutboundLink")],1),a._v(" "),e("br"),e("a",{attrs:{href:"https://kangaroo.awaysoft.com/downloads/v2.3.1.230201/kangaroo-2.3.1.230201-x86_64.zip",target:"_blank",rel:"noopener noreferrer"}},[a._v("Server 3"),e("OutboundLink")],1),a._v(" "),e("br"),a._v(" "),e("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v2.3.1.230201/kangaroo-2.3.1.230201-x86_64.zip",target:"_blank",rel:"noopener noreferrer"}},[a._v("Server 4"),e("OutboundLink")],1)])]),a._v(" "),e("tr",[e("td",[a._v("Wine / ...")]),a._v(" "),e("td",[a._v("x86-64")]),a._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v2.3.1.230201/kangaroo-2.3.1.230201-x86_64.exe",target:"_blank",rel:"noopener noreferrer"}},[a._v("Github"),e("OutboundLink")],1),a._v(" "),e("br"),a._v(" "),e("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/releases/download/v2.3.1.230201/kangaroo-2.3.1.230201-x86_64.exe",target:"_blank",rel:"noopener noreferrer"}},[a._v("GitEE"),e("OutboundLink")],1),a._v(" "),e("br"),a._v(" "),e("a",{attrs:{href:"https://kangaroo.awaysoft.com/downloads/v2.3.1.230201/kangaroo-2.3.1.230201-x86_64.exe",target:"_blank",rel:"noopener noreferrer"}},[a._v("Server 3"),e("OutboundLink")],1),a._v(" "),e("br"),a._v(" "),e("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v2.3.1.230201/kangaroo-2.3.1.230201-x86_64.exe",target:"_blank",rel:"noopener noreferrer"}},[a._v("Server 4"),e("OutboundLink")],1)]),a._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v2.3.1.230201/kangaroo-2.3.1.230201-x86_64.zip",target:"_blank",rel:"noopener noreferrer"}},[a._v("Github"),e("OutboundLink")],1),a._v(" "),e("br"),a._v(" "),e("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/releases/download/v2.3.1.230201/kangaroo-2.3.1.230201-x86_64.zip",target:"_blank",rel:"noopener noreferrer"}},[a._v("GitEE"),e("OutboundLink")],1),a._v(" "),e("br"),e("a",{attrs:{href:"https://kangaroo.awaysoft.com/downloads/v2.3.1.230201/kangaroo-2.3.1.230201-x86_64.zip",target:"_blank",rel:"noopener noreferrer"}},[a._v("Server 3"),e("OutboundLink")],1),a._v(" "),e("br"),a._v(" "),e("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v2.3.1.230201/kangaroo-2.3.1.230201-x86_64.zip",target:"_blank",rel:"noopener noreferrer"}},[a._v("Server 4"),e("OutboundLink")],1)])])])]),a._v(" "),e("h3",{attrs:{id:"macos-platform"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#macos-platform"}},[a._v("#")]),a._v(" macOS platform")]),a._v(" "),e("table",[e("thead",[e("tr",[e("th",[a._v("Platform")]),a._v(" "),e("th",[a._v("Architect")]),a._v(" "),e("th",[a._v("Installer")]),a._v(" "),e("th",[a._v("Portable")])])]),a._v(" "),e("tbody",[e("tr",[e("td",[a._v("macOS")]),a._v(" "),e("td",[a._v("ARM64")]),a._v(" "),e("td",[a._v("Coming soon")]),a._v(" "),e("td",[a._v("Coming soon")])])])]),a._v(" "),e("h3",{attrs:{id:"linux-platform"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#linux-platform"}},[a._v("#")]),a._v(" Linux platform")]),a._v(" "),e("p",[a._v("This version depends on some in-development library version, it not ready for normal users."),e("br"),a._v("\nFor professional users, you should get the latest code from their repo, then compile and install. The libraries are:"),e("br"),a._v("\nGTK4 >= 4.10 "),e("br"),a._v("\nlibpanel >= 1.2.0")]),a._v(" "),e("table",[e("thead",[e("tr",[e("th",[a._v("Distribution")]),a._v(" "),e("th",[a._v("Architect")]),a._v(" "),e("th",[a._v("Installer")]),a._v(" "),e("th",[a._v("Portable")])])]),a._v(" "),e("tbody",[e("tr",[e("td",[a._v("Arch Linux")]),a._v(" "),e("td",[a._v("x86-64")]),a._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v2.3.1.230201/kangaroo-2.3.1.230201-1-x86_64.pkg.tar.zst",target:"_blank",rel:"noopener noreferrer"}},[a._v("Github"),e("OutboundLink")],1),a._v(" "),e("br"),a._v(" "),e("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/releases/download/v2.3.1.230201/kangaroo-2.3.1.230201-1-x86_64.pkg.tar.zst",target:"_blank",rel:"noopener noreferrer"}},[a._v("GitEE"),e("OutboundLink")],1),a._v(" "),e("br"),e("a",{attrs:{href:"https://kangaroo.awaysoft.com/downloads/v2.3.1.230201/kangaroo-2.3.1.230201-1-x86_64.pkg.tar.zst",target:"_blank",rel:"noopener noreferrer"}},[a._v("Server 3"),e("OutboundLink")],1),a._v(" "),e("br"),a._v(" "),e("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v2.3.1.230201/kangaroo-2.3.1.230201-1-x86_64.pkg.tar.zst",target:"_blank",rel:"noopener noreferrer"}},[a._v("Server 4"),e("OutboundLink")],1)]),a._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v2.3.1.230201/kangaroo-2.3.1.230201-x86_64.tar.zst",target:"_blank",rel:"noopener noreferrer"}},[a._v("Github"),e("OutboundLink")],1),a._v(" "),e("br"),a._v(" "),e("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/releases/download/v2.3.1.230201/kangaroo-2.3.1.230201-x86_64.tar.zst",target:"_blank",rel:"noopener noreferrer"}},[a._v("GitEE"),e("OutboundLink")],1),a._v(" "),e("br"),e("a",{attrs:{href:"https://kangaroo.awaysoft.com/downloads/v2.3.1.230201/kangaroo-2.3.1.230201-x86_64.tar.zst",target:"_blank",rel:"noopener noreferrer"}},[a._v("Server 3"),e("OutboundLink")],1),a._v(" "),e("br"),a._v(" "),e("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v2.3.1.230201/kangaroo-2.3.1.230201-x86_64.tar.zst",target:"_blank",rel:"noopener noreferrer"}},[a._v("Server 4"),e("OutboundLink")],1)])]),a._v(" "),e("tr",[e("td",[a._v("Debian")]),a._v(" "),e("td",[a._v("x86-64")]),a._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v2.3.1.230201/kangaroo-2.3.1.230201-x86_64.deb",target:"_blank",rel:"noopener noreferrer"}},[a._v("Github"),e("OutboundLink")],1),a._v(" "),e("br"),e("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/releases/download/v2.3.1.230201/kangaroo-2.3.1.230201-x86_64.deb",target:"_blank",rel:"noopener noreferrer"}},[a._v("Gitee"),e("OutboundLink")],1),a._v(" "),e("br"),e("a",{attrs:{href:"https://kangaroo.awaysoft.com/downloads/v2.3.1.230201/kangaroo-2.3.1.230201-x86_64.deb",target:"_blank",rel:"noopener noreferrer"}},[a._v("Server 3"),e("OutboundLink")],1),a._v(" "),e("br"),e("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v2.3.1.230201/kangaroo-2.3.1.230201-x86_64.deb",target:"_blank",rel:"noopener noreferrer"}},[a._v("Server 4"),e("OutboundLink")],1)]),a._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v2.3.1.230201/kangaroo-2.3.1.230201-x86_64.tar.zst",target:"_blank",rel:"noopener noreferrer"}},[a._v("Github"),e("OutboundLink")],1),a._v(" "),e("br"),e("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/releases/download/v2.3.1.230201/kangaroo-2.3.1.230201-x86_64.tar.zst",target:"_blank",rel:"noopener noreferrer"}},[a._v("GitEE"),e("OutboundLink")],1),a._v(" "),e("br"),e("a",{attrs:{href:"https://kangaroo.awaysoft.com/downloads/v2.3.1.230201/kangaroo-2.3.1.230201-x86_64.tar.zst",target:"_blank",rel:"noopener noreferrer"}},[a._v("Server 3"),e("OutboundLink")],1),a._v(" "),e("br"),e("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v2.3.1.230201/kangaroo-2.3.1.230201-x86_64.tar.zst",target:"_blank",rel:"noopener noreferrer"}},[a._v("Server 4"),e("OutboundLink")],1)])])])]),a._v(" "),e("div",[e("script2",{attrs:{type:"text/javascript",async:"true",src:"https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"}}),a._v(" "),e("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),a._v(" "),e("script2",{attrs:{type:"text/javascript"}},[a._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),a._v(" "),e("h2",{attrs:{id:"sha256sum"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#sha256sum"}},[a._v("#")]),a._v(" SHA256SUM")]),a._v(" "),e("p",[a._v("Recommend to use tools like "),e("code",[a._v("sha256sum")]),a._v(" or "),e("code",[a._v("7-Zip")]),a._v(" to verify the checksum and signature of your packages, make sure they are safe and 100% correct.")]),a._v(" "),e("table",[e("thead",[e("tr",[e("th",[a._v("sha256sum checksum")]),a._v(" "),e("th",[a._v("Package name")])])]),a._v(" "),e("tbody",[e("tr",[e("td",[a._v("80ceec4732a66fe112111941438c8461674671493548cb3a97d34a4cfb53fb65")]),a._v(" "),e("td",[a._v("kangaroo-2.3.1.230201-x86_64.exe")])]),a._v(" "),e("tr",[e("td",[a._v("fb8d8e1d3b9b5783888ca076ccb693e2de588a14355ccaf8e2eb507d2862f5f6")]),a._v(" "),e("td",[a._v("kangaroo-2.3.1.230201-x86_64.deb")])]),a._v(" "),e("tr",[e("td",[a._v("63feed9980b379490b6c8f70ae29fc157426c9cb153f2365fd47e9ae52be86b6")]),a._v(" "),e("td",[a._v("kangaroo-2.3.1.230201-1-x86_64.pkg.tar.zst")])]),a._v(" "),e("tr",[e("td",[a._v("69fc68ccf672ccacb180010e88de3e31ff43581138f782acee6d322d20342616")]),a._v(" "),e("td",[a._v("kangaroo-2.3.1.230201-x86_64.tar.zst")])]),a._v(" "),e("tr",[e("td",[a._v("31e99493b8f78204b372ad5935eee0f3740dc2123ecebd4f7e1946eac0cc584d")]),a._v(" "),e("td",[a._v("kangaroo-2.3.1.230201-x86_64.zip")])])])]),a._v(" "),e("h2",{attrs:{id:"share-with-friends"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#share-with-friends"}},[a._v("#")]),a._v(" Share with friends")]),a._v(" "),e("social-share",{attrs:{networks:["facebook","twitter","whatsapp","telegram","linkedin","reddit","line","skype","pinterest"]}})],1)}),[],!1,null,null,null);r.default=o.exports}}]); \ No newline at end of file diff --git a/assets/js/113.81d82bb7.js b/assets/js/113.81d82bb7.js new file mode 100644 index 000000000..85baf0ac1 --- /dev/null +++ b/assets/js/113.81d82bb7.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[113],{695:function(a,r,e){"use strict";e.r(r);var t=e(13),o=Object(t.a)({},(function(){var a=this,r=a.$createElement,e=a._self._c||r;return e("ContentSlotsDistributor",{attrs:{"slot-key":a.$parent.slotKey}},[e("h1",{attrs:{id:"kangaroo-v2-3-2-beta"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#kangaroo-v2-3-2-beta"}},[a._v("#")]),a._v(" Kangaroo v2.3.2 (Beta)")]),a._v(" "),e("p",[a._v("This is a stable version, features and maturity reached the version target, recommend for all users.")]),a._v(" "),e("h2",{attrs:{id:"new-features-bug-fixes"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#new-features-bug-fixes"}},[a._v("#")]),a._v(" New features & bug-fixes")]),a._v(" "),e("ul",[e("li",[a._v("MySQL: Add executor menu item")]),a._v(" "),e("li",[a._v("MariaDB: Add executor menu item")]),a._v(" "),e("li",[a._v("PostgreSQL: Add executor menu item")]),a._v(" "),e("li",[a._v("Update datagrid normal style bg color")]),a._v(" "),e("li",[a._v("Update Chinese translation")]),a._v(" "),e("li",[a._v("Fixed: Unknown SCHEMA_COMMENT (< MariaDB 10.5)")]),a._v(" "),e("li",[a._v("Fixed: executor's file dialog issue")]),a._v(" "),e("li",[a._v("Fixed: intellisense issue")]),a._v(" "),e("li",[a._v("Fixed: datagrid craches")])]),a._v(" "),e("div",[e("script2",{attrs:{type:"text/javascript",async:"true",src:"https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"}}),a._v(" "),e("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),a._v(" "),e("script2",{attrs:{type:"text/javascript"}},[a._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),a._v(" "),e("h2",{attrs:{id:"installer-portable-packages"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#installer-portable-packages"}},[a._v("#")]),a._v(" Installer & Portable packages")]),a._v(" "),e("p",[a._v("Windows users could install Kangaroo via winget tool directly, just run command: "),e("code",[a._v("winget install Taozuhong.Kangaroo")]),a._v(". Or download the package then install it manually.")]),a._v(" "),e("h3",{attrs:{id:"windows-platform"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#windows-platform"}},[a._v("#")]),a._v(" Windows platform")]),a._v(" "),e("table",[e("thead",[e("tr",[e("th",[a._v("Platform")]),a._v(" "),e("th",[a._v("Architect")]),a._v(" "),e("th",[a._v("Installer")]),a._v(" "),e("th",[a._v("Portable")])])]),a._v(" "),e("tbody",[e("tr",[e("td",[a._v("Windows")]),a._v(" "),e("td",[a._v("x86-64")]),a._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v2.3.2.230301/kangaroo-2.3.2.230306-x86_64.exe",target:"_blank",rel:"noopener noreferrer"}},[a._v("Github"),e("OutboundLink")],1),a._v(" "),e("br"),a._v(" "),e("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/releases/download/v2.3.2.230301/kangaroo-2.3.2.230306-x86_64.exe",target:"_blank",rel:"noopener noreferrer"}},[a._v("GitEE"),e("OutboundLink")],1),a._v(" "),e("br"),a._v(" "),e("a",{attrs:{href:"https://kangaroo.awaysoft.com/downloads/v2.3.2.230301/kangaroo-2.3.2.230306-x86_64.exe",target:"_blank",rel:"noopener noreferrer"}},[a._v("Server 3"),e("OutboundLink")],1),a._v(" "),e("br"),a._v(" "),e("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v2.3.2.230301/kangaroo-2.3.2.230306-x86_64.exe",target:"_blank",rel:"noopener noreferrer"}},[a._v("Server 4"),e("OutboundLink")],1)]),a._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v2.3.2.230301/kangaroo-2.3.2.230306-x86_64.zip",target:"_blank",rel:"noopener noreferrer"}},[a._v("Github"),e("OutboundLink")],1),a._v(" "),e("br"),a._v(" "),e("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/releases/download/v2.3.2.230301/kangaroo-2.3.2.230306-x86_64.zip",target:"_blank",rel:"noopener noreferrer"}},[a._v("GitEE"),e("OutboundLink")],1),a._v(" "),e("br"),e("a",{attrs:{href:"https://kangaroo.awaysoft.com/downloads/v2.3.2.230301/kangaroo-2.3.2.230306-x86_64.zip",target:"_blank",rel:"noopener noreferrer"}},[a._v("Server 3"),e("OutboundLink")],1),a._v(" "),e("br"),a._v(" "),e("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v2.3.2.230301/kangaroo-2.3.2.230306-x86_64.zip",target:"_blank",rel:"noopener noreferrer"}},[a._v("Server 4"),e("OutboundLink")],1)])]),a._v(" "),e("tr",[e("td",[a._v("Wine / ...")]),a._v(" "),e("td",[a._v("x86-64")]),a._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v2.3.2.230301/kangaroo-2.3.2.230306-x86_64.exe",target:"_blank",rel:"noopener noreferrer"}},[a._v("Github"),e("OutboundLink")],1),a._v(" "),e("br"),a._v(" "),e("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/releases/download/v2.3.2.230301/kangaroo-2.3.2.230306-x86_64.exe",target:"_blank",rel:"noopener noreferrer"}},[a._v("GitEE"),e("OutboundLink")],1),a._v(" "),e("br"),a._v(" "),e("a",{attrs:{href:"https://kangaroo.awaysoft.com/downloads/v2.3.2.230301/kangaroo-2.3.2.230306-x86_64.exe",target:"_blank",rel:"noopener noreferrer"}},[a._v("Server 3"),e("OutboundLink")],1),a._v(" "),e("br"),a._v(" "),e("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v2.3.2.230301/kangaroo-2.3.2.230306-x86_64.exe",target:"_blank",rel:"noopener noreferrer"}},[a._v("Server 4"),e("OutboundLink")],1)]),a._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v2.3.2.230301/kangaroo-2.3.2.230306-x86_64.zip",target:"_blank",rel:"noopener noreferrer"}},[a._v("Github"),e("OutboundLink")],1),a._v(" "),e("br"),a._v(" "),e("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/releases/download/v2.3.2.230301/kangaroo-2.3.2.230306-x86_64.zip",target:"_blank",rel:"noopener noreferrer"}},[a._v("GitEE"),e("OutboundLink")],1),a._v(" "),e("br"),e("a",{attrs:{href:"https://kangaroo.awaysoft.com/downloads/v2.3.2.230301/kangaroo-2.3.2.230306-x86_64.zip",target:"_blank",rel:"noopener noreferrer"}},[a._v("Server 3"),e("OutboundLink")],1),a._v(" "),e("br"),a._v(" "),e("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v2.3.2.230301/kangaroo-2.3.2.230306-x86_64.zip",target:"_blank",rel:"noopener noreferrer"}},[a._v("Server 4"),e("OutboundLink")],1)])])])]),a._v(" "),e("h3",{attrs:{id:"macos-platform"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#macos-platform"}},[a._v("#")]),a._v(" macOS platform")]),a._v(" "),e("table",[e("thead",[e("tr",[e("th",[a._v("Platform")]),a._v(" "),e("th",[a._v("Architect")]),a._v(" "),e("th",[a._v("Installer")]),a._v(" "),e("th",[a._v("Portable")])])]),a._v(" "),e("tbody",[e("tr",[e("td",[a._v("macOS")]),a._v(" "),e("td",[a._v("ARM64")]),a._v(" "),e("td",[a._v("Coming soon")]),a._v(" "),e("td",[a._v("Coming soon")])])])]),a._v(" "),e("h3",{attrs:{id:"linux-platform"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#linux-platform"}},[a._v("#")]),a._v(" Linux platform")]),a._v(" "),e("p",[a._v("This version depends on some in-development library version, it not ready for normal users."),e("br"),a._v("\nFor professional users, you should get the latest code from their repo, then compile and install. The libraries are:"),e("br"),a._v("\nGTK4 >= 4.10 "),e("br"),a._v("\nlibpanel >= 1.2.0")]),a._v(" "),e("table",[e("thead",[e("tr",[e("th",[a._v("Distribution")]),a._v(" "),e("th",[a._v("Architect")]),a._v(" "),e("th",[a._v("Installer")]),a._v(" "),e("th",[a._v("Portable")])])]),a._v(" "),e("tbody",[e("tr",[e("td",[a._v("Arch Linux")]),a._v(" "),e("td",[a._v("x86-64")]),a._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v2.3.2.230301/kangaroo-2.3.2.230301-1-x86_64.pkg.tar.zst",target:"_blank",rel:"noopener noreferrer"}},[a._v("Github"),e("OutboundLink")],1),a._v(" "),e("br"),a._v(" "),e("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/releases/download/v2.3.2.230301/kangaroo-2.3.2.230301-1-x86_64.pkg.tar.zst",target:"_blank",rel:"noopener noreferrer"}},[a._v("GitEE"),e("OutboundLink")],1),a._v(" "),e("br"),e("a",{attrs:{href:"https://kangaroo.awaysoft.com/downloads/v2.3.2.230301/kangaroo-2.3.2.230301-1-x86_64.pkg.tar.zst",target:"_blank",rel:"noopener noreferrer"}},[a._v("Server 3"),e("OutboundLink")],1),a._v(" "),e("br"),a._v(" "),e("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v2.3.2.230301/kangaroo-2.3.2.230301-1-x86_64.pkg.tar.zst",target:"_blank",rel:"noopener noreferrer"}},[a._v("Server 4"),e("OutboundLink")],1)]),a._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v2.3.2.230301/kangaroo-2.3.2.230301-x86_64.tar.zst",target:"_blank",rel:"noopener noreferrer"}},[a._v("Github"),e("OutboundLink")],1),a._v(" "),e("br"),a._v(" "),e("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/releases/download/v2.3.2.230301/kangaroo-2.3.2.230301-x86_64.tar.zst",target:"_blank",rel:"noopener noreferrer"}},[a._v("GitEE"),e("OutboundLink")],1),a._v(" "),e("br"),e("a",{attrs:{href:"https://kangaroo.awaysoft.com/downloads/v2.3.2.230301/kangaroo-2.3.2.230301-x86_64.tar.zst",target:"_blank",rel:"noopener noreferrer"}},[a._v("Server 3"),e("OutboundLink")],1),a._v(" "),e("br"),a._v(" "),e("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v2.3.2.230301/kangaroo-2.3.2.230301-x86_64.tar.zst",target:"_blank",rel:"noopener noreferrer"}},[a._v("Server 4"),e("OutboundLink")],1)])]),a._v(" "),e("tr",[e("td",[a._v("Debian")]),a._v(" "),e("td",[a._v("x86-64")]),a._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v2.3.2.230301/kangaroo-2.3.2.230301-x86_64.deb",target:"_blank",rel:"noopener noreferrer"}},[a._v("Github"),e("OutboundLink")],1),a._v(" "),e("br"),e("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/releases/download/v2.3.2.230301/kangaroo-2.3.2.230301-x86_64.deb",target:"_blank",rel:"noopener noreferrer"}},[a._v("Gitee"),e("OutboundLink")],1),a._v(" "),e("br"),e("a",{attrs:{href:"https://kangaroo.awaysoft.com/downloads/v2.3.2.230301/kangaroo-2.3.2.230301-x86_64.deb",target:"_blank",rel:"noopener noreferrer"}},[a._v("Server 3"),e("OutboundLink")],1),a._v(" "),e("br"),e("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v2.3.2.230301/kangaroo-2.3.2.230301-x86_64.deb",target:"_blank",rel:"noopener noreferrer"}},[a._v("Server 4"),e("OutboundLink")],1)]),a._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v2.3.2.230301/kangaroo-2.3.2.230301-x86_64.tar.zst",target:"_blank",rel:"noopener noreferrer"}},[a._v("Github"),e("OutboundLink")],1),a._v(" "),e("br"),e("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/releases/download/v2.3.2.230301/kangaroo-2.3.2.230301-x86_64.tar.zst",target:"_blank",rel:"noopener noreferrer"}},[a._v("GitEE"),e("OutboundLink")],1),a._v(" "),e("br"),e("a",{attrs:{href:"https://kangaroo.awaysoft.com/downloads/v2.3.2.230301/kangaroo-2.3.2.230301-x86_64.tar.zst",target:"_blank",rel:"noopener noreferrer"}},[a._v("Server 3"),e("OutboundLink")],1),a._v(" "),e("br"),e("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v2.3.2.230301/kangaroo-2.3.2.230301-x86_64.tar.zst",target:"_blank",rel:"noopener noreferrer"}},[a._v("Server 4"),e("OutboundLink")],1)])])])]),a._v(" "),e("div",[e("script2",{attrs:{type:"text/javascript",async:"true",src:"https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"}}),a._v(" "),e("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),a._v(" "),e("script2",{attrs:{type:"text/javascript"}},[a._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),a._v(" "),e("h2",{attrs:{id:"sha256sum"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#sha256sum"}},[a._v("#")]),a._v(" SHA256SUM")]),a._v(" "),e("p",[a._v("Recommend to use tools like "),e("code",[a._v("sha256sum")]),a._v(" or "),e("code",[a._v("7-Zip")]),a._v(" to verify the checksum and signature of your packages, make sure they are safe and 100% correct.")]),a._v(" "),e("table",[e("thead",[e("tr",[e("th",[a._v("sha256sum checksum")]),a._v(" "),e("th",[a._v("Package name")])])]),a._v(" "),e("tbody",[e("tr",[e("td",[a._v("9f6a2368a75e7a0825dfef99bcd7a2b284a9cd6399276242ef39a1048df1700b")]),a._v(" "),e("td",[a._v("kangaroo-2.3.2.230306-x86_64.exe")])]),a._v(" "),e("tr",[e("td",[a._v("cb7f78ca9c271e456f387acfe383b2670093cc8f09dba3e0aa7281527858817e")]),a._v(" "),e("td",[a._v("kangaroo-2.3.2.230301-x86_64.deb")])]),a._v(" "),e("tr",[e("td",[a._v("66d6c00c67a71179121e780b2e986144ae5e5ed129d9c65ba4f341911813b4e1")]),a._v(" "),e("td",[a._v("kangaroo-2.3.2.230301-1-x86_64.pkg.tar.zst")])]),a._v(" "),e("tr",[e("td",[a._v("cd039507f4a8e514f342e35535a7e344c1baafadace4635b6d357eed03f1e689")]),a._v(" "),e("td",[a._v("kangaroo-2.3.2.230301-x86_64.tar.zst")])]),a._v(" "),e("tr",[e("td",[a._v("38b5c52a6e7b04ed958482bdb33782aef4456be6412e6ce5a24d89901f22b856")]),a._v(" "),e("td",[a._v("kangaroo-2.3.2.230306-x86_64.zip")])])])]),a._v(" "),e("h2",{attrs:{id:"share-with-friends"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#share-with-friends"}},[a._v("#")]),a._v(" Share with friends")]),a._v(" "),e("social-share",{attrs:{networks:["facebook","twitter","whatsapp","telegram","linkedin","reddit","line","skype","pinterest"]}})],1)}),[],!1,null,null,null);r.default=o.exports}}]); \ No newline at end of file diff --git a/assets/js/114.d343c687.js b/assets/js/114.d343c687.js new file mode 100644 index 000000000..8acf63923 --- /dev/null +++ b/assets/js/114.d343c687.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[114],{698:function(t,a,e){"use strict";e.r(a);var r=e(13),o=Object(r.a)({},(function(){var t=this,a=t.$createElement,e=t._self._c||a;return e("ContentSlotsDistributor",{attrs:{"slot-key":t.$parent.slotKey}},[e("h1",{attrs:{id:"kangaroo-v2-99-1-beta"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#kangaroo-v2-99-1-beta"}},[t._v("#")]),t._v(" Kangaroo v2.99.1 (Beta)")]),t._v(" "),e("p",[t._v("This is a stable version, and the functional maturity and stability are infinitely close to the version goal, and it is recommended for all users.")]),t._v(" "),e("div",{staticClass:"custom-block danger"},[e("p",{staticClass:"custom-block-title"},[t._v("Important information")]),t._v(" "),e("p",[t._v("Versions marked with "),e("Badge",{attrs:{text:"Dev"}}),t._v(" "),e("Badge",{attrs:{text:"Beta"}}),t._v(" are free for commercial use, others require payment.")],1)]),t._v(" "),e("h2",{attrs:{id:"new-features-bug-fixes"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#new-features-bug-fixes"}},[t._v("#")]),t._v(" New features & bug-fixes")]),t._v(" "),e("ul",[e("li",[t._v("SQLite: add direct access support")]),t._v(" "),e("li",[t._v("MySQL: add direct access support")]),t._v(" "),e("li",[t._v("MariaDB: add direct access support")]),t._v(" "),e("li",[t._v("PostgreSQL: add direct access support")]),t._v(" "),e("li",[t._v("Improved floating-point display support")]),t._v(" "),e("li",[t._v("Improved connection establishment")]),t._v(" "),e("li",[t._v("Updated Chinese translation")])]),t._v(" "),e("div",[e("script2",{attrs:{type:"text/javascript",async:"true",src:"https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"}}),t._v(" "),e("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),t._v(" "),e("script2",{attrs:{type:"text/javascript"}},[t._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),t._v(" "),e("h2",{attrs:{id:"installer-portable-packages"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#installer-portable-packages"}},[t._v("#")]),t._v(" Installer & Portable packages "),e("Badge",{attrs:{text:"link expired",type:"warning"}})],1),t._v(" "),e("p",[t._v("Windows users could install Kangaroo via winget tool directly, just run command: "),e("code",[t._v("winget install Taozuhong.Kangaroo")]),t._v(". Or download the package then install it manually.")]),t._v(" "),e("h3",{attrs:{id:"windows-platform"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#windows-platform"}},[t._v("#")]),t._v(" Windows platform")]),t._v(" "),e("table",[e("thead",[e("tr",[e("th",[t._v("Architect")]),t._v(" "),e("th",[t._v("All")]),t._v(" "),e("th",[t._v("SQLite")]),t._v(" "),e("th",[t._v("MariaDB")]),t._v(" "),e("th",[t._v("MySQL")]),t._v(" "),e("th",[t._v("PostgreSQL")])])]),t._v(" "),e("tbody",[e("tr",[e("td",[t._v("x86-64")]),t._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v2.99.1.230331/kangaroo-max-2.99.1.230331-x86_64.exe",target:"_blank",rel:"noopener noreferrer"}},[t._v("Github"),e("OutboundLink")],1),t._v(" "),e("br"),t._v(" "),e("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/releases/download/v2.99.1.230331/kangaroo-max-2.99.1.230331-x86_64.exe",target:"_blank",rel:"noopener noreferrer"}},[t._v("GitEE"),e("OutboundLink")],1),t._v(" "),e("br"),t._v(" "),e("a",{attrs:{href:"https://kangaroo.awaysoft.com/downloads/v2.99.1.230331/kangaroo-max-2.99.1.230331-x86_64.exe",target:"_blank",rel:"noopener noreferrer"}},[t._v("Server 3"),e("OutboundLink")],1),t._v(" "),e("br"),t._v(" "),e("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v2.99.1.230331/kangaroo-max-2.99.1.230331-x86_64.exe",target:"_blank",rel:"noopener noreferrer"}},[t._v("Server 4"),e("OutboundLink")],1)]),t._v(" "),e("td",[e("a",{attrs:{href:"https://kangaroo.awaysoft.com/downloads/v2.99.1.230331/kangaroo-sqlite-2.99.1.230331-x86_64.exe",target:"_blank",rel:"noopener noreferrer"}},[t._v("Server 3"),e("OutboundLink")],1),t._v(" "),e("br"),t._v(" "),e("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v2.99.1.230331/kangaroo-sqlite-2.99.1.230331-x86_64.exe",target:"_blank",rel:"noopener noreferrer"}},[t._v("Server 4"),e("OutboundLink")],1)]),t._v(" "),e("td",[e("a",{attrs:{href:"https://kangaroo.awaysoft.com/downloads/v2.99.1.230331/kangaroo-mariadb-2.99.1.230331-x86_64.exe",target:"_blank",rel:"noopener noreferrer"}},[t._v("Server 3"),e("OutboundLink")],1),t._v(" "),e("br"),t._v(" "),e("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v2.99.1.230331/kangaroo-mariadb-2.99.1.230331-x86_64.exe",target:"_blank",rel:"noopener noreferrer"}},[t._v("Server 4"),e("OutboundLink")],1)]),t._v(" "),e("td",[e("a",{attrs:{href:"https://kangaroo.awaysoft.com/downloads/v2.99.1.230331/kangaroo-mysql-2.99.1.230331-x86_64.exe",target:"_blank",rel:"noopener noreferrer"}},[t._v("Server 3"),e("OutboundLink")],1),t._v(" "),e("br"),t._v(" "),e("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v2.99.1.230331/kangaroo-mysql-2.99.1.230331-x86_64.exe",target:"_blank",rel:"noopener noreferrer"}},[t._v("Server 4"),e("OutboundLink")],1)]),t._v(" "),e("td",[e("a",{attrs:{href:"https://kangaroo.awaysoft.com/downloads/v2.99.1.230331/kangaroo-postgresql-2.99.1.230331-x86_64.exe",target:"_blank",rel:"noopener noreferrer"}},[t._v("Server 3"),e("OutboundLink")],1),t._v(" "),e("br"),t._v(" "),e("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v2.99.1.230331/kangaroo-postgresql-2.99.1.230331-x86_64.exe",target:"_blank",rel:"noopener noreferrer"}},[t._v("Server 4"),e("OutboundLink")],1)])]),t._v(" "),e("tr",[e("td",[t._v("ARM64")]),t._v(" "),e("td"),t._v(" "),e("td"),t._v(" "),e("td"),t._v(" "),e("td"),t._v(" "),e("td")]),t._v(" "),e("tr",[e("td",[t._v("RISCV64")]),t._v(" "),e("td"),t._v(" "),e("td"),t._v(" "),e("td"),t._v(" "),e("td"),t._v(" "),e("td")])])]),t._v(" "),e("h3",{attrs:{id:"macos-platform"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#macos-platform"}},[t._v("#")]),t._v(" macOS platform")]),t._v(" "),e("table",[e("thead",[e("tr",[e("th",[t._v("Architect")]),t._v(" "),e("th",[t._v("All")]),t._v(" "),e("th",[t._v("SQLite")]),t._v(" "),e("th",[t._v("MariaDB")]),t._v(" "),e("th",[t._v("MySQL")]),t._v(" "),e("th",[t._v("PostgreSQL")])])]),t._v(" "),e("tbody",[e("tr",[e("td",[t._v("ARM64")]),t._v(" "),e("td"),t._v(" "),e("td"),t._v(" "),e("td"),t._v(" "),e("td"),t._v(" "),e("td")]),t._v(" "),e("tr",[e("td",[t._v("x86-64")]),t._v(" "),e("td"),t._v(" "),e("td"),t._v(" "),e("td"),t._v(" "),e("td"),t._v(" "),e("td")]),t._v(" "),e("tr",[e("td",[t._v("RISCV64")]),t._v(" "),e("td"),t._v(" "),e("td"),t._v(" "),e("td"),t._v(" "),e("td"),t._v(" "),e("td")])])]),t._v(" "),e("h3",{attrs:{id:"linux-platform"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#linux-platform"}},[t._v("#")]),t._v(" Linux platform")]),t._v(" "),e("p",[t._v("This version depends on some in-development library version, it not ready for normal users."),e("br"),t._v("\nFor professional users, you should get the latest code from their repo, then compile and install. The libraries are:"),e("br"),t._v("\nGTK4 >= 4.10 "),e("br"),t._v("\nlibpanel >= 1.2.0")]),t._v(" "),e("table",[e("thead",[e("tr",[e("th",[t._v("Architect")]),t._v(" "),e("th",[t._v("All")]),t._v(" "),e("th",[t._v("SQLite")]),t._v(" "),e("th",[t._v("MariaDB")]),t._v(" "),e("th",[t._v("MySQL")]),t._v(" "),e("th",[t._v("PostgreSQL")])])]),t._v(" "),e("tbody",[e("tr",[e("td",[t._v("x86-64")]),t._v(" "),e("td",[t._v("Arch Linux"),e("br"),e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v2.99.1.230331/kangaroo-max-2.99.1.230331-1-x86_64.pkg.tar.zst",target:"_blank",rel:"noopener noreferrer"}},[t._v("Github"),e("OutboundLink")],1),t._v(" "),e("br"),t._v(" "),e("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/releases/download/v2.99.1.230331/kangaroo-max-2.99.1.230331-1-x86_64.pkg.tar.zst",target:"_blank",rel:"noopener noreferrer"}},[t._v("GitEE"),e("OutboundLink")],1),t._v(" "),e("br"),e("a",{attrs:{href:"https://kangaroo.awaysoft.com/downloads/v2.99.1.230331/kangaroo-max-2.99.1.230331-1-x86_64.pkg.tar.zst",target:"_blank",rel:"noopener noreferrer"}},[t._v("Server 3"),e("OutboundLink")],1),t._v(" "),e("br"),t._v(" "),e("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v2.99.1.230331/kangaroo-max-2.99.1.230331-1-x86_64.pkg.tar.zst",target:"_blank",rel:"noopener noreferrer"}},[t._v("Server 4"),e("OutboundLink")],1),e("br"),e("br"),t._v(" Debian"),e("br"),t._v(" "),e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v2.99.1.230331/kangaroo-max-2.99.1.230331-x86_64.deb",target:"_blank",rel:"noopener noreferrer"}},[t._v("Github"),e("OutboundLink")],1),t._v(" "),e("br"),e("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/releases/download/v2.99.1.230331/kangaroo-max-2.99.1.230331-x86_64.deb",target:"_blank",rel:"noopener noreferrer"}},[t._v("Gitee"),e("OutboundLink")],1),t._v(" "),e("br"),e("a",{attrs:{href:"https://kangaroo.awaysoft.com/downloads/v2.99.1.230331/kangaroo-max-2.99.1.230331-x86_64.deb",target:"_blank",rel:"noopener noreferrer"}},[t._v("Server 3"),e("OutboundLink")],1),t._v(" "),e("br"),e("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v2.99.1.230331/kangaroo-max-2.99.1.230331-x86_64.deb",target:"_blank",rel:"noopener noreferrer"}},[t._v("Server 4"),e("OutboundLink")],1)]),t._v(" "),e("td"),t._v(" "),e("td"),t._v(" "),e("td"),t._v(" "),e("td")]),t._v(" "),e("tr",[e("td",[t._v("ARM64")]),t._v(" "),e("td"),t._v(" "),e("td"),t._v(" "),e("td"),t._v(" "),e("td"),t._v(" "),e("td")]),t._v(" "),e("tr",[e("td",[t._v("RISCV64")]),t._v(" "),e("td"),t._v(" "),e("td"),t._v(" "),e("td"),t._v(" "),e("td"),t._v(" "),e("td")])])]),t._v(" "),e("div",[e("script2",{attrs:{type:"text/javascript",async:"true",src:"https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"}}),t._v(" "),e("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),t._v(" "),e("script2",{attrs:{type:"text/javascript"}},[t._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),t._v(" "),e("h2",{attrs:{id:"sha256sum"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#sha256sum"}},[t._v("#")]),t._v(" SHA256SUM")]),t._v(" "),e("p",[t._v("Recommend to use tools like "),e("code",[t._v("sha256sum")]),t._v(" or "),e("code",[t._v("7-Zip")]),t._v(" to verify the checksum and signature of your packages, make sure they are safe and 100% correct.")]),t._v(" "),e("table",[e("thead",[e("tr",[e("th",[t._v("sha256sum checksum")]),t._v(" "),e("th",[t._v("Package name")])])]),t._v(" "),e("tbody",[e("tr",[e("td",[t._v("7fd73a026a9eca11b6769d8b6beafd34b63334a4ec76b13d2f3f38a2d1f5db32")]),t._v(" "),e("td",[t._v("kangaroo-max-2.99.1.230331-x86_64.exe")])]),t._v(" "),e("tr",[e("td",[t._v("5819560a44db6362570c5450e2c0a3625b7239fd37a037e759b450e51cc5f297")]),t._v(" "),e("td",[t._v("kangaroo-max-2.99.1.230331-x86_64.deb")])]),t._v(" "),e("tr",[e("td",[t._v("b7e67a536e59e621fdde52781fdc99d8834da5ce4b3f06803f5ea50d4a35a960")]),t._v(" "),e("td",[t._v("kangaroo-max-2.99.1.230331-1-x86_64.pkg.tar.zst")])]),t._v(" "),e("tr",[e("td",[t._v("b132143cc3df47fc42a2de0c8aa5a20bdc7b8673ad4095b39d09fd1f583d0f3a")]),t._v(" "),e("td",[t._v("kangaroo-mariadb-2.99.1.230331-x86_64.exe")])]),t._v(" "),e("tr",[e("td",[t._v("f9f92846076b2c78a369d11beaabb796896f16029251be2bc31891dcfe3f2091")]),t._v(" "),e("td",[t._v("kangaroo-mysql-2.99.1.230331-x86_64.exe")])]),t._v(" "),e("tr",[e("td",[t._v("2914978bce2d85de81763f7fce32f532d9fbb03b9e209867e438c62355fd6f51")]),t._v(" "),e("td",[t._v("kangaroo-postgresql-2.99.1.230331-x86_64.exe")])]),t._v(" "),e("tr",[e("td",[t._v("de71c55462a52ca05b1f132c720f8dbfbd5f373a586b32041e2a6d96e1b45af3")]),t._v(" "),e("td",[t._v("kangaroo-sqlite-2.99.1.230331-x86_64.exe")])]),t._v(" "),e("tr",[e("td",[t._v("2f4aec27314c1e9bfbf1eca13d7586b9fbe2a378e289ee25a1a1a7edd2c1cc81")]),t._v(" "),e("td",[t._v("kangaroo-max-2.99.1.230331-x86_64.7z")])]),t._v(" "),e("tr",[e("td",[t._v("b20df8610802e904e7eee58d30c4bd77e86292dde90d2c270a37c5a0e75ab616")]),t._v(" "),e("td",[t._v("kangaroo-max-2.99.1.230331-x86_64.tar.zst")])])])]),t._v(" "),e("h2",{attrs:{id:"share-with-friends"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#share-with-friends"}},[t._v("#")]),t._v(" Share with friends")]),t._v(" "),e("social-share",{attrs:{networks:["facebook","twitter","whatsapp","telegram","linkedin","reddit","line","skype","pinterest"]}})],1)}),[],!1,null,null,null);a.default=o.exports}}]); \ No newline at end of file diff --git a/assets/js/115.e1577911.js b/assets/js/115.e1577911.js new file mode 100644 index 000000000..84ba85ac6 --- /dev/null +++ b/assets/js/115.e1577911.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[115],{699:function(a,t,e){"use strict";e.r(t);var r=e(13),o=Object(r.a)({},(function(){var a=this,t=a.$createElement,e=a._self._c||t;return e("ContentSlotsDistributor",{attrs:{"slot-key":a.$parent.slotKey}},[e("h1",{attrs:{id:"kangaroo-v2-99-2-beta"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#kangaroo-v2-99-2-beta"}},[a._v("#")]),a._v(" Kangaroo v2.99.2 (Beta)")]),a._v(" "),e("p",[a._v("This is a stable version, and the functional maturity and stability are infinitely close to the version goal, and it is recommended for all users.")]),a._v(" "),e("div",{staticClass:"custom-block danger"},[e("p",{staticClass:"custom-block-title"},[a._v("Important information")]),a._v(" "),e("p",[a._v("Versions marked with "),e("Badge",{attrs:{text:"Dev"}}),a._v(" "),e("Badge",{attrs:{text:"Beta"}}),a._v(" are free for commercial use, others require payment.")],1)]),a._v(" "),e("h2",{attrs:{id:"new-features-bug-fixes"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#new-features-bug-fixes"}},[a._v("#")]),a._v(" New features & bug-fixes")]),a._v(" "),e("ul",[e("li",[a._v("Add sandbox support(Windows only)")]),a._v(" "),e("li",[a._v("GTK4 upgrade to 4.10.3")]),a._v(" "),e("li",[a._v("libadwaita upgrade to 1.3.1")]),a._v(" "),e("li",[a._v("Fixed: some dialog can't close")])]),a._v(" "),e("div",[e("script2",{attrs:{type:"text/javascript",async:"true",src:"https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"}}),a._v(" "),e("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),a._v(" "),e("script2",{attrs:{type:"text/javascript"}},[a._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),a._v(" "),e("h2",{attrs:{id:"installer-portable-packages"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#installer-portable-packages"}},[a._v("#")]),a._v(" Installer & Portable packages "),e("Badge",{attrs:{text:"link expired",type:"warning"}})],1),a._v(" "),e("p",[a._v("Windows users could install Kangaroo via winget tool directly, just run command: "),e("code",[a._v("winget install Taozuhong.Kangaroo")]),a._v(". Or download the package then install it manually.")]),a._v(" "),e("h3",{attrs:{id:"windows-platform"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#windows-platform"}},[a._v("#")]),a._v(" Windows platform")]),a._v(" "),e("table",[e("thead",[e("tr",[e("th",[a._v("Architect")]),a._v(" "),e("th",[a._v("All")]),a._v(" "),e("th",[a._v("SQLite")]),a._v(" "),e("th",[a._v("MariaDB")]),a._v(" "),e("th",[a._v("MySQL")]),a._v(" "),e("th",[a._v("PostgreSQL")])])]),a._v(" "),e("tbody",[e("tr",[e("td",[a._v("x86-64")]),a._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v2.99.2.230428/kangaroo-max-2.99.2.230430-x86_64.exe",target:"_blank",rel:"noopener noreferrer"}},[a._v("Github"),e("OutboundLink")],1),a._v(" "),e("br"),a._v(" "),e("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/releases/download/v2.99.2.230428/kangaroo-max-2.99.2.230430-x86_64.exe",target:"_blank",rel:"noopener noreferrer"}},[a._v("GitEE"),e("OutboundLink")],1),a._v(" "),e("br"),a._v(" "),e("a",{attrs:{href:"https://kangaroo.awaysoft.com/downloads/v2.99.2.230428/kangaroo-max-2.99.2.230430-x86_64.exe",target:"_blank",rel:"noopener noreferrer"}},[a._v("Server 3"),e("OutboundLink")],1),a._v(" "),e("br"),a._v(" "),e("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v2.99.2.230428/kangaroo-max-2.99.2.230430-x86_64.exe",target:"_blank",rel:"noopener noreferrer"}},[a._v("Server 4"),e("OutboundLink")],1)]),a._v(" "),e("td",[e("a",{attrs:{href:"https://kangaroo.awaysoft.com/downloads/v2.99.2.230428/kangaroo-sqlite-2.99.2.230430-x86_64.exe",target:"_blank",rel:"noopener noreferrer"}},[a._v("Server 3"),e("OutboundLink")],1),a._v(" "),e("br"),a._v(" "),e("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v2.99.2.230428/kangaroo-sqlite-2.99.2.230430-x86_64.exe",target:"_blank",rel:"noopener noreferrer"}},[a._v("Server 4"),e("OutboundLink")],1)]),a._v(" "),e("td",[e("a",{attrs:{href:"https://kangaroo.awaysoft.com/downloads/v2.99.2.230428/kangaroo-mariadb-2.99.2.230430-x86_64.exe",target:"_blank",rel:"noopener noreferrer"}},[a._v("Server 3"),e("OutboundLink")],1),a._v(" "),e("br"),a._v(" "),e("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v2.99.2.230428/kangaroo-mariadb-2.99.2.230430-x86_64.exe",target:"_blank",rel:"noopener noreferrer"}},[a._v("Server 4"),e("OutboundLink")],1)]),a._v(" "),e("td",[e("a",{attrs:{href:"https://kangaroo.awaysoft.com/downloads/v2.99.2.230428/kangaroo-mysql-2.99.2.230430-x86_64.exe",target:"_blank",rel:"noopener noreferrer"}},[a._v("Server 3"),e("OutboundLink")],1),a._v(" "),e("br"),a._v(" "),e("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v2.99.2.230428/kangaroo-mysql-2.99.2.230430-x86_64.exe",target:"_blank",rel:"noopener noreferrer"}},[a._v("Server 4"),e("OutboundLink")],1)]),a._v(" "),e("td",[e("a",{attrs:{href:"https://kangaroo.awaysoft.com/downloads/v2.99.2.230428/kangaroo-postgresql-2.99.2.230430-x86_64.exe",target:"_blank",rel:"noopener noreferrer"}},[a._v("Server 3"),e("OutboundLink")],1),a._v(" "),e("br"),a._v(" "),e("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v2.99.2.230428/kangaroo-postgresql-2.99.2.230430-x86_64.exe",target:"_blank",rel:"noopener noreferrer"}},[a._v("Server 4"),e("OutboundLink")],1)])]),a._v(" "),e("tr",[e("td",[a._v("ARM64")]),a._v(" "),e("td"),a._v(" "),e("td"),a._v(" "),e("td"),a._v(" "),e("td"),a._v(" "),e("td")]),a._v(" "),e("tr",[e("td",[a._v("RISCV64")]),a._v(" "),e("td"),a._v(" "),e("td"),a._v(" "),e("td"),a._v(" "),e("td"),a._v(" "),e("td")])])]),a._v(" "),e("h3",{attrs:{id:"macos-platform"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#macos-platform"}},[a._v("#")]),a._v(" macOS platform")]),a._v(" "),e("table",[e("thead",[e("tr",[e("th",[a._v("Architect")]),a._v(" "),e("th",[a._v("All")]),a._v(" "),e("th",[a._v("SQLite")]),a._v(" "),e("th",[a._v("MariaDB")]),a._v(" "),e("th",[a._v("MySQL")]),a._v(" "),e("th",[a._v("PostgreSQL")])])]),a._v(" "),e("tbody",[e("tr",[e("td",[a._v("ARM64")]),a._v(" "),e("td"),a._v(" "),e("td"),a._v(" "),e("td"),a._v(" "),e("td"),a._v(" "),e("td")]),a._v(" "),e("tr",[e("td",[a._v("x86-64")]),a._v(" "),e("td"),a._v(" "),e("td"),a._v(" "),e("td"),a._v(" "),e("td"),a._v(" "),e("td")]),a._v(" "),e("tr",[e("td",[a._v("RISCV64")]),a._v(" "),e("td"),a._v(" "),e("td"),a._v(" "),e("td"),a._v(" "),e("td"),a._v(" "),e("td")])])]),a._v(" "),e("h3",{attrs:{id:"linux-platform"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#linux-platform"}},[a._v("#")]),a._v(" Linux platform")]),a._v(" "),e("p",[a._v("This version depends on some in-development library version, it not ready for normal users."),e("br"),a._v("\nFor professional users, you should get the latest code from their repo, then compile and install. The libraries are:"),e("br"),a._v("\nGTK4 >= 4.10 "),e("br"),a._v("\nlibpanel >= 1.2.0")]),a._v(" "),e("table",[e("thead",[e("tr",[e("th",[a._v("Architect")]),a._v(" "),e("th",[a._v("All")]),a._v(" "),e("th",[a._v("SQLite")]),a._v(" "),e("th",[a._v("MariaDB")]),a._v(" "),e("th",[a._v("MySQL")]),a._v(" "),e("th",[a._v("PostgreSQL")])])]),a._v(" "),e("tbody",[e("tr",[e("td",[a._v("x86-64")]),a._v(" "),e("td",[a._v("Arch Linux"),e("br"),e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v2.99.2.230428/kangaroo-max-2.99.2.230430-1-x86_64.pkg.tar.zst",target:"_blank",rel:"noopener noreferrer"}},[a._v("Github"),e("OutboundLink")],1),a._v(" "),e("br"),a._v(" "),e("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/releases/download/v2.99.2.230428/kangaroo-max-2.99.2.230430-1-x86_64.pkg.tar.zst",target:"_blank",rel:"noopener noreferrer"}},[a._v("GitEE"),e("OutboundLink")],1),a._v(" "),e("br"),e("a",{attrs:{href:"https://kangaroo.awaysoft.com/downloads/v2.99.2.230428/kangaroo-max-2.99.2.230430-1-x86_64.pkg.tar.zst",target:"_blank",rel:"noopener noreferrer"}},[a._v("Server 3"),e("OutboundLink")],1),a._v(" "),e("br"),a._v(" "),e("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v2.99.2.230428/kangaroo-max-2.99.2.230430-1-x86_64.pkg.tar.zst",target:"_blank",rel:"noopener noreferrer"}},[a._v("Server 4"),e("OutboundLink")],1),e("br"),e("br"),a._v(" Debian"),e("br"),a._v(" "),e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v2.99.2.230428/kangaroo-max-2.99.2.230430-x86_64.deb",target:"_blank",rel:"noopener noreferrer"}},[a._v("Github"),e("OutboundLink")],1),a._v(" "),e("br"),e("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/releases/download/v2.99.2.230428/kangaroo-max-2.99.2.230430-x86_64.deb",target:"_blank",rel:"noopener noreferrer"}},[a._v("Gitee"),e("OutboundLink")],1),a._v(" "),e("br"),e("a",{attrs:{href:"https://kangaroo.awaysoft.com/downloads/v2.99.2.230428/kangaroo-max-2.99.2.230430-x86_64.deb",target:"_blank",rel:"noopener noreferrer"}},[a._v("Server 3"),e("OutboundLink")],1),a._v(" "),e("br"),e("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v2.99.2.230428/kangaroo-max-2.99.2.230430-x86_64.deb",target:"_blank",rel:"noopener noreferrer"}},[a._v("Server 4"),e("OutboundLink")],1)]),a._v(" "),e("td"),a._v(" "),e("td"),a._v(" "),e("td"),a._v(" "),e("td")]),a._v(" "),e("tr",[e("td",[a._v("ARM64")]),a._v(" "),e("td"),a._v(" "),e("td"),a._v(" "),e("td"),a._v(" "),e("td"),a._v(" "),e("td")]),a._v(" "),e("tr",[e("td",[a._v("RISCV64")]),a._v(" "),e("td"),a._v(" "),e("td"),a._v(" "),e("td"),a._v(" "),e("td"),a._v(" "),e("td")])])]),a._v(" "),e("div",[e("script2",{attrs:{type:"text/javascript",async:"true",src:"https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"}}),a._v(" "),e("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),a._v(" "),e("script2",{attrs:{type:"text/javascript"}},[a._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),a._v(" "),e("h2",{attrs:{id:"sha256sum"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#sha256sum"}},[a._v("#")]),a._v(" SHA256SUM")]),a._v(" "),e("p",[a._v("Recommend to use tools like "),e("code",[a._v("sha256sum")]),a._v(" or "),e("code",[a._v("7-Zip")]),a._v(" to verify the checksum and signature of your packages, make sure they are safe and 100% correct.")]),a._v(" "),e("table",[e("thead",[e("tr",[e("th",[a._v("sha256sum checksum")]),a._v(" "),e("th",[a._v("Package name")])])]),a._v(" "),e("tbody",[e("tr",[e("td",[a._v("b0ee5d8609c39373f0def0d2f0750a5e7476a7aaa4949c0198a9f6f8b2288494")]),a._v(" "),e("td",[a._v("kangaroo-max-2.99.2.230430-x86_64.exe")])]),a._v(" "),e("tr",[e("td",[a._v("a465ab79b11e9de74d67d63430b19031fe891572054f9dc46f75394afd8def22")]),a._v(" "),e("td",[a._v("kangaroo-max-2.99.2.230430-x86_64.deb")])]),a._v(" "),e("tr",[e("td",[a._v("1c3a6ac30c621fcedc440e5b54c65e590e28789722418226134ae1ca34e165a6")]),a._v(" "),e("td",[a._v("kangaroo-max-2.99.2.230430-1-x86_64.pkg.tar.zst")])]),a._v(" "),e("tr",[e("td",[a._v("091b05c71336a5da65f514fe339d5c597daf60ad758b033b36ae2296bb17196f")]),a._v(" "),e("td",[a._v("kangaroo-mariadb-2.99.2.230430-x86_64.exe")])]),a._v(" "),e("tr",[e("td",[a._v("443be9bf9d9ebf91f99ae1015b913aed91a532a298bdc52a388f14dad2ecb690")]),a._v(" "),e("td",[a._v("kangaroo-mysql-2.99.2.230430-x86_64.exe")])]),a._v(" "),e("tr",[e("td",[a._v("1b1032ea99e59b6e3d5221266d2d7a8fd3b46c15557bf288deb9095dae3aab86")]),a._v(" "),e("td",[a._v("kangaroo-postgresql-2.99.2.230430-x86_64.exe")])]),a._v(" "),e("tr",[e("td",[a._v("c6ab40206da2ed64191766259008a22ae4481171b1ebb2df54c76fa243c8919f")]),a._v(" "),e("td",[a._v("kangaroo-sqlite-2.99.2.230430-x86_64.exe")])]),a._v(" "),e("tr",[e("td",[a._v("d2c82b2919d27b63968b14336fa536305086cffa0cae3e27cf04064aa385f0c3")]),a._v(" "),e("td",[a._v("kangaroo-max-2.99.2.230430-x86_64.7z")])]),a._v(" "),e("tr",[e("td",[a._v("df3509ba7e1ba53723b698282f348701a711463dc2a44eb9257c863df8916433")]),a._v(" "),e("td",[a._v("kangaroo-max-2.99.2.230430-x86_64.tar.zst")])])])]),a._v(" "),e("h2",{attrs:{id:"share-with-friends"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#share-with-friends"}},[a._v("#")]),a._v(" Share with friends")]),a._v(" "),e("social-share",{attrs:{networks:["facebook","twitter","whatsapp","telegram","linkedin","reddit","line","skype","pinterest"]}})],1)}),[],!1,null,null,null);t.default=o.exports}}]); \ No newline at end of file diff --git a/assets/js/116.64b960dd.js b/assets/js/116.64b960dd.js new file mode 100644 index 000000000..6b351c8b5 --- /dev/null +++ b/assets/js/116.64b960dd.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[116],{700:function(a,t,e){"use strict";e.r(t);var r=e(13),o=Object(r.a)({},(function(){var a=this,t=a.$createElement,e=a._self._c||t;return e("ContentSlotsDistributor",{attrs:{"slot-key":a.$parent.slotKey}},[e("h1",{attrs:{id:"kangaroo-v2-99-3-beta"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#kangaroo-v2-99-3-beta"}},[a._v("#")]),a._v(" Kangaroo v2.99.3 (Beta)")]),a._v(" "),e("p",[a._v("This is a stable version, and the functional maturity and stability are infinitely close to the version goal, and it is recommended for all users.")]),a._v(" "),e("div",{staticClass:"custom-block danger"},[e("p",{staticClass:"custom-block-title"},[a._v("Important information")]),a._v(" "),e("p",[a._v("Versions marked with "),e("Badge",{attrs:{text:"Dev"}}),a._v(" "),e("Badge",{attrs:{text:"Beta"}}),a._v(" are free for commercial use, others require payment.")],1)]),a._v(" "),e("h2",{attrs:{id:"new-features-bug-fixes"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#new-features-bug-fixes"}},[a._v("#")]),a._v(" New features & bug-fixes")]),a._v(" "),e("ul",[e("li",[a._v("Windows: GTK4 upgrade to 4.11.2")]),a._v(" "),e("li",[a._v("MySQL: fixed TINYTEXT/TEXT/MEDIUMTEXT/LONGTEXT show issue")]),a._v(" "),e("li",[a._v("MariaDB: fixed TINYTEXT/TEXT/MEDIUMTEXT/LONGTEXT show issue")])]),a._v(" "),e("div",[e("script2",{attrs:{type:"text/javascript",async:"true",src:"https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"}}),a._v(" "),e("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),a._v(" "),e("script2",{attrs:{type:"text/javascript"}},[a._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),a._v(" "),e("h2",{attrs:{id:"installer-portable-packages"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#installer-portable-packages"}},[a._v("#")]),a._v(" Installer & Portable packages "),e("Badge",{attrs:{text:"link expired",type:"warning"}})],1),a._v(" "),e("p",[a._v("Windows users could install Kangaroo via winget tool directly, just run command: "),e("code",[a._v("winget install Taozuhong.Kangaroo")]),a._v(". Or download the package then install it manually.")]),a._v(" "),e("h3",{attrs:{id:"windows-platform"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#windows-platform"}},[a._v("#")]),a._v(" Windows platform")]),a._v(" "),e("table",[e("thead",[e("tr",[e("th",[a._v("Architect")]),a._v(" "),e("th",[a._v("All")]),a._v(" "),e("th",[a._v("SQLite")]),a._v(" "),e("th",[a._v("MariaDB")]),a._v(" "),e("th",[a._v("MySQL")]),a._v(" "),e("th",[a._v("PostgreSQL")])])]),a._v(" "),e("tbody",[e("tr",[e("td",[a._v("x86-64")]),a._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v2.99.3.230602/kangaroo-max-2.99.3.230602-x86_64.exe",target:"_blank",rel:"noopener noreferrer"}},[a._v("Github"),e("OutboundLink")],1),a._v(" "),e("br"),a._v(" "),e("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/releases/download/v2.99.3.230602/kangaroo-max-2.99.3.230602-x86_64.exe",target:"_blank",rel:"noopener noreferrer"}},[a._v("GitEE"),e("OutboundLink")],1),a._v(" "),e("br"),a._v(" "),e("a",{attrs:{href:"https://kangaroo.awaysoft.com/downloads/v2.99.3.230602/kangaroo-max-2.99.3.230602-x86_64.exe",target:"_blank",rel:"noopener noreferrer"}},[a._v("Server 3"),e("OutboundLink")],1),a._v(" "),e("br"),a._v(" "),e("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v2.99.3.230602/kangaroo-max-2.99.3.230602-x86_64.exe",target:"_blank",rel:"noopener noreferrer"}},[a._v("Server 4"),e("OutboundLink")],1)]),a._v(" "),e("td",[e("a",{attrs:{href:"https://kangaroo.awaysoft.com/downloads/v2.99.3.230602/kangaroo-sqlite-2.99.3.230602-x86_64.exe",target:"_blank",rel:"noopener noreferrer"}},[a._v("Server 3"),e("OutboundLink")],1),a._v(" "),e("br"),a._v(" "),e("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v2.99.3.230602/kangaroo-sqlite-2.99.3.230602-x86_64.exe",target:"_blank",rel:"noopener noreferrer"}},[a._v("Server 4"),e("OutboundLink")],1)]),a._v(" "),e("td",[e("a",{attrs:{href:"https://kangaroo.awaysoft.com/downloads/v2.99.3.230602/kangaroo-mariadb-2.99.3.230602-x86_64.exe",target:"_blank",rel:"noopener noreferrer"}},[a._v("Server 3"),e("OutboundLink")],1),a._v(" "),e("br"),a._v(" "),e("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v2.99.3.230602/kangaroo-mariadb-2.99.3.230602-x86_64.exe",target:"_blank",rel:"noopener noreferrer"}},[a._v("Server 4"),e("OutboundLink")],1)]),a._v(" "),e("td",[e("a",{attrs:{href:"https://kangaroo.awaysoft.com/downloads/v2.99.3.230602/kangaroo-mysql-2.99.3.230602-x86_64.exe",target:"_blank",rel:"noopener noreferrer"}},[a._v("Server 3"),e("OutboundLink")],1),a._v(" "),e("br"),a._v(" "),e("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v2.99.3.230602/kangaroo-mysql-2.99.3.230602-x86_64.exe",target:"_blank",rel:"noopener noreferrer"}},[a._v("Server 4"),e("OutboundLink")],1)]),a._v(" "),e("td",[e("a",{attrs:{href:"https://kangaroo.awaysoft.com/downloads/v2.99.3.230602/kangaroo-postgresql-2.99.3.230602-x86_64.exe",target:"_blank",rel:"noopener noreferrer"}},[a._v("Server 3"),e("OutboundLink")],1),a._v(" "),e("br"),a._v(" "),e("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v2.99.3.230602/kangaroo-postgresql-2.99.3.230602-x86_64.exe",target:"_blank",rel:"noopener noreferrer"}},[a._v("Server 4"),e("OutboundLink")],1)])]),a._v(" "),e("tr",[e("td",[a._v("ARM64")]),a._v(" "),e("td"),a._v(" "),e("td"),a._v(" "),e("td"),a._v(" "),e("td"),a._v(" "),e("td")]),a._v(" "),e("tr",[e("td",[a._v("RISCV64")]),a._v(" "),e("td"),a._v(" "),e("td"),a._v(" "),e("td"),a._v(" "),e("td"),a._v(" "),e("td")])])]),a._v(" "),e("h3",{attrs:{id:"macos-platform"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#macos-platform"}},[a._v("#")]),a._v(" macOS platform")]),a._v(" "),e("table",[e("thead",[e("tr",[e("th",[a._v("Architect")]),a._v(" "),e("th",[a._v("All")]),a._v(" "),e("th",[a._v("SQLite")]),a._v(" "),e("th",[a._v("MariaDB")]),a._v(" "),e("th",[a._v("MySQL")]),a._v(" "),e("th",[a._v("PostgreSQL")])])]),a._v(" "),e("tbody",[e("tr",[e("td",[a._v("ARM64")]),a._v(" "),e("td"),a._v(" "),e("td"),a._v(" "),e("td"),a._v(" "),e("td"),a._v(" "),e("td")]),a._v(" "),e("tr",[e("td",[a._v("x86-64")]),a._v(" "),e("td"),a._v(" "),e("td"),a._v(" "),e("td"),a._v(" "),e("td"),a._v(" "),e("td")]),a._v(" "),e("tr",[e("td",[a._v("RISCV64")]),a._v(" "),e("td"),a._v(" "),e("td"),a._v(" "),e("td"),a._v(" "),e("td"),a._v(" "),e("td")])])]),a._v(" "),e("h3",{attrs:{id:"linux-platform"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#linux-platform"}},[a._v("#")]),a._v(" Linux platform")]),a._v(" "),e("p",[a._v("This version depends on some in-development library version, it not ready for normal users."),e("br"),a._v("\nFor professional users, you should get the latest code from their repo, then compile and install. The libraries are:"),e("br"),a._v("\nGTK4 >= 4.10 "),e("br"),a._v("\nlibpanel >= 1.2.0")]),a._v(" "),e("table",[e("thead",[e("tr",[e("th",[a._v("Architect")]),a._v(" "),e("th",[a._v("All")]),a._v(" "),e("th",[a._v("SQLite")]),a._v(" "),e("th",[a._v("MariaDB")]),a._v(" "),e("th",[a._v("MySQL")]),a._v(" "),e("th",[a._v("PostgreSQL")])])]),a._v(" "),e("tbody",[e("tr",[e("td",[a._v("x86-64")]),a._v(" "),e("td",[a._v("Arch Linux"),e("br"),e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v2.99.3.230602/kangaroo-max-2.99.3.230602-1-x86_64.pkg.tar.zst",target:"_blank",rel:"noopener noreferrer"}},[a._v("Github"),e("OutboundLink")],1),a._v(" "),e("br"),a._v(" "),e("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/releases/download/v2.99.3.230602/kangaroo-max-2.99.3.230602-1-x86_64.pkg.tar.zst",target:"_blank",rel:"noopener noreferrer"}},[a._v("GitEE"),e("OutboundLink")],1),a._v(" "),e("br"),e("a",{attrs:{href:"https://kangaroo.awaysoft.com/downloads/v2.99.3.230602/kangaroo-max-2.99.3.230602-1-x86_64.pkg.tar.zst",target:"_blank",rel:"noopener noreferrer"}},[a._v("Server 3"),e("OutboundLink")],1),a._v(" "),e("br"),a._v(" "),e("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v2.99.3.230602/kangaroo-max-2.99.3.230602-1-x86_64.pkg.tar.zst",target:"_blank",rel:"noopener noreferrer"}},[a._v("Server 4"),e("OutboundLink")],1),e("br"),e("br"),a._v(" Debian"),e("br"),a._v(" "),e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v2.99.3.230602/kangaroo-max-2.99.3.230602-x86_64.deb",target:"_blank",rel:"noopener noreferrer"}},[a._v("Github"),e("OutboundLink")],1),a._v(" "),e("br"),e("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/releases/download/v2.99.3.230602/kangaroo-max-2.99.3.230602-x86_64.deb",target:"_blank",rel:"noopener noreferrer"}},[a._v("Gitee"),e("OutboundLink")],1),a._v(" "),e("br"),e("a",{attrs:{href:"https://kangaroo.awaysoft.com/downloads/v2.99.3.230602/kangaroo-max-2.99.3.230602-x86_64.deb",target:"_blank",rel:"noopener noreferrer"}},[a._v("Server 3"),e("OutboundLink")],1),a._v(" "),e("br"),e("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v2.99.3.230602/kangaroo-max-2.99.3.230602-x86_64.deb",target:"_blank",rel:"noopener noreferrer"}},[a._v("Server 4"),e("OutboundLink")],1)]),a._v(" "),e("td"),a._v(" "),e("td"),a._v(" "),e("td"),a._v(" "),e("td")]),a._v(" "),e("tr",[e("td",[a._v("ARM64")]),a._v(" "),e("td"),a._v(" "),e("td"),a._v(" "),e("td"),a._v(" "),e("td"),a._v(" "),e("td")]),a._v(" "),e("tr",[e("td",[a._v("RISCV64")]),a._v(" "),e("td"),a._v(" "),e("td"),a._v(" "),e("td"),a._v(" "),e("td"),a._v(" "),e("td")])])]),a._v(" "),e("div",[e("script2",{attrs:{type:"text/javascript",async:"true",src:"https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"}}),a._v(" "),e("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),a._v(" "),e("script2",{attrs:{type:"text/javascript"}},[a._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),a._v(" "),e("h2",{attrs:{id:"sha256sum"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#sha256sum"}},[a._v("#")]),a._v(" SHA256SUM")]),a._v(" "),e("p",[a._v("Recommend to use tools like "),e("code",[a._v("sha256sum")]),a._v(" or "),e("code",[a._v("7-Zip")]),a._v(" to verify the checksum and signature of your packages, make sure they are safe and 100% correct.")]),a._v(" "),e("table",[e("thead",[e("tr",[e("th",[a._v("sha256sum checksum")]),a._v(" "),e("th",[a._v("Package name")])])]),a._v(" "),e("tbody",[e("tr",[e("td",[a._v("1a2be887170dbfb4147ff10fe1201d6c8594b86e929d8b612d17abe656cbb640")]),a._v(" "),e("td",[a._v("kangaroo-max-2.99.3.230602-x86_64.exe")])]),a._v(" "),e("tr",[e("td",[a._v("d84aa6c93dd01ec65a5f63f3a2cb8260537d3ee824ea7424d1801631bd112f5a")]),a._v(" "),e("td",[a._v("kangaroo-max-2.99.3.230602-x86_64.deb")])]),a._v(" "),e("tr",[e("td",[a._v("7da7ed12dc99a38b68d691cbff59d13a511ba62eb221dc53ee79385a69d2f2fd")]),a._v(" "),e("td",[a._v("kangaroo-max-2.99.3.230602-1-x86_64.pkg.tar.zst")])]),a._v(" "),e("tr",[e("td",[a._v("9f19f79b27f9ba6aa7a0fea680f9a917cf31a961e90365ffe7a974ee85e62510")]),a._v(" "),e("td",[a._v("kangaroo-mariadb-2.99.3.230602-x86_64.exe")])]),a._v(" "),e("tr",[e("td",[a._v("15e8e61266842eafe01d9568ff0dfab5ef3f4da69c8f529f926ae786d0731386")]),a._v(" "),e("td",[a._v("kangaroo-mysql-2.99.3.230602-x86_64.exe")])]),a._v(" "),e("tr",[e("td",[a._v("fd50c9cbf035653864bafab3a34164649094e82dadf91a6cb2de331c8283ebfb")]),a._v(" "),e("td",[a._v("kangaroo-postgresql-2.99.3.230602-x86_64.exe")])]),a._v(" "),e("tr",[e("td",[a._v("631e23f70427415bb862ad0a445f29c599096c0dfad208583ebaea1059a02075")]),a._v(" "),e("td",[a._v("kangaroo-sqlite-2.99.3.230602-x86_64.exe")])]),a._v(" "),e("tr",[e("td",[a._v("ab6fefc8d064421cfd7d506a28ddd4e8a4363723ccf7a9b211894f455f39474f")]),a._v(" "),e("td",[a._v("kangaroo-max-2.99.3.230602-x86_64.7z")])]),a._v(" "),e("tr",[e("td",[a._v("12ac32a1a5d15ac71add144412b0f8a441a68a517afc17a2995d4d12b53e4f63")]),a._v(" "),e("td",[a._v("kangaroo-max-2.99.3.230602-x86_64.tar.zst")])])])]),a._v(" "),e("h2",{attrs:{id:"share-with-friends"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#share-with-friends"}},[a._v("#")]),a._v(" Share with friends")]),a._v(" "),e("social-share",{attrs:{networks:["facebook","twitter","whatsapp","telegram","linkedin","reddit","line","skype","pinterest"]}})],1)}),[],!1,null,null,null);t.default=o.exports}}]); \ No newline at end of file diff --git a/assets/js/117.2220da29.js b/assets/js/117.2220da29.js new file mode 100644 index 000000000..70a5fa815 --- /dev/null +++ b/assets/js/117.2220da29.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[117],{704:function(t,a,e){"use strict";e.r(a);var r=e(13),o=Object(r.a)({},(function(){var t=this,a=t.$createElement,e=t._self._c||a;return e("ContentSlotsDistributor",{attrs:{"slot-key":t.$parent.slotKey}},[e("h1",{attrs:{id:"kangaroo-v3-90-1-beta"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#kangaroo-v3-90-1-beta"}},[t._v("#")]),t._v(" Kangaroo v3.90.1 (Beta)")]),t._v(" "),e("p",[t._v("This is a stable version, and the functional maturity and stability are infinitely close to the version goal, and it is recommended for all users.")]),t._v(" "),e("div",{staticClass:"custom-block danger"},[e("p",{staticClass:"custom-block-title"},[t._v("Important information")]),t._v(" "),e("p",[t._v("Versions marked with "),e("Badge",{attrs:{text:"Dev"}}),t._v(" "),e("Badge",{attrs:{text:"Beta"}}),t._v(" are free for commercial use, others require payment.")],1)]),t._v(" "),e("h2",{attrs:{id:"new-features-bug-fixes"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#new-features-bug-fixes"}},[t._v("#")]),t._v(" New features & bug-fixes")]),t._v(" "),e("ul",[e("li",[t._v("Add transfer/structure sync/data sync UI")]),t._v(" "),e("li",[t._v("Implent transfer bussiness logic")]),t._v(" "),e("li",[t._v("Implement structure sync business logic")]),t._v(" "),e("li",[t._v("SQLite Encryption Extension support(SQLCipher)")]),t._v(" "),e("li",[t._v("MySQL: Improve TEXT/BLOB type support")]),t._v(" "),e("li",[t._v("MariaDB: Improve TEXT/BLOB type support")]),t._v(" "),e("li",[t._v("Make dialog window stay center")]),t._v(" "),e("li",[t._v("Add language switch support")]),t._v(" "),e("li",[t._v("Improve preference window performance")]),t._v(" "),e("li",[t._v("Updated Chinese translation")]),t._v(" "),e("li",[t._v("Fixed MySQL/MariaDB field flag issue")])]),t._v(" "),e("div",[e("script2",{attrs:{type:"text/javascript",async:"true",src:"https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"}}),t._v(" "),e("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),t._v(" "),e("script2",{attrs:{type:"text/javascript"}},[t._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),t._v(" "),e("h2",{attrs:{id:"installer-portable-packages"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#installer-portable-packages"}},[t._v("#")]),t._v(" Installer & Portable packages "),e("Badge",{attrs:{text:"link expired",type:"warning"}})],1),t._v(" "),e("p",[t._v("Windows users could install Kangaroo via winget tool directly, just run command: "),e("code",[t._v("winget install Taozuhong.Kangaroo")]),t._v(". Or download the package then install it manually.")]),t._v(" "),e("h3",{attrs:{id:"windows-platform"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#windows-platform"}},[t._v("#")]),t._v(" Windows platform")]),t._v(" "),e("table",[e("thead",[e("tr",[e("th",[t._v("Architect")]),t._v(" "),e("th",[t._v("All")]),t._v(" "),e("th",[t._v("SQLite")]),t._v(" "),e("th",[t._v("MariaDB")]),t._v(" "),e("th",[t._v("MySQL")]),t._v(" "),e("th",[t._v("PostgreSQL")])])]),t._v(" "),e("tbody",[e("tr",[e("td",[t._v("x86-64")]),t._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v3.90.1.230701/kangaroo-max-3.90.1.230703-x86_64.exe",target:"_blank",rel:"noopener noreferrer"}},[t._v("Github"),e("OutboundLink")],1),t._v(" "),e("br"),t._v(" "),e("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/releases/download/v3.90.1.230701/kangaroo-max-3.90.1.230703-x86_64.exe",target:"_blank",rel:"noopener noreferrer"}},[t._v("GitEE"),e("OutboundLink")],1),t._v(" "),e("br"),t._v(" "),e("a",{attrs:{href:"https://kangaroo.awaysoft.com/downloads/v3.90.1.230703/kangaroo-max-3.90.1.230703-x86_64.exe",target:"_blank",rel:"noopener noreferrer"}},[t._v("Server 3"),e("OutboundLink")],1),t._v(" "),e("br"),t._v(" "),e("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v3.90.1.230703/kangaroo-max-3.90.1.230703-x86_64.exe",target:"_blank",rel:"noopener noreferrer"}},[t._v("Server 4"),e("OutboundLink")],1)]),t._v(" "),e("td",[e("a",{attrs:{href:"https://kangaroo.awaysoft.com/downloads/v3.90.1.230703/kangaroo-sqlite-3.90.1.230703-x86_64.exe",target:"_blank",rel:"noopener noreferrer"}},[t._v("Server 3"),e("OutboundLink")],1),t._v(" "),e("br"),t._v(" "),e("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v3.90.1.230703/kangaroo-sqlite-3.90.1.230703-x86_64.exe",target:"_blank",rel:"noopener noreferrer"}},[t._v("Server 4"),e("OutboundLink")],1)]),t._v(" "),e("td",[e("a",{attrs:{href:"https://kangaroo.awaysoft.com/downloads/v3.90.1.230703/kangaroo-mariadb-3.90.1.230703-x86_64.exe",target:"_blank",rel:"noopener noreferrer"}},[t._v("Server 3"),e("OutboundLink")],1),t._v(" "),e("br"),t._v(" "),e("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v3.90.1.230703/kangaroo-mariadb-3.90.1.230703-x86_64.exe",target:"_blank",rel:"noopener noreferrer"}},[t._v("Server 4"),e("OutboundLink")],1)]),t._v(" "),e("td",[e("a",{attrs:{href:"https://kangaroo.awaysoft.com/downloads/v3.90.1.230703/kangaroo-mysql-3.90.1.230703-x86_64.exe",target:"_blank",rel:"noopener noreferrer"}},[t._v("Server 3"),e("OutboundLink")],1),t._v(" "),e("br"),t._v(" "),e("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v3.90.1.230703/kangaroo-mysql-3.90.1.230703-x86_64.exe",target:"_blank",rel:"noopener noreferrer"}},[t._v("Server 4"),e("OutboundLink")],1)]),t._v(" "),e("td",[e("a",{attrs:{href:"https://kangaroo.awaysoft.com/downloads/v3.90.1.230703/kangaroo-postgresql-3.90.1.230703-x86_64.exe",target:"_blank",rel:"noopener noreferrer"}},[t._v("Server 3"),e("OutboundLink")],1),t._v(" "),e("br"),t._v(" "),e("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v3.90.1.230703/kangaroo-postgresql-3.90.1.230703-x86_64.exe",target:"_blank",rel:"noopener noreferrer"}},[t._v("Server 4"),e("OutboundLink")],1)])]),t._v(" "),e("tr",[e("td",[t._v("ARM64")]),t._v(" "),e("td"),t._v(" "),e("td"),t._v(" "),e("td"),t._v(" "),e("td"),t._v(" "),e("td")]),t._v(" "),e("tr",[e("td",[t._v("RISCV64")]),t._v(" "),e("td"),t._v(" "),e("td"),t._v(" "),e("td"),t._v(" "),e("td"),t._v(" "),e("td")])])]),t._v(" "),e("h3",{attrs:{id:"macos-platform"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#macos-platform"}},[t._v("#")]),t._v(" macOS platform")]),t._v(" "),e("table",[e("thead",[e("tr",[e("th",[t._v("Architect")]),t._v(" "),e("th",[t._v("All")]),t._v(" "),e("th",[t._v("SQLite")]),t._v(" "),e("th",[t._v("MariaDB")]),t._v(" "),e("th",[t._v("MySQL")]),t._v(" "),e("th",[t._v("PostgreSQL")])])]),t._v(" "),e("tbody",[e("tr",[e("td",[t._v("ARM64")]),t._v(" "),e("td"),t._v(" "),e("td"),t._v(" "),e("td"),t._v(" "),e("td"),t._v(" "),e("td")]),t._v(" "),e("tr",[e("td",[t._v("x86-64")]),t._v(" "),e("td"),t._v(" "),e("td"),t._v(" "),e("td"),t._v(" "),e("td"),t._v(" "),e("td")]),t._v(" "),e("tr",[e("td",[t._v("RISCV64")]),t._v(" "),e("td"),t._v(" "),e("td"),t._v(" "),e("td"),t._v(" "),e("td"),t._v(" "),e("td")])])]),t._v(" "),e("h3",{attrs:{id:"linux-platform"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#linux-platform"}},[t._v("#")]),t._v(" Linux platform")]),t._v(" "),e("p",[t._v("This version depends on some in-development library version, it not ready for normal users."),e("br"),t._v("\nFor professional users, you should get the latest code from their repo, then compile and install. The libraries are:"),e("br"),t._v("\nGTK4 >= 4.10 "),e("br"),t._v("\nlibpanel >= 1.2.0")]),t._v(" "),e("table",[e("thead",[e("tr",[e("th",[t._v("Architect")]),t._v(" "),e("th",[t._v("All")]),t._v(" "),e("th",[t._v("SQLite")]),t._v(" "),e("th",[t._v("MariaDB")]),t._v(" "),e("th",[t._v("MySQL")]),t._v(" "),e("th",[t._v("PostgreSQL")])])]),t._v(" "),e("tbody",[e("tr",[e("td",[t._v("x86-64")]),t._v(" "),e("td",[t._v("Arch Linux"),e("br"),e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v3.90.1.230701/kangaroo-max-3.90.1.230703-1-x86_64.pkg.tar.zst",target:"_blank",rel:"noopener noreferrer"}},[t._v("Github"),e("OutboundLink")],1),t._v(" "),e("br"),t._v(" "),e("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/releases/download/v3.90.1.230701/kangaroo-max-3.90.1.230703-1-x86_64.pkg.tar.zst",target:"_blank",rel:"noopener noreferrer"}},[t._v("GitEE"),e("OutboundLink")],1),t._v(" "),e("br"),e("a",{attrs:{href:"https://kangaroo.awaysoft.com/downloads/v3.90.1.230703/kangaroo-max-3.90.1.230703-1-x86_64.pkg.tar.zst",target:"_blank",rel:"noopener noreferrer"}},[t._v("Server 3"),e("OutboundLink")],1),t._v(" "),e("br"),t._v(" "),e("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v3.90.1.230703/kangaroo-max-3.90.1.230703-1-x86_64.pkg.tar.zst",target:"_blank",rel:"noopener noreferrer"}},[t._v("Server 4"),e("OutboundLink")],1),e("br"),e("br"),t._v(" Debian"),e("br"),t._v(" "),e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v3.90.1.230701/kangaroo-max-3.90.1.230703-x86_64.deb",target:"_blank",rel:"noopener noreferrer"}},[t._v("Github"),e("OutboundLink")],1),t._v(" "),e("br"),e("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/releases/download/v3.90.1.230701/kangaroo-max-3.90.1.230703-x86_64.deb",target:"_blank",rel:"noopener noreferrer"}},[t._v("Gitee"),e("OutboundLink")],1),t._v(" "),e("br"),e("a",{attrs:{href:"https://kangaroo.awaysoft.com/downloads/v3.90.1.230703/kangaroo-max-3.90.1.230703-x86_64.deb",target:"_blank",rel:"noopener noreferrer"}},[t._v("Server 3"),e("OutboundLink")],1),t._v(" "),e("br"),e("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v3.90.1.230703/kangaroo-max-3.90.1.230703-x86_64.deb",target:"_blank",rel:"noopener noreferrer"}},[t._v("Server 4"),e("OutboundLink")],1)]),t._v(" "),e("td"),t._v(" "),e("td"),t._v(" "),e("td"),t._v(" "),e("td")]),t._v(" "),e("tr",[e("td",[t._v("ARM64")]),t._v(" "),e("td"),t._v(" "),e("td"),t._v(" "),e("td"),t._v(" "),e("td"),t._v(" "),e("td")]),t._v(" "),e("tr",[e("td",[t._v("RISCV64")]),t._v(" "),e("td"),t._v(" "),e("td"),t._v(" "),e("td"),t._v(" "),e("td"),t._v(" "),e("td")])])]),t._v(" "),e("div",[e("script2",{attrs:{type:"text/javascript",async:"true",src:"https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"}}),t._v(" "),e("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),t._v(" "),e("script2",{attrs:{type:"text/javascript"}},[t._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),t._v(" "),e("h2",{attrs:{id:"sha256sum"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#sha256sum"}},[t._v("#")]),t._v(" SHA256SUM")]),t._v(" "),e("p",[t._v("Recommend to use tools like "),e("code",[t._v("sha256sum")]),t._v(" or "),e("code",[t._v("7-Zip")]),t._v(" to verify the checksum and signature of your packages, make sure they are safe and 100% correct.")]),t._v(" "),e("table",[e("thead",[e("tr",[e("th",[t._v("sha256sum checksum")]),t._v(" "),e("th",[t._v("Package name")])])]),t._v(" "),e("tbody",[e("tr",[e("td",[t._v("0dbbefb6823b406351d753bc597394ba785898677904e98145e145a73a4e3512")]),t._v(" "),e("td",[t._v("kangaroo-max-3.90.1.230703-x86_64.exe")])]),t._v(" "),e("tr",[e("td",[t._v("9b20a3ab546797a47845ec63b13da31a33d3e0e700c6f4171bb72c1c8c41b71f")]),t._v(" "),e("td",[t._v("kangaroo-max-3.90.1.230703-x86_64.deb")])]),t._v(" "),e("tr",[e("td",[t._v("0bcc168cdb9e05aed57bd1842dac291ee15b8f8c65dab379acc14eb1065cc9b5")]),t._v(" "),e("td",[t._v("kangaroo-max-3.90.1.230703-1-x86_64.pkg.tar.zst")])]),t._v(" "),e("tr",[e("td",[t._v("fd76fd988716f8dfb105d9ffb77255a606c79eb58a2a79d94450dc7626d3d5d5")]),t._v(" "),e("td",[t._v("kangaroo-mariadb-3.90.1.230703-x86_64.exe")])]),t._v(" "),e("tr",[e("td",[t._v("279cb589f427b19ea66d36ca815d340ca628c32cad03dbe4e3ad9672b7d4f18b")]),t._v(" "),e("td",[t._v("kangaroo-mysql-3.90.1.230703-x86_64.exe")])]),t._v(" "),e("tr",[e("td",[t._v("afc76b0ab613cd64ba95277ae3f1071b4acbb74e081b4bbbfa52cdb962249bcf")]),t._v(" "),e("td",[t._v("kangaroo-postgresql-3.90.1.230703-x86_64.exe")])]),t._v(" "),e("tr",[e("td",[t._v("873917695247339c56403aeb35737a40d00b68c456866c7016c5b5f4fa50e3e7")]),t._v(" "),e("td",[t._v("kangaroo-sqlite-3.90.1.230703-x86_64.exe")])]),t._v(" "),e("tr",[e("td",[t._v("f070a6969f4e94c43e16f4a483011a22582155a4782565bf75140d3ae88532fb")]),t._v(" "),e("td",[t._v("kangaroo-max-3.90.1.230703-x86_64.7z")])]),t._v(" "),e("tr",[e("td",[t._v("eb627ed093c4476305fbf04b2e30f67ddca0da2efe9bbc59febf383fd202ea8b")]),t._v(" "),e("td",[t._v("kangaroo-max-3.90.1.230703-x86_64.tar.zst")])])])]),t._v(" "),e("h2",{attrs:{id:"share-with-friends"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#share-with-friends"}},[t._v("#")]),t._v(" Share with friends")]),t._v(" "),e("social-share",{attrs:{networks:["facebook","twitter","whatsapp","telegram","linkedin","reddit","line","skype","pinterest"]}})],1)}),[],!1,null,null,null);a.default=o.exports}}]); \ No newline at end of file diff --git a/assets/js/118.89aed41d.js b/assets/js/118.89aed41d.js new file mode 100644 index 000000000..08b20987b --- /dev/null +++ b/assets/js/118.89aed41d.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[118],{701:function(a,t,e){"use strict";e.r(t);var r=e(13),o=Object(r.a)({},(function(){var a=this,t=a.$createElement,e=a._self._c||t;return e("ContentSlotsDistributor",{attrs:{"slot-key":a.$parent.slotKey}},[e("h1",{attrs:{id:"kangaroo-v3-91-1-beta"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#kangaroo-v3-91-1-beta"}},[a._v("#")]),a._v(" Kangaroo v3.91.1 (Beta)")]),a._v(" "),e("p",[a._v("This is a beta version, and the functional maturity and stability are infinitely close to the version goal, and it is recommended for all users.")]),a._v(" "),e("div",{staticClass:"custom-block danger"},[e("p",{staticClass:"custom-block-title"},[a._v("Important information")]),a._v(" "),e("p",[a._v("Versions marked with "),e("Badge",{attrs:{text:"Dev"}}),a._v(" "),e("Badge",{attrs:{text:"Beta"}}),a._v(" are free for commercial use, others require payment.")],1)]),a._v(" "),e("h2",{attrs:{id:"new-features-bug-fixes"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#new-features-bug-fixes"}},[a._v("#")]),a._v(" New features & bug-fixes")]),a._v(" "),e("ul",[e("li",[a._v("Port to libadwaita 1.4")]),a._v(" "),e("li",[a._v("Refactor GtkSwitch.state to active")]),a._v(" "),e("li",[a._v("Add database library version for about dialog")]),a._v(" "),e("li",[a._v("Add Chinese support(zh_Hans/zh_Hant)")]),a._v(" "),e("li",[a._v("Improve workspace status bar")]),a._v(" "),e("li",[a._v("Updated Chinese translation")]),a._v(" "),e("li",[a._v("MariaDB: add table designer pages")]),a._v(" "),e("li",[a._v("MariaDB: fixed foreign key issue")]),a._v(" "),e("li",[a._v("MySQL: add missing type: TIMESTAMP")]),a._v(" "),e("li",[a._v("PostgreSQL: fixed type and collation issue")]),a._v(" "),e("li",[a._v("SQLite: fixed schema issue")]),a._v(" "),e("li",[a._v("Data transfer: initialize default options")]),a._v(" "),e("li",[a._v("Data transfer: add log output")]),a._v(" "),e("li",[a._v("Data transfer: Fixed target connection issue")])]),a._v(" "),e("div",[e("script2",{attrs:{type:"text/javascript",async:"true",src:"https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"}}),a._v(" "),e("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),a._v(" "),e("script2",{attrs:{type:"text/javascript"}},[a._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),a._v(" "),e("h2",{attrs:{id:"installer-portable-packages"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#installer-portable-packages"}},[a._v("#")]),a._v(" Installer & Portable packages")]),a._v(" "),e("p",[a._v("Windows users could install Kangaroo via winget tool directly, just run command: "),e("code",[a._v("winget install Taozuhong.Kangaroo")]),a._v(". Or download the package then install it manually.")]),a._v(" "),e("h3",{attrs:{id:"windows-platform"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#windows-platform"}},[a._v("#")]),a._v(" Windows platform")]),a._v(" "),e("table",[e("thead",[e("tr",[e("th",[a._v("Architect")]),a._v(" "),e("th",[a._v("All")]),a._v(" "),e("th",[a._v("SQLite")]),a._v(" "),e("th",[a._v("MariaDB")]),a._v(" "),e("th",[a._v("MySQL")]),a._v(" "),e("th",[a._v("PostgreSQL")])])]),a._v(" "),e("tbody",[e("tr",[e("td",[a._v("x86-64")]),a._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v3.91.1.230801/kangaroo-max-3.91.2.230807-x86_64.exe",target:"_blank",rel:"noopener noreferrer"}},[a._v("Github"),e("OutboundLink")],1),a._v(" "),e("br"),a._v(" "),e("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/releases/download/v3.91.1.230801/kangaroo-max-3.91.2.230807-x86_64.exe",target:"_blank",rel:"noopener noreferrer"}},[a._v("GitEE"),e("OutboundLink")],1),a._v(" "),e("br"),a._v(" "),e("a",{attrs:{href:"https://kangaroo.awaysoft.com/downloads/v3.91.1.230801/kangaroo-max-3.91.2.230807-x86_64.exe",target:"_blank",rel:"noopener noreferrer"}},[a._v("Server 3"),e("OutboundLink")],1),a._v(" "),e("br"),a._v(" "),e("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v3.91.1.230801/kangaroo-max-3.91.2.230807-x86_64.exe",target:"_blank",rel:"noopener noreferrer"}},[a._v("Server 4"),e("OutboundLink")],1)]),a._v(" "),e("td",[e("a",{attrs:{href:"https://kangaroo.awaysoft.com/downloads/v3.91.1.230801/kangaroo-sqlite-3.91.2.230807-x86_64.exe",target:"_blank",rel:"noopener noreferrer"}},[a._v("Server 3"),e("OutboundLink")],1),a._v(" "),e("br"),a._v(" "),e("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v3.91.1.230801/kangaroo-sqlite-3.91.2.230807-x86_64.exe",target:"_blank",rel:"noopener noreferrer"}},[a._v("Server 4"),e("OutboundLink")],1)]),a._v(" "),e("td",[e("a",{attrs:{href:"https://kangaroo.awaysoft.com/downloads/v3.91.1.230801/kangaroo-mariadb-3.91.2.230807-x86_64.exe",target:"_blank",rel:"noopener noreferrer"}},[a._v("Server 3"),e("OutboundLink")],1),a._v(" "),e("br"),a._v(" "),e("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v3.91.1.230801/kangaroo-mariadb-3.91.2.230807-x86_64.exe",target:"_blank",rel:"noopener noreferrer"}},[a._v("Server 4"),e("OutboundLink")],1)]),a._v(" "),e("td",[e("a",{attrs:{href:"https://kangaroo.awaysoft.com/downloads/v3.91.1.230801/kangaroo-mysql-3.91.2.230807-x86_64.exe",target:"_blank",rel:"noopener noreferrer"}},[a._v("Server 3"),e("OutboundLink")],1),a._v(" "),e("br"),a._v(" "),e("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v3.91.1.230801/kangaroo-mysql-3.91.2.230807-x86_64.exe",target:"_blank",rel:"noopener noreferrer"}},[a._v("Server 4"),e("OutboundLink")],1)]),a._v(" "),e("td",[e("a",{attrs:{href:"https://kangaroo.awaysoft.com/downloads/v3.91.1.230801/kangaroo-postgresql-3.91.2.230807-x86_64.exe",target:"_blank",rel:"noopener noreferrer"}},[a._v("Server 3"),e("OutboundLink")],1),a._v(" "),e("br"),a._v(" "),e("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v3.91.1.230801/kangaroo-postgresql-3.91.2.230807-x86_64.exe",target:"_blank",rel:"noopener noreferrer"}},[a._v("Server 4"),e("OutboundLink")],1)])]),a._v(" "),e("tr",[e("td",[a._v("ARM64")]),a._v(" "),e("td"),a._v(" "),e("td"),a._v(" "),e("td"),a._v(" "),e("td"),a._v(" "),e("td")]),a._v(" "),e("tr",[e("td",[a._v("RISCV64")]),a._v(" "),e("td"),a._v(" "),e("td"),a._v(" "),e("td"),a._v(" "),e("td"),a._v(" "),e("td")])])]),a._v(" "),e("h3",{attrs:{id:"macos-platform"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#macos-platform"}},[a._v("#")]),a._v(" macOS platform")]),a._v(" "),e("table",[e("thead",[e("tr",[e("th",[a._v("Architect")]),a._v(" "),e("th",[a._v("All")]),a._v(" "),e("th",[a._v("SQLite")]),a._v(" "),e("th",[a._v("MariaDB")]),a._v(" "),e("th",[a._v("MySQL")]),a._v(" "),e("th",[a._v("PostgreSQL")])])]),a._v(" "),e("tbody",[e("tr",[e("td",[a._v("ARM64")]),a._v(" "),e("td"),a._v(" "),e("td"),a._v(" "),e("td"),a._v(" "),e("td"),a._v(" "),e("td")]),a._v(" "),e("tr",[e("td",[a._v("x86-64")]),a._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v3.91.1.230801/kangaroo-max-3.90.2.230801-x86_64.dmg",target:"_blank",rel:"noopener noreferrer"}},[a._v("Github"),e("OutboundLink")],1),a._v(" "),e("br"),a._v(" "),e("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/releases/download/v3.91.1.230801/kangaroo-max-3.90.2.230801-x86_64.dmg",target:"_blank",rel:"noopener noreferrer"}},[a._v("GitEE"),e("OutboundLink")],1),a._v(" "),e("br"),a._v(" "),e("a",{attrs:{href:"https://kangaroo.awaysoft.com/downloads/v3.91.1.230801/kangaroo-max-3.90.2.230801-x86_64.dmg",target:"_blank",rel:"noopener noreferrer"}},[a._v("Server 3"),e("OutboundLink")],1),a._v(" "),e("br"),e("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v3.91.1.230801/kangaroo-max-3.90.2.230801-x86_64.dmg",target:"_blank",rel:"noopener noreferrer"}},[a._v("Server 4"),e("OutboundLink")],1)]),a._v(" "),e("td"),a._v(" "),e("td"),a._v(" "),e("td"),a._v(" "),e("td")]),a._v(" "),e("tr",[e("td",[a._v("RISCV64")]),a._v(" "),e("td"),a._v(" "),e("td"),a._v(" "),e("td"),a._v(" "),e("td"),a._v(" "),e("td")])])]),a._v(" "),e("h3",{attrs:{id:"linux-platform"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#linux-platform"}},[a._v("#")]),a._v(" Linux platform")]),a._v(" "),e("p",[a._v("This version depends on some in-development library version, it not ready for normal users."),e("br"),a._v("\nFor professional users, you should get the latest code from their repo, then compile and install. The libraries are:"),e("br"),a._v("\nGTK4 >= 4.11.4 "),e("br"),a._v("\nlibadwaita >= 1.4.0")]),a._v(" "),e("table",[e("thead",[e("tr",[e("th",[a._v("Architect")]),a._v(" "),e("th",[a._v("All")]),a._v(" "),e("th",[a._v("SQLite")]),a._v(" "),e("th",[a._v("MariaDB")]),a._v(" "),e("th",[a._v("MySQL")]),a._v(" "),e("th",[a._v("PostgreSQL")])])]),a._v(" "),e("tbody",[e("tr",[e("td",[a._v("x86-64")]),a._v(" "),e("td",[a._v("Arch Linux"),e("br"),e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v3.91.1.230801/kangaroo-max-3.90.2.230801-1-x86_64.pkg.tar.zst",target:"_blank",rel:"noopener noreferrer"}},[a._v("Github"),e("OutboundLink")],1),a._v(" "),e("br"),a._v(" "),e("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/releases/download/v3.91.1.230801/kangaroo-max-3.90.2.230801-1-x86_64.pkg.tar.zst",target:"_blank",rel:"noopener noreferrer"}},[a._v("GitEE"),e("OutboundLink")],1),a._v(" "),e("br"),e("a",{attrs:{href:"https://kangaroo.awaysoft.com/downloads/v3.91.1.230801/kangaroo-max-3.90.2.230801-1-x86_64.pkg.tar.zst",target:"_blank",rel:"noopener noreferrer"}},[a._v("Server 3"),e("OutboundLink")],1),a._v(" "),e("br"),a._v(" "),e("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v3.91.1.230801/kangaroo-max-3.90.2.230801-1-x86_64.pkg.tar.zst",target:"_blank",rel:"noopener noreferrer"}},[a._v("Server 4"),e("OutboundLink")],1),e("br"),e("br"),a._v(" Debian"),e("br"),a._v(" "),e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v3.91.1.230801/kangaroo-max-3.90.2.230801-x86_64.deb",target:"_blank",rel:"noopener noreferrer"}},[a._v("Github"),e("OutboundLink")],1),a._v(" "),e("br"),e("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/releases/download/v3.91.1.230801/kangaroo-max-3.90.2.230801-x86_64.deb",target:"_blank",rel:"noopener noreferrer"}},[a._v("Gitee"),e("OutboundLink")],1),a._v(" "),e("br"),e("a",{attrs:{href:"https://kangaroo.awaysoft.com/downloads/v3.91.1.230801/kangaroo-max-3.90.2.230801-x86_64.deb",target:"_blank",rel:"noopener noreferrer"}},[a._v("Server 3"),e("OutboundLink")],1),a._v(" "),e("br"),e("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v3.91.1.230801/kangaroo-max-3.90.2.230801-x86_64.deb",target:"_blank",rel:"noopener noreferrer"}},[a._v("Server 4"),e("OutboundLink")],1)]),a._v(" "),e("td"),a._v(" "),e("td"),a._v(" "),e("td"),a._v(" "),e("td")]),a._v(" "),e("tr",[e("td",[a._v("ARM64")]),a._v(" "),e("td"),a._v(" "),e("td"),a._v(" "),e("td"),a._v(" "),e("td"),a._v(" "),e("td")]),a._v(" "),e("tr",[e("td",[a._v("RISCV64")]),a._v(" "),e("td"),a._v(" "),e("td"),a._v(" "),e("td"),a._v(" "),e("td"),a._v(" "),e("td")])])]),a._v(" "),e("div",[e("script2",{attrs:{type:"text/javascript",async:"true",src:"https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"}}),a._v(" "),e("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),a._v(" "),e("script2",{attrs:{type:"text/javascript"}},[a._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),a._v(" "),e("h2",{attrs:{id:"sha256sum"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#sha256sum"}},[a._v("#")]),a._v(" SHA256SUM")]),a._v(" "),e("p",[a._v("Recommend to use tools like "),e("code",[a._v("sha256sum")]),a._v(" or "),e("code",[a._v("7-Zip")]),a._v(" to verify the checksum and signature of your packages, make sure they are safe and 100% correct.")]),a._v(" "),e("table",[e("thead",[e("tr",[e("th",[a._v("sha256sum checksum")]),a._v(" "),e("th",[a._v("Package name")])])]),a._v(" "),e("tbody",[e("tr",[e("td",[a._v("0724bfb36f576ffd0183eff98f9308a37a23d3c9440dfb18d3c72814e52a7c7f")]),a._v(" "),e("td",[a._v("kangaroo-max-3.91.2.230807-x86_64.exe")])]),a._v(" "),e("tr",[e("td",[a._v("d737d9b3d29baf543cccd5b7c6ebe329b075ec36e8ba01a46cef146ec83bfc20")]),a._v(" "),e("td",[a._v("kangaroo-max-3.90.2.230801-x86_64.deb")])]),a._v(" "),e("tr",[e("td",[a._v("7c526127e14dbeafa69a818cef61710dd8441b677e83f5b5480dbf90e673146a")]),a._v(" "),e("td",[a._v("kangaroo-max-3.90.2.230801-1-x86_64.pkg.tar.zst")])]),a._v(" "),e("tr",[e("td",[a._v("21f6cafe83a5639e5ec639e5560420bbc69f7c74d8ea9d77e57789e2d9e7bb30")]),a._v(" "),e("td",[a._v("kangaroo-max-3.90.2.230801-x86_64.dmg")])]),a._v(" "),e("tr",[e("td",[a._v("366c09e7f779be87d435e681d89301f5e9388d286f79d8140d1d1bb0ee4cf2e7")]),a._v(" "),e("td",[a._v("kangaroo-mariadb-3.91.2.230807-x86_64.exe")])]),a._v(" "),e("tr",[e("td",[a._v("20e4750206a48ab3888b6196f3c5affcbcc1c9192529398553e8897b654f6f9c")]),a._v(" "),e("td",[a._v("kangaroo-mysql-3.91.2.230807-x86_64.exe")])]),a._v(" "),e("tr",[e("td",[a._v("a543ac201f5f95e231c464e60c452b4ff1168e50776883376a4b66bfc8d42401")]),a._v(" "),e("td",[a._v("kangaroo-postgresql-3.91.2.230807-x86_64.exe")])]),a._v(" "),e("tr",[e("td",[a._v("df895b43909a424c958e525ddd76facd8db7d27a151a7cbccad339b7f01198c9")]),a._v(" "),e("td",[a._v("kangaroo-sqlite-3.91.2.230807-x86_64.exe")])]),a._v(" "),e("tr",[e("td",[a._v("38f1d00e1136e02c41b6eb9338e7877b5f5aa851ede2f9a32db580e02e0a3ecb")]),a._v(" "),e("td",[a._v("kangaroo-max-3.90.2.230801-x86_64.tar.zst")])]),a._v(" "),e("tr",[e("td",[a._v("4f1d560d4f19221655aa226fdb61dd1e18fa25889c7e54f9a0326b93ce50ef9f")]),a._v(" "),e("td",[a._v("kangaroo-max-3.91.2.230807-x86_64.7z")])])])]),a._v(" "),e("h2",{attrs:{id:"share-with-friends"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#share-with-friends"}},[a._v("#")]),a._v(" Share with friends")]),a._v(" "),e("social-share",{attrs:{networks:["facebook","twitter","whatsapp","telegram","linkedin","reddit","line","skype","pinterest"]}})],1)}),[],!1,null,null,null);t.default=o.exports}}]); \ No newline at end of file diff --git a/assets/js/119.44b8e528.js b/assets/js/119.44b8e528.js new file mode 100644 index 000000000..e22a2947c --- /dev/null +++ b/assets/js/119.44b8e528.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[119],{702:function(e,a,t){"use strict";t.r(a);var r=t(13),o=Object(r.a)({},(function(){var e=this,a=e.$createElement,t=e._self._c||a;return t("ContentSlotsDistributor",{attrs:{"slot-key":e.$parent.slotKey}},[t("h1",{attrs:{id:"kangaroo-v3-92-1"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#kangaroo-v3-92-1"}},[e._v("#")]),e._v(" Kangaroo v3.92.1")]),e._v(" "),t("p",[e._v("The Kangaroo have made huge strides in stability, so we removed the "),t("code",[e._v("Beta")]),e._v(" mark from this version "),t("code",[e._v("v3.92.1")]),e._v(", and Kangaroo officially entering the stable version release cycle. Everyone is welcome to experience it.")]),e._v(" "),t("div",{staticClass:"custom-block danger"},[t("p",{staticClass:"custom-block-title"},[e._v("Important information")]),e._v(" "),t("p",[e._v("Versions marked with "),t("Badge",{attrs:{text:"Dev"}}),e._v(" "),t("Badge",{attrs:{text:"Beta"}}),e._v(" are free for commercial use, others require payment.")],1)]),e._v(" "),t("h2",{attrs:{id:"new-features-bug-fixes"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#new-features-bug-fixes"}},[e._v("#")]),e._v(" New features & bug-fixes")]),e._v(" "),t("ul",[t("li",[e._v("GTK4 upgrade to 4.12")]),e._v(" "),t("li",[e._v("libadwaita upgrade to 1.4 beta")]),e._v(" "),t("li",[e._v("Add Redhat series package support(rpm)")]),e._v(" "),t("li",[e._v("Add code snippet support\n"),t("ul",[t("li",[e._v("Code snippet pane(filter/drag and drop)")]),e._v(" "),t("li",[e._v("Code snippet dialog")]),e._v(" "),t("li",[e._v("Code snippet intellisense")]),e._v(" "),t("li",[e._v("Code snippet setting")]),e._v(" "),t("li",[e._v("Code snippet context menu for query view")])])]),e._v(" "),t("li",[e._v("Add execute menu item for query view context menu")]),e._v(" "),t("li",[e._v("Refactor history view")]),e._v(" "),t("li",[e._v("Refactor color text view")]),e._v(" "),t("li",[e._v("Refactor minor toolbar style")]),e._v(" "),t("li",[e._v("Refactor toolbar setting")]),e._v(" "),t("li",[e._v("Refactor exportor columns page")]),e._v(" "),t("li",[e._v("Refactor exportor tables page")]),e._v(" "),t("li",[e._v("Refactor exportor option page")]),e._v(" "),t("li",[e._v("Refactor model entity dialog")]),e._v(" "),t("li",[e._v("QR code add kangaroo logo")]),e._v(" "),t("li",[e._v("Updated Chinese translation")]),e._v(" "),t("li",[e._v("Fixed: libsoup connection issue")]),e._v(" "),t("li",[e._v("Fixed: document UI data display issue")]),e._v(" "),t("li",[e._v("Fixed: status bar missing data issue")]),e._v(" "),t("li",[e._v("Fixed: connection id issue")])]),e._v(" "),t("div",[t("script2",{attrs:{type:"text/javascript",async:"true",src:"https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"}}),e._v(" "),t("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),e._v(" "),t("script2",{attrs:{type:"text/javascript"}},[e._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),e._v(" "),t("h2",{attrs:{id:"installer-portable-packages"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#installer-portable-packages"}},[e._v("#")]),e._v(" Installer & Portable packages")]),e._v(" "),t("p",[e._v("Windows users could install Kangaroo via winget tool directly, just run command: "),t("code",[e._v("winget install Taozuhong.Kangaroo")]),e._v(". Or download the package then install it manually.")]),e._v(" "),t("h3",{attrs:{id:"windows-platform"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#windows-platform"}},[e._v("#")]),e._v(" Windows platform")]),e._v(" "),t("table",[t("thead",[t("tr",[t("th",[e._v("Architect")]),e._v(" "),t("th",[e._v("All")]),e._v(" "),t("th",[e._v("SQLite")]),e._v(" "),t("th",[e._v("MariaDB")]),e._v(" "),t("th",[e._v("MySQL")]),e._v(" "),t("th",[e._v("PostgreSQL")])])]),e._v(" "),t("tbody",[t("tr",[t("td",[e._v("x86-64")]),e._v(" "),t("td",[t("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v3.92.1.230901/kangaroo-max-3.92.1.230901-x86_64.exe",target:"_blank",rel:"noopener noreferrer"}},[e._v("Github"),t("OutboundLink")],1),e._v(" "),t("br"),e._v(" "),t("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/releases/download/v3.92.1.230901/kangaroo-max-3.92.1.230901-x86_64.exe",target:"_blank",rel:"noopener noreferrer"}},[e._v("GitEE"),t("OutboundLink")],1),e._v(" "),t("br"),e._v(" "),t("a",{attrs:{href:"https://kangaroo.awaysoft.com/downloads/v3.92.1.230901/kangaroo-max-3.92.1.230901-x86_64.exe",target:"_blank",rel:"noopener noreferrer"}},[e._v("Server 3"),t("OutboundLink")],1),e._v(" "),t("br"),e._v(" "),t("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v3.92.1.230901/kangaroo-max-3.92.1.230901-x86_64.exe",target:"_blank",rel:"noopener noreferrer"}},[e._v("Server 4"),t("OutboundLink")],1)]),e._v(" "),t("td",[t("a",{attrs:{href:"https://kangaroo.awaysoft.com/downloads/v3.92.1.230901/kangaroo-sqlite-3.92.1.230901-x86_64.exe",target:"_blank",rel:"noopener noreferrer"}},[e._v("Server 3"),t("OutboundLink")],1),e._v(" "),t("br"),e._v(" "),t("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v3.92.1.230901/kangaroo-sqlite-3.92.1.230901-x86_64.exe",target:"_blank",rel:"noopener noreferrer"}},[e._v("Server 4"),t("OutboundLink")],1)]),e._v(" "),t("td",[t("a",{attrs:{href:"https://kangaroo.awaysoft.com/downloads/v3.92.1.230901/kangaroo-mariadb-3.92.1.230901-x86_64.exe",target:"_blank",rel:"noopener noreferrer"}},[e._v("Server 3"),t("OutboundLink")],1),e._v(" "),t("br"),e._v(" "),t("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v3.92.1.230901/kangaroo-mariadb-3.92.1.230901-x86_64.exe",target:"_blank",rel:"noopener noreferrer"}},[e._v("Server 4"),t("OutboundLink")],1)]),e._v(" "),t("td",[t("a",{attrs:{href:"https://kangaroo.awaysoft.com/downloads/v3.92.1.230901/kangaroo-mysql-3.92.1.230901-x86_64.exe",target:"_blank",rel:"noopener noreferrer"}},[e._v("Server 3"),t("OutboundLink")],1),e._v(" "),t("br"),e._v(" "),t("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v3.92.1.230901/kangaroo-mysql-3.92.1.230901-x86_64.exe",target:"_blank",rel:"noopener noreferrer"}},[e._v("Server 4"),t("OutboundLink")],1)]),e._v(" "),t("td",[t("a",{attrs:{href:"https://kangaroo.awaysoft.com/downloads/v3.92.1.230901/kangaroo-postgresql-3.92.1.230901-x86_64.exe",target:"_blank",rel:"noopener noreferrer"}},[e._v("Server 3"),t("OutboundLink")],1),e._v(" "),t("br"),e._v(" "),t("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v3.92.1.230901/kangaroo-postgresql-3.92.1.230901-x86_64.exe",target:"_blank",rel:"noopener noreferrer"}},[e._v("Server 4"),t("OutboundLink")],1)])]),e._v(" "),t("tr",[t("td",[e._v("ARM64")]),e._v(" "),t("td"),e._v(" "),t("td"),e._v(" "),t("td"),e._v(" "),t("td"),e._v(" "),t("td")]),e._v(" "),t("tr",[t("td",[e._v("RISCV64")]),e._v(" "),t("td"),e._v(" "),t("td"),e._v(" "),t("td"),e._v(" "),t("td"),e._v(" "),t("td")])])]),e._v(" "),t("h3",{attrs:{id:"macos-platform"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#macos-platform"}},[e._v("#")]),e._v(" macOS platform")]),e._v(" "),t("table",[t("thead",[t("tr",[t("th",[e._v("Architect")]),e._v(" "),t("th",[e._v("All")]),e._v(" "),t("th",[e._v("SQLite")]),e._v(" "),t("th",[e._v("MariaDB")]),e._v(" "),t("th",[e._v("MySQL")]),e._v(" "),t("th",[e._v("PostgreSQL")])])]),e._v(" "),t("tbody",[t("tr",[t("td",[e._v("ARM64")]),e._v(" "),t("td"),e._v(" "),t("td"),e._v(" "),t("td"),e._v(" "),t("td"),e._v(" "),t("td")]),e._v(" "),t("tr",[t("td",[e._v("x86-64")]),e._v(" "),t("td",[t("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v3.92.1.230901/kangaroo-max-3.92.1.230901-x86_64.dmg",target:"_blank",rel:"noopener noreferrer"}},[e._v("Github"),t("OutboundLink")],1),e._v(" "),t("br"),e._v(" "),t("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/releases/download/v3.92.1.230901/kangaroo-max-3.92.1.230901-x86_64.dmg",target:"_blank",rel:"noopener noreferrer"}},[e._v("GitEE"),t("OutboundLink")],1),e._v(" "),t("br"),e._v(" "),t("a",{attrs:{href:"https://kangaroo.awaysoft.com/downloads/v3.92.1.230901/kangaroo-max-3.92.1.230901-x86_64.dmg",target:"_blank",rel:"noopener noreferrer"}},[e._v("Server 3"),t("OutboundLink")],1),e._v(" "),t("br"),t("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v3.92.1.230901/kangaroo-max-3.92.1.230901-x86_64.dmg",target:"_blank",rel:"noopener noreferrer"}},[e._v("Server 4"),t("OutboundLink")],1)]),e._v(" "),t("td"),e._v(" "),t("td"),e._v(" "),t("td"),e._v(" "),t("td")]),e._v(" "),t("tr",[t("td",[e._v("RISCV64")]),e._v(" "),t("td"),e._v(" "),t("td"),e._v(" "),t("td"),e._v(" "),t("td"),e._v(" "),t("td")])])]),e._v(" "),t("h3",{attrs:{id:"linux-platform"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#linux-platform"}},[e._v("#")]),e._v(" Linux platform")]),e._v(" "),t("p",[e._v("This version depends on some in-development library version, it not ready for normal users."),t("br"),e._v("\nFor professional users, you should get the latest code from their repo, then compile and install. The libraries are:"),t("br"),e._v("\nGTK4 >= 4.12.0 "),t("br"),e._v("\nlibadwaita >= 1.4.0")]),e._v(" "),t("table",[t("thead",[t("tr",[t("th",[e._v("Architect")]),e._v(" "),t("th",[e._v("All")]),e._v(" "),t("th",[e._v("SQLite")]),e._v(" "),t("th",[e._v("MariaDB")]),e._v(" "),t("th",[e._v("MySQL")]),e._v(" "),t("th",[e._v("PostgreSQL")])])]),e._v(" "),t("tbody",[t("tr",[t("td",[e._v("x86-64")]),e._v(" "),t("td",[e._v("Arch Linux"),t("br"),t("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v3.92.1.230901/kangaroo-max-3.92.1.230901-1-x86_64.pkg.tar.zst",target:"_blank",rel:"noopener noreferrer"}},[e._v("Github"),t("OutboundLink")],1),e._v(" "),t("br"),e._v(" "),t("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/releases/download/v3.92.1.230901/kangaroo-max-3.92.1.230901-1-x86_64.pkg.tar.zst",target:"_blank",rel:"noopener noreferrer"}},[e._v("GitEE"),t("OutboundLink")],1),e._v(" "),t("br"),t("a",{attrs:{href:"https://kangaroo.awaysoft.com/downloads/v3.92.1.230901/kangaroo-max-3.92.1.230901-1-x86_64.pkg.tar.zst",target:"_blank",rel:"noopener noreferrer"}},[e._v("Server 3"),t("OutboundLink")],1),e._v(" "),t("br"),e._v(" "),t("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v3.92.1.230901/kangaroo-max-3.92.1.230901-1-x86_64.pkg.tar.zst",target:"_blank",rel:"noopener noreferrer"}},[e._v("Server 4"),t("OutboundLink")],1),t("br"),t("br"),e._v(" Debian"),t("br"),e._v(" "),t("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v3.92.1.230901/kangaroo-max-3.92.1.230901-x86_64.deb",target:"_blank",rel:"noopener noreferrer"}},[e._v("Github"),t("OutboundLink")],1),e._v(" "),t("br"),t("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/releases/download/v3.92.1.230901/kangaroo-max-3.92.1.230901-x86_64.deb",target:"_blank",rel:"noopener noreferrer"}},[e._v("Gitee"),t("OutboundLink")],1),e._v(" "),t("br"),t("a",{attrs:{href:"https://kangaroo.awaysoft.com/downloads/v3.92.1.230901/kangaroo-max-3.92.1.230901-x86_64.deb",target:"_blank",rel:"noopener noreferrer"}},[e._v("Server 3"),t("OutboundLink")],1),e._v(" "),t("br"),t("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v3.92.1.230901/kangaroo-max-3.92.1.230901-x86_64.deb",target:"_blank",rel:"noopener noreferrer"}},[e._v("Server 4"),t("OutboundLink")],1),t("br"),t("br"),e._v(" Red Hat"),t("br"),t("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v3.92.1.230901/kangaroo-max-3.92.1.230901-x86_64.rpm",target:"_blank",rel:"noopener noreferrer"}},[e._v("Github"),t("OutboundLink")],1),e._v(" "),t("br"),t("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/releases/download/v3.92.1.230901/kangaroo-max-3.92.1.230901-x86_64.rpm",target:"_blank",rel:"noopener noreferrer"}},[e._v("Gitee"),t("OutboundLink")],1),e._v(" "),t("br"),t("a",{attrs:{href:"https://kangaroo.awaysoft.com/downloads/v3.92.1.230901/kangaroo-max-3.92.1.230901-x86_64.rpm",target:"_blank",rel:"noopener noreferrer"}},[e._v("Server 3"),t("OutboundLink")],1),e._v(" "),t("br"),t("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v3.92.1.230901/kangaroo-max-3.92.1.230901-x86_64.rpm",target:"_blank",rel:"noopener noreferrer"}},[e._v("Server 4"),t("OutboundLink")],1)]),e._v(" "),t("td"),e._v(" "),t("td"),e._v(" "),t("td"),e._v(" "),t("td")]),e._v(" "),t("tr",[t("td",[e._v("ARM64")]),e._v(" "),t("td"),e._v(" "),t("td"),e._v(" "),t("td"),e._v(" "),t("td"),e._v(" "),t("td")]),e._v(" "),t("tr",[t("td",[e._v("RISCV64")]),e._v(" "),t("td"),e._v(" "),t("td"),e._v(" "),t("td"),e._v(" "),t("td"),e._v(" "),t("td")])])]),e._v(" "),t("div",[t("script2",{attrs:{type:"text/javascript",async:"true",src:"https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"}}),e._v(" "),t("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),e._v(" "),t("script2",{attrs:{type:"text/javascript"}},[e._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),e._v(" "),t("h2",{attrs:{id:"sha256sum"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#sha256sum"}},[e._v("#")]),e._v(" SHA256SUM")]),e._v(" "),t("p",[e._v("Recommend to use tools like "),t("code",[e._v("sha256sum")]),e._v(" or "),t("code",[e._v("7-Zip")]),e._v(" to verify the checksum and signature of your packages, make sure they are safe and 100% correct.")]),e._v(" "),t("table",[t("thead",[t("tr",[t("th",[e._v("sha256sum checksum")]),e._v(" "),t("th",[e._v("Package name")])])]),e._v(" "),t("tbody",[t("tr",[t("td",[e._v("460b029dbb91afe8c5a2e236309a608a2f08ae257a7e774175b208523f753d49")]),e._v(" "),t("td",[e._v("kangaroo-max-3.92.1.230901-x86_64.exe")])]),e._v(" "),t("tr",[t("td",[e._v("6316e5d17bf32fcd667e3edd3cd2593566f2244677d617c830659d0e136c24f6")]),e._v(" "),t("td",[e._v("kangaroo-max-3.92.1.230901-x86_64.dmg")])]),e._v(" "),t("tr",[t("td",[e._v("010a3406f0c67701e23419543c2830270fffee3865da5759465d300ff43656d3")]),e._v(" "),t("td",[e._v("kangaroo-max-3.92.1.230901-x86_64.deb")])]),e._v(" "),t("tr",[t("td",[e._v("b33f33d9daa888ec45f3639eceb37e30cfd8bf4e0c22fc742affd993fc727b66")]),e._v(" "),t("td",[e._v("kangaroo-max-3.92.1.230901-x86_64.rpm")])]),e._v(" "),t("tr",[t("td",[e._v("453c33bb90bd881b3e29f8ac63c577a563265661c3d8b044b3bfd16b818359ef")]),e._v(" "),t("td",[e._v("kangaroo-max-3.92.1.230901-1-x86_64.pkg.tar.zst")])]),e._v(" "),t("tr",[t("td",[e._v("39376cbb67511e8a99758e7c2ae6b2ed00e0a8dba88c62f967aa881b0e792822")]),e._v(" "),t("td",[e._v("kangaroo-max-3.92.1.230901-x86_64.7z")])]),e._v(" "),t("tr",[t("td",[e._v("3f27e51f50858ad515ade26ca4c7fe00d5028dbc765b5a8bcf04e2a84ca91337")]),e._v(" "),t("td",[e._v("kangaroo-mariadb-3.92.1.230901-x86_64.exe")])]),e._v(" "),t("tr",[t("td",[e._v("b2d09740311f44abcace6cc81c2876fb02184f6b048e59a19f2ffd667cb2ae1f")]),e._v(" "),t("td",[e._v("kangaroo-mysql-3.92.1.230901-x86_64.exe")])]),e._v(" "),t("tr",[t("td",[e._v("99bfe18452ce25e13ede7811e5eefc16a083150d75a3c6fa5e6bacdd73e3517f")]),e._v(" "),t("td",[e._v("kangaroo-postgresql-3.92.1.230901-x86_64.exe")])]),e._v(" "),t("tr",[t("td",[e._v("1b99c4cbe956608d7bca6dc49c5222b23493fcdf76c01242cd6dd89e07f2e547")]),e._v(" "),t("td",[e._v("kangaroo-sqlite-3.92.1.230901-x86_64.exe")])])])]),e._v(" "),t("h2",{attrs:{id:"share-with-friends"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#share-with-friends"}},[e._v("#")]),e._v(" Share with friends")]),e._v(" "),t("social-share",{attrs:{networks:["facebook","twitter","whatsapp","telegram","linkedin","reddit","line","skype","pinterest"]}})],1)}),[],!1,null,null,null);a.default=o.exports}}]); \ No newline at end of file diff --git a/assets/js/12.48a57cf3.js b/assets/js/12.48a57cf3.js new file mode 100644 index 000000000..6a8135ef0 --- /dev/null +++ b/assets/js/12.48a57cf3.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[12],{561:function(l,t){l.exports="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAuQAAAB3CAMAAAB8F6WTAAACdlBMVEX////EwMDb4vO/uLEuNDbW0c3Nx8JeYlLv4tskNCBoYlLz8/O2xdbGv7n49/bSxbYjNDZOYmTe1MpOYnAcNCbd2dXRzcdzhZy0p5guNCCWp7ouNCra1tNep+Ogj4Dhp2Ti4vOCxf79/f3+xYWUhXb5+fnDhTb29/ak4v709PT//+O6vbcua6Rxc2//4qjD//8XFxbh//+IiYWkYmT//8WcnpcuhcXt6+jSz8kkNCpeYqijpZwsNWPw7+3JuKenqqW+jVm+0c2yta/WpHLOycV6hZzWuoxzhodklBPX1dBzpM0uNIb8/PxcNTWBNTDV2NLJxcE4XZCTlpBZ9I8vWI1VWIwhSoaCNIZYYmTKbRysr6qMjojGpmJWX1Tmhhv77t6Xp7CVY6+QThjk4+LEzNz36NuNus19fnimcjTd3dpWjLqomInptIZYYnB9NGZbNGNeYlrcjEdFQz+kYjbS1svGyMOKn79lZWT3tlrDfUPeiDtcYjC8bCjnfAft8/nn6OSm0crDxb7W0bi3urSkxahefKW5pZOlck/nmTj8+fbQ4PCCxcXwyabarYikYoaChYTfxYJOYlrZgDXUdyTBYxPf4tzKzMm2uLPAr55eNIaIjV3QejPCfCxFZwrD/+Pw2sjc0cbn3qvjwKPW0aFWdJzDpIukp4YkSHy7rGvts2h0bmWNWFnUlkT1qDqKWjadjSUrKCSuWhKfudakp7rD4qhWZ4zDw4lLW3qgrG6HbGjDhWSKmGG7m0NyNDasxuPh/8Wk4sWQp8KNuq1ypKGCjpb60JJyWIxehYYuhYZVc3LVuGw0MS/h/+P847+Cp6hsg5+muoyNWHK4d11DAAARzklEQVR42uya6W8SQRjGxwj9oNEaEzUmIoG1iF20ii41AoIrUawoUhGlKGqVtlRSQ7Xa07ZWbdVqTVvv+77PeN/3Fc//yJmXgemKIvUDNmZ/NWFXeMs2/vbhmbEoK6ufjMz/TBaRHMnI/L/Iksv89zDJraMcWb3GMcqKZGT6NgnJRzmmKv+CqY5RSEamTxOX3OpQ/iUOOctl+jZxyUeRHBeaFwDmXmW5JMpXezyrUd9h2JrRhFWol4Q6Q6gXbI9E/f5oZDuS6YvEJYcgH46AOcN7ZbkD9cBTVORBfYc1B6ZjDqzpreWdtZ0ofY77r+w5efJkxH8cyfRB4pJnQSijfJD815bbC5S/JAsxtD5e/AvJm/k0O495fAIBpcHo6cCB0cCaMEqD2mh7pPZNbaQ9Wpum4/UfL9QdPVp3N1QvW/7v2RfWpiO5klp+uuLl5ZLWkrICKrldQfDOUMaZtQgfZ7Gq4vWd4Tf4NqE4Ew7mIcqUCj3KnaxHDG2h0ShUucJVPN+MiOXwvLpDgbHoY0MrJyEJlaJoMwuFxo7S8ZX0rzgVe4fJ+od6nUYqOThOJV+DkqHzjGiktour5rpqI9H0ukr90utHD5lth44eOlmf3Fjgp5iyOA/JZAZ+VVX+HyRfuBA1TsWWQ3/Z/GBAXcHm701xycup2GVge/lPknvE/St4nl/h2+BCQO46BWZuHvg+7dPuYxLJXYH165vNLVXIvbfRiniQfMu0pRqkVsHAPIViCJ1PsHFigo30Ppo2SafAqPD4mAd1mtzdeRLJwfHsoUD2aITRKQgGcvtg90ByyY3RHn3DVV+t5rjadgSwCQIXO2LsOvLYKVTlb7fajl5Yuou+RPF+Pr12ToUlV5Nj2fOMwLsGu/eN+5PkhOEL8PlMBeHVE5ysJeR4WSLJN18uwU8bpJL7WvgYX19Qx5eYsCGgLH7A1mJMPZM8YBN41CyKPElyKvlOYocJ7EWpYZ8V1D4CGbfoE5KThSc4DsQk18C98VvJI13c1erPWPOuiBYBbAKAI0bNFeehfvk5rrH7Hjk/1tCXrNXTMSL522cV5/A1yWQEMacx31rldqUlOWbW2jpFwUzvDHs5TXIstpJw+u2MJMlvbeUBUWzxxqJYQ8TTIHqi1tC6whjbYkP79+Ugkc9HCcmJeCD5HhagrJJLSzk3N481gQn4ajWcYZKaFRDwm5FGkoc6Oy9erV6+PFTd1tbVGUpK8mTJi684hXCOVpszrNC5p5gOqJAaPl9A8gfzNLhMyZZnBtvYsDtsbWwJp5R85cp4kluacCdfdq8JWrl92TIFgE/sJNEvUMlpIfe1iEUYm83M+zyraV0x6WJy6JZ0mKBzS7EKbsGKACb57Wl7YkmunpuH/yRX8oCxtHT8xkraxJ9DMcB6zz2GO/mSO3k9lB3NBJckOX2YgkcBNnG462LbxeWEi8E2/2EkmWAxLZX83CqXVutaZXYuJZKD35ZDKjX+gjOCnOSZQhjnHra3caCrqDENyQlllhJ7QevLiibSXcppkpOEL1HOOiNJck8RzwtAYWERb/NgJ8g/LKci5VqlNqm/zFMAqp5JztuQ0DIWFRpX/UpyLCF9Navk0lKOv7kJBvVgoUWv1jx8DtEukfzEthNMcpCOVuTkhWfosL8t2IAdbwgG/YdDSDpBT7HtjNYjzkdhInn4kfNxa7zg7L6fkFyFLy93six5higciBd5Y1fZ3GkmOURQ08wPZ9xKuwHXlQ9EVMOc009mr22yF0glt+0XhUDAaOwIGLHkXgQ5yeRQa6iL0k6OzEZbwFhoBcup5HdNUFfuXGPjv4OznEtIzsVezL0rRykk5xQUuAVNMcmxjIxd/raG9uXtDcFuWEVKJ6Dj3JWsPM/e1DmrrC6Xtdn5uOwslbzDsJRJjhfDsuQZwzhw70Crjc9BKL0kLytX4qZy+gkuKHNwJy+bjaWGLHfPmofll9QVr89bJIqBUpu4/7XPu5qGXsc7WmCTJXeVut1IMJqb12Osxh67K7A65UwwlbtOkrTCz9vkHEtynQonKL61ND9LPn3QtuzpIDldq1Ktfy35KRzlQZzjQf8phJFOwNvkrtMgxtjiI9ed99evv+90Hplviyc5fr1OQyWfMn/uMVnyTFGaM3C/kJ9yd4VC64qd7KXYcXiT41cV32JJroTtFTeTHLB4fD5Pkfja5zt/h8oxT8WpyPrz10leOn58gHdVCUZIcsjI21hyrJTOMAmkgikJlQKt5JVJkpMeQeYUpp8lz962bVs2lZx26hSS10T93cGGhu7uaA2cswlAbZgE54yhxfXXnZjrh4svjRzECn9FHYxg298vliXPGOP3Gd2p98kpVPLN1wwzvRe8M8oMShzddQWzIMlhSVqixOneU3JvwfmtFs953/kzlq0x/YhynAr2GiSSJwOdnK7sYKmpg/1uJnlyK9+YLHnuOhNn2GOYpDNJJAfLs1knh7pPJVdQJJLXnNrV3dC961QNlZxNkPeAqoLvXInlN/1Hgv6b84ovld6YSn8S8hGkM0FrMzzDy4Tc3fI+eUYIiDkopeQJphLJ7ZYSKnJZOX5WGWMOcR/S/BqkOpV861P89eLeiHu3tt5K+v9EJnm6EKdgAzI1ILkOervaogcbobek2F0B7+AbwzB9Mwna+pv1LgRIJthKmJQixvazrcXFrWfP3ai8dOkGedKix1cDsqvxtWHh4UaSySSpf0ELJHcoUzCn56MDBjbsYF+ozyCVPHsNSpNQfQj9Bf1vVFZORDI/2LlDGwSCIICiiwCFRlIDniIohB7ogqquKYIg5OSJSzY/700LX87MZNartpfjz33rqu359Z8xjevK8z129lhuy2AyjibIc/5GnkNm8rykIE/k5B1O3sRR9418QJnIyRM5eSInT+TkiZw8kZMncvJETp7IyRM5eSInT+TkifzDvhnstgkEYbgiK2EoDlTYMeAcUEQU5ZpLFfXQU9RXyKVSD71WyqvkWfqC3fk1eEljQsa72GzESCFhyP4fO/xM1tiZ48PHbPI5PnzsNfnVenm2i+X6yg4xrOqHfj/DV8w0+AKYS5OvL87NzvnF2g4xrOqHfj/DV8w0+AKYS5MvmcrcpR1iWNUP/TcYnmKmwRfAXJr87I3dIJRDhlW7MVX9YQYX6GSYTDXHLGUQenLd3m3yRKnSvcmD6P/f+rLQ2azAIQf6mVIqrkORvpxBUdYhxKUFssckOl3o7xvaVLzzuq4u+Clzu6fABwzIjS+wMbOUg+QmB/JoJr9/okMT0+9jGIzA5A4xVUlNvKA07/x0bnKGJ6T+yuQR2sYoJjdhQCObHPdS7N7k3H02epuj80a/C32I80H0V6l0o7Z6Ujm2Uv0grMOHUqYvd1/w9AfiIcsIwgqTp9TNMb3t19WCmx4dCkI4MQgfthjDI1AIGpXEwlKit9atnP4BlAh8rmZuQPYm5ysHOQHIzuR5OlYnD+4XVPJv+v5E9hmHkKebN1EpXZJNobcHmTzDeIm+3H3tOoJlBGGD4RKuFpRu65ljOq3J9eQxhkegEEmjd1NhKauGasly0MUJMB/V7ILsTQ4a5AQgK5ODMo7JqWo42daESRFEnCcif60wSelCsglC6nsCfUv3sYwgLDA8jyylNOaIgzjUdnKeN4+gX8LPq4PW5HUr18pHfFsh3QXZvgApmcZyApCFyZN4JJNXiv7o5ErhSiH7XEecNyasM0UJqT6XSqBv5z4jIw855kUn50VzEsMNL00O65hCb4qqkV0qNND9Jgcf1eyC3CxXdnICkE0nD8cxeVJyp6ninQmTuwj5V52WQ25ygb51ixWENSZPTQm5qwURt749nbwtRPD0KHx5A9Y+k4PPp9AFOTI5ywlANibHXTTGC8+GesQv3YgaWidyPUvOGxPiIdmPQ00u1pe7D+JGRh5yzP6nK1iTY+W6iTE5jOERKIQuQPzp0E4OOWNyLM+5mh2QO5NDTgCyeU5Om7vQ8cNf0s1U/LggAjJxzbcs8h0TYsURH2pysb7cfRA3MvKQY8xzcv5jqLByzvRcsfOdOzmN4REoBHwqvVTbBdeST4HPBkiuZgfkzuSQ6wfNb+t7xzgWZnXyaZ70bf1LFx+ZEaj6od/P8BJTNSefpgDm3uQ3l90PP17e2CGGVf3Q72f4ipkGXwyzNzni+vbzLm6v7QjDqr7o9zN8xUyD3wOb/zNojjlmk88xxz927tgGABAIAeD+W5sYjSsgf9fYSUOpKDljKDn1lJx6Sk49JaeeklNPyalnQSsuw4LWYUHLgtbzd74FraD7257apuQHLmjdf7L7iFpKWtScQWrrQBBEwZv/bQIK2JDYKy90idwkl8g610/8UFGUwiyatEAJaCZRRM90dXkYxujthKA1wEzlvR2k0jy+c9tf3SomP5+6TS7mCu8tboadmqp1qI9xHaF8GIwcf21yh6mjg/p5P/kjGcitDRc2j7KTjP0mP7y//e82uYlP/SY39mn76t9OY5Mrx0F1ilLt1+TI0GXyYyG7TpPfXoHtQdFSd4BvZC4TTaVyvF0uKtQHVKf2ylyMxnpeGBQiTIGAahiDi5jmdLHwPooeVCvppxkVpUo4ljJgPMhWqWC3lM7zB3dMMkjTVJhH6iY/PwhIs1hZCiiVV3VsMTnwBlG06IAzBZeJppiMMQuiOrWvsgItnV8X5g5vswsB1WRyYprTxb94uz2oVtKvCgMbwbH4y0ArFNzW5NIuuWOSQTMKhZVtOdnn6XA0/YuAVnlVxwaTIysgMn5V9y+5TDSFZEx8EkXj0r5fngPBhMnvQZhqqP7LLGqVOF1eGJJqtQhXhoEN4VgqDH1dwTrUKrUzyQsZdC+eUrbFwfgIfUxmxjggYqzq2GHy22NYPk0ahVySy0RTqdw1TA7VqXn5uZ00RQyIJkGY6qj+d7wlpjld4nMl1UrClWFgGWZkchTcdCX3BJI7hgy656ci2/qe/GUO+pf8jMquY5fJGQlZs0suE01xo2mTQ3Vqrwx7lFwF78fmldzbf3O6xOdSjjFmGQY2gmOlyVFwW5PT50ru/HVvkG3Z5E/zefJK7vCofFcdm0xOEAKKokX3fTe5TDT1I4M7VChOKdsrA22JKULFPLx5T95q8iWmOV3icwXVSsKVYWBDOBaXgFZScPs9+Zo7libPp5RtVVO2f9egfy0BUdl17DE5JWMkUbToJKy4TDT1w99poUKRTndlcAdTZNKfIB0hTPWafIlpTpf4XEG1knBlGNgQjsUloBUKbmxyaZfcsTR5PKVs6+fknK6czMqSn1F5Xcc/87X+Zdv4FGHfX0F/tXMGKQ0EQRQFF0og4EYwEzdZ5ATuvI8H8Cq5scNPl5OihSRTPaRTeW8RB6assttPaB3yomPe7uNJ++0f69/MoLXdL9lf/10dOrc9Bcds9/chtcKg1Wd/DFriDodh0OpvBgatI3wyCICQAxByeBQIOaSHkEN6CDmkh5BDegg5pIeQQ3owaHU3AwoYtFIbtGAEg1ZugxaIWxm0nl66NVwt2z++M74WQrQPuRMkXSW1Od9140wy6re0QategFVqiY74zljBdIOQB1g25DKYNA/5108g5EGDlh+o4or4zlgBIY+yfMhrQZKZm8r1zIB8b8YX188ZuVoatGq704fEXZpkxdVqwjtjBTJqmexKtRClfci9IMnMTXY9N4QHtZ76OSNXU4OWfvitsztpoCaV4mo18Z0pBcWopRulFoK0D3ktSNJvzK7nhnC9GV+mfs7I1dqg9VJ9sZDbEuvVxHemFOisYjc4ssRpH/J/BUmWEV3Pfac97FaunzNytTRoWbrLsL+Qa5KFvFpNfGdUUIxahDzA0iGvBUn2fmXX8/8w/Fy5fs7I1dyg5R1QGqhJpbheTXxnSsF64J38QvoIuZ0831/DZ/Lx+4eTft7I1dagJdHP/tTupIE2qT6Tt9kZFZhRa7xByM/RScilLiqmKF0HQr4efL/JyNXYoGXnBvMulYGaZMXVasI7YwVHo5Zu7Aj5RfBY/8r+ymHvawBHSoPWkv0V8t7XAA4MWokNWmBg0Mpr0IICnwwCIOQAhBweAUIO6SHkkB5CDukh5JCe51+cQp+E7RAz2AAAAABJRU5ErkJggg=="},562:function(l,t){l.exports="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAuUAAAAcCAMAAADx5jE0AAACZFBMVEVnwjr////Nx8LEwMDW0c0uNDaw3ZlXwjpsuUXv7u2k0Yyt2pZ8q2QTExJFNDdxc29yoll4qF9UkjdmrjnSzcldi0az4JxioOpxtU6hzok2VDVsm1VptUKr2JNVVVVlq0JOrjpOVDd4pl/mICD4+Pd1pFyiop/rJCTOycRovztewjr8/PsiTIiUwnu2//+ey4VnmTdwnlhFmTr//7apqaZmAGZklExns0A7NDfmMC3jGxveGBdrpeva2tcuX59lnEpXbTby8vF6msOHioNOlHDjODbHycQ3aKX+/f3f4N67ubWxsa14e3VzrFdollBTgjyAsu5Uk98oVI+Zx4DdIiA7id1Jide2t7M3Z6KipZ+bnJd/vYqNjoh/mXFeX1w7hTp2q+xtlMTJxru8vbs/b6osWpeBrWlgjkhinEYxbTi+KRDQ0cXCwb2zxaBHi2aFw2NZh0J7oTE2Yx/JCQRfnOU2dL9mi7qSlI5+gHuCknmMu3Nrilt1qlrim1Rurk2oaCjkJyXQFQ8vedWPrdGBpNHLy8tCfMPIxMFoamZzkWPyq0/oUE1ERUNLeTNFcy3bKyg+bCe2ZgCKuO9hltdGg83tzq2DhYD7wGxutkllp0TnQz9ltj7bhDKiVBqpvtjBxs1ag7jC1LIsZ7BJdq64yKYcVZmzkXd2iWvys2iddWRpeGFehTfiLiucXRzm5uR0ntKUpojNPiTSahXb//+Q2/9mtv///9urt8eGnboAZrbJs5v+2pY6OpDuvYqWhnPFdHMAAGbpZWCViVhsoVHLhEaQOjpxtzmdiDXpjIzGa1FObTbKbyR4HQTHAAAI0ElEQVR42u2biVMSURzHH7RgS1aQEBLSoQtBRIQRRaFFROFRQSKoZXmUlllZamqXR9plZfd93/d93/f5T/XYWN66OC1EMo3tZ9XF7+6bfeN8+M2P5y7g8/txcPRl+MOh5YCDoy/DWc7R9wlZvnplGZ9G2crVgIOjO6IVWv5fRbtCBHodZPlFrRTrhlR7EXBw0DknxfW8v4oel54DvQyyfLUW22b299PkbKO+oOZcNeegI5LqeX8dvbS3qzmyfKW0X/diLs3Olq4EiCEQEMaa5ntp3nvNa0AMLKupmRli97whIAKSU5scxcXJ/ZuKjwKOWDi6kfoL9t84pz/Ke8pW4LxeAF9Bv+AcdEF6hCbLTkXhXXKrAODz526Wl2FmKXam3dfm6zid33ag/QwmNWNlLJbrmq3HO9+963R6m3Xgj6mRJC4IYVLuBqzoiv239S4CNzuyOooBRyxIRJKgTIkq4xyU95Rp9bxeQK8FiDlGVSJD8zmiATBCk2XBkJ1l/7V1+L9ZrV/olvOxbAzz5ctt+U/a8211+QdgNcfY1l7uOTuPO1tanJ2dXVVMzWfOnj0TRMS8xJqhA4IMnReB5f2bMlyEHbcTriwe7gAcsZCqSg0KPUDItJyZ8Xm9Al2zjQoh6XRYhCZLsWMwjQ2hOJtYmBHcLl9789Xa3XI/hh2oc7vbOs60ud2eOximwfi/r+WwklvTSKyd3mbGwdmnT8+O0HKJbKgoCLR8D0AcmzYCQEZY4A5RfFuPVxc1FM3CiX/Z8kGC5eDfB4pDCS1i6IWy6C1//OlhVJaja4qQ5oyIYfmucn+OWVPU4DicO3j7rlDsJxoW5ZLbtSJs4RuG5RoMu+Nx72/z+fL3uz3tGGZmsXyNF0o+OkBa2s3jrYzevOD0jILILRcGYVg+bb14BJRcvH4aQCSbXXhhcXJyk6MQj4PlSFpBQs8HEtCOxvTFLGf/G0BxWCSP3PIJE8dRL1+8fIAyVssj0pxp+bCBNIaF4hwiK4Pk8usGc+M1RsdSjWFbPO6S/SXwa79vCwaB+W9obnFCw4OaO7tOMSzfsi4zQstTabW8RrkXIEaIDeIRUHLoOqIYJ6qL4S6LB8EPg/gwKh2M76k2T4fyox19wMjfnv1PWc4ieYSW7xv4NmT01WcoY7c8Qs3JybJhJnCSTSeP7HQsfA8Yffmdgwc9brmtpMQmd3sObj2gYbG8ympFlrdYq2g9eUFmZkH72cylS5euIgOUB1hK5cjyEPNIy5HmaoOaITloIvCiZLiT4gEaQXyAxTdpckIE1RmeJhCMhCLDn+xnJw37LkggR5BvoumB78WBwYtBfFCr1CGhkyXJVEzPqDyaWr7vES/KWk5diak5PYKTZe3LNQReXl6Of4SSb3JAyRkdS32dx22Tk9jcHlsbslxAA4Rodaa5qIm60py16EjmDMjZgtLS0nXzAWDkkO75PLVMSEkurJlLWo40lxgMpOQIB4Ev1AGQcqUxtzE3NxfEBWg4u+Wo6g8bQ9VyNssnp1MjkgKDhiXAgYHh80B8EKvEOnGeUFixGQDJUAkV0zMqj8Ry9Cpay9GVNlcIhXliEIQW6eBkaX15To65sKhhoaOxW19eRFCVfNOP14BpeXn9AU8JZXmJr64eY7Pcmqbv2fKl62ZDCpZAxpIBygMw8t1iWYiaCCxvwu2wlscZ0vBBv8QdLxCko44kvDqPIc+kjrOfjUYkLb+RDg8FLI8XJpUJpKjhMkZqCr2Woyy6Wo4alj+u5SmpA4QKdQoIQo/gZFn78gYCr/5Vye8fagyzPLt0a70HWh4QveTg1gulrB1LS8uUNJIpU6a0dNE6llXzITMuzB87dizVmaAchsEcWS6uqKhITJRI1ErLXEbHkrdRzehYUqX2WTvIemO6skMH4gOq5aSx0EnKU6a3pKKj0kmv2c+GhodGTE+/kT5+edJy+EvgnREflCplUGloEYKZRWn5yfyoLUfXRZIzInKybDgIu/3QzkMBye2DAwFzjWWdT26z1UHPbfVbMIzN8lNTrVMopt70Mj59jm0/OxZExG5TZaJRpFKpRAqxTGlZ2/3Tpzrs0+dmDU6Yd2zWbb7izyr8AOIB6sup8jsZaRjWgySgWs5+NjxMjRi/OPCOGEJ25DfiU84pcVLEUGkxXS2URW85WkeM3vIUMTQaXZUekZNl7csPE0T11UO8V/cvZ+Dbw2s5hp09KJfXnz+/VS7f+hSDsKwk1t70Tp1CblNhw7KGYfmW0ggt32OSpSryKivzDEYlw/JpBnX4SqLuSo6dyCg6rMly2c1xshytscTelzMtp0bA1/DH9GEjwQ3yo2h8mKuaCyCTTFBpE5KLlkVtOVpHjN7yFBM02jQJhEdoskF2FRZqqLZ8EerLcwmi7Nqrq5ueY1k9WF6OYRd8ck8mduYStHwd+3o5uNVq9U4l8Tpbb4E/tlwpEyuMskqDwWihLGf8V2jaMUBDl1uOE3qXnsDN11k7ll5eLyfXUhYHd2iNJYHqxNnOhpZTI+AQmI0XJMDveK00InEmKRVCIyomtCyKlcSBA391KkfyGVnElk8zChVKJDmK0GRZ+vLBemLUwMvPtVl2F29RTx1L5nlfXeaTp+fldfUX2DsWoKtqtXZ5oeM3na1h/+FfhXpvNsstFqVCIZNByytlJmg5Kyc2HK7OuJ3hd2zQAY7YsCgslNJ5BmQ0yhiWs4HWERHRWG4wIslpEZosG9tdLi11f/BwhuVlgY7FP6PgUkFHeealS0vKMamU/W6tW7VTu5zOLm/trRh0S9pTOVchMuYZ8owyi7gSWs7OsQ3Xr1/fcIyTPGaSLCMopZctO4FylEV9txbqUqK/W+vEsmVIchTRJsvGolkIpuUrpVK/NHCHVoCOwKuc6kjuvD1VVVtbdWpNbH/ovZWVsl+sXbt2COD4R4nDnbexI6AT9hQFvKG8OvgEhZmvMWuzuacoOPrYUxTcE3Ecff+JOO7pZo7/4OlmDo6+C38RZzlHXydgOQdHH2fRT6YgWxTxDMOFAAAAAElFTkSuQmCC"},722:function(l,t,v){"use strict";v.r(t);var a=v(13),s=Object(a.a)({},(function(){var l=this,t=l.$createElement,a=l._self._c||t;return a("ContentSlotsDistributor",{attrs:{"slot-key":l.$parent.slotKey}},[a("h1",{attrs:{id:"数据视图"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#数据视图"}},[l._v("#")]),l._v(" 数据视图")]),l._v(" "),a("h2",{attrs:{id:"显示顶部的sql构建面板"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#显示顶部的sql构建面板"}},[l._v("#")]),l._v(" 显示顶部的SQL构建面板")]),l._v(" "),a("p",[a("img",{attrs:{src:v(561),alt:"Datagrid Builder"}}),l._v("\n点击视图底部工具栏的 "),a("strong",[l._v("SQL构建工具")]),l._v(" 图标, 可显示或隐藏 "),a("strong",[l._v("SQL构建")]),l._v(" 面板,如图所示。\n"),a("img",{attrs:{src:v(562),alt:"Datagrid toolbar"}})]),l._v(" "),a("h2",{attrs:{id:"选择数据列-字段"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#选择数据列-字段"}},[l._v("#")]),l._v(" 选择数据列(字段)")]),l._v(" "),a("ul",[a("li",[l._v("第一步: 点击 "),a("strong",[l._v("数据列")]),l._v(" 按钮切换到数据列选择视图。")]),l._v(" "),a("li",[l._v("第二步: 勾选您希望显示的数据列名字。")]),l._v(" "),a("li",[l._v("第三步: 点击工具栏上最右边的三角形 "),a("strong",[l._v("应用")]),l._v(" 按钮应用数据列。")])]),l._v(" "),a("h2",{attrs:{id:"添加查询条件"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#添加查询条件"}},[l._v("#")]),l._v(" 添加查询条件")]),l._v(" "),a("ul",[a("li",[l._v("第一步: 点击 "),a("strong",[l._v("条件")]),l._v(" 按钮切换到查询条件视图")]),l._v(" "),a("li",[l._v("第二步: 点击加号(+)按钮添加查询条件")]),l._v(" "),a("li",[l._v("第三步: 点击括号(())添加括号表达式")]),l._v(" "),a("li",[l._v("第四步: 点击 AND(与) 和 OR(或) 按钮改变条件组合方式")]),l._v(" "),a("li",[l._v("第五步: 点击工具栏上最右边的三角形 "),a("strong",[l._v("应用")]),l._v(" 按钮应用查询条件")])]),l._v(" "),a("h2",{attrs:{id:"添加数据排序"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#添加数据排序"}},[l._v("#")]),l._v(" 添加数据排序")]),l._v(" "),a("ul",[a("li",[l._v("第一步: 点击 "),a("strong",[l._v("排序")]),l._v(" 按钮切换到排序视图")]),l._v(" "),a("li",[l._v("第二步: 点击加号(+)按钮添加排序表达式")]),l._v(" "),a("li",[l._v("第三步: 点击列名和排序方法(ASC/DESC)按钮选择排序字段和排序方法")]),l._v(" "),a("li",[l._v("第四步: 点击工具栏上最右边的三角形 "),a("strong",[l._v("应用")]),l._v(" 按钮应用排序")])]),l._v(" "),a("h2",{attrs:{id:"添加数据行数限制"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#添加数据行数限制"}},[l._v("#")]),l._v(" 添加数据行数限制")]),l._v(" "),a("ul",[a("li",[l._v("第一步: 点击 "),a("strong",[l._v("行数")]),l._v(" 按钮切换到数据行数视图")]),l._v(" "),a("li",[l._v("第二步: 在编辑框中输入数字")]),l._v(" "),a("li",[l._v("第三步: 点击工具栏上最右边的三角形 "),a("strong",[l._v("应用")]),l._v(" 按钮应用行数设置")])]),l._v(" "),a("h2",{attrs:{id:"切换数据编辑模式"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#切换数据编辑模式"}},[l._v("#")]),l._v(" 切换数据编辑模式")]),l._v(" "),a("ul",[a("li",[l._v("第一步: 在底部工具栏上点击编辑模式按钮弹出浮窗")]),l._v(" "),a("li",[l._v("第二步: 在浮窗中选择编辑模式:即时模式、缓存模式、事务模式")])]),l._v(" "),a("Vssue",{attrs:{"issue-id":9,title:l.$title}})],1)}),[],!1,null,null,null);t.default=s.exports}}]); \ No newline at end of file diff --git a/assets/js/120.f410c177.js b/assets/js/120.f410c177.js new file mode 100644 index 000000000..9ab914633 --- /dev/null +++ b/assets/js/120.f410c177.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[120],{703:function(e,t,a){"use strict";a.r(t);var r=a(13),n=Object(r.a)({},(function(){var e=this,t=e.$createElement,a=e._self._c||t;return a("ContentSlotsDistributor",{attrs:{"slot-key":e.$parent.slotKey}},[a("h1",{attrs:{id:"kangaroo-and-third-party-license"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#kangaroo-and-third-party-license"}},[e._v("#")]),e._v(" Kangaroo and third-party license")]),e._v(" "),a("p",[e._v("You could find out Kangaroo's license and third-party library license here.")]),e._v(" "),a("h2",{attrs:{id:"privacy-policyt"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#privacy-policyt"}},[e._v("#")]),e._v(" Privacy Policyt")]),e._v(" "),a("p",[a("a",{attrs:{href:"./privacy-policy"}},[e._v("Privacy Policy")])]),e._v(" "),a("h2",{attrs:{id:"end-user-license-agreement"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#end-user-license-agreement"}},[e._v("#")]),e._v(" End User License Agreement")]),e._v(" "),a("p",[a("a",{attrs:{href:"./service-agreement"}},[e._v("End User License Agreement")])]),e._v(" "),a("h2",{attrs:{id:"acknowledgement"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#acknowledgement"}},[e._v("#")]),e._v(" Acknowledgement")]),e._v(" "),a("p",[a("a",{attrs:{href:"./acknowledgement"}},[e._v("Acknowledgement")])])])}),[],!1,null,null,null);t.default=n.exports}}]); \ No newline at end of file diff --git a/assets/js/121.89f18d64.js b/assets/js/121.89f18d64.js new file mode 100644 index 000000000..67800b1d1 --- /dev/null +++ b/assets/js/121.89f18d64.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[121],{705:function(t,r,a){"use strict";a.r(r);var e=a(13),o=Object(e.a)({},(function(){var t=this,r=t.$createElement,a=t._self._c||r;return a("ContentSlotsDistributor",{attrs:{"slot-key":t.$parent.slotKey}},[a("h1",{attrs:{id:"acknowledgement"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#acknowledgement"}},[t._v("#")]),t._v(" Acknowledgement")]),t._v(" "),a("p",[t._v("Kangaroo is developed by @taozuhong. All rights reserved.")]),t._v(" "),a("h2",{attrs:{id:"localization-contributors"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#localization-contributors"}},[t._v("#")]),t._v(" Localization Contributors")]),t._v(" "),a("ul",[a("li",[t._v("Simplified Chinese by taozuhong")]),t._v(" "),a("li",[t._v("Traditional Chinese by taozuhong")])]),t._v(" "),a("h2",{attrs:{id:"download-server-support"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#download-server-support"}},[t._v("#")]),t._v(" Download Server support")]),t._v(" "),a("ul",[a("li",[t._v("Tencent Cloud + CDN: TOM")]),t._v(" "),a("li",[t._v("UPYun Cloud: yanling112")])]),t._v(" "),a("h2",{attrs:{id:"_3rd-party-libraries-icons"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#_3rd-party-libraries-icons"}},[t._v("#")]),t._v(" 3rd Party Libraries / Icons")]),t._v(" "),a("p",[a("a",{attrs:{href:"./third-party"}},[t._v("Third-party library license")])])])}),[],!1,null,null,null);r.default=o.exports}}]); \ No newline at end of file diff --git a/assets/js/122.81b549cc.js b/assets/js/122.81b549cc.js new file mode 100644 index 000000000..6f78631b4 --- /dev/null +++ b/assets/js/122.81b549cc.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[122],{706:function(e,o,a){"use strict";a.r(o);var t=a(13),s=Object(t.a)({},(function(){var e=this,o=e.$createElement,a=e._self._c||o;return a("ContentSlotsDistributor",{attrs:{"slot-key":e.$parent.slotKey}},[a("h1",{attrs:{id:"privacy-policy"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#privacy-policy"}},[e._v("#")]),e._v(" Privacy Policy")]),e._v(" "),a("p",[e._v("February 1, 2022 by datatable.online")]),e._v(" "),a("p",[e._v("datatable.online built Kangaroo as a Commercial software. This SOFTWARE is provided by datatable.online and is intended for use as is.")]),e._v(" "),a("p",[e._v("This page is used to inform users regarding our policies with the collection, use, and disclosure of Personal Information if anyone decided to use Kangaroo.")]),e._v(" "),a("p",[e._v("If you choose to use Kangaroo, then you agree to the collection and use of information in relation to this policy.")]),e._v(" "),a("p",[e._v("The terms used in this Privacy Policy have the same meanings as in our Terms and Conditions, which will be accessible at Kangaroo unless otherwise defined in this Privacy Policy.")]),e._v(" "),a("p",[e._v("This Privacy Policy only applies for the usage of our software. Visiting our official homepage, support website, theme website, or other related websites, is not controlled by this Privacy Policy.")]),e._v(" "),a("h2",{attrs:{id:"information-collection-and-use"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#information-collection-and-use"}},[e._v("#")]),e._v(" Information Collection and Use")]),e._v(" "),a("p",[e._v("Anonymous usage data will only be send when the option “Send Anonymous Usage Info” is enabled in preferences panel.")]),e._v(" "),a("p",[e._v("If you disable the option, no data will be collected to us. (The option can be opt-out, but may need a restart of Kangaroo for the option to apply).")]),e._v(" "),a("p",[e._v("When you allow send anonymous usage data, we WILL collect following data anonymous for getting overall statistics of how Kangaroo is used:")]),e._v(" "),a("ul",[a("li",[e._v("Kangaroo version, operation system, screen resolution, locale and countries (based on IP address).")]),e._v(" "),a("li",[e._v("Name of operations when using Kangaroo, such as “launch”, “new window”, “print”, etc, for gathering overall statistics. (We won’t be able to list all detailed operations for a given user. We won’t collect any detail or sensitive data for user’s operation)")]),e._v(" "),a("li",[e._v("How long a user is using Kangaroo.")]),e._v(" "),a("li",[e._v("Insensitive preference settings in Kangaroo such as theme name, window style, etc.\nWhen error/exception happens, and if you allow send anonymous usage data, we will collect stack trace, related settings, and running status before exception throws to help us find errors. It should not contain any sensitive or personal data.")])]),e._v(" "),a("h2",{attrs:{id:"_3rd-party-apps-services"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#_3rd-party-apps-services"}},[e._v("#")]),e._v(" 3rd Party Apps & Services")]),e._v(" "),a("p",[e._v("Kangaroo can call and execute other apps for higher usability, which may collect information used to identify you, no matter you enable “Send Anonymous Usage Info” or not.")]),e._v(" "),a("p",[e._v("The 3rd party apps that Kangaroo may launch includes:")]),e._v(" "),a("ul",[a("li",[e._v("gdbus . It may be automatically launched by Kangaroo when you launch Kangaroo. it allows communication between multiple processes running concurrently on the same machine.")])]),e._v(" "),a("p",[e._v("None of them will be installed automatically by Kangaroo, nor launched automatically when user is not doing related operations.")]),e._v(" "),a("p",[e._v("We have no control over and assume no responsibility for the content, privacy policies, or practices of any third-party services or apps.")]),e._v(" "),a("h2",{attrs:{id:"external-sites"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#external-sites"}},[e._v("#")]),e._v(" External Sites")]),e._v(" "),a("p",[e._v("If you insert images, videos, iframes or other resources Kangaroo support from remote websites, or open local markdown file containing them, Kangaroo will load them automatically from target sites. Those sites, however, may collect your visit information.")]),e._v(" "),a("p",[e._v("Also, you can input or open files that may contain links to other sites. If you click on a third-party link, you will be directed to that site. Note that these external sites are not operated by us. Therefore, we strongly advise you to review the Privacy Policy of these websites.")]),e._v(" "),a("p",[e._v("We have no control over and assume no responsibility for the content, privacy policies, or practices of any third-party websites.")]),e._v(" "),a("h2",{attrs:{id:"log-data"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#log-data"}},[e._v("#")]),e._v(" Log Data")]),e._v(" "),a("p",[e._v("Kangaroo will record necessary log on your local computer.")]),e._v(" "),a("h2",{attrs:{id:"backups"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#backups"}},[e._v("#")]),e._v(" Backups")]),e._v(" "),a("p",[e._v("For better user experience and prevent data lose from crash, if possible, Kangaroo will create backups for the content your input or modify automatically, those backups are stored on your local computer, no data will be collected by us.")]),e._v(" "),a("h2",{attrs:{id:"feedbacks-debug-contents"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#feedbacks-debug-contents"}},[e._v("#")]),e._v(" Feedbacks & Debug Contents")]),e._v(" "),a("p",[e._v("You may send us, or we may suggest you to send us informations like system version, operation steps , sample markdown files, or other needed info when you reports bugs or gave feedbacks. You can refuse to provide those informations if you do not want to.")]),e._v(" "),a("p",[e._v("All sample markdown files that user send to us, will only be used for debug and test purpose, we will not leak them to any other person who is not one of our development team without user’s permission. We may keep and use them after we remove sensitive data or personal identical data, for regulation test purpose. But we will delete files from mail box and local machine after we fixed related bugs, if user require us doing so.")]),e._v(" "),a("p",[e._v("Since user can give us feedbacks via mail, GitHub, twitter, doorbell.io, and so on, we have no control over and assume no responsibility for the content, privacy policies, or practices of any of those communication tools.")]),e._v(" "),a("h2",{attrs:{id:"service-providers"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#service-providers"}},[e._v("#")]),e._v(" Service Providers")]),e._v(" "),a("p",[e._v("We will NOT share data with third-party companies and individuals.")]),e._v(" "),a("h2",{attrs:{id:"security"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#security"}},[e._v("#")]),e._v(" Security")]),e._v(" "),a("p",[e._v("We value your trust in providing us your Personal Information, thus we are striving to use commercially acceptable means of protecting it. But remember that no method of transmission over the internet, or method of electronic storage is 100% secure and reliable, and we cannot guarantee its absolute security.")]),e._v(" "),a("h2",{attrs:{id:"children-s-privacy"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#children-s-privacy"}},[e._v("#")]),e._v(" Children’s Privacy")]),e._v(" "),a("p",[e._v("These Services do not address anyone under the age of 13. We do not knowingly collect personally identifiable information from children under 13. In the case we discover that a child under 13 has provided us with personal information, we immediately delete this from our servers or machines. If you are a parent or guardian and you are aware that your child has provided us with personal information, please contact me so that we will be able to do necessary actions.")]),e._v(" "),a("h2",{attrs:{id:"changes-to-this-privacy-policy"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#changes-to-this-privacy-policy"}},[e._v("#")]),e._v(" Changes to This Privacy Policy")]),e._v(" "),a("p",[e._v("We may update our Privacy Policy from time to time. Thus, you are advised to review this file or page periodically for any changes. These changes are effective immediately after they are updated in our website or Kangaroo is upgraded.")]),e._v(" "),a("h2",{attrs:{id:"contact-us"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#contact-us"}},[e._v("#")]),e._v(" Contact Us")]),e._v(" "),a("p",[e._v("If you have any questions or suggestions about our Privacy Policy, do not hesitate to contact us (dbkangaroo@hotmail.com).")])])}),[],!1,null,null,null);o.default=s.exports}}]); \ No newline at end of file diff --git a/assets/js/123.22f82c5c.js b/assets/js/123.22f82c5c.js new file mode 100644 index 000000000..30dd0654d --- /dev/null +++ b/assets/js/123.22f82c5c.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[123],{707:function(e,t,a){"use strict";a.r(t);var o=a(13),i=Object(o.a)({},(function(){var e=this,t=e.$createElement,a=e._self._c||t;return a("ContentSlotsDistributor",{attrs:{"slot-key":e.$parent.slotKey}},[a("h1",{attrs:{id:"end-user-license-agreement"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#end-user-license-agreement"}},[e._v("#")]),e._v(" End User License Agreement")]),e._v(" "),a("p",[e._v("February 1, 2022 by datatable.online")]),e._v(" "),a("div",{staticClass:"custom-block tip"},[a("p",{staticClass:"custom-block-title"},[e._v("TIP")]),e._v(" "),a("p",[e._v("Please read this End User License Agreement (a.k.a “EULA”, “License Agreement”) before You purchase a License Key for the Software and subsequently download and use the Software.")])]),e._v(" "),a("p",[e._v("By purchasing a License Key and/or downloading and using the Software, You agree, without reservation, to be bound by the terms of this EULA. If You do not agree with the terms of this EULA, please do not purchase a License Key and/or download and use the Software.")]),e._v(" "),a("p",[e._v("If You accept the terms and conditions in this EULA on behalf of a company or other legal entity, You warrant that You have full legal authority to accept the terms and conditions in this EULA on behalf of such company or other legal entity, and to legally bind such company or other legal entity.")]),e._v(" "),a("p",[e._v("You may not accept this EULA if You are not of legal age to form a binding contract in your country/states.")]),e._v(" "),a("h2",{attrs:{id:"_1-definitions"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#_1-definitions"}},[e._v("#")]),e._v(" 1. Definitions")]),e._v(" "),a("ul",[a("li",[e._v("“"),a("strong",[e._v("We")]),e._v("” a.k.a. “us”, or “datatable.online”. Developer(s) of Kangaroo.")]),e._v(" "),a("li",[e._v("“"),a("strong",[e._v("Documentation")]),e._v("” the detailed information about the Software, its features and the system requirements as made available on the website of datatable.online, as amended from time to time.")]),e._v(" "),a("li",[e._v("“"),a("strong",[e._v("Open Source Software")]),e._v("” any software that requires as a condition of use, copying, modification and/or distribution of such software that such software or other software incorporated into, derived from or distributed with such software (a) be disclosed or distributed in source code form, and (b) be licensed for the purpose of making and/or distributing derivative works, and (c) be redistributable at no charge;")]),e._v(" "),a("li",[e._v("“"),a("strong",[e._v("Beta version")]),e._v("” the license for the Software for public testing before version v2.0.")]),e._v(" "),a("li",[e._v("“"),a("strong",[e._v("Stable version")]),e._v("” versions with version number equal or greater than v2.0, exclude Beta versions.")]),e._v(" "),a("li",[e._v("“"),a("strong",[e._v("Dev version")]),e._v("” versions marked with “Dev” flag, those versions are used for public testing purpose after v2.0.")]),e._v(" "),a("li",[e._v("“"),a("strong",[e._v("Full version")]),e._v("” the license for the Software for the term specified on the webpage of the store where You purchase the license, or in any applicable agreement concerning the purchase of the license (as stand-alone product or as part of a subscription) to Use the Software. This license is when Kangaroo reaches v2.0.")]),e._v(" "),a("li",[e._v("“"),a("strong",[e._v("Trial version")]),e._v("” the license for the Software for the term of N days to Use the Stable version of Software for the sole purpose of testing and evaluating the Software. (N will be decided by us in future). This license is when Kangaroo reaches v2.0.")]),e._v(" "),a("li",[e._v("“"),a("strong",[e._v("Updates")]),e._v("” any modified versions and updates of, and additions to the Software (excluding upgrades of the Software);")]),e._v(" "),a("li",[e._v("“"),a("strong",[e._v("Major Update")]),e._v("” updates that introduce major version number changes, for example, from v2.x to v3.x is a Major Update, from v2.1.x to v2.2.x is not.")]),e._v(" "),a("li",[e._v("“"),a("strong",[e._v("Use")]),e._v("” the access, download, install, copy or get benefit from using the Software in accordance with the documentation.")]),e._v(" "),a("li",[e._v("“"),a("strong",[e._v("You")]),e._v("” you, the final and ultimate user of the Software or the authorized representative of a company or other legal entity that will be the final and ultimate user of the Software, and the company or other legal entity that will be the final and ultimate user of the Software, if applicable.")])]),e._v(" "),a("h3",{attrs:{id:"general"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#general"}},[e._v("#")]),e._v(" General")]),e._v(" "),a("ol",[a("li",[e._v("This EULA applies to any licenses granted to You by us for the use of the Software.")]),e._v(" "),a("li",[e._v("By purchasing a License Key for the Software and/or downloading and using the Software, You enter into this EULA with us.")])]),e._v(" "),a("h2",{attrs:{id:"_2-changes-to-the-license-agreement-and-the-website-product"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#_2-changes-to-the-license-agreement-and-the-website-product"}},[e._v("#")]),e._v(" 2. Changes to the License Agreement and the Website/Product")]),e._v(" "),a("ol",[a("li",[e._v("Kangaroo is a work in progress, meaning that a lot will change in the near future. We reserve the right to update the Website and these Terms of Service from time to time, at our discretion. We will make sure to announce any major change in a prominent way.")]),e._v(" "),a("li",[a("strong",[e._v("Your continued use of the Kangaroo following the publishing of updated License Agreement means that you accept and agree to the changes.")])]),e._v(" "),a("li",[e._v("The published License Agreement not only applies to current beta versions, but also applies to all versions and future updates of Kangaroo.")])]),e._v(" "),a("h2",{attrs:{id:"_3-license"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#_3-license"}},[e._v("#")]),e._v(" 3. License")]),e._v(" "),a("ol",[a("li",[e._v("We grant You a non-exclusive, non-transferable, limited, revocable license to Use the Software in accordance with this EULA. We reserve all rights not expressly granted to You.")]),e._v(" "),a("li",[e._v("We are and remain the owner of any intellectual property rights with respect to the Software. You shall not acquire any ownership to the Software as result of Your purchase of the License Key or Your Use of the Software.")])]),e._v(" "),a("h2",{attrs:{id:"_4-permitted-use-and-restrictions"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#_4-permitted-use-and-restrictions"}},[e._v("#")]),e._v(" 4. Permitted use and restrictions")]),e._v(" "),a("ol",[a("li",[e._v("In order to be able to install the Software and receive Updates and upgrades, Your computer shall have access to the Internet and shall meet the system requirements described in the Documentation that can be found on the webpage: "),a("a",{attrs:{href:"../document/system-requirements"}},[e._v("System Requirements")]),e._v(". The system requirements may be changed in future updates.")]),e._v(" "),a("li",[e._v("You shall Use the Beta version, Full version, or Trial version in accordance with applicable laws and shall not:\n"),a("ol",[a("li",[e._v("Use the Trial version on any system where the Trial version was previously Used and expired;")]),e._v(" "),a("li",[e._v("Rent, lease, lend, sell, redistribute, sublicense or otherwise commercially exploit the License Key, the Full version or the Trial version;")]),e._v(" "),a("li",[e._v("Assign the License Key, the Full version or the Trial version without prior written approval of us;")]),e._v(" "),a("li",[e._v("Use the Beta version, Full version or Trial version for any unlawful or illegal activity, or to facilitate an unlawful or illegal activity;")]),e._v(" "),a("li",[e._v("After 14 days evaluation passed, continue uses the versions for commercial usage, without a license code;")]),e._v(" "),a("li",[e._v("Delete or alter any disclaimers, warnings, copyright or other proprietary notices accompanying the Software; or")]),e._v(" "),a("li",[e._v("Adapt (except as otherwise provided in this EULA), decompile, reverse engineer, disassemble, attempt to derive the source code of, modify or create derivative works of the Software and the License Key or any parts thereof, except to the extent permitted by applicable law.")]),e._v(" "),a("li",[e._v("Exception: repackage (provide installation packages/scripts) Kangaroo on Linux system is allowed if all contents (includes all binaries, resources files, scripts, etc) of Kangaroo are not modified or deleted.")])])]),e._v(" "),a("li",[e._v("We may modify the Software at any time at its sole discretion and without notice to You, for example to comply with applicable law or a court order, to avoid a third party infringement claim or to provide Updates and upgrades.")]),e._v(" "),a("li",[e._v("Certain components of the Software are Open Source Software and licensed under the terms of the applicable license(s) of the Open Source Software. You shall adhere to these terms and conditions, which can be found via the webpage: "),a("a",{attrs:{href:"../license/acknowledgement"}},[e._v("Acknowledgement")]),e._v(".")])]),e._v(" "),a("h2",{attrs:{id:"_5-maintenance-and-support"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#_5-maintenance-and-support"}},[e._v("#")]),e._v(" 5. Maintenance and support")]),e._v(" "),a("ol",[a("li",[e._v("We will notify You of any available Updates and upgrades.")]),e._v(" "),a("li",[e._v("You will be entitled to receive Updates free of charge for unless it is a Major Update.")]),e._v(" "),a("li",[e._v("For a major update, You may need to pay an additional fee in order to be able to download an upgrade. The payment policy for major update will be announced by us when the upgrades are ready.")]),e._v(" "),a("li",[e._v("After you upgrade from Beta version to Stable version, if no License key are provided, you would start using Trial Version automatically.")]),e._v(" "),a("li",[e._v("You could upgrade or downgrade Kangaroo as you like, but we will delete older versions from our website after a long time period or we find it contains serious bugs.")]),e._v(" "),a("li",[e._v("Any maintenance and support provided by us, including the provision of Updates and upgrades, will be provided in an adequate way on an “as is” basis without any warranty, as soon as reasonably practicable, subject to availability of personnel.")])]),e._v(" "),a("h2",{attrs:{id:"_6-use-of-data"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#_6-use-of-data"}},[e._v("#")]),e._v(" 6. Use of data")]),e._v(" "),a("p",[e._v("See our Private Policy.")]),e._v(" "),a("h2",{attrs:{id:"_7-disclaimer"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#_7-disclaimer"}},[e._v("#")]),e._v(" 7. Disclaimer")]),e._v(" "),a("ol",[a("li",[e._v("You Use the Software at Your own risk and the entire risk as to satisfactory quality, performance and accuracy is with You.")]),e._v(" "),a("li",[e._v("We are working hard on improving Kangaroo, but we can’t guarantee that is it bug free. Therefore, "),a("strong",[e._v("your use of Kangaroo is at your sole risk. The service is provided “as is” and “as available”.")]),e._v(" We disclaim all warranties of any kind, express or implied, including, without limitation, the warranties of merchantability, fitness for a particular purpose and non-infringement. We are not liable for damages, direct or consequential, resulting from your use of the Website, and you agree to defend, indemnify and hold us harmless from any claims, losses, liability costs and expenses (including but not limited to attorney’s fees) arising from your violation of any third-party’s rights. You acknowledge that you have only a limited, nonexclusive, nontransferable license to use the Website.")])]),e._v(" "),a("h2",{attrs:{id:"_8-liability-limitation"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#_8-liability-limitation"}},[e._v("#")]),e._v(" 8. Liability limitation")]),e._v(" "),a("ol",[a("li",[e._v("We and any third party that has been involved in the creation, production, or delivery of the Software are under no circumstances liable for consequential or indirect damages (including damage for loss of profit, business interruption, loss of data, and the like arising out of the use or inability to use the Software).")]),e._v(" "),a("li",[e._v("The limitations of liability referred to in clause 8.1 shall not apply in the event that: (i) any negligence on the part of Kangaroo leads to death or physical injury or (ii) damages arise from the intent, willful misconduct or gross negligence of us or the management of us.")])]),e._v(" "),a("h2",{attrs:{id:"_9-termination"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#_9-termination"}},[e._v("#")]),e._v(" 9. Termination")]),e._v(" "),a("ol",[a("li",[e._v("This EULA will continue to be in force until the expiry or termination of the Full version or Trial version.")]),e._v(" "),a("li",[e._v("The Full version or Trial version will terminate automatically at the end of the applicable license term, unless renewed or Activated prior to the end of the applicable license term.")]),e._v(" "),a("li",[e._v("We are entitled to terminate the Full version or Trial version by blocking the License Key during the license term with immediate effect and without prior notice in the event You fail to comply with the terms in this EULA, in the event You fail to pay Your (subscription) fee for the License Key within the applicable payment term, or in the event Kangaroo is required to do so by law or an order of an applicable court.")]),e._v(" "),a("li",[e._v("Upon termination of the Full version or Trial version, You shall cease all use of the Software and shall destroy all copies thereof.")]),e._v(" "),a("li",[e._v("You acknowledge that the provisions of this EULA, which by their nature are intended to survive termination, will remain in effect after termination of this EULA.")])]),e._v(" "),a("h2",{attrs:{id:"_10-feedback"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#_10-feedback"}},[e._v("#")]),e._v(" 10. Feedback")]),e._v(" "),a("p",[e._v("We welcome any comment, question and communication at dbkangaroo@hotmail.com")])])}),[],!1,null,null,null);t.default=i.exports}}]); \ No newline at end of file diff --git a/assets/js/124.aed7774b.js b/assets/js/124.aed7774b.js new file mode 100644 index 000000000..ad18646f3 --- /dev/null +++ b/assets/js/124.aed7774b.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[124],{708:function(t,r,e){"use strict";e.r(r);var n=e(13),a=Object(n.a)({},(function(){var t=this,r=t.$createElement,e=t._self._c||r;return e("ContentSlotsDistributor",{attrs:{"slot-key":t.$parent.slotKey}},[e("h1",{attrs:{id:"third-party-library-license"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#third-party-library-license"}},[t._v("#")]),t._v(" Third-party library license")]),t._v(" "),e("h2",{attrs:{id:"feature-library-and-license"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#feature-library-and-license"}},[t._v("#")]),t._v(" Feature, library and license")]),t._v(" "),e("table",[e("thead",[e("tr",[e("th",[t._v("Feature")]),t._v(" "),e("th",[t._v("Third-party library")]),t._v(" "),e("th",[t._v("License")])])]),t._v(" "),e("tbody",[e("tr",[e("td",[t._v("Compiler")]),t._v(" "),e("td",[e("a",{attrs:{href:"https://gitlab.gnome.org/GNOME/vala",target:"_blank",rel:"noopener noreferrer"}},[t._v("Vala"),e("OutboundLink")],1)]),t._v(" "),e("td",[e("a",{attrs:{href:"https://gitlab.gnome.org/GNOME/vala/-/blob/master/COPYING",target:"_blank",rel:"noopener noreferrer"}},[t._v("LGPL 2.1"),e("OutboundLink")],1)])]),t._v(" "),e("tr",[e("td",[t._v("-")]),t._v(" "),e("td",[t._v("-")]),t._v(" "),e("td",[t._v("-")])]),t._v(" "),e("tr",[e("td",[t._v("Platform")]),t._v(" "),e("td",[e("a",{attrs:{href:"https://gitlab.gnome.org/GNOME/glib",target:"_blank",rel:"noopener noreferrer"}},[t._v("GLib2"),e("OutboundLink")],1)]),t._v(" "),e("td",[e("a",{attrs:{href:"https://gitlab.gnome.org/GNOME/glib/-/blob/main/COPYING",target:"_blank",rel:"noopener noreferrer"}},[t._v("LGPL 2.1"),e("OutboundLink")],1)])]),t._v(" "),e("tr",[e("td",[t._v("JSON")]),t._v(" "),e("td",[e("a",{attrs:{href:"https://gitlab.gnome.org/GNOME/json-glib",target:"_blank",rel:"noopener noreferrer"}},[t._v("json-glib"),e("OutboundLink")],1)]),t._v(" "),e("td",[e("a",{attrs:{href:"https://gitlab.gnome.org/GNOME/json-glib/-/blob/master/COPYING",target:"_blank",rel:"noopener noreferrer"}},[t._v("LGPL 2.1"),e("OutboundLink")],1)])]),t._v(" "),e("tr",[e("td",[t._v("Data access")]),t._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/lurcher/unixODBC",target:"_blank",rel:"noopener noreferrer"}},[t._v("unixODBC"),e("OutboundLink")],1)]),t._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/lurcher/unixODBC/blob/master/COPYING",target:"_blank",rel:"noopener noreferrer"}},[t._v("LGPL 2.1"),e("OutboundLink")],1)])]),t._v(" "),e("tr",[e("td",[t._v("Collection")]),t._v(" "),e("td",[e("a",{attrs:{href:"https://gitlab.gnome.org/GNOME/libgee",target:"_blank",rel:"noopener noreferrer"}},[t._v("libgee"),e("OutboundLink")],1)]),t._v(" "),e("td",[e("a",{attrs:{href:"https://gitlab.gnome.org/GNOME/libgee/-/blob/master/COPYING",target:"_blank",rel:"noopener noreferrer"}},[t._v("LGPL 2.1"),e("OutboundLink")],1)])]),t._v(" "),e("tr",[e("td",[t._v("SSH")]),t._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/libssh2/libssh2",target:"_blank",rel:"noopener noreferrer"}},[t._v("libssh2"),e("OutboundLink")],1)]),t._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/libssh2/libssh2/blob/master/COPYING",target:"_blank",rel:"noopener noreferrer"}},[t._v("BSD-3-Clause"),e("OutboundLink")],1)])]),t._v(" "),e("tr",[e("td",[t._v("XML")]),t._v(" "),e("td",[e("a",{attrs:{href:"https://gitlab.gnome.org/GNOME/libxml2",target:"_blank",rel:"noopener noreferrer"}},[t._v("libxml2"),e("OutboundLink")],1)]),t._v(" "),e("td",[e("a",{attrs:{href:"https://gitlab.gnome.org/GNOME/libxml2/-/blob/master/Copyright",target:"_blank",rel:"noopener noreferrer"}},[t._v("LGPL 2.1"),e("OutboundLink")],1)])]),t._v(" "),e("tr",[e("td",[t._v("cryptography")]),t._v(" "),e("td",[e("a",{attrs:{href:"https://www.openssl.org/",target:"_blank",rel:"noopener noreferrer"}},[t._v("OpenSSL"),e("OutboundLink")],1)]),t._v(" "),e("td",[e("a",{attrs:{href:"https://www.openssl.org/source/license.html",target:"_blank",rel:"noopener noreferrer"}},[t._v("Apache License v2"),e("OutboundLink")],1)])]),t._v(" "),e("tr",[e("td",[t._v("Encoding")]),t._v(" "),e("td",[e("a",{attrs:{href:"https://gitlab.freedesktop.org/uchardet/uchardet",target:"_blank",rel:"noopener noreferrer"}},[t._v("uchardet"),e("OutboundLink")],1)]),t._v(" "),e("td",[e("a",{attrs:{href:"https://gitlab.freedesktop.org/uchardet/uchardet/-/blob/master/COPYING",target:"_blank",rel:"noopener noreferrer"}},[t._v("LGPL 2.1"),e("OutboundLink")],1)])]),t._v(" "),e("tr",[e("td",[t._v("-")]),t._v(" "),e("td",[t._v("-")]),t._v(" "),e("td",[t._v("-")])]),t._v(" "),e("tr",[e("td",[t._v("GUI toolkit")]),t._v(" "),e("td",[e("a",{attrs:{href:"https://gitlab.gnome.org/GNOME/gtk",target:"_blank",rel:"noopener noreferrer"}},[t._v("GTK"),e("OutboundLink")],1)]),t._v(" "),e("td",[e("a",{attrs:{href:"https://gitlab.gnome.org/GNOME/gtk/-/blob/main/COPYING",target:"_blank",rel:"noopener noreferrer"}},[t._v("LGPL 2"),e("OutboundLink")],1)])]),t._v(" "),e("tr",[e("td",[t._v("GUI adaptive")]),t._v(" "),e("td",[e("a",{attrs:{href:"https://gitlab.gnome.org/GNOME/libadwaita",target:"_blank",rel:"noopener noreferrer"}},[t._v("libadwaita"),e("OutboundLink")],1)]),t._v(" "),e("td",[e("a",{attrs:{href:"https://gitlab.gnome.org/GNOME/libadwaita/-/blob/main/COPYING",target:"_blank",rel:"noopener noreferrer"}},[t._v("LGPL 2.1"),e("OutboundLink")],1)])]),t._v(" "),e("tr",[e("td",[t._v("Dock toolkit")]),t._v(" "),e("td",[e("a",{attrs:{href:"https://gitlab.gnome.org/GNOME/libpanel",target:"_blank",rel:"noopener noreferrer"}},[t._v("libpanel"),e("OutboundLink")],1)]),t._v(" "),e("td",[e("a",{attrs:{href:"https://gitlab.gnome.org/GNOME/libpanel/-/blob/main/COPYING",target:"_blank",rel:"noopener noreferrer"}},[t._v("LGPL 3.0"),e("OutboundLink")],1)])]),t._v(" "),e("tr",[e("td",[t._v("Plugin")]),t._v(" "),e("td",[e("a",{attrs:{href:"https://gitlab.gnome.org/GNOME/libpeas",target:"_blank",rel:"noopener noreferrer"}},[t._v("libpeas"),e("OutboundLink")],1)]),t._v(" "),e("td",[e("a",{attrs:{href:"https://gitlab.gnome.org/GNOME/libpeas/-/blob/master/COPYING",target:"_blank",rel:"noopener noreferrer"}},[t._v("LGPL 2.1+"),e("OutboundLink")],1)])]),t._v(" "),e("tr",[e("td",[t._v("Code editor")]),t._v(" "),e("td",[e("a",{attrs:{href:"https://gitlab.gnome.org/GNOME/gtksourceview",target:"_blank",rel:"noopener noreferrer"}},[t._v("GtkSourceView"),e("OutboundLink")],1)]),t._v(" "),e("td",[e("a",{attrs:{href:"https://gitlab.gnome.org/GNOME/gtksourceview/-/blob/master/COPYING",target:"_blank",rel:"noopener noreferrer"}},[t._v("LGPL 2.1"),e("OutboundLink")],1)])]),t._v(" "),e("tr",[e("td",[t._v("QR Code")]),t._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/fukuchi/libqrencode",target:"_blank",rel:"noopener noreferrer"}},[t._v("libqrencode"),e("OutboundLink")],1)]),t._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/fukuchi/libqrencode/blob/master/COPYING",target:"_blank",rel:"noopener noreferrer"}},[t._v("LGPL 2.1"),e("OutboundLink")],1)])]),t._v(" "),e("tr",[e("td",[t._v("File format")]),t._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/libarchive/libarchive",target:"_blank",rel:"noopener noreferrer"}},[t._v("libarchive"),e("OutboundLink")],1)]),t._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/libarchive/libarchive/blob/master/COPYING",target:"_blank",rel:"noopener noreferrer"}},[t._v("BSD-3-Clause"),e("OutboundLink")],1)])]),t._v(" "),e("tr",[e("td",[t._v("HTTP")]),t._v(" "),e("td",[e("a",{attrs:{href:"https://gitlab.gnome.org/GNOME/libsoup",target:"_blank",rel:"noopener noreferrer"}},[t._v("libsoup"),e("OutboundLink")],1)]),t._v(" "),e("td",[e("a",{attrs:{href:"https://gitlab.gnome.org/GNOME/libsoup/-/blob/master/COPYING",target:"_blank",rel:"noopener noreferrer"}},[t._v("LGPL 2"),e("OutboundLink")],1)])]),t._v(" "),e("tr",[e("td",[t._v("Map")]),t._v(" "),e("td",[e("a",{attrs:{href:"https://gitlab.gnome.org/GNOME/libshumate",target:"_blank",rel:"noopener noreferrer"}},[t._v("libshumate"),e("OutboundLink")],1)]),t._v(" "),e("td",[e("a",{attrs:{href:"https://gitlab.gnome.org/GNOME/libshumate/-/blob/main/COPYING",target:"_blank",rel:"noopener noreferrer"}},[t._v("LGPL 2"),e("OutboundLink")],1)])]),t._v(" "),e("tr",[e("td",[t._v("Chart")]),t._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/lcallarec/live-chart",target:"_blank",rel:"noopener noreferrer"}},[t._v("live-chart"),e("OutboundLink")],1)]),t._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/lcallarec/live-chart/blob/master/LICENSE",target:"_blank",rel:"noopener noreferrer"}},[t._v("MIT"),e("OutboundLink")],1)])]),t._v(" "),e("tr",[e("td",[t._v("Template")]),t._v(" "),e("td",[e("a",{attrs:{href:"https://gitlab.gnome.org/GNOME/template-glib",target:"_blank",rel:"noopener noreferrer"}},[t._v("template-glib"),e("OutboundLink")],1)]),t._v(" "),e("td",[e("a",{attrs:{href:"https://gitlab.gnome.org/GNOME/template-glib/-/blob/main/COPYING",target:"_blank",rel:"noopener noreferrer"}},[t._v("LGPL 2.1"),e("OutboundLink")],1)])]),t._v(" "),e("tr",[e("td",[t._v("-")]),t._v(" "),e("td",[t._v("-")]),t._v(" "),e("td",[t._v("-")])]),t._v(" "),e("tr",[e("td",[t._v("Icons")]),t._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/bytedance/IconPark",target:"_blank",rel:"noopener noreferrer"}},[t._v("IconPark"),e("OutboundLink")],1)]),t._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/bytedance/IconPark/blob/master/LICENSE",target:"_blank",rel:"noopener noreferrer"}},[t._v("Apache License 2.0"),e("OutboundLink")],1)])])])])])}),[],!1,null,null,null);r.default=a.exports}}]); \ No newline at end of file diff --git a/assets/js/125.ee63240a.js b/assets/js/125.ee63240a.js new file mode 100644 index 000000000..52c44416d --- /dev/null +++ b/assets/js/125.ee63240a.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[125],{709:function(v,t,_){"use strict";_.r(t);var d=_(13),r=Object(d.a)({},(function(){var v=this,t=v.$createElement,_=v._self._c||t;return _("ContentSlotsDistributor",{attrs:{"slot-key":v.$parent.slotKey}},[_("div",{staticClass:"features"},[_("div",{staticClass:"feature"},[_("h2",[v._v("简捷、强大")]),v._v(" "),_("p",[v._v("简捷、直观的操作界面,帮助您聚焦数据和快速完成工作。")])]),v._v(" "),_("div",{staticClass:"feature"},[_("h2",[v._v("触摸屏友好")]),v._v(" "),_("p",[v._v("聚焦改善数据和 SQL 编辑体验, 让您完成工作的同时收获愉悦的体验。")])]),v._v(" "),_("div",{staticClass:"feature"},[_("h2",[v._v("就是快")]),v._v(" "),_("p",[v._v("基于 "),_("a",{attrs:{target:"_blank",href:"https://www.gtk.org/"}},[v._v("GTK")]),v._v(" 和 "),_("a",{attrs:{target:"_blank",href:"https://gitlab.gnome.org/GNOME/libadwaita"}},[v._v("Adwaita")]),v._v(" 以 "),_("a",{attrs:{target:"_blank",href:"https://gitlab.gnome.org/GNOME/vala"}},[v._v("Vala")]),v._v(" 构建的原生应用,获得 C 语言的原生性能,就是为了快。")])])]),v._v(" "),_("h2",{attrs:{id:"支持的数据库系统"}},[_("a",{staticClass:"header-anchor",attrs:{href:"#支持的数据库系统"}},[v._v("#")]),v._v(" 支持的数据库系统")]),v._v(" "),_("p",[v._v("数据库支持能力级别: "),_("strong",[v._v("已计划")]),v._v(" / "),_("strong",[v._v("部分")]),v._v(" / "),_("strong",[v._v("支持(💯)")])]),v._v(" "),_("table",[_("thead",[_("tr",[_("th",[v._v("数据库")]),v._v(" "),_("th",[v._v("支持版本")]),v._v(" "),_("th",[v._v("SQL 查询")]),v._v(" "),_("th",[v._v("数据编辑")]),v._v(" "),_("th",[v._v("表设计器")]),v._v(" "),_("th",[v._v("导出")]),v._v(" "),_("th",[v._v("导入")]),v._v(" "),_("th",[v._v("智能提示")]),v._v(" "),_("th",[v._v("模型化")]),v._v(" "),_("th",[v._v("数据同步")])])]),v._v(" "),_("tbody",[_("tr",[_("td",[v._v("SQLite")]),v._v(" "),_("td",[v._v("3.0 +")]),v._v(" "),_("td",[v._v("支持💯")]),v._v(" "),_("td",[v._v("支持💯")]),v._v(" "),_("td",[v._v("支持💯")]),v._v(" "),_("td",[v._v("支持💯")]),v._v(" "),_("td",[v._v("支持💯")]),v._v(" "),_("td",[v._v("支持💯")]),v._v(" "),_("td",[v._v("✅✅🔲🔲🔲")]),v._v(" "),_("td",[v._v("✅✅✅✅🔲")])]),v._v(" "),_("tr",[_("td",[v._v("MySQL")]),v._v(" "),_("td",[v._v("5.5 +")]),v._v(" "),_("td",[v._v("支持💯")]),v._v(" "),_("td",[v._v("支持💯")]),v._v(" "),_("td",[v._v("支持💯")]),v._v(" "),_("td",[v._v("支持💯")]),v._v(" "),_("td",[v._v("支持💯")]),v._v(" "),_("td",[v._v("支持💯")]),v._v(" "),_("td",[v._v("✅✅🔲🔲🔲")]),v._v(" "),_("td",[v._v("✅✅✅✅🔲")])]),v._v(" "),_("tr",[_("td",[v._v("MariaDB")]),v._v(" "),_("td",[v._v("10.0 +")]),v._v(" "),_("td",[v._v("支持💯")]),v._v(" "),_("td",[v._v("支持💯")]),v._v(" "),_("td",[v._v("支持💯")]),v._v(" "),_("td",[v._v("支持💯")]),v._v(" "),_("td",[v._v("支持💯")]),v._v(" "),_("td",[v._v("支持💯")]),v._v(" "),_("td",[v._v("✅✅🔲🔲🔲")]),v._v(" "),_("td",[v._v("✅✅✅✅🔲")])]),v._v(" "),_("tr",[_("td",[v._v("PostgreSQL")]),v._v(" "),_("td",[v._v("9.0 +")]),v._v(" "),_("td",[v._v("支持💯")]),v._v(" "),_("td",[v._v("支持💯")]),v._v(" "),_("td",[v._v("支持💯")]),v._v(" "),_("td",[v._v("支持💯")]),v._v(" "),_("td",[v._v("支持💯")]),v._v(" "),_("td",[v._v("支持💯")]),v._v(" "),_("td",[v._v("✅✅🔲🔲🔲")]),v._v(" "),_("td",[v._v("✅✅✅✅🔲")])]),v._v(" "),_("tr",[_("td",[v._v("Redis")]),v._v(" "),_("td"),v._v(" "),_("td",[v._v("已计划")]),v._v(" "),_("td",[v._v("已计划")]),v._v(" "),_("td",[v._v("已计划")]),v._v(" "),_("td",[v._v("已计划")]),v._v(" "),_("td",[v._v("已计划")]),v._v(" "),_("td",[v._v("已计划")]),v._v(" "),_("td",[v._v("已计划")]),v._v(" "),_("td",[v._v("已计划")])]),v._v(" "),_("tr",[_("td",[v._v("Oracle")]),v._v(" "),_("td"),v._v(" "),_("td"),v._v(" "),_("td"),v._v(" "),_("td"),v._v(" "),_("td"),v._v(" "),_("td"),v._v(" "),_("td"),v._v(" "),_("td"),v._v(" "),_("td")]),v._v(" "),_("tr",[_("td",[v._v("SQL Server")]),v._v(" "),_("td"),v._v(" "),_("td"),v._v(" "),_("td"),v._v(" "),_("td"),v._v(" "),_("td"),v._v(" "),_("td"),v._v(" "),_("td"),v._v(" "),_("td"),v._v(" "),_("td")])])]),v._v(" "),_("p",[_("a",{attrs:{href:"./license/privacy-policy"}},[v._v("隐私政策")]),v._v(" | "),_("a",{attrs:{href:"./license/service-agreement"}},[v._v("用户协议")]),v._v(" | "),_("a",{attrs:{href:"http://www.beian.gov.cn/portal/registerSystemInfo?recordcode=44030602005092%22",target:"_blank",rel:"noopener noreferrer"}},[v._v("粤公网安备44030602005092号"),_("OutboundLink")],1),v._v(" | "),_("a",{attrs:{href:"http://beian.miit.gov.cn/",target:"_blank",rel:"noopener noreferrer"}},[v._v("粤ICP备2020100158号"),_("OutboundLink")],1),_("br"),v._v("Copyright © 2019 - present Kangaroo. All Rights Reserved. 袋鼠工具 版权所有")])])}),[],!1,null,null,null);t.default=r.exports}}]); \ No newline at end of file diff --git a/assets/js/126.072e70c4.js b/assets/js/126.072e70c4.js new file mode 100644 index 000000000..004c4a611 --- /dev/null +++ b/assets/js/126.072e70c4.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[126],{710:function(t,a,e){"use strict";e.r(a);var r=e(13),s=Object(r.a)({},(function(){var t=this,a=t.$createElement,e=t._self._c||a;return e("ContentSlotsDistributor",{attrs:{"slot-key":t.$parent.slotKey}},[e("h1",{attrs:{id:"为什么选择-vala-语言打造袋鼠数据库工具-5-20-2022-更新"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#为什么选择-vala-语言打造袋鼠数据库工具-5-20-2022-更新"}},[t._v("#")]),t._v(" 为什么选择 Vala 语言打造袋鼠数据库工具?(5/20/2022 更新)")]),t._v(" "),e("h2",{attrs:{id:"打造袋鼠数据库工具时的一些思考"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#打造袋鼠数据库工具时的一些思考"}},[t._v("#")]),t._v(" 打造袋鼠数据库工具时的一些思考")]),t._v(" "),e("p",[t._v("当我决定开发袋鼠数据库工具时,为应用赋能力是最重要的考虑项,袋鼠数据库工具应赋予哪些持续的能力?我认为应该赋予:")]),t._v(" "),e("ol",[e("li",[e("strong",[t._v("性能优先")]),t._v(": 应用程序应具有无与伦比的性能表现和响应能力, 最好是打造成原生应用。")]),t._v(" "),e("li",[e("strong",[t._v("代码安全")]),t._v(": 应用程序有能力应对逆向工程,从而避免被破解和直接修改,保持持续的商业运营能力。")]),t._v(" "),e("li",[e("strong",[t._v("跨平台")]),t._v(": 应用程序实现一份代码可以编译成所有平台兼容的应用;")]),t._v(" "),e("li",[e("strong",[t._v("技术栈成熟度")]),t._v(": 技术栈成熟度能支持实现商业目标,因为工具需要利润支持持续发展。")]),t._v(" "),e("li",[e("strong",[t._v("快速掌握")]),t._v(": 开发语言必须是语法简洁和强大,也应该是熟悉易上手的。")])]),t._v(" "),e("p",[t._v("经过评估了如下几种技术栈和编程语言组合后,最终我选择了 GTK + Vala 技术栈组合来实现袋鼠数据库工具。\nQT / C++ vs WxWidget / C++ vs GTK-mm / C++ vs GTK-rs / Rust / Go-GTK / Go vs GTK / Vala")]),t._v(" "),e("div",[e("script2",{attrs:{type:"text/javascript",async:"true",src:"https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"}}),t._v(" "),e("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),t._v(" "),e("script2",{attrs:{type:"text/javascript"}},[t._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),t._v(" "),e("h2",{attrs:{id:"vala-语言的优势和好处"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#vala-语言的优势和好处"}},[t._v("#")]),t._v(" Vala 语言的优势和好处")]),t._v(" "),e("ol",[e("li",[e("p",[e("strong",[t._v("语法兼容C#和Java,表达能力强,生产力高")]),e("br"),t._v("\n有C#/Java 的强大表达能力,又有原生编译的性能和速度,更有接地气的独特特性;"),e("br"),t._v(" "),e("a",{attrs:{href:"https://wiki.gnome.org/Projects/Vala/ValaForJavaProgrammers",target:"_blank",rel:"noopener noreferrer"}},[t._v("Vala for Java Programmers"),e("OutboundLink")],1),t._v(" "),e("a",{attrs:{href:"https://wiki.gnome.org/Projects/Vala/ValaForCSharpProgrammers",target:"_blank",rel:"noopener noreferrer"}},[t._v("Vala for C# Programmers"),e("OutboundLink")],1)])]),t._v(" "),e("li",[e("p",[e("strong",[t._v("内存所有权和使用引用计数管理,内存使用安全无烦恼")]),e("br"),t._v("\nVala 使用自动引用计数的内存管理功能,无需垃圾内存回收支持(GC),亦无GC相关的性能问题。")])]),t._v(" "),e("li",[e("p",[e("strong",[t._v("支持接口:支持抽象接口,也支持接口实现")]),e("br"),t._v("\n接口实现类似于PHP traits 和 JavaScript 的 MIXIN 的功能;")])]),t._v(" "),e("li",[e("p",[e("strong",[t._v("点分名字空间支持大型应用开发")]),e("br"),t._v("\nDBKangaroo 工具编写了 400 多个源码模块,拆分为3个子项目和多个顶级名字空间,名字空间深度达5层,全部一个点(.)搞定,至今用起来很顺;")])]),t._v(" "),e("li",[e("p",[e("strong",[t._v("语言级别的正则表达式支持")]),e("br"),t._v("\nVala 把正则表达式视为一等公民对待,可以在代码中直接使用,正则表达式给予了我强大的力量,在我的代码中无处不在,越用越熟练。"),e("br")])])]),t._v(" "),e("div",{staticClass:"language-vala extra-class"},[e("pre",{pre:!0,attrs:{class:"language-vala"}},[e("code",[e("span",{pre:!0,attrs:{class:"token class-name"}},[t._v("GLib"),e("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("MatchInfo")]),t._v(" regex_match"),e("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(";")]),t._v("\n"),e("span",{pre:!0,attrs:{class:"token class-name"}},[t._v("Regex")]),t._v(" regex "),e("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" "),e("span",{pre:!0,attrs:{class:"token regex"}},[e("span",{pre:!0,attrs:{class:"token regex-delimiter"}},[t._v("/")]),e("span",{pre:!0,attrs:{class:"token regex-source language-regex"}},[t._v("(?[\\d\\.\\-]+),(?[\\s]*[\\-\\d\\.]+)")]),e("span",{pre:!0,attrs:{class:"token regex-delimiter"}},[t._v("/")]),e("span",{pre:!0,attrs:{class:"token regex-flags"}},[t._v("mi")])]),e("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(";")]),t._v("\n"),e("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("if")]),t._v(" "),e("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("regex"),e("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),e("span",{pre:!0,attrs:{class:"token function"}},[t._v("match")]),e("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("text"),e("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),e("span",{pre:!0,attrs:{class:"token number"}},[t._v("0")]),e("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),e("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("out")]),t._v(" regex_match"),e("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),e("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),e("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v("\n point_new"),e("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),e("span",{pre:!0,attrs:{class:"token function"}},[t._v("set_x")]),e("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),e("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("double")]),e("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),e("span",{pre:!0,attrs:{class:"token function"}},[t._v("parse")]),e("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("regex_match"),e("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),e("span",{pre:!0,attrs:{class:"token function"}},[t._v("fetch_named")]),e("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),e("span",{pre:!0,attrs:{class:"token string"}},[t._v('"x"')]),e("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),e("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),e("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),e("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(";")]),t._v("\n point_new"),e("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),e("span",{pre:!0,attrs:{class:"token function"}},[t._v("set_y")]),e("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),e("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("double")]),e("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),e("span",{pre:!0,attrs:{class:"token function"}},[t._v("parse")]),e("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("regex_match"),e("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),e("span",{pre:!0,attrs:{class:"token function"}},[t._v("fetch_named")]),e("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),e("span",{pre:!0,attrs:{class:"token string"}},[t._v('"y"')]),e("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),e("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),e("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),e("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(";")]),t._v("\n"),e("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),t._v(" \n")])])]),e("p",[t._v("特别的礼物:一款优秀的在线正则工具: "),e("a",{attrs:{href:"https://regex101.com/",target:"_blank",rel:"noopener noreferrer"}},[t._v("Regex101"),e("OutboundLink")],1)]),t._v(" "),e("ol",{attrs:{start:"6"}},[e("li",[e("p",[e("strong",[t._v("有C的速度和良好的互操作性支持")]),e("br"),t._v("\n可以生成C头文件和C代码并获得全平台支持,也可以Vala与C混合编译。")])]),t._v(" "),e("li",[e("p",[e("strong",[t._v("强大且成熟的类库支持")]),e("br"),t._v("\n基于GLib的强大类库体系,有工业级成熟度的各种库和GUI框架支持,目前有近300个VAPI, 请查询:"),e("a",{attrs:{href:"https://github.com/nemequ/vala-girs/tree/master/vala/vapi",target:"_blank",rel:"noopener noreferrer"}},[t._v("VAPIs @ Github"),e("OutboundLink")],1),t._v(" "),e("a",{attrs:{href:"https://gitlab.gnome.org/GNOME/vala/-/tree/main/vapi",target:"_blank",rel:"noopener noreferrer"}},[t._v("VAPIs @ Project"),e("OutboundLink")],1)])]),t._v(" "),e("li",[e("p",[e("strong",[t._v("有丰富且完善的文档支持")]),e("br"),t._v("\n有优秀的文档和案例,也有大量开源项目可供参考学习,非常容易上手。"),e("br"),t._v(" "),e("a",{attrs:{href:"https://valadoc.org/",target:"_blank",rel:"noopener noreferrer"}},[t._v("Vala 官方在线文档"),e("OutboundLink")],1),t._v(" "),e("a",{attrs:{href:"https://wiki.gnome.org/Projects/Vala/Documentation#Projects_Developed_in_Vala",target:"_blank",rel:"noopener noreferrer"}},[t._v("Vala 项目集合1(GNOME)"),e("OutboundLink")],1),t._v(" "),e("a",{attrs:{href:"https://github.com/search?l=Vala&q=Vala&type=Repositories",target:"_blank",rel:"noopener noreferrer"}},[t._v("Vala 项目集合2(Github)"),e("OutboundLink")],1)])]),t._v(" "),e("li",[e("p",[e("strong",[t._v("卓越的开发环境支持")]),e("br"),t._v("\n目前最好的 Vala IDE 组合是:"),e("a",{attrs:{href:"https://code.visualstudio.com/Download",target:"_blank",rel:"noopener noreferrer"}},[t._v("Visual Studio Code"),e("OutboundLink")],1),t._v(" + "),e("a",{attrs:{href:"https://marketplace.visualstudio.com/items?itemName=prince781.vala",target:"_blank",rel:"noopener noreferrer"}},[t._v("Vala plugin"),e("OutboundLink")],1),t._v(" + "),e("a",{attrs:{href:"https://github.com/vala-lang/vala-language-server",target:"_blank",rel:"noopener noreferrer"}},[t._v("Vala language server"),e("OutboundLink")],1),t._v(" + Meson(Ninja)/MSYS2, 享受它们,贡献它们,我们可以.")])]),t._v(" "),e("li",[e("p",[e("strong",[t._v("Elementary OS官方钦定语言")]),e("br"),t._v("\nElementary 官方博文分享了他们的观点: "),e("a",{attrs:{href:"https://blog.elementary.io/why-we-write-elementary-apps-in-vala/",target:"_blank",rel:"noopener noreferrer"}},[t._v("Why we write elementary apps in Vala"),e("OutboundLink")],1)])])])])}),[],!1,null,null,null);a.default=s.exports}}]); \ No newline at end of file diff --git a/assets/js/127.c8e240cf.js b/assets/js/127.c8e240cf.js new file mode 100644 index 000000000..85027ead7 --- /dev/null +++ b/assets/js/127.c8e240cf.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[127],{711:function(s,a,t){"use strict";t.r(a);var n=t(13),r=Object(n.a)({},(function(){var s=this,a=s.$createElement,t=s._self._c||a;return t("ContentSlotsDistributor",{attrs:{"slot-key":s.$parent.slotKey}},[t("h1",{attrs:{id:"如何快速有效部署gtk应用程序到windows平台-08-03-2020-更新"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#如何快速有效部署gtk应用程序到windows平台-08-03-2020-更新"}},[s._v("#")]),s._v(" 如何快速有效部署GTK应用程序到Windows平台?(08/03/2020 更新)")]),s._v(" "),t("h2",{attrs:{id:"背景介绍"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#背景介绍"}},[s._v("#")]),s._v(" 背景介绍")]),s._v(" "),t("p",[s._v("自从启动开发 "),t("strong",[s._v("袋鼠数据库工具")]),s._v(" 以来,我遇到的最大困难就是如何打包 "),t("strong",[s._v("袋鼠数据库工具")]),s._v(" 应用给用户,经借用强大的谷歌寻找解决方案,最终寻找到了一位日本友人分享的文章"),t("a",{attrs:{href:"http://www.tarnyko.net/repo/gtk3_build_system/tutorial/gtk3_tutorial.htm",target:"_blank",rel:"noopener noreferrer"}},[s._v("Windows平台 GTK+3 安装包教程"),t("OutboundLink")],1),s._v(",文章提供了一份最清晰的 Windows 平台 GTK3 应用部署目录结构,一切问题迎刃而解,所以成功部署 GTK 应用的荣耀应该属于该文章作者。")]),s._v(" "),t("h2",{attrs:{id:"前置条件"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#前置条件"}},[s._v("#")]),s._v(" 前置条件")]),s._v(" "),t("p",[s._v("文本所介绍的 GTK 应用打包教程基于构建环境 "),t("a",{attrs:{href:"https://www.msys2.org/",target:"_blank",rel:"noopener noreferrer"}},[s._v("MSYS2"),t("OutboundLink")],1),s._v(",请提前准备好构建环境。")]),s._v(" "),t("h2",{attrs:{id:"解决方案"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#解决方案"}},[s._v("#")]),s._v(" 解决方案")]),s._v(" "),t("h3",{attrs:{id:"准备应用目录结构"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#准备应用目录结构"}},[s._v("#")]),s._v(" 准备应用目录结构")]),s._v(" "),t("p",[s._v("为了成功部署 GTK 应用,应用的最终安装目录结构必须参考 Linux 系统目录结构,目录结构如下:")]),s._v(" "),t("div",{staticClass:"language- extra-class"},[t("pre",{pre:!0,attrs:{class:"language-text"}},[t("code",[s._v("[安装目录]\n ├─bin\n ├─etc\n │ └─gtk-3.0\n ├─lib\n └─share\n ├─doc\n ├─glib-2.0\n │ └─schemas\n ├─icons\n │ ├─Adwaita\n │ └─hicolor\n ├─locale\n └─themes\n ├─Default\n ├─MS-Windows\n └─Windows10\n")])])]),t("div",[t("script2",{attrs:{type:"text/javascript",async:"true",src:"https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"}}),s._v(" "),t("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),s._v(" "),t("script2",{attrs:{type:"text/javascript"}},[s._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),s._v(" "),t("h3",{attrs:{id:"复制第三方依赖库"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#复制第三方依赖库"}},[s._v("#")]),s._v(" 复制第三方依赖库")]),s._v(" "),t("p",[t("strong",[s._v("List of GTK dependencies")]),s._v("\nGTK 框架依赖的第三方库:")]),s._v(" "),t("ul",[t("li",[s._v("GLib")]),s._v(" "),t("li",[s._v("cairo")]),s._v(" "),t("li",[s._v("Pango")]),s._v(" "),t("li",[s._v("ATK")]),s._v(" "),t("li",[s._v("gdk-pixbuf")])]),s._v(" "),t("p",[s._v("为了启动 GTK 应用,您也需要如下第三方库:")]),s._v(" "),t("ul",[t("li",[s._v("gettext-runtime")]),s._v(" "),t("li",[s._v("fontconfig")]),s._v(" "),t("li",[s._v("freetype")]),s._v(" "),t("li",[s._v("expat")]),s._v(" "),t("li",[s._v("libpng")]),s._v(" "),t("li",[s._v("zlib")])]),s._v(" "),t("p",[t("strong",[s._v("如何获取依赖库列表并复制到打包目录?")])]),s._v(" "),t("p",[s._v("解决方案就是一系列 Linux 命令工具组合,详细如下:")]),s._v(" "),t("div",{staticClass:"language-bash extra-class"},[t("pre",{pre:!0,attrs:{class:"language-bash"}},[t("code",[s._v("ldd "),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"'),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("${SOURCEDIR}")]),s._v('/build/src/kangaroo.exe"')]),s._v(" "),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("|")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token function"}},[s._v("grep")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token string"}},[s._v("'\\/mingw64\\/bin\\/.*dll'")]),s._v(" -o "),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("|")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token function"}},[s._v("xargs")]),s._v(" -I"),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("{")]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("}")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token function"}},[s._v("cp")]),s._v(" -f "),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"{}"')]),s._v(" "),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"'),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("${TARGETDIR}")]),s._v('/bin/"')]),s._v("\n")])])]),t("p",[t("strong",[s._v("执行完上述命令就够了吗? 不够!!!")])]),s._v(" "),t("p",[s._v("GTK 框架中一些地三方依赖库,比如 gdk-pixbuf / libgda,通过插件扩展的方式实现其功能,所以我们必须找出它们来,并把它们的插件文件和依赖库都找到并复制到打包目录:")]),s._v(" "),t("div",{staticClass:"language-bash extra-class"},[t("pre",{pre:!0,attrs:{class:"language-bash"}},[t("code",[s._v("ldd /mingw64/bin/libpq.dll "),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("|")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token function"}},[s._v("grep")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token string"}},[s._v("'\\/mingw64\\/bin\\/.*dll'")]),s._v(" -o "),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("|")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token function"}},[s._v("xargs")]),s._v(" -I"),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("{")]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("}")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token function"}},[s._v("cp")]),s._v(" -f "),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"{}"')]),s._v(" "),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"'),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("${TARGETDIR}")]),s._v('/bin/"')]),s._v("\n")])])]),t("h3",{attrs:{id:"复制应用资源文件"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#复制应用资源文件"}},[s._v("#")]),s._v(" 复制应用资源文件")]),s._v(" "),t("ul",[t("li",[t("p",[s._v("/etc")]),s._v(" "),t("ul",[t("li",[s._v("/gtk-3.0/settings.ini : 应用级别的配置文件")]),s._v(" "),t("li",[s._v("*: 其它未列出的文件")])])]),s._v(" "),t("li",[t("p",[s._v("/lib")]),s._v(" "),t("ul",[t("li",[s._v("/gdk-pixbuf-2.0 : GDK-Pixbuf 模块: SVG 支持库")]),s._v(" "),t("li",[s._v("/gtk-3.0 : GTK+-IM 模块")]),s._v(" "),t("li",[s._v("/pango : Pango 模块")]),s._v(" "),t("li",[t("em",[s._v(": 扩展开发需要导入的库、头文件、pkg-config(")]),s._v(".pc)配置文件等... 仅用于开发用途")])])]),s._v(" "),t("li",[t("p",[s._v("/share")]),s._v(" "),t("ul",[t("li",[s._v("/doc : 应用文档,如许可证和版权协议等")]),s._v(" "),t("li",[s._v("/gtk-3.0 : GTK3 相关的资源文件(gkt3-demo)")]),s._v(" "),t("li",[s._v("/gtk-doc : gtk-doc 生存的网页文档")]),s._v(" "),t("li",[s._v("/icons : 框架和应用的图标文件")]),s._v(" "),t("li",[s._v("/locale : 框架和应用的本地化文件(用于支持多语言)")]),s._v(" "),t("li",[s._v("/themes : 架和应用的样式文件")]),s._v(" "),t("li",[s._v("*: 其它未列出的文件")])])])]),s._v(" "),t("h3",{attrs:{id:"通过运行时依赖视图比较打包完整性"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#通过运行时依赖视图比较打包完整性"}},[s._v("#")]),s._v(" 通过运行时依赖视图比较打包完整性")]),s._v(" "),t("p",[s._v("在全功能模式下,分别在用户环境和测试环境启动应用,用工具 "),t("a",{attrs:{href:"https://docs.microsoft.com/en-us/sysinternals/downloads/process-explorer",target:"_blank",rel:"noopener noreferrer"}},[s._v("Process Explorer"),t("OutboundLink")],1),s._v(" 查看运行时依赖视图(加载的DLL清单),对比依赖库数量是否一致,通过比较打包目录内的dll查漏补缺;")]),s._v(" "),t("div",[t("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),s._v(" "),t("script2",{attrs:{type:"text/javascript"}},[s._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),s._v(" "),t("h3",{attrs:{id:"袋鼠数据库的完整打包脚本-可微调直接复用"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#袋鼠数据库的完整打包脚本-可微调直接复用"}},[s._v("#")]),s._v(" 袋鼠数据库的完整打包脚本,可微调直接复用")]),s._v(" "),t("div",{staticClass:"language-bash extra-class"},[t("pre",{pre:!0,attrs:{class:"language-bash"}},[t("code",[t("span",{pre:!0,attrs:{class:"token shebang important"}},[s._v("#!/usr/bin/env sh")]),s._v("\n\n"),t("span",{pre:!0,attrs:{class:"token comment"}},[s._v("#")]),s._v("\n"),t("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# Copyright(C) 2018-2020 taozuhong(https://github.com/taozuhong)")]),s._v("\n"),t("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# Important:")]),s._v("\n"),t("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# These functions are a part of the Kangaroo tool suite;")]),s._v("\n"),t("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# copyright taozuhong. 2018-2020. All rights reserved.")]),s._v("\n"),t("span",{pre:!0,attrs:{class:"token comment"}},[s._v("#")]),s._v("\n"),t("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# Author: taozuhong")]),s._v("\n"),t("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# Created: 1.8.2019")]),s._v("\n"),t("span",{pre:!0,attrs:{class:"token comment"}},[s._v("#")]),s._v("\n"),t("span",{pre:!0,attrs:{class:"token assign-left variable"}},[s._v("SOURCEDIR")]),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"$( cd "'),t("span",{pre:!0,attrs:{class:"token variable"}},[t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("$(")]),t("span",{pre:!0,attrs:{class:"token function"}},[s._v("dirname")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"'),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("$0")]),s._v('"')]),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v(")")])]),s._v('/../"')]),s._v(" "),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(";")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token builtin class-name"}},[s._v("pwd")]),s._v(" -P "),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"\nTARGETDIR="')]),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("${SOURCEDIR}")]),s._v("/build/windows"),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"\nVERSION="')]),t("span",{pre:!0,attrs:{class:"token number"}},[s._v("0.7")]),s._v(".2."),t("span",{pre:!0,attrs:{class:"token variable"}},[t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("$(")]),t("span",{pre:!0,attrs:{class:"token function"}},[s._v("date")]),s._v(" +%y%m%d"),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v(")")])]),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"\n\n# 检查并创建打包目录\necho -n "')]),s._v("检查并创建打包目录"),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("..")]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("..")]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("..")]),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"\nif [ ! -d "')]),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("$TARGETDIR")]),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('" ]; then\n mkdir '),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("$TARGETDIR")]),s._v('\n mkdir "')]),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("${TARGETDIR}")]),s._v("/bin/"),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"\n mkdir "')]),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("${TARGETDIR}")]),s._v("/lib/"),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"\n mkdir -p "')]),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("${TARGETDIR}")]),s._v("/share/glib-2.0/schemas"),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"\n mkdir "')]),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("${TARGETDIR}")]),s._v("/share/doc"),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"\n mkdir "')]),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("${TARGETDIR}")]),s._v("/share/themes"),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"\n mkdir "')]),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("${TARGETDIR}")]),s._v("/etc/"),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"\nelse \n if [ ! -d "')]),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("${TARGETDIR}")]),s._v("/bin"),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('" ]; then\n mkdir "')]),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("${TARGETDIR}")]),s._v("/bin/"),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"\n fi\n\n if [ ! -d "')]),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("${TARGETDIR}")]),s._v("/lib"),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('" ]; then\n mkdir "')]),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("${TARGETDIR}")]),s._v("/lib/"),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"\n fi\n\n if [ ! -d "')]),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("${TARGETDIR}")]),s._v("/share"),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('" ]; then\n mkdir -p "')]),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("${TARGETDIR}")]),s._v("/share/glib-2.0/schemas"),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"\n mkdir "')]),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("${TARGETDIR}")]),s._v("/share/"),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"\n mkdir "')]),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("${TARGETDIR}")]),s._v("/share/doc"),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"\n mkdir "')]),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("${TARGETDIR}")]),s._v("/share/themes"),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"\n fi\n\n if [ ! -d "')]),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("${TARGETDIR}")]),s._v("/etc"),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('" ]; then\n mkdir "')]),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("${TARGETDIR}")]),s._v("/etc/"),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"\n fi\nfi\necho "')]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("[")]),s._v("完成"),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("]")]),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"\n\n# 复制应用第三方依赖库\necho -n "')]),s._v("复制应用第三方依赖库"),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("..")]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("..")]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("..")]),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"\nldd "')]),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("${SOURCEDIR}")]),s._v("/build/src/kangaroo.exe"),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('" | grep "')]),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("$MSYSTEM_PREFIX")]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("\\")]),s._v("/bin"),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("\\")]),s._v("/.*dll"),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('" -o | xargs -I{} cp -f "')]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("{")]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("}")]),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('" "')]),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("${TARGETDIR}")]),s._v("/bin/"),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"\nldd '),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("$MSYSTEM_PREFIX")]),s._v('/bin/libjson-glib-1.0-0.dll | grep "')]),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("$MSYSTEM_PREFIX")]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("\\")]),s._v("/bin"),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("\\")]),s._v("/.*dll"),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('" -o | xargs -I{} cp -f "')]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("{")]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("}")]),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('" "')]),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("${TARGETDIR}")]),s._v("/bin/"),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"\nldd '),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("$MSYSTEM_PREFIX")]),s._v('/bin/libsoup-2.4-1.dll | grep "')]),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("$MSYSTEM_PREFIX")]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("\\")]),s._v("/bin"),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("\\")]),s._v("/.*dll"),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('" -o | xargs -I{} cp -f "')]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("{")]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("}")]),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('" "')]),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("${TARGETDIR}")]),s._v("/bin/"),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"\nldd '),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("$MSYSTEM_PREFIX")]),s._v('/bin/libgtksourceview-4-0.dll | grep "')]),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("$MSYSTEM_PREFIX")]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("\\")]),s._v("/bin"),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("\\")]),s._v("/.*dll"),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('" -o | xargs -I{} cp -f "')]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("{")]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("}")]),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('" "')]),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("${TARGETDIR}")]),s._v("/bin/"),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"\n\ncp -f "')]),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("${SOURCEDIR}")]),s._v("/build/src/kangaroo.exe"),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('" "')]),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("${TARGETDIR}")]),s._v("/bin/"),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"\ncp -f "')]),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("${SOURCEDIR}")]),s._v("/data/assets/kangaroo.ico"),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('" "')]),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("${TARGETDIR}")]),s._v("/bin/"),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"\ncp -f '),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("$MSYSTEM_PREFIX")]),s._v('/bin/librsvg-2-2.dll "')]),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("${TARGETDIR}")]),s._v("/bin/"),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"\ncp -f '),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("$MSYSTEM_PREFIX")]),s._v('/bin/libgthread-2.0-0.dll "')]),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("${TARGETDIR}")]),s._v("/bin/"),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"\ncp -f '),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("$MSYSTEM_PREFIX")]),s._v('/bin/libcroco-0.6-3.dll "')]),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("${TARGETDIR}")]),s._v("/bin/"),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"\ncp -f '),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("$MSYSTEM_PREFIX")]),s._v('/bin/libtasn1-6.dll "')]),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("${TARGETDIR}")]),s._v("/bin/"),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"\ncp -f '),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("$MSYSTEM_PREFIX")]),s._v('/bin/libproxy-1.dll "')]),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("${TARGETDIR}")]),s._v("/bin/"),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"\ncp -f '),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("$MSYSTEM_PREFIX")]),s._v('/bin/libp11-kit-0.dll "')]),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("${TARGETDIR}")]),s._v("/bin/"),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"\ncp -f '),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("$MSYSTEM_PREFIX")]),s._v('/bin/libnettle-7.dll "')]),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("${TARGETDIR}")]),s._v("/bin/"),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"\ncp -f '),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("$MSYSTEM_PREFIX")]),s._v('/bin/libhogweed-5.dll "')]),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("${TARGETDIR}")]),s._v("/bin/"),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"\ncp -f '),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("$MSYSTEM_PREFIX")]),s._v('/bin/libgnutls-30.dll "')]),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("${TARGETDIR}")]),s._v("/bin/"),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"\ncp -f '),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("$MSYSTEM_PREFIX")]),s._v('/bin/libgmp-10.dll "')]),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("${TARGETDIR}")]),s._v("/bin/"),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"\necho "')]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("[")]),s._v("完成"),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("]")]),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"\n\n# 复制 GDBus/Helper 及其依赖库\necho -n "')]),s._v("复制 GDBus/Helper 及其依赖库"),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("..")]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("..")]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("..")]),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"\ncp -f '),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("$MSYSTEM_PREFIX")]),s._v('/bin/gdbus.exe "')]),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("${TARGETDIR}")]),s._v("/bin/"),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"\nldd '),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("$MSYSTEM_PREFIX")]),s._v('/bin/gdbus.exe | grep "')]),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("$MSYSTEM_PREFIX")]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("\\")]),s._v("/bin"),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("\\")]),s._v("/.*dll"),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('" -o | xargs -I{} cp -f "')]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("{")]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("}")]),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('" "')]),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("${TARGETDIR}")]),s._v("/bin/"),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"\ncp -f '),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("$MSYSTEM_PREFIX")]),s._v('/bin/gspawn-win64-helper.exe "')]),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("${TARGETDIR}")]),s._v("/bin/"),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"\nldd '),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("$MSYSTEM_PREFIX")]),s._v('/bin/gspawn-win64-helper.exe | grep "')]),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("$MSYSTEM_PREFIX")]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("\\")]),s._v("/bin"),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("\\")]),s._v("/.*dll"),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('" -o | xargs -I{} cp -f "')]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("{")]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("}")]),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('" "')]),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("${TARGETDIR}")]),s._v("/bin/"),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"\necho "')]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("[")]),s._v("完成"),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("]")]),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"\n\n# 复制 libgda / 提供者及其依赖库(MySQL/PostgreSQL/JDBC/...)\necho -n "')]),s._v("复制 libgda / 提供者及其依赖库"),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("..")]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("..")]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("..")]),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"\ncp -f '),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("$MSYSTEM_PREFIX")]),s._v('/bin/libpq.dll "')]),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("${TARGETDIR}")]),s._v("/bin/"),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"\ncp -f '),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("$MSYSTEM_PREFIX")]),s._v('/bin/mariadb.dll "')]),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("${TARGETDIR}")]),s._v("/bin/"),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"\nldd '),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("$MSYSTEM_PREFIX")]),s._v('/bin/libpq.dll | grep "')]),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("$MSYSTEM_PREFIX")]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("\\")]),s._v("/bin"),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("\\")]),s._v("/.*dll"),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('" -o | xargs -I{} cp -f "')]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("{")]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("}")]),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('" "')]),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("${TARGETDIR}")]),s._v("/bin/"),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"\nldd '),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("$MSYSTEM_PREFIX")]),s._v('/bin/mariadb.dll | grep "')]),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("$MSYSTEM_PREFIX")]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("\\")]),s._v("/bin"),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("\\")]),s._v("/.*dll"),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('" -o | xargs -I{} cp -f "')]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("{")]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("}")]),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('" "')]),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("${TARGETDIR}")]),s._v("/bin/"),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"\nif [ -d "')]),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("${SOURCEDIR}")]),s._v("/libs/plugin"),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('" ]; then\n cp -rf "')]),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("${SOURCEDIR}")]),s._v("/libs/plugin"),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('" "')]),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("${TARGETDIR}")]),s._v("/lib"),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"\nfi\necho "')]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("[")]),s._v("完成"),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("]")]),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"\n\n# 复制 GTK 运行时依赖资源\necho -n "')]),s._v("复制 GTK 运行时依赖资源"),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("..")]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("..")]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("..")]),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"\ncp -rf '),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("$MSYSTEM_PREFIX")]),s._v('/lib/gdk-pixbuf-2.0 "')]),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("${TARGETDIR}")]),s._v("/lib/"),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"\ncp -rf '),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("$MSYSTEM_PREFIX")]),s._v('/lib/libgda-5.0 "')]),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("${TARGETDIR}")]),s._v("/lib/"),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"\ncp -rf '),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("$MSYSTEM_PREFIX")]),s._v('/lib/gio "')]),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("${TARGETDIR}")]),s._v("/lib/"),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"\ncp -rf '),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("$MSYSTEM_PREFIX")]),s._v('/etc/gtk-3.0 "')]),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("${TARGETDIR}")]),s._v("/etc/"),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"\ncp -rf '),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("$MSYSTEM_PREFIX")]),s._v('/share/icons "')]),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("${TARGETDIR}")]),s._v("/share/"),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"\ncp -rf '),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("$MSYSTEM_PREFIX")]),s._v('/share/locale "')]),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("${TARGETDIR}")]),s._v("/share/"),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"\ncp -rf '),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("$MSYSTEM_PREFIX")]),s._v('/share/gtksourceview-4 "')]),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("${TARGETDIR}")]),s._v("/share/"),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"\nglib-compile-schemas '),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("$MSYSTEM_PREFIX")]),s._v("/share/glib-2.0/schemas\ncp -f "),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("$MSYSTEM_PREFIX")]),s._v('/share/glib-2.0/schemas/gschema* "')]),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("${TARGETDIR}")]),s._v("/share/glib-2.0/schemas"),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"\ncp -rf '),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("$MSYSTEM_PREFIX")]),s._v('/share/themes/Default "')]),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("${TARGETDIR}")]),s._v("/share/themes/"),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"\ncp -rf '),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("$MSYSTEM_PREFIX")]),s._v('/share/themes/MS-Windows "')]),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("${TARGETDIR}")]),s._v("/share/themes/"),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"\nfind "')]),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("${TARGETDIR}")]),s._v("/lib"),t("span",{pre:!0,attrs:{class:"token string"}},[s._v("\" -type f -path '*.dll.a' -exec rm '{}' \\;\necho \"")]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("[")]),s._v("完成"),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("]")]),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"\n\n# 下载许可证文件: LGPL-3.0\necho -n "')]),s._v("下载许可证文件"),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("..")]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("..")]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("..")]),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"\nif [ ! -f "')]),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("${TARGETDIR}")]),s._v("/share/doc/lgpl-3.0.txt"),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('" ]; then\n curl "')]),s._v("https://www.gnu.org/licenses/lgpl-3.0.txt"),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('" -o "')]),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("${TARGETDIR}")]),s._v("/share/doc/lgpl-3.0.txt"),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"\nfi\nif [ -f "')]),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("${TARGETDIR}")]),s._v("/share/doc/lgpl-3.0.txt"),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('" ]; then\n echo "')]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("[")]),s._v("完成"),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("]")]),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"\nelse\n echo "')]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("[")]),s._v("失败"),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("]")]),s._v('"\n'),t("span",{pre:!0,attrs:{class:"token keyword"}},[s._v("fi")]),s._v("\n")])])])])}),[],!1,null,null,null);a.default=r.exports}}]); \ No newline at end of file diff --git a/assets/js/128.c5bb0555.js b/assets/js/128.c5bb0555.js new file mode 100644 index 000000000..277e6a4e5 --- /dev/null +++ b/assets/js/128.c5bb0555.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[128],{712:function(t,s,a){"use strict";a.r(s);var n=a(13),e=Object(n.a)({},(function(){var t=this,s=t.$createElement,a=t._self._c||s;return a("ContentSlotsDistributor",{attrs:{"slot-key":t.$parent.slotKey}},[a("h1",{attrs:{id:"glib-对象序列化和反序列化"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#glib-对象序列化和反序列化"}},[t._v("#")]),t._v(" GLib 对象序列化和反序列化")]),t._v(" "),a("h2",{attrs:{id:"背景介绍"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#背景介绍"}},[t._v("#")]),t._v(" 背景介绍")]),t._v(" "),a("p",[t._v("如何比较两个对象是否一致及生成差异化补丁?")]),t._v(" "),a("p",[t._v("这是袋鼠数据库工具 1.0 版要面临的重要课题,由于之前没接触过这个问题,所以不知道它的最佳解决方案是啥,于是开始研究这个问题的解决方案。")]),t._v(" "),a("h2",{attrs:{id:"解决方案"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#解决方案"}},[t._v("#")]),t._v(" 解决方案")]),t._v(" "),a("p",[t._v("在 GLib 框架体系里,有两个库可支持对象序列化和反序列化,他们分别是 JSON-GLib / GXML:")]),t._v(" "),a("table",[a("thead",[a("tr",[a("th",[t._v("名称")]),t._v(" "),a("th",[t._v("最新版本")]),t._v(" "),a("th",[t._v("官方网站")]),t._v(" "),a("th",[t._v("说明")])])]),t._v(" "),a("tbody",[a("tr",[a("td",[t._v("JSON-GLib")]),t._v(" "),a("td",[t._v("1.52")]),t._v(" "),a("td",[a("a",{attrs:{href:"https://gitlab.gnome.org/GNOME/json-glib",target:"_blank",rel:"noopener noreferrer"}},[t._v("JSON-GLib"),a("OutboundLink")],1)]),t._v(" "),a("td",[t._v("JSON-GLib 使用 GLib and GObject 实现了一个完整的 JSON 解析器和生成器,集成支持各种 GLib 类型,属于 GLib 友好型库")])]),t._v(" "),a("tr",[a("td",[t._v("GXML")]),t._v(" "),a("td",[t._v("0.20")]),t._v(" "),a("td",[a("a",{attrs:{href:"https://gitlab.gnome.org/GNOME/gxml",target:"_blank",rel:"noopener noreferrer"}},[t._v("GXML"),a("OutboundLink")],1)]),t._v(" "),a("td",[t._v("GXML 实现了对象化的 API 接口操作 XML 文档,支持对象序列化和反序列化")])])])]),t._v(" "),a("h3",{attrs:{id:"json-glib-vs-gxml-哪个库才是解决问题的最佳选择"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#json-glib-vs-gxml-哪个库才是解决问题的最佳选择"}},[t._v("#")]),t._v(" JSON-GLib vs GXML, 哪个库才是解决问题的最佳选择?")]),t._v(" "),a("p",[t._v("让我们通过一个清单来对比分析两个库对具体类型的支持程度,从而判断出哪个库是解决问题的最佳选择:")]),t._v(" "),a("table",[a("thead",[a("tr",[a("th",[t._v("关键项目")]),t._v(" "),a("th",{staticStyle:{"text-align":"center"}},[t._v("GXML")]),t._v(" "),a("th",{staticStyle:{"text-align":"center"}},[t._v("JSON-GLib")]),t._v(" "),a("th",[t._v("说明")])])]),t._v(" "),a("tbody",[a("tr",[a("td",[t._v("基本类型")]),t._v(" "),a("td",{staticStyle:{"text-align":"center"}},[t._v("[x] 已支持")]),t._v(" "),a("td",{staticStyle:{"text-align":"center"}},[t._v("[x] 已支持")]),t._v(" "),a("td",[t._v("char/int/double/...")])]),t._v(" "),a("tr",[a("td",[t._v("包装类型")]),t._v(" "),a("td",{staticStyle:{"text-align":"center"}},[t._v("[ ] 未支持")]),t._v(" "),a("td",{staticStyle:{"text-align":"center"}},[t._v("[x] 已支持")]),t._v(" "),a("td",[t._v("Value/Variant/...")])]),t._v(" "),a("tr",[a("td",[t._v("对象")]),t._v(" "),a("td",{staticStyle:{"text-align":"center"}},[t._v("[x] 已支持")]),t._v(" "),a("td",{staticStyle:{"text-align":"center"}},[t._v("[x] 已支持")]),t._v(" "),a("td",[t._v("GObject 子类型对象")])]),t._v(" "),a("tr",[a("td",[t._v("Vala 数组")]),t._v(" "),a("td",{staticStyle:{"text-align":"center"}},[t._v("[x] 已支持")]),t._v(" "),a("td",{staticStyle:{"text-align":"center"}},[t._v("[ ] 未支持")]),t._v(" "),a("td",[t._v("容器类型")])]),t._v(" "),a("tr",[a("td",[t._v("Gee.ArrayList")]),t._v(" "),a("td",{staticStyle:{"text-align":"center"}},[t._v("[x] 已支持")]),t._v(" "),a("td",{staticStyle:{"text-align":"center"}},[t._v("[ ] 未支持")]),t._v(" "),a("td",[t._v("容器类型")])]),t._v(" "),a("tr",[a("td",[t._v("Gee.HashMap")]),t._v(" "),a("td",{staticStyle:{"text-align":"center"}},[t._v("[x] 已支持")]),t._v(" "),a("td",{staticStyle:{"text-align":"center"}},[t._v("[ ] 未支持")]),t._v(" "),a("td",[t._v("容器类型")])]),t._v(" "),a("tr",[a("td",[t._v("Gee.TreeMap")]),t._v(" "),a("td",{staticStyle:{"text-align":"center"}},[t._v("[x] 已支持")]),t._v(" "),a("td",{staticStyle:{"text-align":"center"}},[t._v("[ ] 未支持")]),t._v(" "),a("td",[t._v("容器类型")])]),t._v(" "),a("tr",[a("td",[t._v("Gee.LinkedList")]),t._v(" "),a("td",{staticStyle:{"text-align":"center"}},[t._v("[ ] 未支持")]),t._v(" "),a("td",{staticStyle:{"text-align":"center"}},[t._v("[ ] 未支持")]),t._v(" "),a("td",[t._v("容器类型")])]),t._v(" "),a("tr",[a("td",[t._v("GLib.Array")]),t._v(" "),a("td",{staticStyle:{"text-align":"center"}},[t._v("[ ] 未支持")]),t._v(" "),a("td",{staticStyle:{"text-align":"center"}},[t._v("[ ] 未支持")]),t._v(" "),a("td",[t._v("容器类型")])]),t._v(" "),a("tr",[a("td",[t._v("GLib.List")]),t._v(" "),a("td",{staticStyle:{"text-align":"center"}},[t._v("[ ] 未支持")]),t._v(" "),a("td",{staticStyle:{"text-align":"center"}},[t._v("[ ] 未支持")]),t._v(" "),a("td",[t._v("容器类型")])]),t._v(" "),a("tr",[a("td",[t._v("GLib.SList")]),t._v(" "),a("td",{staticStyle:{"text-align":"center"}},[t._v("[ ] 未支持")]),t._v(" "),a("td",{staticStyle:{"text-align":"center"}},[t._v("[ ] 未支持")]),t._v(" "),a("td",[t._v("容器类型")])]),t._v(" "),a("tr",[a("td",[t._v("GLib.Queue")]),t._v(" "),a("td",{staticStyle:{"text-align":"center"}},[t._v("[ ] 未支持")]),t._v(" "),a("td",{staticStyle:{"text-align":"center"}},[t._v("[ ] 未支持")]),t._v(" "),a("td",[t._v("容器类型")])]),t._v(" "),a("tr",[a("td",[t._v("GLib.HastTable")]),t._v(" "),a("td",{staticStyle:{"text-align":"center"}},[t._v("[ ] 未支持")]),t._v(" "),a("td",{staticStyle:{"text-align":"center"}},[t._v("[ ] 未支持")]),t._v(" "),a("td",[t._v("容器类型")])])])]),t._v(" "),a("div",[a("script2",{attrs:{type:"text/javascript",async:"true",src:"https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"}}),t._v(" "),a("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),t._v(" "),a("script2",{attrs:{type:"text/javascript"}},[t._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),t._v(" "),a("h3",{attrs:{id:"gxml-的优势和劣势"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#gxml-的优势和劣势"}},[t._v("#")]),t._v(" GXML 的优势和劣势")]),t._v(" "),a("p",[a("strong",[t._v("优势")])]),t._v(" "),a("ol",[a("li",[t._v("Vala 友好")]),t._v(" "),a("li",[t._v("支持各种 Gee 容器类型.")])]),t._v(" "),a("p",[a("strong",[t._v("劣势")])]),t._v(" "),a("ol",[a("li",[t._v("缺乏 GLib 的各种内置容器类型支持")]),t._v(" "),a("li",[t._v("缺乏 GLib 包装类型 支持")])]),t._v(" "),a("h3",{attrs:{id:"json-glib-的优势和劣势"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#json-glib-的优势和劣势"}},[t._v("#")]),t._v(" JSON-GLib 的优势和劣势")]),t._v(" "),a("p",[a("strong",[t._v("优势")])]),t._v(" "),a("ol",[a("li",[t._v("支持注册类型序列化/反序列化函数来处理未支持的类型,无论是包装类型还是复合类型")]),t._v(" "),a("li",[t._v("包装类型和容器类型友好")])]),t._v(" "),a("p",[a("strong",[t._v("劣势")])]),t._v(" "),a("ol",[a("li",[t._v("缺乏对 GLib 内建容器类型的支持")])]),t._v(" "),a("h3",{attrs:{id:"袋鼠项目的选择"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#袋鼠项目的选择"}},[t._v("#")]),t._v(" 袋鼠项目的选择")]),t._v(" "),a("p",[t._v("最终在袋鼠项目中选择了 JSON-GLib 来实现对象的序列化和反序列化,因为它对包装类型和容器类型友好,且支持注册类型序列化/反序列化函数来处理未支持的类型,使得我们有能力自己完成对自定义对象的序列化和反序列化;")]),t._v(" "),a("h2",{attrs:{id:"序列化和反序列化案例"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#序列化和反序列化案例"}},[t._v("#")]),t._v(" 序列化和反序列化案例")]),t._v(" "),a("h3",{attrs:{id:"glib-容器类型的序列化"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#glib-容器类型的序列化"}},[t._v("#")]),t._v(" GLib 容器类型的序列化")]),t._v(" "),a("div",{staticClass:"language-vala extra-class"},[a("pre",{pre:!0,attrs:{class:"language-vala"}},[a("code",[t._v(" "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("public")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("class")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token class-name"}},[t._v("DbObject")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(":")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token class-name"}},[t._v("GLib"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("Object")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" Json"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("Serializable\n "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("public")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token class-name"}},[t._v("Json"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("Object")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("?")]),t._v(" meta "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("get")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(";")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("construct")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("set")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(";")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("default")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("null")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(";")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("public")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token class-name"}},[t._v("VersionSync")]),t._v(" version "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("get")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(";")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("set")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(";")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("default")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" VersionSync"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),a("span",{pre:!0,attrs:{class:"token constant"}},[t._v("UNKNOWN")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(";")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),t._v("\n\n "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("public")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("virtual")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token class-name"}},[t._v("Value")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token function"}},[t._v("get_property")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token class-name"}},[t._v("ParamSpec")]),t._v(" pspec"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token class-name"}},[t._v("Value")]),t._v(" prop_value "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" GLib"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("Value")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("pspec"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("value_type"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(";")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("this")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("as")]),t._v(" GLib"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("Object"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),a("span",{pre:!0,attrs:{class:"token function"}},[t._v("get_property")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("pspec"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("name"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("ref")]),t._v(" prop_value"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(";")]),t._v("\n stdout"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),a("span",{pre:!0,attrs:{class:"token function"}},[t._v("printf")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"%s --\x3e %s\\n"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" prop_value"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),a("span",{pre:!0,attrs:{class:"token function"}},[t._v("type_name")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" prop_value"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),a("span",{pre:!0,attrs:{class:"token function"}},[t._v("strdup_contents")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(";")]),t._v("\n\n "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("return")]),t._v(" prop_value"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(";")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),t._v("\n\n "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("public")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("virtual")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("void")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token function"}},[t._v("set_property")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token class-name"}},[t._v("ParamSpec")]),t._v(" pspec"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token class-name"}},[t._v("Value")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("value")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("this")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("as")]),t._v(" GLib"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("Object"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),a("span",{pre:!0,attrs:{class:"token function"}},[t._v("set_property")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("pspec"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("name"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("value")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(";")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),t._v("\n\n "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("public")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("unowned")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token class-name"}},[t._v("ParamSpec")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("?")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token function"}},[t._v("find_property")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("string")]),t._v(" name"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("return")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("ObjectClass"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token function"}},[t._v("get_type")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),a("span",{pre:!0,attrs:{class:"token function"}},[t._v("class_ref")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),a("span",{pre:!0,attrs:{class:"token function"}},[t._v("find_property")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("name"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(";")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),t._v("\n\n "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("public")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("virtual")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token class-name"}},[t._v("Json"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("Node")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token function"}},[t._v("serialize_property")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("string")]),t._v(" property_name"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("Value")]),t._v(" @"),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("value")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token class-name"}},[t._v("ParamSpec")]),t._v(" pspec"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("if")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("@"),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("value")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),a("span",{pre:!0,attrs:{class:"token function"}},[t._v("type")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),a("span",{pre:!0,attrs:{class:"token function"}},[t._v("is_a")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("typeof")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("Json"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("Object"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("var")]),t._v(" obj "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" @"),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("value")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("as")]),t._v(" Json"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("Object"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(";")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("if")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("obj "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("!=")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("null")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("var")]),t._v(" node "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("new")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token class-name"}},[t._v("Json"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("Node")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("NodeType"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),a("span",{pre:!0,attrs:{class:"token constant"}},[t._v("OBJECT")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(";")]),t._v("\n node"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),a("span",{pre:!0,attrs:{class:"token function"}},[t._v("set_object")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("obj"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(";")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("return")]),t._v(" node"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(";")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("else")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("if")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("@"),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("value")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),a("span",{pre:!0,attrs:{class:"token function"}},[t._v("type")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),a("span",{pre:!0,attrs:{class:"token function"}},[t._v("is_a")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("typeof")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("Gee"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("ArrayList"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("unowned")]),t._v(" Gee"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("ArrayList"),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("<")]),t._v("GLib"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("Object"),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v(">")]),t._v(" list_value "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" @"),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("value")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("as")]),t._v(" Gee"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("ArrayList"),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("<")]),t._v("GLib"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("Object"),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v(">")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(";")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("if")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("list_value "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("!=")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("null")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("||")]),t._v(" property_name "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"data"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("var")]),t._v(" array "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("new")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token class-name"}},[t._v("Json"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("Array"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("sized")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("list_value"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("size"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(";")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("foreach")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("var")]),t._v(" item "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("in")]),t._v(" list_value"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v("\n array"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),a("span",{pre:!0,attrs:{class:"token function"}},[t._v("add_element")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token function"}},[t._v("gobject_serialize")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("item"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(";")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),t._v("\n\n "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("var")]),t._v(" node "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("new")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token class-name"}},[t._v("Json"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("Node")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("NodeType"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),a("span",{pre:!0,attrs:{class:"token constant"}},[t._v("ARRAY")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(";")]),t._v("\n node"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),a("span",{pre:!0,attrs:{class:"token function"}},[t._v("set_array")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("array"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(";")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("return")]),t._v(" node"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(";")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("else")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("if")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("@"),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("value")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),a("span",{pre:!0,attrs:{class:"token function"}},[t._v("type")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),a("span",{pre:!0,attrs:{class:"token function"}},[t._v("is_a")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("typeof")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("GLib"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("Array"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("unowned")]),t._v(" GLib"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("Array"),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("<")]),t._v("GLib"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("Object"),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v(">")]),t._v(" array_value "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" @"),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("value")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("as")]),t._v(" GLib"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("Array"),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("<")]),t._v("GLib"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("Object"),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v(">")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(";")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("if")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("array_value "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("!=")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("null")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("||")]),t._v(" property_name "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"data"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("var")]),t._v(" array "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("new")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token class-name"}},[t._v("Json"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("Array"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("sized")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("array_value"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("length"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(";")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("for")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("int")]),t._v(" i "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("0")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(";")]),t._v(" i "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("<")]),t._v(" array_value"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("length"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(";")]),t._v(" i"),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("++")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v("\n array"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),a("span",{pre:!0,attrs:{class:"token function"}},[t._v("add_element")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token function"}},[t._v("gobject_serialize")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("array_value"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),a("span",{pre:!0,attrs:{class:"token function"}},[t._v("index")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("i"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(";")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),t._v("\n\n "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("var")]),t._v(" node "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("new")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token class-name"}},[t._v("Json"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("Node")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("NodeType"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),a("span",{pre:!0,attrs:{class:"token constant"}},[t._v("ARRAY")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(";")]),t._v("\n node"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),a("span",{pre:!0,attrs:{class:"token function"}},[t._v("set_array")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("array"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(";")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("return")]),t._v(" node"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(";")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),t._v(" \n "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("else")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("if")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("@"),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("value")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),a("span",{pre:!0,attrs:{class:"token function"}},[t._v("type")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),a("span",{pre:!0,attrs:{class:"token function"}},[t._v("is_a")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("typeof")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("HashTable"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("var")]),t._v(" obj "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("new")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token class-name"}},[t._v("Json"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("Object")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(";")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("var")]),t._v(" ht_string "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" @"),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("value")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("as")]),t._v(" HashTable"),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("<")]),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("string")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("string")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v(">")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(";")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("if")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("ht_string "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("!=")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("null")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v("\n ht_string"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("foreach")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("k"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" v"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=>")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v("\n obj"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),a("span",{pre:!0,attrs:{class:"token function"}},[t._v("set_string_member")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("k"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" v"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(";")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(";")]),t._v("\n\n "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("var")]),t._v(" node "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("new")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token class-name"}},[t._v("Json"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("Node")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("NodeType"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),a("span",{pre:!0,attrs:{class:"token constant"}},[t._v("OBJECT")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(";")]),t._v("\n node"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),a("span",{pre:!0,attrs:{class:"token function"}},[t._v("set_object")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("obj"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(";")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("return")]),t._v(" node"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(";")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("else")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("var")]),t._v(" ht_object "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" @"),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("value")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("as")]),t._v(" HashTable"),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("<")]),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("string")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" GLib"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("Object"),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v(">")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(";")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("if")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("ht_object "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("!=")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("null")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v("\n ht_object"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("foreach")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("k"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" v"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=>")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v("\n obj"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),a("span",{pre:!0,attrs:{class:"token function"}},[t._v("set_member")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("k"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token function"}},[t._v("gobject_serialize")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("v"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(";")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(";")]),t._v(" \n\n "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("var")]),t._v(" node "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("new")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token class-name"}},[t._v("Json"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("Node")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("NodeType"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),a("span",{pre:!0,attrs:{class:"token constant"}},[t._v("OBJECT")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(";")]),t._v("\n node"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),a("span",{pre:!0,attrs:{class:"token function"}},[t._v("set_object")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("obj"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(";")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("return")]),t._v(" node"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(";")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),t._v("\n\n "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("return")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token function"}},[t._v("default_serialize_property")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("property_name"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" @"),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("value")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" pspec"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(";")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),t._v("\n\n "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("public")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("virtual")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("bool")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token function"}},[t._v("deserialize_property")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("string")]),t._v(" property_name"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("out")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("Value")]),t._v(" @"),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("value")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token class-name"}},[t._v("ParamSpec")]),t._v(" pspec"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token class-name"}},[t._v("Json"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("Node")]),t._v(" property_node"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("return")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token function"}},[t._v("default_deserialize_property")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("property_name"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("out")]),t._v(" @"),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("value")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" pspec"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" property_node"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(";")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),t._v("\n")])])]),a("div",[a("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),t._v(" "),a("script2",{attrs:{type:"text/javascript"}},[t._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),t._v(" "),a("h2",{attrs:{id:"参考资料"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#参考资料"}},[t._v("#")]),t._v(" 参考资料")]),t._v(" "),a("p",[a("a",{attrs:{href:"https://blogs.gnome.org/despinosa/2016/11/06/gxml-objects-and-collections-to-xml-and-back/",target:"_blank",rel:"noopener noreferrer"}},[t._v("GXml: Objects and Collections to XML and back"),a("OutboundLink")],1)]),t._v(" "),a("p",[a("a",{attrs:{href:"https://blogs.gnome.org/despinosa/2016/11/03/gxml-0-14-and-serialization/",target:"_blank",rel:"noopener noreferrer"}},[t._v("GXml 0.14 and Serialization"),a("OutboundLink")],1)]),t._v(" "),a("p",[a("a",{attrs:{href:"https://blogs.gnome.org/despinosa/2016/05/04/howto-gobject-serialization-to-xml-using-gxml/",target:"_blank",rel:"noopener noreferrer"}},[t._v("HowTo: GObject Serialization to XML using GXml"),a("OutboundLink")],1)]),t._v(" "),a("p",[a("a",{attrs:{href:"https://stackoverflow.com/questions/43344017/vala-serializing-object-property-with-json-gobject-serialize",target:"_blank",rel:"noopener noreferrer"}},[t._v("Serializing object property with Json.gobject_serialize?"),a("OutboundLink")],1)]),t._v(" "),a("p",[a("a",{attrs:{href:"https://github.com/major-lab/json-api-glib/blob/master/src/json-api-object.vala",target:"_blank",rel:"noopener noreferrer"}},[t._v("json-api-object.vala"),a("OutboundLink")],1)]),t._v(" "),a("p",[a("a",{attrs:{href:"https://discourse.gnome.org/t/is-there-no-way-to-auto-serialize-any-array-with-data-to-json/1621",target:"_blank",rel:"noopener noreferrer"}},[t._v("Is there no way to auto serialize any array with data to JSON?"),a("OutboundLink")],1)])])}),[],!1,null,null,null);s.default=e.exports}}]); \ No newline at end of file diff --git a/assets/js/129.45f45885.js b/assets/js/129.45f45885.js new file mode 100644 index 000000000..7bf150457 --- /dev/null +++ b/assets/js/129.45f45885.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[129],{713:function(a,s,t){"use strict";t.r(s);var n=t(13),e=Object(n.a)({},(function(){var a=this,s=a.$createElement,t=a._self._c||s;return t("ContentSlotsDistributor",{attrs:{"slot-key":a.$parent.slotKey}},[t("h1",{attrs:{id:"苹果系统-gtk-应用打包新思路"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#苹果系统-gtk-应用打包新思路"}},[a._v("#")]),a._v(" 苹果系统 GTK 应用打包新思路")]),a._v(" "),t("h2",{attrs:{id:"背景介绍"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#背景介绍"}},[a._v("#")]),a._v(" 背景介绍")]),a._v(" "),t("p",[a._v("好多苹果系统用户通过各种方式联系本人,期望提供正式的可直接安装使用的安装包(.dmg);我非常愿意做这件事情,但又觉得困难重重,因为目前没有可供使用的物理机器、且接触使用苹果系统时间不长,对系统了解不够,恐遇到难以解决的问题。")]),a._v(" "),t("p",[a._v("多年的职业素养告诉我:面对它、解决它,事情会逐步得到解决的。")]),a._v(" "),t("p",[a._v("于是我集中精力投入这个事情,尝试了一个又一个的办法,经过8天的持续努力后,终于寻找到了最终解决办法,打包后的应用跑起来了。")]),a._v(" "),t("h2",{attrs:{id:"前置条件和环境"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#前置条件和环境"}},[a._v("#")]),a._v(" 前置条件和环境")]),a._v(" "),t("p",[a._v("本解决方案使用包管理工具 "),t("a",{attrs:{href:"https://brew.sh/",target:"_blank",rel:"noopener noreferrer"}},[a._v("Homebrew"),t("OutboundLink")],1),a._v(" 来安装和管理应用需要的 GTK 及相关的第三方依赖库;")]),a._v(" "),t("p",[a._v("您需要安装 GTK、libgda、GtkSourceView4、Vala、GCC 编译器工具链等;")]),a._v(" "),t("h2",{attrs:{id:"打包解决方案"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#打包解决方案"}},[a._v("#")]),a._v(" 打包解决方案")]),a._v(" "),t("h3",{attrs:{id:"梳理应用目录结构"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#梳理应用目录结构"}},[a._v("#")]),a._v(" 梳理应用目录结构")]),a._v(" "),t("p",[a._v("为了顺利部署 GTK 应用,应用需要遵循 Linux 应用目录结构,也要遵循 Mac OS X 应用目录结构,组合形成最终的应用目录结构如下:")]),a._v(" "),t("div",{staticClass:"language- extra-class"},[t("pre",{pre:!0,attrs:{class:"language-text"}},[t("code",[a._v("[Kangaroo.app]\n └─Contents\n ├─Info.plist\n ├─MacOS\n │ ├─launcher.sh\n │ └─\n └─Resources\n ├─bin\n ├─etc\n │ └─gtk-3.0\n ├─include\n ├─lib\n │ ├─gdk-pixbuf-2.0\n │ │ └─2.10.0\n │ │ └─loaders\n │ ├─gio\n │ │ └─modules\n │ ├─girepository-1.0\n │ ├─gtk-3.0\n │ │ └─3.0.0\n │ │ ├─immodules\n │ │ └─printbackends\n │ ├─kangaroo\n │ │ └─plugins\n │ │ └─example\n │ ├─libgda-5.0\n │ │ └─providers\n │ ├─pkgconfig\n │ └─plugin\n └─share\n ├─appdata\n ├─applications\n ├─doc\n ├─fontconfig\n │ └─conf.avail\n ├─glib-2.0\n │ └─schemas\n ├─gtksourceview-4\n │ ├─language-specs\n │ └─styles\n ├─icons\n │ ├─Adwaita\n │ └─hicolor\n ├─licenses\n │ └─kangaroo\n ├─locale\n ├─themes\n │ ├─Default\n │ └─Mac\n └─vala\n └─vapi\n")])])]),t("div",[t("script2",{attrs:{type:"text/javascript",async:"true",src:"https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"}}),a._v(" "),t("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),a._v(" "),t("script2",{attrs:{type:"text/javascript"}},[a._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),a._v(" "),t("h3",{attrs:{id:"苹果应用关键组件"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#苹果应用关键组件"}},[a._v("#")]),a._v(" 苹果应用关键组件")]),a._v(" "),t("p",[a._v("Mac OS X 应用程序有几个关键组件,他们是:")]),a._v(" "),t("table",[t("thead",[t("tr",[t("th",{staticStyle:{"text-align":"center"}},[a._v("关键组件")]),a._v(" "),t("th",[a._v("说明")])])]),a._v(" "),t("tbody",[t("tr",[t("td",{staticStyle:{"text-align":"center"}},[a._v("GTK")]),a._v(" "),t("td",[a._v("GTK 库,例如 GTK / GDK / Pango / ...")])]),a._v(" "),t("tr",[t("td",{staticStyle:{"text-align":"center"}},[a._v("launcher.sh")]),a._v(" "),t("td",[a._v("应用启动脚本,用于设置环境变量,如多语言支持、 Gdk 图形插件 / GTK 输入和打印模块 / libgda 提供插件 / ...")])]),a._v(" "),t("tr",[t("td",{staticStyle:{"text-align":"center"}},[a._v("应用程序")]),a._v(" "),t("td",[a._v("您的应用程序")])]),a._v(" "),t("tr",[t("td",{staticStyle:{"text-align":"center"}},[a._v("Info.plist")]),a._v(" "),t("td",[a._v("苹果应用字典文件,包含程序启动需要的配置信息,例如 GtkOSXLaunchScriptFile / CFBundleExecutable / CFBundleIconFiles")])]),a._v(" "),t("tr",[t("td",{staticStyle:{"text-align":"center"}},[a._v("图标文件")]),a._v(" "),t("td",[a._v("苹果应用图标文件(*.icns)")])])])]),a._v(" "),t("h3",{attrs:{id:"准备应用资源"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#准备应用资源"}},[a._v("#")]),a._v(" 准备应用资源")]),a._v(" "),t("p",[a._v("您应该在编译打包前提前准备好应用所需的资源,他们是:")]),a._v(" "),t("ol",[t("li",[a._v("应用启动脚本:launcher.sh")]),a._v(" "),t("li",[a._v("应用图标文件:image or .icns")]),a._v(" "),t("li",[a._v("应用字典文件:Info.plist")])]),a._v(" "),t("h3",{attrs:{id:"部署应用为-linux-应用格式"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#部署应用为-linux-应用格式"}},[a._v("#")]),a._v(" 部署应用为 Linux 应用格式")]),a._v(" "),t("p",[a._v("我们的打包思路的第一步是先在 Mac OS X 上部署为完整的 Linux 应用;")]),a._v(" "),t("p",[a._v("首先请编译并安装应用到指定目录(TARGETDIR):")]),a._v(" "),t("div",{staticClass:"language-bash extra-class"},[t("pre",{pre:!0,attrs:{class:"language-bash"}},[t("code",[a._v("meson --prefix"),t("span",{pre:!0,attrs:{class:"token operator"}},[a._v("=")]),t("span",{pre:!0,attrs:{class:"token variable"}},[a._v("$TARGETDIR")]),a._v(" --buildtype"),t("span",{pre:!0,attrs:{class:"token operator"}},[a._v("=")]),a._v("release build\nninja -C "),t("span",{pre:!0,attrs:{class:"token string"}},[a._v('"'),t("span",{pre:!0,attrs:{class:"token variable"}},[a._v("${PROJECTDIR}")]),a._v('/build"')]),a._v(" "),t("span",{pre:!0,attrs:{class:"token function"}},[a._v("install")]),a._v("\n")])])]),t("p",[a._v("然后分析应用及其依赖库,复制所有的依赖库文件到前面指定的安装目录(TARGETDIR),构建出一个独立并完整的 Linux 应用;")]),a._v(" "),t("div",{staticClass:"language-bash extra-class"},[t("pre",{pre:!0,attrs:{class:"language-bash"}},[t("code",[t("span",{pre:!0,attrs:{class:"token keyword"}},[a._v("function")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token function-name function"}},[a._v("lib_dependency_copy")]),a._v("\n"),t("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("{")]),a._v("\n "),t("span",{pre:!0,attrs:{class:"token comment"}},[a._v("# 这个函数使用 otool 分析库依赖关系,然后复制所有依赖库到目标目录")]),a._v("\n\n "),t("span",{pre:!0,attrs:{class:"token builtin class-name"}},[a._v("local")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token assign-left variable"}},[a._v("target")]),t("span",{pre:!0,attrs:{class:"token operator"}},[a._v("=")]),t("span",{pre:!0,attrs:{class:"token variable"}},[a._v("$1")]),a._v("\n "),t("span",{pre:!0,attrs:{class:"token builtin class-name"}},[a._v("local")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token assign-left variable"}},[a._v("folder")]),t("span",{pre:!0,attrs:{class:"token operator"}},[a._v("=")]),t("span",{pre:!0,attrs:{class:"token variable"}},[a._v("$2")]),a._v("\n\n "),t("span",{pre:!0,attrs:{class:"token assign-left variable"}},[a._v("libraries")]),t("span",{pre:!0,attrs:{class:"token operator"}},[a._v("=")]),t("span",{pre:!0,attrs:{class:"token string"}},[a._v('"'),t("span",{pre:!0,attrs:{class:"token variable"}},[t("span",{pre:!0,attrs:{class:"token variable"}},[a._v("$(")]),a._v("otool -L $target "),t("span",{pre:!0,attrs:{class:"token operator"}},[a._v("|")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token function"}},[a._v("grep")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token string"}},[a._v('"/*.*dylib"')]),a._v(" -o "),t("span",{pre:!0,attrs:{class:"token operator"}},[a._v("|")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token function"}},[a._v("xargs")]),t("span",{pre:!0,attrs:{class:"token variable"}},[a._v(")")])]),a._v('"')]),a._v("\n "),t("span",{pre:!0,attrs:{class:"token keyword"}},[a._v("for")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token for-or-select variable"}},[a._v("lib")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token keyword"}},[a._v("in")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token variable"}},[a._v("$libraries")]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v(";")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token keyword"}},[a._v("do")]),a._v("\n "),t("span",{pre:!0,attrs:{class:"token keyword"}},[a._v("if")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("[")]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("[")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token string"}},[a._v("'/usr/lib/'")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token operator"}},[a._v("!=")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token variable"}},[a._v("${lib"),t("span",{pre:!0,attrs:{class:"token operator"}},[a._v(":")]),a._v("0"),t("span",{pre:!0,attrs:{class:"token operator"}},[a._v(":")]),a._v("9}")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token operator"}},[a._v("&&")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token string"}},[a._v("'/System/Library/'")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token operator"}},[a._v("!=")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token variable"}},[a._v("${lib"),t("span",{pre:!0,attrs:{class:"token operator"}},[a._v(":")]),a._v("0"),t("span",{pre:!0,attrs:{class:"token operator"}},[a._v(":")]),a._v("16}")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("]")]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("]")]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v(";")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token keyword"}},[a._v("then")]),a._v("\n "),t("span",{pre:!0,attrs:{class:"token function"}},[a._v("cp")]),a._v(" -n "),t("span",{pre:!0,attrs:{class:"token variable"}},[a._v("$lib")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token variable"}},[a._v("$folder")]),a._v("\n "),t("span",{pre:!0,attrs:{class:"token keyword"}},[a._v("fi")]),a._v(" \n "),t("span",{pre:!0,attrs:{class:"token keyword"}},[a._v("done")]),a._v("\n"),t("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("}")]),a._v("\n\n"),t("span",{pre:!0,attrs:{class:"token keyword"}},[a._v("function")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token function-name function"}},[a._v("lib_dependency_analyze")]),a._v("\n"),t("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("{")]),a._v("\n "),t("span",{pre:!0,attrs:{class:"token comment"}},[a._v("# 这个函数使用 otool 分析库依赖关系,")]),a._v("\n "),t("span",{pre:!0,attrs:{class:"token comment"}},[a._v("# 逐个分析指定目录内的所有库,然后复制所有依赖库到目标目录")]),a._v("\n\n "),t("span",{pre:!0,attrs:{class:"token builtin class-name"}},[a._v("local")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token assign-left variable"}},[a._v("library_dir")]),t("span",{pre:!0,attrs:{class:"token operator"}},[a._v("=")]),t("span",{pre:!0,attrs:{class:"token variable"}},[a._v("$1")]),a._v("\n "),t("span",{pre:!0,attrs:{class:"token builtin class-name"}},[a._v("local")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token assign-left variable"}},[a._v("targets_dir")]),t("span",{pre:!0,attrs:{class:"token operator"}},[a._v("=")]),t("span",{pre:!0,attrs:{class:"token variable"}},[a._v("$2")]),a._v("\n\n "),t("span",{pre:!0,attrs:{class:"token assign-left variable"}},[a._v("libraries")]),t("span",{pre:!0,attrs:{class:"token operator"}},[a._v("=")]),t("span",{pre:!0,attrs:{class:"token string"}},[a._v('"'),t("span",{pre:!0,attrs:{class:"token variable"}},[t("span",{pre:!0,attrs:{class:"token variable"}},[a._v("$(")]),t("span",{pre:!0,attrs:{class:"token function"}},[a._v("find")]),a._v(" $library_dir -name "),t("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("\\")]),a._v("*.dylib -o -name "),t("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("\\")]),a._v("*.so -type f"),t("span",{pre:!0,attrs:{class:"token variable"}},[a._v(")")])]),a._v('"')]),a._v("\n "),t("span",{pre:!0,attrs:{class:"token keyword"}},[a._v("for")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token for-or-select variable"}},[a._v("lib")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token keyword"}},[a._v("in")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token variable"}},[a._v("$libraries")]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v(";")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token keyword"}},[a._v("do")]),a._v("\n lib_dependency_copy "),t("span",{pre:!0,attrs:{class:"token variable"}},[a._v("$lib")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token variable"}},[a._v("$targets_dir")]),a._v("\n "),t("span",{pre:!0,attrs:{class:"token keyword"}},[a._v("done")]),a._v("\n"),t("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("}")]),a._v("\n\n"),t("span",{pre:!0,attrs:{class:"token comment"}},[a._v("# 复制应用依赖库到目标目录")]),a._v("\n"),t("span",{pre:!0,attrs:{class:"token builtin class-name"}},[a._v("echo")]),a._v(" -n "),t("span",{pre:!0,attrs:{class:"token string"}},[a._v('"Copy app dependency library......"')]),a._v("\n"),t("span",{pre:!0,attrs:{class:"token function"}},[a._v("cp")]),a._v(" -f "),t("span",{pre:!0,attrs:{class:"token string"}},[a._v('"'),t("span",{pre:!0,attrs:{class:"token variable"}},[a._v("${PROJECTDIR}")]),a._v('/build/src/kangaroo"')]),a._v(" "),t("span",{pre:!0,attrs:{class:"token string"}},[a._v('"'),t("span",{pre:!0,attrs:{class:"token variable"}},[a._v("${TARGETDIR}")]),a._v('/bin"')]),a._v("\n"),t("span",{pre:!0,attrs:{class:"token function"}},[a._v("cp")]),a._v(" -f "),t("span",{pre:!0,attrs:{class:"token string"}},[a._v('"'),t("span",{pre:!0,attrs:{class:"token variable"}},[a._v("${TARGETDIR}")]),a._v('/lib/libkangaroo.dylib"')]),a._v(" "),t("span",{pre:!0,attrs:{class:"token string"}},[a._v('"'),t("span",{pre:!0,attrs:{class:"token variable"}},[a._v("${TARGETDIR}")]),a._v('/bin"')]),a._v("\n"),t("span",{pre:!0,attrs:{class:"token function"}},[a._v("cp")]),a._v(" -f "),t("span",{pre:!0,attrs:{class:"token string"}},[a._v('"'),t("span",{pre:!0,attrs:{class:"token variable"}},[a._v("${PROJECTDIR}")]),a._v('/tools/mac_launcher.sh"')]),a._v(" "),t("span",{pre:!0,attrs:{class:"token string"}},[a._v('"'),t("span",{pre:!0,attrs:{class:"token variable"}},[a._v("${TARGETDIR}")]),a._v('/bin/launcher.sh"')]),a._v("\n\nlib_dependency_copy "),t("span",{pre:!0,attrs:{class:"token variable"}},[a._v("${PROJECTDIR}")]),a._v("/build/src/libkangaroo.dylib "),t("span",{pre:!0,attrs:{class:"token string"}},[a._v('"'),t("span",{pre:!0,attrs:{class:"token variable"}},[a._v("${TARGETDIR}")]),a._v('/bin"')]),a._v("\nlib_dependency_copy "),t("span",{pre:!0,attrs:{class:"token variable"}},[a._v("${TARGETDIR}")]),a._v("/bin/libglib-2.0.0.dylib "),t("span",{pre:!0,attrs:{class:"token string"}},[a._v('"'),t("span",{pre:!0,attrs:{class:"token variable"}},[a._v("${TARGETDIR}")]),a._v('/bin"')]),a._v("\nlib_dependency_copy "),t("span",{pre:!0,attrs:{class:"token variable"}},[a._v("${TARGETDIR}")]),a._v("/bin/libgtk-3.0.dylib "),t("span",{pre:!0,attrs:{class:"token string"}},[a._v('"'),t("span",{pre:!0,attrs:{class:"token variable"}},[a._v("${TARGETDIR}")]),a._v('/bin"')]),a._v("\nlib_dependency_copy "),t("span",{pre:!0,attrs:{class:"token variable"}},[a._v("${TARGETDIR}")]),a._v("/bin/libjson-glib-1.0.0.dylib "),t("span",{pre:!0,attrs:{class:"token string"}},[a._v('"'),t("span",{pre:!0,attrs:{class:"token variable"}},[a._v("${TARGETDIR}")]),a._v('/bin"')]),a._v("\nlib_dependency_copy "),t("span",{pre:!0,attrs:{class:"token variable"}},[a._v("${TARGETDIR}")]),a._v("/bin/libsoup-2.4.1.dylib "),t("span",{pre:!0,attrs:{class:"token string"}},[a._v('"'),t("span",{pre:!0,attrs:{class:"token variable"}},[a._v("${TARGETDIR}")]),a._v('/bin"')]),a._v("\nlib_dependency_copy "),t("span",{pre:!0,attrs:{class:"token variable"}},[a._v("${TARGETDIR}")]),a._v("/bin/libgtksourceview-4.0.dylib "),t("span",{pre:!0,attrs:{class:"token string"}},[a._v('"'),t("span",{pre:!0,attrs:{class:"token variable"}},[a._v("${TARGETDIR}")]),a._v('/bin"')]),a._v("\n\n"),t("span",{pre:!0,attrs:{class:"token function"}},[a._v("cp")]),a._v(" -f /usr/local/lib/libgtkmacintegration-gtk3.2.dylib "),t("span",{pre:!0,attrs:{class:"token string"}},[a._v('"'),t("span",{pre:!0,attrs:{class:"token variable"}},[a._v("${TARGETDIR}")]),a._v('/bin"')]),a._v("\n"),t("span",{pre:!0,attrs:{class:"token function"}},[a._v("cp")]),a._v(" -f /usr/local/lib/libgirepository-1.0.1.dylib "),t("span",{pre:!0,attrs:{class:"token string"}},[a._v('"'),t("span",{pre:!0,attrs:{class:"token variable"}},[a._v("${TARGETDIR}")]),a._v('/bin"')]),a._v("\n"),t("span",{pre:!0,attrs:{class:"token function"}},[a._v("cp")]),a._v(" -f /usr/local/lib/librsvg-2.2.dylib "),t("span",{pre:!0,attrs:{class:"token string"}},[a._v('"'),t("span",{pre:!0,attrs:{class:"token variable"}},[a._v("${TARGETDIR}")]),a._v('/bin"')]),a._v("\n"),t("span",{pre:!0,attrs:{class:"token function"}},[a._v("cp")]),a._v(" -f /usr/local/lib/libgthread-2.0.0.dylib "),t("span",{pre:!0,attrs:{class:"token string"}},[a._v('"'),t("span",{pre:!0,attrs:{class:"token variable"}},[a._v("${TARGETDIR}")]),a._v('/bin"')]),a._v("\n"),t("span",{pre:!0,attrs:{class:"token function"}},[a._v("cp")]),a._v(" -f /usr/local/lib/libcroco-0.6.3.dylib "),t("span",{pre:!0,attrs:{class:"token string"}},[a._v('"'),t("span",{pre:!0,attrs:{class:"token variable"}},[a._v("${TARGETDIR}")]),a._v('/bin"')]),a._v("\n"),t("span",{pre:!0,attrs:{class:"token function"}},[a._v("cp")]),a._v(" -f /usr/local/lib/p11-kit-proxy.dylib "),t("span",{pre:!0,attrs:{class:"token string"}},[a._v('"'),t("span",{pre:!0,attrs:{class:"token variable"}},[a._v("${TARGETDIR}")]),a._v('/bin"')]),a._v("\n"),t("span",{pre:!0,attrs:{class:"token function"}},[a._v("cp")]),a._v(" -f /usr/local/lib/libgmpxx.4.dylib "),t("span",{pre:!0,attrs:{class:"token string"}},[a._v('"'),t("span",{pre:!0,attrs:{class:"token variable"}},[a._v("${TARGETDIR}")]),a._v('/bin"')]),a._v("\n\nlib_dependency_analyze "),t("span",{pre:!0,attrs:{class:"token variable"}},[a._v("${TARGETDIR}")]),a._v("/bin "),t("span",{pre:!0,attrs:{class:"token variable"}},[a._v("${TARGETDIR}")]),a._v("/bin\n"),t("span",{pre:!0,attrs:{class:"token builtin class-name"}},[a._v("echo")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token string"}},[a._v('"[done]"')]),a._v("\n")])])]),t("h3",{attrs:{id:"封装-linux-应用为苹果应用"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#封装-linux-应用为苹果应用"}},[a._v("#")]),a._v(" 封装 Linux 应用为苹果应用")]),a._v(" "),t("p",[a._v("转换完整且独立的 Linux 应用为 Mac OS X 应用结构,只需要遵循 Mac OS X 应用目录结构调整即可;")]),a._v(" "),t("p",[t("strong",[a._v("如何校验转换后的应用及依赖库是否是自包含和自我依赖的?")]),t("br"),a._v("\n目前还不能校验,需要完成下一阶段的工作解决库定位问题才能校验,否则会无法启动,依赖库路径也不相符;")]),a._v(" "),t("div",[t("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),a._v(" "),t("script2",{attrs:{type:"text/javascript"}},[a._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),a._v(" "),t("h3",{attrs:{id:"更新应用及依赖库链接路径"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#更新应用及依赖库链接路径"}},[a._v("#")]),a._v(" 更新应用及依赖库链接路径")]),a._v(" "),t("p",[a._v("经过几天的折腾,发现苹果系统上打包最重要的问题是在运行时如何解决库查找定位的问题,即以什么顺序查找依赖库、在哪里找到依赖库;经过查阅资料,发现有两种途径可以解决上述问题:")]),a._v(" "),t("ol",[t("li",[a._v("使用库分析处理工具(otool and install_name_tool)来添加或替换库链接路径")])]),a._v(" "),t("div",{staticClass:"language-bash extra-class"},[t("pre",{pre:!0,attrs:{class:"language-bash"}},[t("code",[t("span",{pre:!0,attrs:{class:"token comment"}},[a._v("# Gdk-pixbuf plugins")]),a._v("\n"),t("span",{pre:!0,attrs:{class:"token assign-left variable"}},[a._v("pixbuf_plugins")]),t("span",{pre:!0,attrs:{class:"token operator"}},[a._v("=")]),t("span",{pre:!0,attrs:{class:"token string"}},[a._v('"'),t("span",{pre:!0,attrs:{class:"token variable"}},[t("span",{pre:!0,attrs:{class:"token variable"}},[a._v("$(")]),t("span",{pre:!0,attrs:{class:"token function"}},[a._v("find")]),a._v(" $APP_LIB_DIR/gdk-pixbuf-2.0/2.10.0/loaders/ -name "),t("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("\\")]),a._v("*.dylib -o -name "),t("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("\\")]),a._v("*.so -type f"),t("span",{pre:!0,attrs:{class:"token variable"}},[a._v(")")])]),a._v('"')]),a._v("\n"),t("span",{pre:!0,attrs:{class:"token keyword"}},[a._v("for")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token for-or-select variable"}},[a._v("pixbuf_plugin")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token keyword"}},[a._v("in")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token variable"}},[a._v("$pixbuf_plugins")]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v(";")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token keyword"}},[a._v("do")]),a._v("\n lib_change_paths "),t("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("\\")]),a._v("\n @executable_path/"),t("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("..")]),a._v("/Resources/lib "),t("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("\\")]),a._v("\n "),t("span",{pre:!0,attrs:{class:"token variable"}},[a._v("$APP_LIB_DIR")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("\\")]),a._v("\n "),t("span",{pre:!0,attrs:{class:"token variable"}},[a._v("$pixbuf_plugin")]),a._v("\n"),t("span",{pre:!0,attrs:{class:"token keyword"}},[a._v("done")]),a._v("\n\nlib_change_paths "),t("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("\\")]),a._v("\n @executable_path/"),t("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("..")]),a._v("/Resources/lib "),t("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("\\")]),a._v("\n "),t("span",{pre:!0,attrs:{class:"token variable"}},[a._v("$APP_LIB_DIR")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("\\")]),a._v("\n "),t("span",{pre:!0,attrs:{class:"token variable"}},[a._v("$APP_EXE_DIR")]),a._v("/gdbus\n\nlib_change_siblings "),t("span",{pre:!0,attrs:{class:"token variable"}},[a._v("$APP_LIB_DIR")]),a._v(" @loader_path\n")])])]),t("ol",{attrs:{start:"2"}},[t("li",[a._v("使用环境变量来告诉加载库如何找到它需要的库")])]),a._v(" "),t("div",{staticClass:"language-bash extra-class"},[t("pre",{pre:!0,attrs:{class:"language-bash"}},[t("code",[t("span",{pre:!0,attrs:{class:"token builtin class-name"}},[a._v("export")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token assign-left variable"}},[a._v("DYLD_LIBRARY_PATH")]),t("span",{pre:!0,attrs:{class:"token operator"}},[a._v("=")]),t("span",{pre:!0,attrs:{class:"token string"}},[a._v('"'),t("span",{pre:!0,attrs:{class:"token variable"}},[a._v("$bundle_lib")]),a._v('"')]),a._v("\n"),t("span",{pre:!0,attrs:{class:"token builtin class-name"}},[a._v("export")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token assign-left variable"}},[t("span",{pre:!0,attrs:{class:"token environment constant"}},[a._v("XDG_CONFIG_DIRS")])]),t("span",{pre:!0,attrs:{class:"token operator"}},[a._v("=")]),t("span",{pre:!0,attrs:{class:"token string"}},[a._v('"'),t("span",{pre:!0,attrs:{class:"token variable"}},[a._v("$bundle_etc")]),a._v('"')]),a._v("/xdg\n"),t("span",{pre:!0,attrs:{class:"token builtin class-name"}},[a._v("export")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token assign-left variable"}},[t("span",{pre:!0,attrs:{class:"token environment constant"}},[a._v("XDG_DATA_DIRS")])]),t("span",{pre:!0,attrs:{class:"token operator"}},[a._v("=")]),t("span",{pre:!0,attrs:{class:"token string"}},[a._v('"'),t("span",{pre:!0,attrs:{class:"token variable"}},[a._v("$bundle_data")]),a._v('"')]),a._v("\n"),t("span",{pre:!0,attrs:{class:"token builtin class-name"}},[a._v("export")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token assign-left variable"}},[a._v("GTK_DATA_PREFIX")]),t("span",{pre:!0,attrs:{class:"token operator"}},[a._v("=")]),t("span",{pre:!0,attrs:{class:"token string"}},[a._v('"'),t("span",{pre:!0,attrs:{class:"token variable"}},[a._v("$bundle_res")]),a._v('"')]),a._v("\n"),t("span",{pre:!0,attrs:{class:"token builtin class-name"}},[a._v("export")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token assign-left variable"}},[a._v("GTK_EXE_PREFIX")]),t("span",{pre:!0,attrs:{class:"token operator"}},[a._v("=")]),t("span",{pre:!0,attrs:{class:"token string"}},[a._v('"'),t("span",{pre:!0,attrs:{class:"token variable"}},[a._v("$bundle_res")]),a._v('"')]),a._v("\n"),t("span",{pre:!0,attrs:{class:"token builtin class-name"}},[a._v("export")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token assign-left variable"}},[a._v("GTK_PATH")]),t("span",{pre:!0,attrs:{class:"token operator"}},[a._v("=")]),t("span",{pre:!0,attrs:{class:"token string"}},[a._v('"'),t("span",{pre:!0,attrs:{class:"token variable"}},[a._v("$bundle_res")]),a._v('"')]),a._v("\n\n"),t("span",{pre:!0,attrs:{class:"token comment"}},[a._v("# PANGO_* is no longer needed for pango >= 1.38")]),a._v("\n"),t("span",{pre:!0,attrs:{class:"token builtin class-name"}},[a._v("export")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token assign-left variable"}},[a._v("PANGO_RC_FILE")]),t("span",{pre:!0,attrs:{class:"token operator"}},[a._v("=")]),t("span",{pre:!0,attrs:{class:"token string"}},[a._v('"'),t("span",{pre:!0,attrs:{class:"token variable"}},[a._v("$bundle_etc")]),a._v('/pango/pangorc"')]),a._v("\n"),t("span",{pre:!0,attrs:{class:"token builtin class-name"}},[a._v("export")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token assign-left variable"}},[a._v("PANGO_SYSCONFDIR")]),t("span",{pre:!0,attrs:{class:"token operator"}},[a._v("=")]),t("span",{pre:!0,attrs:{class:"token string"}},[a._v('"'),t("span",{pre:!0,attrs:{class:"token variable"}},[a._v("$bundle_etc")]),a._v('"')]),a._v("\n"),t("span",{pre:!0,attrs:{class:"token builtin class-name"}},[a._v("export")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token assign-left variable"}},[a._v("PANGO_LIBDIR")]),t("span",{pre:!0,attrs:{class:"token operator"}},[a._v("=")]),t("span",{pre:!0,attrs:{class:"token string"}},[a._v('"'),t("span",{pre:!0,attrs:{class:"token variable"}},[a._v("$bundle_lib")]),a._v('"')]),a._v("\n\n"),t("span",{pre:!0,attrs:{class:"token comment"}},[a._v("# Pixbuf plugins")]),a._v("\n"),t("span",{pre:!0,attrs:{class:"token builtin class-name"}},[a._v("export")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token assign-left variable"}},[a._v("GDK_PIXBUF_MODULEDIR")]),t("span",{pre:!0,attrs:{class:"token operator"}},[a._v("=")]),t("span",{pre:!0,attrs:{class:"token string"}},[a._v('"'),t("span",{pre:!0,attrs:{class:"token variable"}},[a._v("$bundle_lib")]),a._v('/gdk-pixbuf-2.0/2.10.0/loaders"')]),a._v("\n"),t("span",{pre:!0,attrs:{class:"token builtin class-name"}},[a._v("export")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token assign-left variable"}},[a._v("GDK_PIXBUF_MODULE_FILE")]),t("span",{pre:!0,attrs:{class:"token operator"}},[a._v("=")]),t("span",{pre:!0,attrs:{class:"token string"}},[a._v('"'),t("span",{pre:!0,attrs:{class:"token variable"}},[a._v("$bundle_lib")]),a._v('/gdk-pixbuf-2.0/2.10.0/loaders.cache"')]),a._v("\n\n"),t("span",{pre:!0,attrs:{class:"token comment"}},[a._v("# MySQL / MaridDB plugins")]),a._v("\n"),t("span",{pre:!0,attrs:{class:"token builtin class-name"}},[a._v("export")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token assign-left variable"}},[a._v("LIBMYSQL_PLUGIN_DIR")]),t("span",{pre:!0,attrs:{class:"token operator"}},[a._v("=")]),t("span",{pre:!0,attrs:{class:"token string"}},[a._v('"'),t("span",{pre:!0,attrs:{class:"token variable"}},[a._v("$bundle_lib")]),a._v('/plugin"')]),a._v("\n"),t("span",{pre:!0,attrs:{class:"token builtin class-name"}},[a._v("export")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token assign-left variable"}},[a._v("LIBMYSQL_ENABLE_CLEARTEXT_PLUGIN")]),t("span",{pre:!0,attrs:{class:"token operator"}},[a._v("=")]),a._v("Y\n")])])]),t("h3",{attrs:{id:"验证应用是否打包成功-app"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#验证应用是否打包成功-app"}},[a._v("#")]),a._v(" 验证应用是否打包成功(.app)")]),a._v(" "),t("p",[a._v("目前有两种方法可以帮助我们验证应用的完整性:"),t("br")]),a._v(" "),t("ol",[t("li",[t("p",[a._v("启动并调试应用进行验证"),t("br"),a._v(" "),t("code",[a._v("GTK_DEBUG_LAUNCHER=yes MyApp.app/Contents/MacOS/MyApp")]),t("br"),a._v("\n这个命令可以打印出详细的脚本步骤和输出,输出日志到控制台供分析查看;"),t("br"),t("br"),a._v("\n发现问题需要调试,可以执行下面的命令进入调试状态调试应用"),t("br"),a._v(" "),t("code",[a._v("GTK_DEBUG_GDB=yes MyApp.app/Contents/MacOS/MyApp")])])]),a._v(" "),t("li",[t("p",[a._v("使用动态库分析工具列出库的详细依赖库进行验证"),t("br"),a._v(" "),t("code",[a._v("otool -L MyApp.app/Contents/MacOS/MyApp")]),t("br"),a._v("\n这个命令可以列出应用的详细依赖库及其链接库位置")])])]),a._v(" "),t("h3",{attrs:{id:"创建dmg安装包-dmg"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#创建dmg安装包-dmg"}},[a._v("#")]),a._v(" 创建DMG安装包(.dmg)")]),a._v(" "),t("p",[a._v("创建DMG安装包有非常多的工具,我选择了 "),t("a",{attrs:{href:"https://github.com/LinusU/node-appdmg",target:"_blank",rel:"noopener noreferrer"}},[a._v("node-appdmg"),t("OutboundLink")],1),a._v(" 来创建DMG安装包,因为它提供了 JSON 配置文件且有详细的处理步骤和日志输出,用户体验比较好;")]),a._v(" "),t("div",{staticClass:"language-json extra-class"},[t("pre",{pre:!0,attrs:{class:"language-json"}},[t("code",[t("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("{")]),a._v("\n "),t("span",{pre:!0,attrs:{class:"token property"}},[a._v('"title"')]),t("span",{pre:!0,attrs:{class:"token operator"}},[a._v(":")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token string"}},[a._v('"Kangaroo installer"')]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v(",")]),a._v("\n "),t("span",{pre:!0,attrs:{class:"token property"}},[a._v('"icon"')]),t("span",{pre:!0,attrs:{class:"token operator"}},[a._v(":")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token string"}},[a._v('"kangaroo.icns"')]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v(",")]),a._v("\n "),t("span",{pre:!0,attrs:{class:"token property"}},[a._v('"background"')]),t("span",{pre:!0,attrs:{class:"token operator"}},[a._v(":")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token string"}},[a._v('"kangaroo_dmg_background.png"')]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v(",")]),a._v("\n "),t("span",{pre:!0,attrs:{class:"token property"}},[a._v('"contents"')]),t("span",{pre:!0,attrs:{class:"token operator"}},[a._v(":")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("[")]),a._v("\n "),t("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("{")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token property"}},[a._v('"x"')]),t("span",{pre:!0,attrs:{class:"token operator"}},[a._v(":")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token number"}},[a._v("448")]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v(",")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token property"}},[a._v('"y"')]),t("span",{pre:!0,attrs:{class:"token operator"}},[a._v(":")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token number"}},[a._v("170")]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v(",")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token property"}},[a._v('"type"')]),t("span",{pre:!0,attrs:{class:"token operator"}},[a._v(":")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token string"}},[a._v('"link"')]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v(",")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token property"}},[a._v('"path"')]),t("span",{pre:!0,attrs:{class:"token operator"}},[a._v(":")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token string"}},[a._v('"/Applications"')]),a._v(" "),t("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("}")]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v(",")]),a._v("\n "),t("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("{")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token property"}},[a._v('"x"')]),t("span",{pre:!0,attrs:{class:"token operator"}},[a._v(":")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token number"}},[a._v("192")]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v(",")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token property"}},[a._v('"y"')]),t("span",{pre:!0,attrs:{class:"token operator"}},[a._v(":")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token number"}},[a._v("170")]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v(",")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token property"}},[a._v('"type"')]),t("span",{pre:!0,attrs:{class:"token operator"}},[a._v(":")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token string"}},[a._v('"file"')]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v(",")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token property"}},[a._v('"path"')]),t("span",{pre:!0,attrs:{class:"token operator"}},[a._v(":")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token string"}},[a._v('"kangaroo.app"')]),a._v(" "),t("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("}")]),a._v("\n "),t("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("]")]),a._v("\n"),t("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("}")]),a._v("\n")])])]),t("div",{staticClass:"language-bash extra-class"},[t("pre",{pre:!0,attrs:{class:"language-bash"}},[t("code",[t("span",{pre:!0,attrs:{class:"token comment"}},[a._v("# make installer package")]),a._v("\n"),t("span",{pre:!0,attrs:{class:"token builtin class-name"}},[a._v("echo")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token string"}},[a._v('"make macos installer(.dmg)......"')]),a._v("\n"),t("span",{pre:!0,attrs:{class:"token function"}},[a._v("cp")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token string"}},[a._v('"'),t("span",{pre:!0,attrs:{class:"token variable"}},[a._v("${PROJECTDIR}")]),a._v('/tools/installers/dmg.json"')]),a._v(" kangaroo_dmg.json\n"),t("span",{pre:!0,attrs:{class:"token function"}},[a._v("cp")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token string"}},[a._v('"'),t("span",{pre:!0,attrs:{class:"token variable"}},[a._v("${PROJECTDIR}")]),a._v('/data/assets/background.png"')]),a._v(" "),t("span",{pre:!0,attrs:{class:"token string"}},[a._v('"'),t("span",{pre:!0,attrs:{class:"token variable"}},[a._v("${PROJECTDIR}")]),a._v('/build/kangaroo_dmg_background.png"')]),a._v("\nappdmg kangaroo_dmg.json "),t("span",{pre:!0,attrs:{class:"token string"}},[a._v('"kangaroo-'),t("span",{pre:!0,attrs:{class:"token variable"}},[a._v("${VERSION}")]),a._v('-macos.dmg"')]),a._v("\n"),t("span",{pre:!0,attrs:{class:"token keyword"}},[a._v("if")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("[")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token variable"}},[a._v("$?")]),a._v(" -eq "),t("span",{pre:!0,attrs:{class:"token number"}},[a._v("0")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("]")]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v(";")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token keyword"}},[a._v("then")]),a._v("\n "),t("span",{pre:!0,attrs:{class:"token builtin class-name"}},[a._v("echo")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token string"}},[a._v('"[done]"')]),a._v("\n "),t("span",{pre:!0,attrs:{class:"token keyword"}},[a._v("else")]),a._v("\n "),t("span",{pre:!0,attrs:{class:"token builtin class-name"}},[a._v("echo")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token string"}},[a._v('"[failed]"')]),a._v("\n"),t("span",{pre:!0,attrs:{class:"token keyword"}},[a._v("fi")]),a._v("\n")])])]),t("div",[t("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),a._v(" "),t("script2",{attrs:{type:"text/javascript"}},[a._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),a._v(" "),t("h2",{attrs:{id:"打包脚本源代码"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#打包脚本源代码"}},[a._v("#")]),a._v(" 打包脚本源代码")]),a._v(" "),t("p",[a._v("本着回馈社区、与 "),t("a",{attrs:{href:"https://www.gnome.org/",target:"_blank",rel:"noopener noreferrer"}},[a._v("GNOME"),t("OutboundLink")],1),a._v(" 桌面共成长的良好愿景,在此把袋鼠数据库工具的完整打包脚本分享出来,供大家自由使用和分发;")]),a._v(" "),t("p",[t("a",{attrs:{href:"/sources/Info.plist"}},[a._v("Info.plist")]),t("br"),a._v(" "),t("a",{attrs:{href:"/sources/mac_launcher.sh"}},[a._v("mac_launcher.sh")]),t("br"),a._v(" "),t("a",{attrs:{href:"/sources/mac_app_path.sh"}},[a._v("mac_app_path.sh")]),t("br"),a._v(" "),t("a",{attrs:{href:"/sources/mac_app_pack.sh"}},[a._v("mac_app_pack.sh")]),t("br"),a._v(" "),t("a",{attrs:{href:"/sources/deploy_macos.sh"}},[a._v("deploy_macos.sh")])]),a._v(" "),t("h2",{attrs:{id:"参考资源"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#参考资源"}},[a._v("#")]),a._v(" 参考资源")]),a._v(" "),t("p",[a._v("在寻找解决方案的过程中,从以下项目和资源中获得了灵感,有的甚至直接提取其源代码加以修改实现,详细列出供大家参考")]),a._v(" "),t("p",[t("a",{attrs:{href:"https://github.com/LinusU/node-appdmg",target:"_blank",rel:"noopener noreferrer"}},[a._v("node-appdmg"),t("OutboundLink")],1),t("br"),a._v(" "),t("a",{attrs:{href:"https://gist.github.com/oubiwann/453744744da1141ccc542ff75b47e0cf",target:"_blank",rel:"noopener noreferrer"}},[a._v("oubiwann's appify.sh"),t("OutboundLink")],1),t("br"),a._v(" "),t("a",{attrs:{href:"https://gitlab.com/inkscape/inkscape/-/blob/master/packaging/macos/bash_d/lib_.sh",target:"_blank",rel:"noopener noreferrer"}},[a._v("inkscape packaging: lib_.sh"),t("OutboundLink")],1),t("br"),a._v(" "),t("a",{attrs:{href:"https://gitlab.gnome.org/GNOME/gtk-mac-bundler/-/blob/master/examples/gtk3-launcher.sh",target:"_blank",rel:"noopener noreferrer"}},[a._v("gtk-mac-bundler gtk3-launcher.sh"),t("OutboundLink")],1)])])}),[],!1,null,null,null);s.default=e.exports}}]); \ No newline at end of file diff --git a/assets/js/13.6cd5d98c.js b/assets/js/13.6cd5d98c.js new file mode 100644 index 000000000..2c3bcf16b --- /dev/null +++ b/assets/js/13.6cd5d98c.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[13],{540:function(t,a,o){t.exports=o.p+"assets/img/installer-mac-home.1c2c56c2.png"},621:function(t,a,o){"use strict";o.r(a);var e=o(13),n=Object(e.a)({},(function(){var t=this,a=t.$createElement,e=t._self._c||a;return e("ContentSlotsDistributor",{attrs:{"slot-key":t.$parent.slotKey}},[e("h1",{attrs:{id:"install-on-macos"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#install-on-macos"}},[t._v("#")]),t._v(" Install on MacOS")]),t._v(" "),e("div",{staticClass:"custom-block danger"},[e("p",{staticClass:"custom-block-title"},[t._v("Open a Mac app from an unidentified developer(unsigned)")]),t._v(" "),e("p",[t._v("To override your security settings and open the app anyway follow these steps:")]),t._v(" "),e("ol",[e("li",[t._v("In the Finder on your Mac, locate the app you want to open."),e("br"),t._v("\nDon’t use Launchpad to do this. Launchpad doesn’t allow you to access the shortcut menu.")]),t._v(" "),e("li",[t._v("Control-click the app icon, then choose Open from the shortcut menu.")]),t._v(" "),e("li",[t._v("Click Open."),e("br"),t._v("\nThe app is saved as an exception to your security settings, and you can open it in the future by double-clicking it just as you can any registered app.")])])]),t._v(" "),e("h2",{attrs:{id:"download-kangaroo"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#download-kangaroo"}},[t._v("#")]),t._v(" Download Kangaroo")]),t._v(" "),e("p",[t._v("Download the latest version of Kangaroo from "),e("a",{attrs:{href:"../download"}},[t._v("Download")]),t._v(".")]),t._v(" "),e("h2",{attrs:{id:"install-kangaroo"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#install-kangaroo"}},[t._v("#")]),t._v(" Install Kangaroo")]),t._v(" "),e("p",[t._v("There are two ways to install Kangaroo on your system, the first way is DMG image, the second way is install manually.")]),t._v(" "),e("h3",{attrs:{id:"installer"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#installer"}},[t._v("#")]),t._v(" Installer")]),t._v(" "),e("ol",[e("li",[t._v("Double click to mount and open the DMG image in Finder;")]),t._v(" "),e("li",[t._v("Drag the kangaroo's icon to Application's icon to finish installation.\n"),e("img",{attrs:{src:o(540),alt:"Mac installer home"}})]),t._v(" "),e("li",[t._v("Launch the app from app center to make it OK")])]),t._v(" "),e("Vssue",{attrs:{"issue-id":6,title:t.$title}})],1)}),[],!1,null,null,null);a.default=n.exports}}]); \ No newline at end of file diff --git a/assets/js/130.e8ffa200.js b/assets/js/130.e8ffa200.js new file mode 100644 index 000000000..0b582d413 --- /dev/null +++ b/assets/js/130.e8ffa200.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[130],{714:function(t,a,n){"use strict";n.r(a);var s=n(13),e=Object(s.a)({},(function(){var t=this,a=t.$createElement,n=t._self._c||a;return n("ContentSlotsDistributor",{attrs:{"slot-key":t.$parent.slotKey}},[n("h1",{attrs:{id:"袋鼠-gtk4-版升级报告-第一阶段"}},[n("a",{staticClass:"header-anchor",attrs:{href:"#袋鼠-gtk4-版升级报告-第一阶段"}},[t._v("#")]),t._v(" 袋鼠 GTK4 版升级报告(第一阶段)")]),t._v(" "),n("p",[t._v("袋鼠数据库工具(基于 GTK3 开发) 已于 2021-10-29 日通过了基于 GTK4 框架及其依赖库的编译,整个升级过程耗时约6个星期,遇到了许多典型性的问题,觉得有分享价值,就总结提炼出来形成这个报告。")]),t._v(" "),n("h2",{attrs:{id:"项目信息"}},[n("a",{staticClass:"header-anchor",attrs:{href:"#项目信息"}},[t._v("#")]),t._v(" 项目信息")]),t._v(" "),n("p",[t._v("我们先对项目做一个大概的预览,了解一下项目的基本情况,有助于加深对后面的内容的理解:")]),t._v(" "),n("ul",[n("li",[t._v("开发者: 1 人")]),t._v(" "),n("li",[t._v("开发机器: ThinkPad T450 + Windows 10")]),t._v(" "),n("li",[t._v("源码文件: 364(个)")]),t._v(" "),n("li",[t._v("界面定义文件: 23(个)")]),t._v(" "),n("li",[t._v("图标文件(SVG): 58(个)")]),t._v(" "),n("li",[t._v("操作熟练: 280(个)")]),t._v(" "),n("li",[t._v("支持平台: Windows, macOS, Linux")])]),t._v(" "),n("h2",{attrs:{id:"开发环境"}},[n("a",{staticClass:"header-anchor",attrs:{href:"#开发环境"}},[t._v("#")]),t._v(" 开发环境")]),t._v(" "),n("p",[t._v("袋鼠数据库工具的开发环境是基于 MSYS2 工具套件搭建的,IDE使用 VSCode,详细情况如下:"),n("br")]),t._v(" "),n("table",[n("thead",[n("tr",[n("th",[t._v("功能特性")]),t._v(" "),n("th",[t._v("工具名称")]),t._v(" "),n("th",[t._v("采用版本")])])]),t._v(" "),n("tbody",[n("tr",[n("td",[t._v("包管理器")]),t._v(" "),n("td",[t._v("pacman")]),t._v(" "),n("td",[t._v("6.0.1")])]),t._v(" "),n("tr",[n("td",[t._v("编译器")]),t._v(" "),n("td",[t._v("GCC + Vala")]),t._v(" "),n("td",[t._v("10.3 / 0.54.2")])]),t._v(" "),n("tr",[n("td",[t._v("终端")]),t._v(" "),n("td",[t._v("mintty")]),t._v(" "),n("td",[t._v("3.5.1")])]),t._v(" "),n("tr",[n("td",[t._v("集成开发环境")]),t._v(" "),n("td",[t._v("Visual Studio Code + Vala")]),t._v(" "),n("td",[t._v("1.60")])]),t._v(" "),n("tr",[n("td",[t._v("构建器")]),t._v(" "),n("td",[t._v("meson + ninja")]),t._v(" "),n("td",[t._v("0.58")])]),t._v(" "),n("tr",[n("td",[t._v("安装包工具")]),t._v(" "),n("td",[t._v("NSIS")]),t._v(" "),n("td",[t._v("3.0.6")])]),t._v(" "),n("tr",[n("td",[t._v("虚拟机")]),t._v(" "),n("td",[t._v("VirtualBox")]),t._v(" "),n("td",[t._v("6.1")])])])]),t._v(" "),n("div",[n("script2",{attrs:{type:"text/javascript",async:"true",src:"https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"}}),t._v(" "),n("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),t._v(" "),n("script2",{attrs:{type:"text/javascript"}},[t._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),t._v(" "),n("p",[t._v("袋鼠数据库工具 集成了很多第三方库,第三方库及其官网、版本明细如下:")]),t._v(" "),n("table",[n("thead",[n("tr",[n("th",[t._v("功能特性")]),t._v(" "),n("th",[t._v("第三方库")]),t._v(" "),n("th",[t._v("采用版本")])])]),t._v(" "),n("tbody",[n("tr",[n("td",[t._v("编译器")]),t._v(" "),n("td",[n("a",{attrs:{href:"https://gitlab.gnome.org/GNOME/vala",target:"_blank",rel:"noopener noreferrer"}},[t._v("Vala"),n("OutboundLink")],1)]),t._v(" "),n("td",[t._v("0.54.2")])]),t._v(" "),n("tr",[n("td",[t._v("基础库")]),t._v(" "),n("td",[n("a",{attrs:{href:"https://gitlab.gnome.org/GNOME/glib",target:"_blank",rel:"noopener noreferrer"}},[t._v("GLib2"),n("OutboundLink")],1)]),t._v(" "),n("td",[t._v("2.68.1")])]),t._v(" "),n("tr",[n("td",[t._v("界面框架")]),t._v(" "),n("td",[n("a",{attrs:{href:"https://gitlab.gnome.org/GNOME/gtk",target:"_blank",rel:"noopener noreferrer"}},[t._v("GTK3 --\x3e GTK4"),n("OutboundLink")],1)]),t._v(" "),n("td",[t._v("3.24.30 --\x3e 4.4.0")])]),t._v(" "),n("tr",[n("td",[t._v("界面适配库")]),t._v(" "),n("td",[n("a",{attrs:{href:"https://gitlab.gnome.org/GNOME/libhandy",target:"_blank",rel:"noopener noreferrer"}},[t._v("libhandy"),n("OutboundLink")],1),t._v(" --\x3e "),n("a",{attrs:{href:"https://gitlab.gnome.org/GNOME/libhandy",target:"_blank",rel:"noopener noreferrer"}},[t._v("libadwaita"),n("OutboundLink")],1)]),t._v(" "),n("td",[t._v("1.4.0 --\x3e 1.0.0 alpha2")])]),t._v(" "),n("tr",[n("td",[t._v("编辑器")]),t._v(" "),n("td",[n("a",{attrs:{href:"https://gitlab.gnome.org/GNOME/gtksourceview",target:"_blank",rel:"noopener noreferrer"}},[t._v("GtkSourceView4 --\x3e GtkSourceView5"),n("OutboundLink")],1)]),t._v(" "),n("td",[t._v("4.8.2 --\x3e 5.2.0")])]),t._v(" "),n("tr",[n("td",[t._v("地图")]),t._v(" "),n("td",[n("a",{attrs:{href:"https://gitlab.gnome.org/GNOME/libshumate",target:"_blank",rel:"noopener noreferrer"}},[t._v("libshumate"),n("OutboundLink")],1)]),t._v(" "),n("td",[t._v("unknown")])]),t._v(" "),n("tr",[n("td",[t._v("JSON")]),t._v(" "),n("td",[n("a",{attrs:{href:"https://gitlab.gnome.org/GNOME/json-glib",target:"_blank",rel:"noopener noreferrer"}},[t._v("json-glib"),n("OutboundLink")],1)]),t._v(" "),n("td",[t._v("1.6.6")])]),t._v(" "),n("tr",[n("td",[t._v("数据库访问")]),t._v(" "),n("td",[n("a",{attrs:{href:"https://gitlab.gnome.org/GNOME/libgda",target:"_blank",rel:"noopener noreferrer"}},[t._v("libgda"),n("OutboundLink")],1)]),t._v(" "),n("td",[t._v("6.0.0")])]),t._v(" "),n("tr",[n("td",[t._v("容器")]),t._v(" "),n("td",[n("a",{attrs:{href:"https://gitlab.gnome.org/GNOME/libgee",target:"_blank",rel:"noopener noreferrer"}},[t._v("libgee"),n("OutboundLink")],1)]),t._v(" "),n("td",[t._v("0.20.3")])]),t._v(" "),n("tr",[n("td",[t._v("SSH")]),t._v(" "),n("td",[n("a",{attrs:{href:"https://github.com/libssh2/libssh2",target:"_blank",rel:"noopener noreferrer"}},[t._v("libssh2"),n("OutboundLink")],1)]),t._v(" "),n("td",[t._v("1.9.0")])]),t._v(" "),n("tr",[n("td",[t._v("XML")]),t._v(" "),n("td",[n("a",{attrs:{href:"https://gitlab.gnome.org/GNOME/libxml2",target:"_blank",rel:"noopener noreferrer"}},[t._v("libxml2"),n("OutboundLink")],1)]),t._v(" "),n("td",[t._v("2.9.12")])]),t._v(" "),n("tr",[n("td",[t._v("加解密")]),t._v(" "),n("td",[n("a",{attrs:{href:"https://www.openssl.org/",target:"_blank",rel:"noopener noreferrer"}},[t._v("OpenSSL"),n("OutboundLink")],1)]),t._v(" "),n("td",[t._v("1.1.1.k")])]),t._v(" "),n("tr",[n("td",[t._v("编码")]),t._v(" "),n("td",[n("a",{attrs:{href:"https://gitlab.freedesktop.org/uchardet/uchardet",target:"_blank",rel:"noopener noreferrer"}},[t._v("uchardet"),n("OutboundLink")],1)]),t._v(" "),n("td",[t._v("0.0.7")])]),t._v(" "),n("tr",[n("td",[t._v("插件支持")]),t._v(" "),n("td",[n("a",{attrs:{href:"https://gitlab.gnome.org/GNOME/libpeas",target:"_blank",rel:"noopener noreferrer"}},[t._v("libpeas"),n("OutboundLink")],1)]),t._v(" "),n("td",[t._v("1.30.0")])]),t._v(" "),n("tr",[n("td",[t._v("文件格式")]),t._v(" "),n("td",[n("a",{attrs:{href:"https://github.com/libarchive/libarchive",target:"_blank",rel:"noopener noreferrer"}},[t._v("libarchive"),n("OutboundLink")],1)]),t._v(" "),n("td",[t._v("3.5.1")])]),t._v(" "),n("tr",[n("td",[t._v("HTTP")]),t._v(" "),n("td",[n("a",{attrs:{href:"https://gitlab.gnome.org/GNOME/libsoup",target:"_blank",rel:"noopener noreferrer"}},[t._v("libsoup"),n("OutboundLink")],1)]),t._v(" "),n("td",[t._v("2.72.0")])]),t._v(" "),n("tr",[n("td",[t._v("模板")]),t._v(" "),n("td",[n("a",{attrs:{href:"https://gitlab.gnome.org/GNOME/template-glib",target:"_blank",rel:"noopener noreferrer"}},[t._v("template-glib"),n("OutboundLink")],1)]),t._v(" "),n("td",[t._v("3.34.0")])])])]),t._v(" "),n("h2",{attrs:{id:"gtk4-升级过程摘要"}},[n("a",{staticClass:"header-anchor",attrs:{href:"#gtk4-升级过程摘要"}},[t._v("#")]),t._v(" GTK4 升级过程摘要")]),t._v(" "),n("p",[t._v("为实现GTK4版编译通过,先后对代码进行了5轮重构和问题修复,每一轮都产生并修复了大量问题,面对兼容性产生的巨大的工作量,一度想放弃升级到GTK4版,短暂停留后继续攻坚,终于通过了编译:")]),t._v(" "),n("table",[n("thead",[n("tr",[n("th",[t._v("轮次")]),t._v(" "),n("th",[t._v("重构与修复重点")]),t._v(" "),n("th",[t._v("问题数")])])]),t._v(" "),n("tbody",[n("tr",[n("td",[t._v("第一轮")]),t._v(" "),n("td",[t._v("1. 修复名字空间方面的问题"),n("br"),t._v("2. 修复移除的API问题")]),t._v(" "),n("td",[t._v("400+")])]),t._v(" "),n("tr",[n("td",[t._v("第二轮")]),t._v(" "),n("td",[t._v("1. 修复容器控件GtkContainer相关问题"),n("br"),t._v("2. 修复唯一控件GtkBin相关问题")]),t._v(" "),n("td",[t._v("1720+")])]),t._v(" "),n("tr",[n("td",[t._v("第三轮")]),t._v(" "),n("td",[t._v("1. 修复剪贴板相关问题"),n("br"),t._v("2. 修复鼠标、键盘等输入事件问题")]),t._v(" "),n("td",[t._v("1454")])]),t._v(" "),n("tr",[n("td",[t._v("第四轮")]),t._v(" "),n("td",[t._v("1. 修复GtkBuilder相关问题"),n("br"),t._v("2. 修复界面定义相关问题")]),t._v(" "),n("td",[t._v("800+")])]),t._v(" "),n("tr",[n("td",[t._v("第五轮")]),t._v(" "),n("td",[t._v("修复新增的 final 标记相关问题:"),n("br"),t._v("GtkPaned"),n("br"),t._v("GtkScrolledWindow"),n("br"),t._v("GtkStack"),n("br"),t._v("GtkOverlay"),n("br"),t._v("GtkNotebook"),n("br"),t._v("GtkTreeViewColumn"),n("br"),t._v("Gtk.ComboBoxText"),n("br"),t._v("Gtk.Assistant")]),t._v(" "),n("td",[t._v("8 个控件类问题"),n("br"),t._v("共 1430+ 个")])])])]),t._v(" "),n("p",[t._v("通过持续6周的努力,最终迎来了袋鼠GTK4版编译通过(10/29/2021), 欣喜若狂,立即执行编译通过的程序,有点丑有点不正常,很多功能无法正常使用,它宣示GTK4编译通过只是整个升级工作的万里长征第一步,还需许多的工作需要做。")]),t._v(" "),n("div",[n("script2",{attrs:{type:"text/javascript",async:"true",src:"https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"}}),t._v(" "),n("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),t._v(" "),n("script2",{attrs:{type:"text/javascript"}},[t._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),t._v(" "),n("h2",{attrs:{id:"关键问题分析和解决方案"}},[n("a",{staticClass:"header-anchor",attrs:{href:"#关键问题分析和解决方案"}},[t._v("#")]),t._v(" 关键问题分析和解决方案")]),t._v(" "),n("p",[t._v("现在我将把升级过程中的一些关键的、典型问题做一些列举分析并提供解决方案,或许对读者有一些帮助。")]),t._v(" "),n("h3",{attrs:{id:"_1-容器控件-api"}},[n("a",{staticClass:"header-anchor",attrs:{href:"#_1-容器控件-api"}},[t._v("#")]),t._v(" 1. 容器控件 API")]),t._v(" "),n("p",[t._v("在 GTK4 中, 容器类 GtkContainer 已经被移除,新的控件体系允许每一个控件都能添加子控件,相应的API也有变化,一致性在减弱,未来也许会重新规范为一个接口类并集成到每一个控件中;GTK4版提供的容器 API 主要有: prepend/append/insert/remove:")]),t._v(" "),n("table",[n("thead",[n("tr",[n("th",[t._v("GTK3 API")]),t._v(" "),n("th",[t._v("GTK4 API")]),t._v(" "),n("th",[t._v("升级推荐")])])]),t._v(" "),n("tbody",[n("tr",[n("td",[t._v("add"),n("br"),t._v("pack_start")]),t._v(" "),n("td",[t._v("prepend"),n("br"),t._v(" append")]),t._v(" "),n("td",[t._v("append")])]),t._v(" "),n("tr",[n("td",[t._v("pack_end")]),t._v(" "),n("td",[t._v("insert_child_after")]),t._v(" "),n("td",[t._v("append")])]),t._v(" "),n("tr",[n("td",[t._v("reorder_child")]),t._v(" "),n("td",[t._v("reorder_child_after")]),t._v(" "),n("td",[t._v("reorder_child_after")])]),t._v(" "),n("tr",[n("td",[t._v("foreach/get_children")]),t._v(" "),n("td",[t._v("get_first_child"),n("br"),t._v("get_next_sibling"),n("br"),t._v("get_prev_sibling"),n("br"),t._v("get_last_child")]),t._v(" "),n("td")])])]),t._v(" "),n("h3",{attrs:{id:"_2-唯一子控件-api"}},[n("a",{staticClass:"header-anchor",attrs:{href:"#_2-唯一子控件-api"}},[t._v("#")]),t._v(" 2. 唯一子控件 API")]),t._v(" "),n("p",[t._v("在 GTK4 中, , 唯一子控件类GtkBin 已经被移除, 新的控件体系允许每一个控件都能添加子控件, 部分控件类提供了 child 属性来直接引用或设置它的唯一子控件,或者是第一个子控件;")]),t._v(" "),n("h3",{attrs:{id:"_3-剪贴板-api"}},[n("a",{staticClass:"header-anchor",attrs:{href:"#_3-剪贴板-api"}},[t._v("#")]),t._v(" 3. 剪贴板 API")]),t._v(" "),n("p",[t._v("在 GTK3 中, 我们可以使用下面的代码获取或者检测剪贴板中的图片:")]),t._v(" "),n("div",{staticClass:"language-vala extra-class"},[n("pre",{pre:!0,attrs:{class:"language-vala"}},[n("code",[n("span",{pre:!0,attrs:{class:"token class-name"}},[t._v("Gtk"),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("Clipboard")]),t._v(" clipboard "),n("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" Gtk"),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("Clipboard"),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),n("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("get")]),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("Gdk"),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),n("span",{pre:!0,attrs:{class:"token constant"}},[t._v("SELECTION_CLIPBOARD")]),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(";")]),t._v("\n"),n("span",{pre:!0,attrs:{class:"token class-name"}},[t._v("Pixbuf")]),n("span",{pre:!0,attrs:{class:"token operator"}},[t._v("?")]),t._v(" pixbuf "),n("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" clipboard"),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),n("span",{pre:!0,attrs:{class:"token function"}},[t._v("wait_for_image")]),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(";")]),t._v("\n")])])]),n("p",[t._v("GTK4 中的完成同样功能的代码是这样子的:")]),t._v(" "),n("div",{staticClass:"language-vala extra-class"},[n("pre",{pre:!0,attrs:{class:"language-vala"}},[n("code",[n("span",{pre:!0,attrs:{class:"token class-name"}},[t._v("Pixbuf")]),n("span",{pre:!0,attrs:{class:"token operator"}},[t._v("?")]),t._v(" pixbuf "),n("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" "),n("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("null")]),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(";")]),t._v("\n"),n("span",{pre:!0,attrs:{class:"token class-name"}},[t._v("Value")]),t._v(" "),n("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("value")]),t._v(" "),n("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" GLib"),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),n("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("Value")]),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),n("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("typeof")]),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("Pixbuf"),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(";")]),t._v("\n"),n("span",{pre:!0,attrs:{class:"token class-name"}},[t._v("Gdk"),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("Clipboard")]),t._v(" clipboard "),n("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" "),n("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("this")]),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),n("span",{pre:!0,attrs:{class:"token function"}},[t._v("get_clipboard")]),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(";")]),t._v("\n"),n("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("if")]),t._v(" "),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("clipboard"),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("content"),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),n("span",{pre:!0,attrs:{class:"token function"}},[t._v("get_value")]),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),n("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("ref")]),t._v(" "),n("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("value")]),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v("\n pixbuf "),n("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" "),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("Pixbuf"),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),n("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("value")]),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),n("span",{pre:!0,attrs:{class:"token function"}},[t._v("get_boxed")]),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(";")]),t._v("\n"),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),t._v("\n")])])]),n("div",[n("script2",{attrs:{type:"text/javascript",async:"true",src:"https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"}}),t._v(" "),n("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),t._v(" "),n("script2",{attrs:{type:"text/javascript"}},[t._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),t._v(" "),n("h3",{attrs:{id:"_4-用户输入-鼠标点击和键盘输入"}},[n("a",{staticClass:"header-anchor",attrs:{href:"#_4-用户输入-鼠标点击和键盘输入"}},[t._v("#")]),t._v(" 4. 用户输入(鼠标点击和键盘输入)")]),t._v(" "),n("p",[t._v("简单粗暴的直接分享一些关于用户输入的参考代码,用于快速更新 GTK3 中的用户输入事件代码:")]),t._v(" "),n("div",{staticClass:"language-vala extra-class"},[n("pre",{pre:!0,attrs:{class:"language-vala"}},[n("code",[t._v("treeview"),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("key_press_event"),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),n("span",{pre:!0,attrs:{class:"token function"}},[t._v("connect")]),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("key_press_handler"),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(";")]),t._v("\ntreeview"),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("key_release_event"),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),n("span",{pre:!0,attrs:{class:"token function"}},[t._v("connect")]),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("key_release_handler"),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(";")]),t._v("\n\ntreeview"),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("button_press_event"),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),n("span",{pre:!0,attrs:{class:"token function"}},[t._v("connect")]),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("button_press_handler"),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(";")]),t._v("\ntreeview"),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("button_release_event"),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),n("span",{pre:!0,attrs:{class:"token function"}},[t._v("connect")]),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("button_release_handler"),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(";")]),t._v("\n\ntreeview"),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("motion_notify_event"),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),n("span",{pre:!0,attrs:{class:"token function"}},[t._v("connect")]),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("mouse_move_handler"),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(";")]),t._v("\ntreeview"),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("enter_notify_event"),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),n("span",{pre:!0,attrs:{class:"token function"}},[t._v("connect")]),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("mouse_enter_handler"),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(";")]),t._v("\ntreeview"),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("leave_notify_event"),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),n("span",{pre:!0,attrs:{class:"token function"}},[t._v("connect")]),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("mouse_leave_handler"),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(";")]),t._v("\n\ntreeview"),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("scroll_event"),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),n("span",{pre:!0,attrs:{class:"token function"}},[t._v("connect")]),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("scroll_event_handler"),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(";")]),t._v("\n\ntreeview"),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("focus_in_event"),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),n("span",{pre:!0,attrs:{class:"token function"}},[t._v("connect")]),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("focus_enter_event_handler"),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(";")]),t._v("\ntreeview"),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("focus_out_event"),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),n("span",{pre:!0,attrs:{class:"token function"}},[t._v("connect")]),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("focus_leave_event_handler"),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(";")]),t._v("\n")])])]),n("div",{staticClass:"language-vala extra-class"},[n("pre",{pre:!0,attrs:{class:"language-vala"}},[n("code",[n("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("var")]),t._v(" key_input_event "),n("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" "),n("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("new")]),t._v(" "),n("span",{pre:!0,attrs:{class:"token class-name"}},[t._v("Gtk"),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("EventControllerKey")]),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(";")]),t._v("\nkey_input_event"),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("key_pressed"),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),n("span",{pre:!0,attrs:{class:"token function"}},[t._v("connect")]),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("key_press_handler"),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(";")]),t._v("\nkey_input_event"),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("key_released"),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),n("span",{pre:!0,attrs:{class:"token function"}},[t._v("connect")]),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("key_release_handler"),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(";")]),t._v("\ntreeview"),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),n("span",{pre:!0,attrs:{class:"token function"}},[t._v("add_controller")]),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("key_input_event"),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(";")]),t._v("\n\n"),n("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("var")]),t._v(" mouse_button_event "),n("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" "),n("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("new")]),t._v(" "),n("span",{pre:!0,attrs:{class:"token class-name"}},[t._v("Gtk"),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("GestureClick")]),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(";")]),t._v("\nmouse_button_event"),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("pressed"),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),n("span",{pre:!0,attrs:{class:"token function"}},[t._v("connect")]),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("button_press_handler"),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(";")]),t._v("\nmouse_button_event"),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("released"),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),n("span",{pre:!0,attrs:{class:"token function"}},[t._v("connect")]),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("button_release_handler"),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(";")]),t._v("\ntreeview"),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),n("span",{pre:!0,attrs:{class:"token function"}},[t._v("add_controller")]),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("mouse_button_event"),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(";")]),t._v("\n\n"),n("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("var")]),t._v(" mouse_motion_event "),n("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" "),n("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("new")]),t._v(" "),n("span",{pre:!0,attrs:{class:"token class-name"}},[t._v("Gtk"),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("EventControllerMotion")]),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(";")]),t._v("\nmouse_motion_event"),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("motion"),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),n("span",{pre:!0,attrs:{class:"token function"}},[t._v("connect")]),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("mouse_move_handler"),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(";")]),t._v("\nmouse_motion_event"),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("enter"),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),n("span",{pre:!0,attrs:{class:"token function"}},[t._v("connect")]),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("mouse_enter_handler"),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(";")]),t._v("\nmouse_motion_event"),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("leave"),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),n("span",{pre:!0,attrs:{class:"token function"}},[t._v("connect")]),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("mouse_leave_handler"),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(";")]),t._v("\ntreeview"),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),n("span",{pre:!0,attrs:{class:"token function"}},[t._v("add_controller")]),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("mouse_motion_event"),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(";")]),t._v("\n\n"),n("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("var")]),t._v(" view_scroll_event "),n("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" "),n("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("new")]),t._v(" "),n("span",{pre:!0,attrs:{class:"token class-name"}},[t._v("Gtk"),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("EventControllerScroll")]),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(";")]),t._v("\nview_scroll_event"),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("scroll"),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),n("span",{pre:!0,attrs:{class:"token function"}},[t._v("connect")]),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("scroll_event_handler"),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(";")]),t._v("\ntreeview"),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),n("span",{pre:!0,attrs:{class:"token function"}},[t._v("add_controller")]),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("view_scroll_event"),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(";")]),t._v("\n\n"),n("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("var")]),t._v(" view_focus_event "),n("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" "),n("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("new")]),t._v(" "),n("span",{pre:!0,attrs:{class:"token class-name"}},[t._v("Gtk"),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("EventControllerFocus")]),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(";")]),t._v("\nview_focus_event"),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("enter"),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),n("span",{pre:!0,attrs:{class:"token function"}},[t._v("connect")]),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("focus_enter_event_handler"),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(";")]),t._v("\nview_focus_event"),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("leave"),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),n("span",{pre:!0,attrs:{class:"token function"}},[t._v("connect")]),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("focus_leave_event_handler"),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(";")]),t._v("\ntreeview"),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),n("span",{pre:!0,attrs:{class:"token function"}},[t._v("add_controller")]),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("view_focus_event"),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(";")]),t._v("\n")])])]),n("h3",{attrs:{id:"_5-gtkbuilder-和-界面定义文件"}},[n("a",{staticClass:"header-anchor",attrs:{href:"#_5-gtkbuilder-和-界面定义文件"}},[t._v("#")]),t._v(" 5. GtkBuilder 和 界面定义文件")]),t._v(" "),n("p",[t._v("下面的命令行可以直接升级更新GTK3定义的界面定义文件(*.ui):")]),t._v(" "),n("div",{staticClass:"language-bash extra-class"},[n("pre",{pre:!0,attrs:{class:"language-bash"}},[n("code",[t._v("gtk-builder-tool simplify --3to4 --replace "),n("span",{pre:!0,attrs:{class:"token operator"}},[t._v("<")]),t._v("filename.ui"),n("span",{pre:!0,attrs:{class:"token operator"}},[t._v(">")]),t._v("\n")])])]),n("p",[t._v("如果只想查看升级更新后的界面定义文件内容而不更新文件,可以去掉参数 "),n("code",[t._v("--replace")]),t._v(",如下所示:")]),t._v(" "),n("div",{staticClass:"language-bash extra-class"},[n("pre",{pre:!0,attrs:{class:"language-bash"}},[n("code",[t._v("gtk-builder-tool simplify --3to4 "),n("span",{pre:!0,attrs:{class:"token operator"}},[t._v("<")]),t._v("filename.ui"),n("span",{pre:!0,attrs:{class:"token operator"}},[t._v(">")]),t._v("\n")])])])])}),[],!1,null,null,null);a.default=e.exports}}]); \ No newline at end of file diff --git a/assets/js/131.3c6542ea.js b/assets/js/131.3c6542ea.js new file mode 100644 index 000000000..0d0de4d2e --- /dev/null +++ b/assets/js/131.3c6542ea.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[131],{717:function(e,t,s){"use strict";s.r(t);var n=s(13),o=Object(n.a)({},(function(){var e=this,t=e.$createElement,s=e._self._c||t;return s("ContentSlotsDistributor",{attrs:{"slot-key":e.$parent.slotKey}},[s("h1",{attrs:{id:"kangaroo-secure-connection-ssl-or-ssh-solution"}},[s("a",{staticClass:"header-anchor",attrs:{href:"#kangaroo-secure-connection-ssl-or-ssh-solution"}},[e._v("#")]),e._v(" Kangaroo Secure connection (SSL or SSH) solution")]),e._v(" "),s("h2",{attrs:{id:"connection-via-secure-sockets-layer-ssl"}},[s("a",{staticClass:"header-anchor",attrs:{href:"#connection-via-secure-sockets-layer-ssl"}},[e._v("#")]),e._v(" Connection via secure sockets layer (SSL)")]),e._v(" "),s("p",[e._v("Sometimes, database server use secure connection to keep security, so client must connect to database server by secure socket, Kangaroo integrated with")]),e._v(" "),s("h2",{attrs:{id:"connection-over-secure-shell-tunnel-ssh"}},[s("a",{staticClass:"header-anchor",attrs:{href:"#connection-over-secure-shell-tunnel-ssh"}},[e._v("#")]),e._v(" Connection over secure shell tunnel(SSH)")]),e._v(" "),s("p",[s("strong",[e._v("Windows")]),e._v("\nhttps://gist.github.com/siggibjarna/0da65bd0d3f2b82d3752\nKangaroo connnect to database over secure shell tunnel via "),s("a",{attrs:{href:"https://www.chiark.greenend.org.uk/~sgtatham/putty/latest.html",target:"_blank",rel:"noopener noreferrer"}},[e._v("plink.exe"),s("OutboundLink")],1),e._v(" on windows, examples: HeidiSQL")]),e._v(" "),s("p",[s("strong",[e._v("Linux")])]),e._v(" "),s("p",[s("strong",[e._v("MacOS")])])])}),[],!1,null,null,null);t.default=o.exports}}]); \ No newline at end of file diff --git a/assets/js/132.30864d3f.js b/assets/js/132.30864d3f.js new file mode 100644 index 000000000..608cbe438 --- /dev/null +++ b/assets/js/132.30864d3f.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[132],{715:function(t,a,e){"use strict";e.r(a);var r=e(13),s=Object(r.a)({},(function(){var t=this,a=t.$createElement,e=t._self._c||a;return e("ContentSlotsDistributor",{attrs:{"slot-key":t.$parent.slotKey}},[e("h1",{attrs:{id:"技术-技巧和笔记"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#技术-技巧和笔记"}},[t._v("#")]),t._v(" 技术/技巧和笔记")]),t._v(" "),e("p",[e("a",{attrs:{href:"./005-GTK4-upgrade-report-phase-1"}},[t._v("2021-10-31: 袋鼠 GTK4 版升级报告(第一阶段)")]),e("Badge",{attrs:{text:"新"}})],1),t._v(" "),e("p",[e("a",{attrs:{href:"./004-how-to-deploy-gtk-app-on-mac"}},[t._v("2020-09-01: 苹果系统 GTK 应用打包新思路")])]),t._v(" "),e("p",[e("a",{attrs:{href:"./003-serialize-glib-object"}},[t._v("2019-10-19: GLib 对象序列化和反序列化")])]),t._v(" "),e("p",[e("a",{attrs:{href:"./002-how-to-deploy-gtk-app-on-windows"}},[t._v("2019-10-08: 如何快速有效部署GTK应用程序到Windows平台?")]),e("Badge",{attrs:{text:"更新"}})],1),t._v(" "),e("p",[e("a",{attrs:{href:"./001-why-choose-vala"}},[t._v("2019-09-20: 为什么选择 Vala 语言打造袋鼠数据库工具?")]),e("Badge",{attrs:{text:"更新"}})],1)])}),[],!1,null,null,null);a.default=s.exports}}]); \ No newline at end of file diff --git a/assets/js/133.d0ece65e.js b/assets/js/133.d0ece65e.js new file mode 100644 index 000000000..988d4391f --- /dev/null +++ b/assets/js/133.d0ece65e.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[133],{716:function(t,a,e){"use strict";e.r(a);var _=e(13),r=Object(_.a)({},(function(){var t=this,a=t.$createElement,e=t._self._c||a;return e("ContentSlotsDistributor",{attrs:{"slot-key":t.$parent.slotKey}},[e("h1",{attrs:{id:"购买-袋鼠数据库工具"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#购买-袋鼠数据库工具"}},[t._v("#")]),t._v(" 购买 袋鼠数据库工具")]),t._v(" "),e("p",[t._v("感谢购买 "),e("strong",[t._v("袋鼠数据库工具")]),t._v("。")]),t._v(" "),e("p",[t._v("为实现可持续服务,目前 "),e("strong",[t._v("袋鼠数据库工具")]),t._v(" 采用订阅制模式,多年订阅建议不要超过【十年】。")]),t._v(" "),e("h2",{attrs:{id:"订阅方案"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#订阅方案"}},[t._v("#")]),t._v(" 订阅方案")]),t._v(" "),e("p",[t._v("以下价格均为【按年订阅】价格,包含一年内免费升级和支持服务。")]),t._v(" "),e("table",[e("thead",[e("tr",[e("th",[t._v("特性方案")]),t._v(" "),e("th",{staticStyle:{"text-align":"center"}},[t._v("企业许可证")]),t._v(" "),e("th",{staticStyle:{"text-align":"center"}},[t._v("非商业许可证")]),t._v(" "),e("th",{staticStyle:{"text-align":"center"}},[t._v("许可证展期")])])]),t._v(" "),e("tbody",[e("tr",[e("td",[t._v("多数据库 (含税)")]),t._v(" "),e("td",{staticStyle:{"text-align":"center"}},[t._v("CNY 1899")]),t._v(" "),e("td",{staticStyle:{"text-align":"center"}},[t._v("CNY 699")]),t._v(" "),e("td",{staticStyle:{"text-align":"center"}},[t._v("八折优惠")])]),t._v(" "),e("tr",[e("td",[t._v("单数据库 (含税)")]),t._v(" "),e("td",{staticStyle:{"text-align":"center"}},[t._v("CNY 499")]),t._v(" "),e("td",{staticStyle:{"text-align":"center"}},[t._v("CNY 199")]),t._v(" "),e("td",{staticStyle:{"text-align":"center"}},[t._v("八折优惠")])])])]),t._v(" "),e("p",[t._v("【温馨提示】")]),t._v(" "),e("ol",[e("li",[t._v("一个许可证对应一个用户,通过手机进行验证及绑定。")]),t._v(" "),e("li",[t._v("一个许可证可支持 3 台设备(Windows / MacOS / Linux)。")])]),t._v(" "),e("h2",{attrs:{id:"支付方式"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#支付方式"}},[t._v("#")]),t._v(" 支付方式")]),t._v(" "),e("p",[t._v("目前支持三种支付方式:微信支付、支付宝支付和 Paypal 支付。\n"),e("table",[e("tr",[e("td",[e("img",{attrs:{src:"/images/alipay.png",alt:"支付宝 二维码"}})]),t._v(" "),e("td",[e("img",{attrs:{src:"/images/tenpay.png",alt:"微信支付 二维码"}})]),t._v(" "),e("td",[e("img",{attrs:{src:"/images/paypal.png",alt:"Paypal 二维码"}})])])])]),t._v(" "),e("p",[t._v("扫描二维码支付时,请务必在备注上填写:"),e("code",[t._v("袋鼠 - <您的邮箱>")]),t._v(" , 订阅授权码(License code) 会发送到您的邮箱。")]),t._v(" "),e("h2",{attrs:{id:"联系方式"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#联系方式"}},[t._v("#")]),t._v(" 联系方式")]),t._v(" "),e("p",[t._v("如对购买或购买后有任何问题,可通过以下方式联系:")]),t._v(" "),e("p",[t._v("客服: "),e("a",{attrs:{href:"http://wpa.qq.com/msgrd?v=3&uin=292422734&site=qq&menu=yes",target:"_blank",rel:"noopener noreferrer"}},[t._v("电脑QQ客服"),e("OutboundLink")],1),t._v(" "),e("a",{attrs:{href:"mqqwpa://im/chat?chat_type=wpa&uin=292422734&version=1&src_type=web&web_src=datatable.online"}},[t._v("手机QQ客服")]),e("br"),t._v("\n邮箱: dbkangaroo@hotmail.com")]),t._v(" "),e("h2",{attrs:{id:"常见问题"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#常见问题"}},[t._v("#")]),t._v(" 常见问题")]),t._v(" "),e("h3",{attrs:{id:"付款后多久会收到订阅授权码-license-code"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#付款后多久会收到订阅授权码-license-code"}},[t._v("#")]),t._v(" 付款后多久会收到订阅授权码(License code)?")]),t._v(" "),e("p",[e("strong",[t._v("袋鼠数据库工具")]),t._v("许可证验证特性版本发布后一个星期内启动授权码发放工作,敬请留意版本公告和您的邮件通知消息;")]),t._v(" "),e("h3",{attrs:{id:"如何退款"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#如何退款"}},[t._v("#")]),t._v(" 如何退款")]),t._v(" "),e("p",[t._v("虚拟商品,购买后恕不退换。请谨慎购买。")])])}),[],!1,null,null,null);a.default=r.exports}}]); \ No newline at end of file diff --git a/assets/js/134.9122993e.js b/assets/js/134.9122993e.js new file mode 100644 index 000000000..713517157 --- /dev/null +++ b/assets/js/134.9122993e.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[134],{723:function(v,_,a){"use strict";a.r(_);var t=a(13),i=Object(t.a)({},(function(){var v=this,_=v.$createElement,a=v._self._c||_;return a("ContentSlotsDistributor",{attrs:{"slot-key":v.$parent.slotKey}},[a("h1",{attrs:{id:"袋鼠数据库工具-版本更新记录"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#袋鼠数据库工具-版本更新记录"}},[v._v("#")]),v._v(" 袋鼠数据库工具 版本更新记录")]),v._v(" "),a("h2",{attrs:{id:"袋鼠数据库工具-v3-92-1"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#袋鼠数据库工具-v3-92-1"}},[v._v("#")]),v._v(" "),a("a",{attrs:{href:"/zh/download/v3.92.1.230901"}},[v._v("袋鼠数据库工具 v3.92.1")])]),v._v(" "),a("ul",[a("li",[v._v("GTK4 升级为 4.12")]),v._v(" "),a("li",[v._v("libadwaita 升级为 1.4 beta")]),v._v(" "),a("li",[v._v("新增 Redhat 系列系统安装包(rpm)")]),v._v(" "),a("li",[v._v("新增用户自定义代码块支持\n"),a("ul",[a("li",[v._v("用户自定义代码块边栏(过滤/拖放支持)")]),v._v(" "),a("li",[v._v("用户自定义代码块编辑对话框")]),v._v(" "),a("li",[v._v("用户自定义代码块智能提示支持")]),v._v(" "),a("li",[v._v("用户自定义代码块保存与配置支持")]),v._v(" "),a("li",[v._v("用户自定义代码块之查询视图弹出菜单")])])]),v._v(" "),a("li",[v._v("查询视图弹出菜单增加执行菜单项")]),v._v(" "),a("li",[v._v("重构日志视图")]),v._v(" "),a("li",[v._v("重构着色文本视图")]),v._v(" "),a("li",[v._v("重构页面工具栏样式")]),v._v(" "),a("li",[v._v("重构工具栏配置支持")]),v._v(" "),a("li",[v._v("重构导出助理列映射页")]),v._v(" "),a("li",[v._v("重构导出助理实体映射页")]),v._v(" "),a("li",[v._v("重构导出助理DSV设置页")]),v._v(" "),a("li",[v._v("重构模型实体对话框")]),v._v(" "),a("li",[v._v("二维码增加袋鼠LOGO")]),v._v(" "),a("li",[v._v("更新中文语言支持")]),v._v(" "),a("li",[v._v("修复: 通讯连接问题")]),v._v(" "),a("li",[v._v("修复: 文档对话框数据显示问题")]),v._v(" "),a("li",[v._v("修复: 连接空间状态栏信息丢失问题")]),v._v(" "),a("li",[v._v("修复: 数据库连接ID丢失问题")])]),v._v(" "),a("h2",{attrs:{id:"袋鼠数据库工具-v3-91-1-beta"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#袋鼠数据库工具-v3-91-1-beta"}},[v._v("#")]),v._v(" "),a("a",{attrs:{href:"/zh/download/v3.91.1.230801"}},[v._v("袋鼠数据库工具 v3.91.1 (Beta)")])]),v._v(" "),a("ul",[a("li",[v._v("界面适配 libadwaita 1.4")]),v._v(" "),a("li",[v._v("重构切换空间属性(GtkSwitch.state to active)")]),v._v(" "),a("li",[v._v("增加显示数据库驱动库版本")]),v._v(" "),a("li",[v._v("增加中文语言支持(zh_Hans/zh_Hant)")]),v._v(" "),a("li",[v._v("改进工作空间状态栏用户体验")]),v._v(" "),a("li",[v._v("更新中文语言支持")]),v._v(" "),a("li",[v._v("MariaDB: 增加表设计器页面")]),v._v(" "),a("li",[v._v("MariaDB: 修复外键相关问题")]),v._v(" "),a("li",[v._v("MySQL: 增加类型支持 TIMESTAMP")]),v._v(" "),a("li",[v._v("PostgreSQL: 修复类型和排序规则问题")]),v._v(" "),a("li",[v._v("SQLite: 修复模式相关问题")]),v._v(" "),a("li",[v._v("数据传输: 初始化默认设置")]),v._v(" "),a("li",[v._v("数据传输: 增加日志输出")]),v._v(" "),a("li",[v._v("数据传输: 修复目标连接问题")])]),v._v(" "),a("h2",{attrs:{id:"袋鼠数据库工具-v3-90-1-beta"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#袋鼠数据库工具-v3-90-1-beta"}},[v._v("#")]),v._v(" "),a("a",{attrs:{href:"/zh/download/v3.90.1.230701"}},[v._v("袋鼠数据库工具 v3.90.1 (Beta)")])]),v._v(" "),a("ul",[a("li",[v._v("增加数据库传输/结构同步/数据同步界面")]),v._v(" "),a("li",[v._v("实现数据库传输业务逻辑")]),v._v(" "),a("li",[v._v("实现数据库结构同步业务逻辑")]),v._v(" "),a("li",[v._v("SQLite: 加密扩展支持(SQLCipher)")]),v._v(" "),a("li",[v._v("MySQL: 改进 TEXT/BLOB 类型支持")]),v._v(" "),a("li",[v._v("MariaDB: 改进 TEXT/BLOB 类型支持")]),v._v(" "),a("li",[v._v("对话框窗口居中支持")]),v._v(" "),a("li",[v._v("增加多语言切换支持")]),v._v(" "),a("li",[v._v("优化配置对话框性能")]),v._v(" "),a("li",[v._v("更新中文语言支持")]),v._v(" "),a("li",[v._v("修复 MySQL/MariaDB 字段标记问题")])]),v._v(" "),a("h2",{attrs:{id:"袋鼠数据库工具-v2-99-3-beta"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#袋鼠数据库工具-v2-99-3-beta"}},[v._v("#")]),v._v(" "),a("a",{attrs:{href:"/zh/download/v2.99.3.230602"}},[v._v("袋鼠数据库工具 v2.99.3 (Beta)")])]),v._v(" "),a("ul",[a("li",[v._v("Windows: GTK4 升级为 4.11.2")]),v._v(" "),a("li",[v._v("MySQL: 修复 TINYTEXT/TEXT/MEDIUMTEXT/LONGTEXT 显示问题")]),v._v(" "),a("li",[v._v("MariaDB: 修复 TINYTEXT/TEXT/MEDIUMTEXT/LONGTEXT 显示问题")])]),v._v(" "),a("h2",{attrs:{id:"袋鼠数据库工具-v1-10-3-beta"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#袋鼠数据库工具-v1-10-3-beta"}},[v._v("#")]),v._v(" "),a("a",{attrs:{href:"/zh/download/v1.10.3.230508"}},[v._v("袋鼠数据库工具 v1.10.3 (Beta)")])]),v._v(" "),a("ul",[a("li",[v._v("Windows: GTK4 升级为 4.11.1")]),v._v(" "),a("li",[v._v("Fixed: 中文支持问题")])]),v._v(" "),a("h2",{attrs:{id:"袋鼠数据库工具-v2-99-2-beta"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#袋鼠数据库工具-v2-99-2-beta"}},[v._v("#")]),v._v(" "),a("a",{attrs:{href:"/zh/download/v2.99.2.230428"}},[v._v("袋鼠数据库工具 v2.99.2 (Beta)")])]),v._v(" "),a("ul",[a("li",[v._v("添加沙盒运行支持 (仅限 Windows)")]),v._v(" "),a("li",[v._v("GTK4 升级为 4.10.3")]),v._v(" "),a("li",[v._v("libadwaita 升级为 1.3.1")])]),v._v(" "),a("h2",{attrs:{id:"袋鼠数据库工具-v2-99-1-beta"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#袋鼠数据库工具-v2-99-1-beta"}},[v._v("#")]),v._v(" "),a("a",{attrs:{href:"/zh/download/v2.99.1.230331"}},[v._v("袋鼠数据库工具 v2.99.1 (Beta)")])]),v._v(" "),a("ul",[a("li",[v._v("SQLite: 添加数据库直接访问支持")]),v._v(" "),a("li",[v._v("MySQL: 添加数据库直接访问支持")]),v._v(" "),a("li",[v._v("MariaDB: 添加数据库直接访问支持")]),v._v(" "),a("li",[v._v("PostgreSQL: 添加数据库直接访问支持")]),v._v(" "),a("li",[v._v("改善了浮点数显示支持(默认展示5位小数位)")]),v._v(" "),a("li",[v._v("改进了连接建立方式(无需选择驱动)")]),v._v(" "),a("li",[v._v("更新中文语言支持(zh-CN/zh-TW/zh-SG/zh-HK)")])]),v._v(" "),a("h2",{attrs:{id:"袋鼠数据库工具-v2-3-2-beta"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#袋鼠数据库工具-v2-3-2-beta"}},[v._v("#")]),v._v(" "),a("a",{attrs:{href:"/zh/download/v2.3.2.230301"}},[v._v("袋鼠数据库工具 v2.3.2 (Beta)")])]),v._v(" "),a("ul",[a("li",[v._v("MySQL: 增加执行器菜单入口")]),v._v(" "),a("li",[v._v("MariaDB: 增加执行器菜单入口")]),v._v(" "),a("li",[v._v("PostgreSQL: 增加执行器菜单入口")]),v._v(" "),a("li",[v._v("更新 DataGrid 常规样式背景色")]),v._v(" "),a("li",[v._v("更新中文语言支持(zh-CN/zh-TW/zh-SG/zh-HK)")]),v._v(" "),a("li",[v._v("修复: 未知字段 SCHEMA_COMMENT (< MariaDB 10.5)")]),v._v(" "),a("li",[v._v("修复: 执行器文件对话框问题")]),v._v(" "),a("li",[v._v("修复: 智能提示小写输入时无法响应问题")]),v._v(" "),a("li",[v._v("修复: 网格相关的崩溃问题")])]),v._v(" "),a("div",[a("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),v._v(" "),a("script2",{attrs:{type:"text/javascript"}},[v._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),v._v(" "),a("h2",{attrs:{id:"袋鼠数据库工具-v2-3-1-beta"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#袋鼠数据库工具-v2-3-1-beta"}},[v._v("#")]),v._v(" "),a("a",{attrs:{href:"/zh/download/v2.3.1.230201"}},[v._v("袋鼠数据库工具 v2.3.1 (Beta)")])]),v._v(" "),a("ul",[a("li",[v._v("增加用户查询文件面板")]),v._v(" "),a("li",[v._v("增加用户模型文件面板")]),v._v(" "),a("li",[v._v("更新工具栏样式")]),v._v(" "),a("li",[v._v("连接空间支持分割视图 (垂直或水平)")]),v._v(" "),a("li",[v._v("连接空间增加 状态栏控件")]),v._v(" "),a("li",[v._v("连接空间增加 语言切换 支持")]),v._v(" "),a("li",[v._v("连接空间增加 换行符 支持")]),v._v(" "),a("li",[v._v("连接空间增加 文件编码 支持")]),v._v(" "),a("li",[v._v("连接空间增加 自动换行 支持")]),v._v(" "),a("li",[v._v("连接空间增加 缩进设置 支持")]),v._v(" "),a("li",[v._v("连接空间增加 位置信息 支持")]),v._v(" "),a("li",[v._v("连接空间增加 面板切换 支持")]),v._v(" "),a("li",[v._v("连接空间增加 工作页消息 支持")]),v._v(" "),a("li",[v._v("更新关于窗口(增加系统信息)")]),v._v(" "),a("li",[v._v("更新 RPM 包安装脚本")]),v._v(" "),a("li",[v._v("更新中文语言支持(zh-CN/zh-TW/zh-SG/zh-HK)")]),v._v(" "),a("li",[v._v("移除主菜单之视图子菜单")])]),v._v(" "),a("h2",{attrs:{id:"袋鼠数据库工具-v2-2-1-beta"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#袋鼠数据库工具-v2-2-1-beta"}},[v._v("#")]),v._v(" "),a("a",{attrs:{href:"/zh/download/v2.2.1.230101"}},[v._v("袋鼠数据库工具 v2.2.1 (Beta)")])]),v._v(" "),a("ul",[a("li",[v._v("增加 SQL 执行对话框")]),v._v(" "),a("li",[v._v("增加 导出并转换对话框")]),v._v(" "),a("li",[v._v("增加查询耗时显示")]),v._v(" "),a("li",[v._v("SQLite: 修复索引字段加载问题")]),v._v(" "),a("li",[v._v("SQLite: 修复备份数据表名字问题")]),v._v(" "),a("li",[v._v("MariaDB: 修复加载架构对象范围问题")]),v._v(" "),a("li",[v._v("MySQL: 修复加载架构对象范围问题")]),v._v(" "),a("li",[v._v("PostgreSQL: 修复 v15 用户属性问题")]),v._v(" "),a("li",[v._v("更新智能提示候选项图标")]),v._v(" "),a("li",[v._v("更新中文语言支持(zh-CN/zh-TW/zh-SG/zh-HK)")]),v._v(" "),a("li",[v._v("更新 Windows 安装程序以默认选择驱动程序")]),v._v(" "),a("li",[v._v("更新 GTK 库: v4.9.2")])]),v._v(" "),a("h2",{attrs:{id:"袋鼠数据库工具-v2-1-1-beta"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#袋鼠数据库工具-v2-1-1-beta"}},[v._v("#")]),v._v(" "),a("a",{attrs:{href:"/zh/download/v2.1.1.221201"}},[v._v("袋鼠数据库工具 v2.1.1 (Beta)")])]),v._v(" "),a("ul",[a("li",[v._v("添加动态生成二维码支持")]),v._v(" "),a("li",[v._v("添加 debian 安装包支持")]),v._v(" "),a("li",[v._v("实现表设计器 克隆 菜单")]),v._v(" "),a("li",[v._v("实现表设计器 复制/粘贴 菜单")]),v._v(" "),a("li",[v._v("添加表设计器 剪切 菜单")]),v._v(" "),a("li",[v._v("添加 SQL "),a("code",[v._v("EXPLAIN")]),v._v(" 语句支持(带格式)")]),v._v(" "),a("li",[v._v("添加 SQL "),a("code",[v._v("ANALYZE")]),v._v(" 语句支持")]),v._v(" "),a("li",[v._v("重构 SQL 格式化和紧缩化功能")]),v._v(" "),a("li",[v._v("改进编辑器 后退重做 功能支持")]),v._v(" "),a("li",[v._v("更新 Linux 平台安装包脚本")]),v._v(" "),a("li",[v._v("更新中文语言支持(zh-CN/zh-TW/zh-SG/zh-HK)")]),v._v(" "),a("li",[v._v("修复: 关闭查询结果页时崩溃问题")]),v._v(" "),a("li",[v._v("修复: SSH 提示标签文字")])]),v._v(" "),a("h2",{attrs:{id:"袋鼠数据库工具-v2-0-0-beta"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#袋鼠数据库工具-v2-0-0-beta"}},[v._v("#")]),v._v(" "),a("a",{attrs:{href:"/zh/download/v2.0.0.221101"}},[v._v("袋鼠数据库工具 v2.0.0 (Beta)")])]),v._v(" "),a("ul",[a("li",[v._v("重构导入数据页面(列映射页/数据预览页)")]),v._v(" "),a("li",[v._v("重构列选择对话窗口")]),v._v(" "),a("li",[v._v("重构 SQLite 索引列窗口")]),v._v(" "),a("li",[v._v("重构 PostgreSQL 列编辑窗口")]),v._v(" "),a("li",[v._v("重构 MySQL 列编辑窗口")]),v._v(" "),a("li",[v._v("重构类型值编辑器窗口(Enum/set)")]),v._v(" "),a("li",[v._v("重构文档生成窗口")]),v._v(" "),a("li",[v._v("重构数据网格事件和上下文")]),v._v(" "),a("li",[v._v("替换系统图标为符号化图标")]),v._v(" "),a("li",[v._v("实现表单视图编辑和保存功能")]),v._v(" "),a("li",[v._v("实现表格视图编辑和保存功能")]),v._v(" "),a("li",[v._v("实现表单视图数据行导航功能")]),v._v(" "),a("li",[v._v("实现Binary/BLOB 导入导出和保存功能")]),v._v(" "),a("li",[v._v("改进 SQLite 架构支持")]),v._v(" "),a("li",[v._v("更新中文语言支持(zh-CN/zh-TW/zh-SG/zh-HK)")]),v._v(" "),a("li",[v._v("修复: 数值类型丢失小数位问题")]),v._v(" "),a("li",[v._v("修复: 工具图标尺寸设置问题")]),v._v(" "),a("li",[v._v("修复: 对象浏览器网格问题")]),v._v(" "),a("li",[v._v("修复: 导入数据失败问题")]),v._v(" "),a("li",[v._v("修复: 索引加载崩溃问题")]),v._v(" "),a("li",[v._v("修复: 对象树节点切换问题")]),v._v(" "),a("li",[v._v("修复: SQLite 函数编辑问题")]),v._v(" "),a("li",[v._v("修复: 应用控制台告警消息")]),v._v(" "),a("li",[v._v("修复: 编译器控制台告警消息")]),v._v(" "),a("li",[v._v("修复: 上下文菜单导出操作问题")])]),v._v(" "),a("div",[a("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),v._v(" "),a("script2",{attrs:{type:"text/javascript"}},[v._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),v._v(" "),a("h2",{attrs:{id:"袋鼠数据库工具-v1-99-1-dev"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#袋鼠数据库工具-v1-99-1-dev"}},[v._v("#")]),v._v(" "),a("a",{attrs:{href:"/zh/download/v1.99.1.221001"}},[v._v("袋鼠数据库工具 v1.99.1 (Dev)")])]),v._v(" "),a("ul",[a("li",[v._v("更新依赖库到新版本")]),v._v(" "),a("li",[v._v("规范化数据模型和元模型")]),v._v(" "),a("li",[v._v("重构并测试文档对话框")]),v._v(" "),a("li",[v._v("重构导出功能页面")]),v._v(" "),a("li",[v._v("重构导入功能页面")]),v._v(" "),a("li",[v._v("重构连接对话框")]),v._v(" "),a("li",[v._v("添加附加数据库对话框")]),v._v(" "),a("li",[v._v("添加通用数据库支持")]),v._v(" "),a("li",[v._v("添加 ODBC 帮助入口")]),v._v(" "),a("li",[v._v("添加对象搜索支持")]),v._v(" "),a("li",[v._v("更新 Windows 和 Arch Linux 的打包与安装脚本")]),v._v(" "),a("li",[v._v("SQLite: 附加和卸载数据库")]),v._v(" "),a("li",[v._v("SQLite: 加载扩展支持")]),v._v(" "),a("li",[v._v("改进新连接创建方式")]),v._v(" "),a("li",[v._v("更新中文语言支持(zh-CN/zh-TW/zh-SG/zh-HK)")]),v._v(" "),a("li",[v._v("修复:快捷键加载和保存问题")])]),v._v(" "),a("h2",{attrs:{id:"袋鼠数据库工具-v1-98-1-dev"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#袋鼠数据库工具-v1-98-1-dev"}},[v._v("#")]),v._v(" "),a("a",{attrs:{href:"/zh/download/v1.98.1.220904"}},[v._v("袋鼠数据库工具 v1.98.1 (Dev)")])]),v._v(" "),a("ul",[a("li",[v._v("数据网格增加当前单元格样式支持")]),v._v(" "),a("li",[v._v("SQLite: 重构表设计器")]),v._v(" "),a("li",[v._v("MySQL: 重构表设计器")]),v._v(" "),a("li",[v._v("PostgreSQL: 重构表设计器")]),v._v(" "),a("li",[v._v("规范化字段的长度/精度/小数位支持")]),v._v(" "),a("li",[v._v("更新中文语言支持(zh-CN/zh-TW/zh-SG/zh-HK)")]),v._v(" "),a("li",[v._v("修复:ODBC CHAR/WCHAR 类型读取问题")]),v._v(" "),a("li",[v._v("修复:连接对话框丢失驱动问题")]),v._v(" "),a("li",[v._v("修复:修复起始页拖放建立连接问题")]),v._v(" "),a("li",[v._v("修复:MySQL/MariaDB 乱码问题")])]),v._v(" "),a("h2",{attrs:{id:"袋鼠数据库工具-v1-97-1-dev"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#袋鼠数据库工具-v1-97-1-dev"}},[v._v("#")]),v._v(" "),a("a",{attrs:{href:"/zh/download/v1.97.1.220731"}},[v._v("袋鼠数据库工具 v1.97.1 (Dev)")])]),v._v(" "),a("ul",[a("li",[v._v("更新 Windows 打包脚本,修复依赖库缺失问题")]),v._v(" "),a("li",[v._v("更新 ArchLinux 打包脚本,修复依赖库缺失问题")]),v._v(" "),a("li",[v._v("升级关闭确认对话框")]),v._v(" "),a("li",[v._v("重构网格组件(GtkColumnView)")]),v._v(" "),a("li",[v._v("Windows 安装脚本增加 ODBC 驱动支持")]),v._v(" "),a("li",[v._v("改进 Windows 安装包本地化支持")]),v._v(" "),a("li",[v._v("改进对象浏览视图的排序支持")]),v._v(" "),a("li",[v._v("完善内容视图查询构建器")]),v._v(" "),a("li",[v._v("改进 SQL 构建器")]),v._v(" "),a("li",[v._v("改进 DBNull 支持")]),v._v(" "),a("li",[v._v("更新中文语言支持")]),v._v(" "),a("li",[v._v("修复 ODBC 连接相关问题")])]),v._v(" "),a("h2",{attrs:{id:"袋鼠数据库工具-v1-10-2-beta"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#袋鼠数据库工具-v1-10-2-beta"}},[v._v("#")]),v._v(" "),a("a",{attrs:{href:"/zh/download/v1.10.2.220701"}},[v._v("袋鼠数据库工具 v1.10.2 (Beta)")])]),v._v(" "),a("ol",[a("li",[v._v("删除版本过期时间")]),v._v(" "),a("li",[v._v("Windows: 依赖库升级到最新版")])]),v._v(" "),a("h2",{attrs:{id:"袋鼠数据库工具-v1-96-1-dev"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#袋鼠数据库工具-v1-96-1-dev"}},[v._v("#")]),v._v(" "),a("a",{attrs:{href:"/zh/download/v1.96.1.220701"}},[v._v("袋鼠数据库工具 v1.96.1 (Dev)")])]),v._v(" "),a("ul",[a("li",[v._v("用 ODBC 替换 libgda")]),v._v(" "),a("li",[v._v("添加了通用数据库支持")]),v._v(" "),a("li",[v._v("更新中文语言支持")])]),v._v(" "),a("h2",{attrs:{id:"袋鼠数据库工具-v1-95-1-dev"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#袋鼠数据库工具-v1-95-1-dev"}},[v._v("#")]),v._v(" "),a("a",{attrs:{href:"/zh/download/v1.95.1.220601"}},[v._v("袋鼠数据库工具 v1.95.1 (Dev)")])]),v._v(" "),a("ul",[a("li",[v._v("MySQL: 增加角色设计器")]),v._v(" "),a("li",[v._v("MySQL: 增加架构设计器")]),v._v(" "),a("li",[v._v("MySQL: 增加数据库设计器")]),v._v(" "),a("li",[v._v("MariaDB: 增加角色设计器")]),v._v(" "),a("li",[v._v("MariaDB: 增加架构设计器")]),v._v(" "),a("li",[v._v("MariaDB: 增加数据库设计器")]),v._v(" "),a("li",[v._v("PostgreSQL: 增加角色设计器")]),v._v(" "),a("li",[v._v("PostgreSQL: 增加架构设计器")]),v._v(" "),a("li",[v._v("PostgreSQL: 增加数据库设计器")]),v._v(" "),a("li",[v._v("更新对象浏览视图:支持架构和数据库对象")]),v._v(" "),a("li",[v._v("重构对象树上下文菜单")]),v._v(" "),a("li",[v._v("动态绑定页签图标和标题为对象浏览器标题和图标")]),v._v(" "),a("li",[v._v("更新中文语言支持")])]),v._v(" "),a("div",[a("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),v._v(" "),a("script2",{attrs:{type:"text/javascript"}},[v._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),v._v(" "),a("h2",{attrs:{id:"袋鼠数据库工具-v1-94-1-dev"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#袋鼠数据库工具-v1-94-1-dev"}},[v._v("#")]),v._v(" "),a("a",{attrs:{href:"/zh/download/v1.94.1.220501"}},[v._v("袋鼠数据库工具 v1.94.1 (Dev)")])]),v._v(" "),a("ul",[a("li",[v._v("MySQL: 增加函数设计器")]),v._v(" "),a("li",[v._v("MySQL: 增加存储过程设计器")]),v._v(" "),a("li",[v._v("MySQL: 增加用户设计器")]),v._v(" "),a("li",[v._v("MariaDB: 增加函数设计器")]),v._v(" "),a("li",[v._v("MariaDB: 增加存储过程设计器")]),v._v(" "),a("li",[v._v("MariaDB: 增加用户设计器")]),v._v(" "),a("li",[v._v("PostgreSQL: 增加函数设计器")]),v._v(" "),a("li",[v._v("PostgreSQL: 增加存储过程设计器")]),v._v(" "),a("li",[v._v("PostgreSQL: 增加用户设计器")]),v._v(" "),a("li",[v._v("对话框增加运行时版本支持")]),v._v(" "),a("li",[v._v("更新中文语言支持")]),v._v(" "),a("li",[v._v("修复: 工作空间打开问题")]),v._v(" "),a("li",[v._v("修复: 自动缓存文件保存问题")])]),v._v(" "),a("h2",{attrs:{id:"袋鼠数据库工具-v1-93-1-dev"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#袋鼠数据库工具-v1-93-1-dev"}},[v._v("#")]),v._v(" "),a("a",{attrs:{href:"/zh/download/v1.93.1.220401"}},[v._v("袋鼠数据库工具 v1.93.1 (Dev)")])]),v._v(" "),a("ul",[a("li",[v._v("SQLite: 增加索引设计器支持")]),v._v(" "),a("li",[v._v("SQLite: 增加触发器设计支持")]),v._v(" "),a("li",[v._v("SQLite: 重构视图设计器并改进设计支持")]),v._v(" "),a("li",[v._v("MySQL: 对象浏览视图增加索引对象支持")]),v._v(" "),a("li",[v._v("MySQL: 对象浏览视图增加触发器对象支持")]),v._v(" "),a("li",[v._v("MySQL: 增加索引设计器支持")]),v._v(" "),a("li",[v._v("MySQL: 增加触发器设计支持")]),v._v(" "),a("li",[v._v("MySQL: 重构视图设计器并改进设计支持")]),v._v(" "),a("li",[v._v("MariaDB: 对象浏览视图增加索引对象支持")]),v._v(" "),a("li",[v._v("MariaDB: 对象浏览视图增加触发器对象支持")]),v._v(" "),a("li",[v._v("MariaDB: 增加索引设计器支持")]),v._v(" "),a("li",[v._v("MariaDB: 增加触发器设计支持")]),v._v(" "),a("li",[v._v("MariaDB: 重构视图设计器并改进设计支持")]),v._v(" "),a("li",[v._v("PostgreSQL: 增加索引设计器支持")]),v._v(" "),a("li",[v._v("PostgreSQL: 增加触发器设计支持")]),v._v(" "),a("li",[v._v("PostgreSQL: 重构视图设计器并改进设计支持")]),v._v(" "),a("li",[v._v("增加连接详情页")]),v._v(" "),a("li",[v._v("更新数据库仓库对象树图标")]),v._v(" "),a("li",[v._v("更新中文语言支持")]),v._v(" "),a("li",[v._v("重构起始页,增加连接详情页")]),v._v(" "),a("li",[v._v("重构数据库仓库视图")]),v._v(" "),a("li",[v._v("修复: 视图设计器恢复问题")]),v._v(" "),a("li",[v._v("修复: 工作空间工具栏菜单加载问题")]),v._v(" "),a("li",[v._v("修复: 下拉列表控件活动id为空时崩溃问题")]),v._v(" "),a("li",[v._v("修复: 编辑器有选中文本时输入错误问题")]),v._v(" "),a("li",[v._v("修复: 无法加载 MySQL/MariaDB 视图信息")]),v._v(" "),a("li",[v._v("修复: PostgreSQL连接的数据库名为空时崩溃")])]),v._v(" "),a("h2",{attrs:{id:"袋鼠数据库工具-v1-92-1-dev"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#袋鼠数据库工具-v1-92-1-dev"}},[v._v("#")]),v._v(" "),a("a",{attrs:{href:"/zh/download/v1.92.1.220228"}},[v._v("袋鼠数据库工具 v1.92.1 (Dev)")])]),v._v(" "),a("ol",[a("li",[v._v("增加对象浏览器视图(表格化 + 图表化)")]),v._v(" "),a("li",[v._v("对象浏览器添加搜索和排序支持")]),v._v(" "),a("li",[v._v("SQLite: 加载对象数据")]),v._v(" "),a("li",[v._v("MariaDB: 加载对象数据")]),v._v(" "),a("li",[v._v("MySQL: 加载对象数据")]),v._v(" "),a("li",[v._v("PostgreSQL: 加载对象数据")]),v._v(" "),a("li",[v._v("对象浏览器添加对象上下文菜单")]),v._v(" "),a("li",[v._v("实现表和视图的上下文菜单")]),v._v(" "),a("li",[v._v("重构工作空间工具栏")]),v._v(" "),a("li",[v._v("更新数据库对象图标")]),v._v(" "),a("li",[v._v("更新中文语言支持")])]),v._v(" "),a("h2",{attrs:{id:"袋鼠数据库工具-v1-91-1-dev"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#袋鼠数据库工具-v1-91-1-dev"}},[v._v("#")]),v._v(" "),a("a",{attrs:{href:"/zh/download/v1.91.1.220128"}},[v._v("袋鼠数据库工具 v1.91.1 (Dev)")])]),v._v(" "),a("ol",[a("li",[v._v("重构主界面")]),v._v(" "),a("li",[v._v("重构导入导出界面")]),v._v(" "),a("li",[v._v("重构智能提示")]),v._v(" "),a("li",[v._v("重构工具栏")]),v._v(" "),a("li",[v._v("重构可视化SQL构建器")]),v._v(" "),a("li",[v._v("重构过期消息通知功能")]),v._v(" "),a("li",[v._v("改进标题栏皮肤支持")]),v._v(" "),a("li",[v._v("改进对话框样式")]),v._v(" "),a("li",[v._v("拆分设置文件为界面配置文件和用户连接配置文件")]),v._v(" "),a("li",[v._v("移动智能提示文件到用户文档目录")]),v._v(" "),a("li",[v._v("更新中文语言翻译(zh-CN/zh-TW/zh-SG/zh-HK)")]),v._v(" "),a("li",[v._v("修复: 无法打开链接")]),v._v(" "),a("li",[v._v("修复: 生成无效插入SQL(user_name -> user__name)")]),v._v(" "),a("li",[v._v("修复: 模型视图点击崩溃")]),v._v(" "),a("li",[v._v("修复: DSV 格式额外列")]),v._v(" "),a("li",[v._v("修复: 可伸缩图片尺寸问题")]),v._v(" "),a("li",[v._v("修复: 修复控制台警告消息")])]),v._v(" "),a("div",[a("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),v._v(" "),a("script2",{attrs:{type:"text/javascript"}},[v._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),v._v(" "),a("h2",{attrs:{id:"袋鼠数据库工具-v1-90-1-dev"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#袋鼠数据库工具-v1-90-1-dev"}},[v._v("#")]),v._v(" "),a("a",{attrs:{href:"/zh/download/v1.90.1.211231"}},[v._v("袋鼠数据库工具 v1.90.1 (Dev)")])]),v._v(" "),a("ol",[a("li",[v._v("升级核心界面库为 GTK4 (GTK3 -> GTK4 4.5)")]),v._v(" "),a("li",[v._v("升级组件界面库为 GTK4 (libhandy -> libadwaita 1.0 beta)")]),v._v(" "),a("li",[v._v("升级编辑器组件为 GtkSoureceView5 (4 -> 5)")]),v._v(" "),a("li",[v._v("合并系统配置对话框和快捷键对话框")]),v._v(" "),a("li",[v._v("编辑器视图添加文档概览图边栏")]),v._v(" "),a("li",[v._v("编辑器视图支持选择配色方案")]),v._v(" "),a("li",[v._v("添加开发模式支持")]),v._v(" "),a("li",[v._v("MySQL: 增加用户和权限管理支持")]),v._v(" "),a("li",[v._v("MariaDB: 增加用户和权限管理支持")]),v._v(" "),a("li",[v._v("PostgreSQL: 增加用户和权限管理支持")])]),v._v(" "),a("h2",{attrs:{id:"袋鼠数据库工具-v1-10-1-beta"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#袋鼠数据库工具-v1-10-1-beta"}},[v._v("#")]),v._v(" "),a("a",{attrs:{href:"/zh/download/v1.10.1.210731"}},[v._v("袋鼠数据库工具 v1.10.1 (Beta)")])]),v._v(" "),a("ol",[a("li",[v._v("新增可视化查询设计器对话框")]),v._v(" "),a("li",[v._v("新增值选择与编辑对话框")]),v._v(" "),a("li",[v._v("数据表格上下文菜单增加图标")]),v._v(" "),a("li",[v._v("增加单元值算法复制功能")]),v._v(" "),a("li",[v._v("增加单元值算法更新功能")]),v._v(" "),a("li",[v._v("改进连接对话框命名与保存机制")]),v._v(" "),a("li",[v._v("改进工具栏按钮布局")]),v._v(" "),a("li",[v._v("改进浮点类型支持")]),v._v(" "),a("li",[v._v("更新中文语言支持")]),v._v(" "),a("li",[v._v("修复: Text 类型无法生成正确的SQL(PostgreSQL)")]),v._v(" "),a("li",[v._v("修复: 设计器勾选框控件无响应")]),v._v(" "),a("li",[v._v("修复: 连接服务器时崩溃(MySQL/PostgreSQL)")]),v._v(" "),a("li",[v._v("修复: 无法拉取视图源代码(PostgreSQL)")]),v._v(" "),a("li",[v._v("修复: MacOS 无法切换为中文")]),v._v(" "),a("li",[v._v("修复: 相同单元格值时生成无效的SQL")])]),v._v(" "),a("h2",{attrs:{id:"袋鼠数据库工具-v1-9-1-dev"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#袋鼠数据库工具-v1-9-1-dev"}},[v._v("#")]),v._v(" "),a("a",{attrs:{href:"/zh/download/v1.9.1.210531"}},[v._v("袋鼠数据库工具 v1.9.1 (Dev)")])]),v._v(" "),a("ol",[a("li",[v._v("新增数据视图设计器")]),v._v(" "),a("li",[v._v("新增工具栏控件(兼容GTK4)")]),v._v(" "),a("li",[v._v("升级底层库: libgda 6.0.1")]),v._v(" "),a("li",[v._v("改进 MySQL/MariaDB 连接稳定性")]),v._v(" "),a("li",[v._v("重构数据库仓库上下文菜单")]),v._v(" "),a("li",[v._v("SQLite: 实现重命名支持")]),v._v(" "),a("li",[v._v("MySQL/MariaDB: 实现重命名功能")]),v._v(" "),a("li",[v._v("实现数据视图 新建/设计/源码/重命名/转存/复制名称")]),v._v(" "),a("li",[v._v("重构查询视图工具栏")]),v._v(" "),a("li",[v._v("更新中文语言支持(zh-CN/zh-TW/zh-SG/zh-HK)")]),v._v(" "),a("li",[v._v("数据网格添加列重排支持")]),v._v(" "),a("li",[v._v("改进 日期时间/时间戳 类型显示")]),v._v(" "),a("li",[v._v("新增几何坐标类型支持")]),v._v(" "),a("li",[v._v("新增大型文本类型支持")]),v._v(" "),a("li",[v._v("改进 Windows 和 MacOS 平台安装包")]),v._v(" "),a("li",[v._v("修复: 数据库仓库目录树展开图标无响应")]),v._v(" "),a("li",[v._v("修复: MySQL/MariaDB NULL/空字符串显示问题")]),v._v(" "),a("li",[v._v("修复: 模型中无法显示数据视图字段问题")]),v._v(" "),a("li",[v._v("修复: 模型中导入对象时无法自动扩充视图")]),v._v(" "),a("li",[v._v("修复: 无法加载索引条目(MySQL)")]),v._v(" "),a("li",[v._v("修复:无法编辑布尔类型数据")]),v._v(" "),a("li",[v._v("修复:加载智能提示数据时的告警消息")])]),v._v(" "),a("div",[a("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),v._v(" "),a("script2",{attrs:{type:"text/javascript"}},[v._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),v._v(" "),a("h2",{attrs:{id:"袋鼠数据库工具-v1-8-1-dev"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#袋鼠数据库工具-v1-8-1-dev"}},[v._v("#")]),v._v(" "),a("a",{attrs:{href:"/zh/download/v1.8.1.210430"}},[v._v("袋鼠数据库工具 v1.8.1 (Dev)")])]),v._v(" "),a("ol",[a("li",[v._v("改进工具栏支持(默认显示文本和大图标)")]),v._v(" "),a("li",[v._v("改进查询视图标题,支持编号")]),v._v(" "),a("li",[v._v("仅支持同一对象视图的唯一实例;")]),v._v(" "),a("li",[v._v("更新工具分类")]),v._v(" "),a("li",[v._v("模型视图工具栏添加从数据库导入、导出按钮")]),v._v(" "),a("li",[v._v("模型视图支持从数据库导入对象")]),v._v(" "),a("li",[v._v("模型视图支持表和视图节点数据保存和加载")]),v._v(" "),a("li",[v._v("模型视图增加修改及关闭提醒")]),v._v(" "),a("li",[v._v("增加数据库实体选择对话框")]),v._v(" "),a("li",[v._v("改进模型绘制效果(表/视图/图形)")]),v._v(" "),a("li",[v._v("修复: 数据表视图自定义查询页无法显示字段的问题")]),v._v(" "),a("li",[v._v("修复:苹果版本增加插件目录变量定义(支持插件加载)")]),v._v(" "),a("li",[v._v("修复:打开模型文件时模型不可见")])]),v._v(" "),a("h2",{attrs:{id:"袋鼠数据库工具-v1-7-1-dev"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#袋鼠数据库工具-v1-7-1-dev"}},[v._v("#")]),v._v(" "),a("a",{attrs:{href:"/zh/download/v1.7.1.210331"}},[v._v("袋鼠数据库工具 v1.7.1 (Dev)")])]),v._v(" "),a("ol",[a("li",[v._v("实现十六进制编辑器支持 (已完成)")]),v._v(" "),a("li",[v._v("实现工作空间页样式支持 (已完成)")]),v._v(" "),a("li",[v._v("增加可独立查看日志支持 (已完成)")]),v._v(" "),a("li",[v._v("增加界面快捷键定制支持 (已完成)")]),v._v(" "),a("li",[v._v("增加数据图表支持 (前期开发中)")]),v._v(" "),a("li",[v._v("数据库模型化支持 (前期开发中)\n"),a("ul",[a("li",[v._v("支持模型文件加载和保存功能")]),v._v(" "),a("li",[v._v("支持模型节点复制与粘贴功能")]),v._v(" "),a("li",[v._v("支持模型节点多选功能")])])]),v._v(" "),a("li",[v._v("支持拖放 SQLite 数据库到连接首页并自动打开 #76")]),v._v(" "),a("li",[v._v("重构应用首页,方便用户操作")]),v._v(" "),a("li",[v._v("支持复制数据为 LUA 表结构")]),v._v(" "),a("li",[v._v("改进对象导航树操作体验")]),v._v(" "),a("li",[v._v("支持保存和恢复工作空间界面布局功能,缓存正在编辑的内容")]),v._v(" "),a("li",[v._v("增加更多语言支持")]),v._v(" "),a("li",[v._v("改进日志支持(日志消息中增加数据库名和连接名)")]),v._v(" "),a("li",[v._v("增加SQL脚本文件监测支持")]),v._v(" "),a("li",[v._v("重构数据表视图支持显示特性工具栏")]),v._v(" "),a("li",[v._v("打开连接时默认展示全部数据表")]),v._v(" "),a("li",[v._v("重构对象树视图改进对象树显示效果")]),v._v(" "),a("li",[v._v("增加快捷键对话框,支持查找和配置快捷键")]),v._v(" "),a("li",[v._v("改进标题栏样式支持,支持颜色和图片背景快捷配置")]),v._v(" "),a("li",[v._v("增加弹出桌面气泡消息支持")]),v._v(" "),a("li",[v._v("增加关闭页面确认对话框支持")]),v._v(" "),a("li",[v._v("重构数据表、设计器、模型页工具栏控件,支持图标和图标文字两种显示方式")]),v._v(" "),a("li",[v._v("修复: Access denied: you need the SUPER privilege(s) for this operation")]),v._v(" "),a("li",[v._v("修复: 删除对象后同步关闭其打开的视图")]),v._v(" "),a("li",[v._v("修复: 重命名对象后同步更新打开的视图")]),v._v(" "),a("li",[v._v("修复:苹果系统无法获得系统名称的错误")])]),v._v(" "),a("div",[a("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),v._v(" "),a("script2",{attrs:{type:"text/javascript"}},[v._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),v._v(" "),a("h2",{attrs:{id:"袋鼠数据库工具-v1-6-1-dev"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#袋鼠数据库工具-v1-6-1-dev"}},[v._v("#")]),v._v(" "),a("a",{attrs:{href:"/zh/download/v1.6.1.210131"}},[v._v("袋鼠数据库工具 v1.6.1 (Dev)")])]),v._v(" "),a("ol",[a("li",[v._v("实现十六进制编辑器支持 (已完成)")]),v._v(" "),a("li",[v._v("实现工作空间页样式支持 (已完成)")]),v._v(" "),a("li",[v._v("增加可独立查看日志支持 (已完成)")]),v._v(" "),a("li",[v._v("增加界面快捷键定制支持 (已完成)")]),v._v(" "),a("li",[v._v("增加数据图表支持 (前期开发中)")]),v._v(" "),a("li",[v._v("数据库模型化支持 (前期开发中)")])]),v._v(" "),a("h2",{attrs:{id:"袋鼠数据库工具-v1-5-1-dev"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#袋鼠数据库工具-v1-5-1-dev"}},[v._v("#")]),v._v(" "),a("a",{attrs:{href:"/zh/download/v1.5.1.201231"}},[v._v("袋鼠数据库工具 v1.5.1 (Dev)")])]),v._v(" "),a("ol",[a("li",[v._v("实现十六进制编辑器支持 (已完成)")]),v._v(" "),a("li",[v._v("实现工作空间页样式支持 (已完成)")]),v._v(" "),a("li",[v._v("增加数据图表支持 (前期开发中)")]),v._v(" "),a("li",[v._v("数据库模型化支持 (前期开发中)")])]),v._v(" "),a("h2",{attrs:{id:"袋鼠数据库工具-v1-0-6-beta"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#袋鼠数据库工具-v1-0-6-beta"}},[v._v("#")]),v._v(" "),a("a",{attrs:{href:"/zh/download/v1.0.6.201109"}},[v._v("袋鼠数据库工具 v1.0.6 (Beta)")])]),v._v(" "),a("ol",[a("li",[v._v("更新域名为 www.datatable.online")])]),v._v(" "),a("h2",{attrs:{id:"袋鼠数据库工具-v1-3-1-dev"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#袋鼠数据库工具-v1-3-1-dev"}},[v._v("#")]),v._v(" "),a("a",{attrs:{href:"/zh/download/v1.3.1.201102"}},[v._v("袋鼠数据库工具 v1.3.1 (Dev)")])]),v._v(" "),a("ol",[a("li",[v._v("实现十六进制编辑器支持 (已完成)")]),v._v(" "),a("li",[v._v("增加数据图表支持 (前期开发中)")]),v._v(" "),a("li",[v._v("增加数据库连接页新样式 (前期开发中)")])]),v._v(" "),a("h2",{attrs:{id:"袋鼠数据库工具-v1-0-5-beta"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#袋鼠数据库工具-v1-0-5-beta"}},[v._v("#")]),v._v(" "),a("a",{attrs:{href:"/zh/download/v1.0.5.201019"}},[v._v("袋鼠数据库工具 v1.0.5 (Beta)")])]),v._v(" "),a("ol",[a("li",[v._v("实现单元格值上下文菜单")]),v._v(" "),a("li",[v._v("改进数据库空值显示和编辑支持")]),v._v(" "),a("li",[v._v("改进单元格数据文本视图,支持编码检测和转换")]),v._v(" "),a("li",[v._v("改善中国大陆用户可访问性:显示版本更新列表")]),v._v(" "),a("li",[v._v("提升 MySQL/MariaDB 连接稳定性")]),v._v(" "),a("li",[v._v("修复: 切换单元格数据查看视图错误")]),v._v(" "),a("li",[v._v("修复: 复制数据列长短名错误")])]),v._v(" "),a("div",[a("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),v._v(" "),a("script2",{attrs:{type:"text/javascript"}},[v._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),v._v(" "),a("h2",{attrs:{id:"袋鼠数据库工具-v0-99-3-beta"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#袋鼠数据库工具-v0-99-3-beta"}},[v._v("#")]),v._v(" "),a("a",{attrs:{href:"/zh/download/v0.99.3.200921"}},[v._v("袋鼠数据库工具 v0.99.3 (Beta)")])]),v._v(" "),a("ol",[a("li",[v._v("重构了底层容器和服务模块")]),v._v(" "),a("li",[v._v("改善了查看数据表和SQL查询性能")]),v._v(" "),a("li",[v._v("更新了数据表格工具栏按钮图标")]),v._v(" "),a("li",[v._v("修复: 无法打开 MariaDB 数据库")])]),v._v(" "),a("h2",{attrs:{id:"袋鼠数据库工具-v0-99-2-beta"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#袋鼠数据库工具-v0-99-2-beta"}},[v._v("#")]),v._v(" "),a("a",{attrs:{href:"/zh/download/v0.99.2.200907"}},[v._v("袋鼠数据库工具 v0.99.2 (Beta)")])]),v._v(" "),a("ol",[a("li",[v._v("更新打包脚本: 制作 Mac OS X 安装程序包和便携式安装包")]),v._v(" "),a("li",[v._v("改进工具页面本地化支持")]),v._v(" "),a("li",[v._v("更新中文语言包(zh-CN/zh-TW/zh-HK/zh-SG)")]),v._v(" "),a("li",[v._v("修复: 提示 MySQL server has done away 后,没有自动\\手动重连 #63")]),v._v(" "),a("li",[v._v("修复: 无法加载认证插件 caching_sha2_password #64")]),v._v(" "),a("li",[v._v("修复: 控制台警告消息")])]),v._v(" "),a("h2",{attrs:{id:"袋鼠数据库工具-v0-99-1-beta"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#袋鼠数据库工具-v0-99-1-beta"}},[v._v("#")]),v._v(" "),a("a",{attrs:{href:"/zh/download/v0.99.1.200824"}},[v._v("袋鼠数据库工具 v0.99.1 (Beta)")])]),v._v(" "),a("ol",[a("li",[v._v("改进表设计器通知用户保存修改")]),v._v(" "),a("li",[v._v("改进消息对话框标题显示")]),v._v(" "),a("li",[v._v("改进表设计器预览页只显示修改部分SQL")]),v._v(" "),a("li",[v._v("更新SQLite/MySQL/PostgreSQL 元模型及数据")]),v._v(" "),a("li",[v._v("改进 Windows 安装程序显示许可证和多语言支持")]),v._v(" "),a("li",[v._v("Make kangaroo portable #59")])]),v._v(" "),a("h2",{attrs:{id:"袋鼠数据库工具-v0-33-1-dev"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#袋鼠数据库工具-v0-33-1-dev"}},[v._v("#")]),v._v(" "),a("a",{attrs:{href:"/zh/download/v0.33.1.200817"}},[v._v("袋鼠数据库工具 v0.33.1 (Dev)")])]),v._v(" "),a("ol",[a("li",[v._v("更新应用标题栏和页面导航栏样式")]),v._v(" "),a("li",[v._v("改进日期时间选取控件")]),v._v(" "),a("li",[v._v("改进日期时间网格单元渲染器")]),v._v(" "),a("li",[v._v("实现日期时间数据编辑保存")]),v._v(" "),a("li",[v._v("更新 Windows 部署脚本:包含插件库(libpeas)的加载器")]),v._v(" "),a("li",[v._v("更新构建脚本增加第三方依赖库(用于支持 PDF/地图/绘图)")]),v._v(" "),a("li",[v._v("更新构建脚本改进调试支持")]),v._v(" "),a("li",[v._v("修复: 无法显示动画图片(.gif)")])]),v._v(" "),a("h2",{attrs:{id:"袋鼠数据库工具-v0-32-1-dev"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#袋鼠数据库工具-v0-32-1-dev"}},[v._v("#")]),v._v(" "),a("a",{attrs:{href:"/zh/download/v0.32.1.200810"}},[v._v("袋鼠数据库工具 v0.32.1 (Dev)")])]),v._v(" "),a("ol",[a("li",[v._v("实现生成网页格式的数据库设计文档")]),v._v(" "),a("li",[v._v("实现生成 Markdown 格式的数据库设计文档")]),v._v(" "),a("li",[v._v("更新导入 / 导出 功能图标")])]),v._v(" "),a("div",[a("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),v._v(" "),a("script2",{attrs:{type:"text/javascript"}},[v._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),v._v(" "),a("h2",{attrs:{id:"袋鼠数据库工具-v0-31-1-dev"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#袋鼠数据库工具-v0-31-1-dev"}},[v._v("#")]),v._v(" "),a("a",{attrs:{href:"/zh/download/v0.31.1.200803"}},[v._v("袋鼠数据库工具 v0.31.1 (Dev)")])]),v._v(" "),a("ol",[a("li",[v._v("实现 BLOB 内容识别(文件类型识别)")]),v._v(" "),a("li",[v._v("实现 SQLite BLOB 类型数据处理(导入 / 导出 / 置空)")]),v._v(" "),a("li",[v._v("实现 MySQL BLOB 类型数据处理(导入 / 导出 / 置空)")]),v._v(" "),a("li",[v._v("实现 PostgreSQL BLOB 类型数据处理(导入 / 导出 / 置空)")]),v._v(" "),a("li",[v._v("实现以文本方式查看 BLOB 数据")]),v._v(" "),a("li",[v._v("应用紧凑样式到查找与搜索框")])]),v._v(" "),a("h2",{attrs:{id:"袋鼠数据库工具-v0-30-1-dev"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#袋鼠数据库工具-v0-30-1-dev"}},[v._v("#")]),v._v(" "),a("a",{attrs:{href:"/zh/download/v0.30.1.200727"}},[v._v("袋鼠数据库工具 v0.30.1 (Dev)")])]),v._v(" "),a("ol",[a("li",[v._v("插件系统增加应用相对搜索路径")]),v._v(" "),a("li",[v._v("增加数据查看面板和按钮")]),v._v(" "),a("li",[v._v("实现文本和图像查看器")]),v._v(" "),a("li",[v._v("界面按钮更新为瘦身平面样式")])]),v._v(" "),a("h2",{attrs:{id:"袋鼠数据库工具-v0-29-1-dev"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#袋鼠数据库工具-v0-29-1-dev"}},[v._v("#")]),v._v(" "),a("a",{attrs:{href:"/zh/download/v0.29.1.200713"}},[v._v("袋鼠数据库工具 v0.29.1 (Dev)")])]),v._v(" "),a("ol",[a("li",[v._v("实现插件扩展系统")]),v._v(" "),a("li",[v._v("实现一个简单的演示插件(example)")]),v._v(" "),a("li",[v._v("更新 ArchLinux and MacOSX 安装包脚本")]),v._v(" "),a("li",[v._v("更新便携式发布包(更具 *nix 风格)")])]),v._v(" "),a("h2",{attrs:{id:"袋鼠数据库工具-v0-28-1-dev"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#袋鼠数据库工具-v0-28-1-dev"}},[v._v("#")]),v._v(" "),a("a",{attrs:{href:"/zh/download/v0.28.1.200629"}},[v._v("袋鼠数据库工具 v0.28.1 (Dev)")])]),v._v(" "),a("ol",[a("li",[v._v("实现查找替换功能")]),v._v(" "),a("li",[v._v("更新中文语言翻译(zh-CN/zh-TW/zh-HK/zh-SG)")])]),v._v(" "),a("div",[a("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),v._v(" "),a("script2",{attrs:{type:"text/javascript"}},[v._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),v._v(" "),a("h2",{attrs:{id:"袋鼠数据库工具-v0-27-1-beta"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#袋鼠数据库工具-v0-27-1-beta"}},[v._v("#")]),v._v(" "),a("a",{attrs:{href:"/zh/download/v0.27.1.200622"}},[v._v("袋鼠数据库工具 v0.27.1 (Beta)")])]),v._v(" "),a("ol",[a("li",[v._v("改进 PostgreSQL 的智能提示数据")]),v._v(" "),a("li",[v._v("改进智能提示之自动完成样式(增加图标、过滤支持)")]),v._v(" "),a("li",[v._v("添加智能提示之函数参数自动提示功能")]),v._v(" "),a("li",[v._v("添加复制选中列头功能(长短名)")]),v._v(" "),a("li",[v._v("添加复制全部列头功能(TSV/CSV)")]),v._v(" "),a("li",[v._v("更新发布包命名格式")]),v._v(" "),a("li",[v._v("更新中文语言翻译")])]),v._v(" "),a("h2",{attrs:{id:"袋鼠数据库工具-v0-26-1-dev"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#袋鼠数据库工具-v0-26-1-dev"}},[v._v("#")]),v._v(" "),a("a",{attrs:{href:"/zh/download/v0.26.1.200615"}},[v._v("袋鼠数据库工具 v0.26.1 (Dev)")])]),v._v(" "),a("ol",[a("li",[v._v("支持智能提示数据挖掘(SQLite/MySQL/PostgreSQL)")]),v._v(" "),a("li",[v._v("支持编辑视图代码自动完成(v1)")])]),v._v(" "),a("h2",{attrs:{id:"袋鼠数据库工具-v0-25-1-beta"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#袋鼠数据库工具-v0-25-1-beta"}},[v._v("#")]),v._v(" "),a("a",{attrs:{href:"/zh/download/v0.25.1.200601"}},[v._v("袋鼠数据库工具 v0.25.1 (Beta)")])]),v._v(" "),a("ol",[a("li",[v._v("为数据库空间导航栏添加上下文菜单")]),v._v(" "),a("li",[v._v("为对象树数据库和模式节点添加查询.")]),v._v(" "),a("li",[v._v("更新中文翻译(zh-CN/zh-TW/zh-HK/zh-SG).")]),v._v(" "),a("li",[v._v("修复: PostgreSQL 12: 表和视图未显示 #46")]),v._v(" "),a("li",[v._v("修复: MariaDB 10.5: 不存在的列 cons.ENFORCED #47")]),v._v(" "),a("li",[v._v("修复: PostgreSQL 12: 不存在的列 c.consrc #48")]),v._v(" "),a("li",[v._v("修复: PostgreSQL 11.7 / 9.6: 数据行不存在 #49")]),v._v(" "),a("li",[v._v("修复: MySQL 5.7.30: information_schema 不存在表 'CHECK_CONSTRAINTS' #50")]),v._v(" "),a("li",[v._v("修复: PostgreSQL 9.6: 不存在的列 c.relispartition #51")]),v._v(" "),a("li",[v._v("修复: PostgreSQL: 数据库模式显示错误")]),v._v(" "),a("li",[v._v("修复: 数据网格列头显示错误(含有下划线字符_)")])]),v._v(" "),a("h2",{attrs:{id:"袋鼠数据库工具-v0-24-1-dev"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#袋鼠数据库工具-v0-24-1-dev"}},[v._v("#")]),v._v(" "),a("a",{attrs:{href:"/zh/download/v0.24.1.200525"}},[v._v("袋鼠数据库工具 v0.24.1 (Dev)")])]),v._v(" "),a("ol",[a("li",[v._v("新增 SQL 格式化模块,支持美化和简化SQL.")]),v._v(" "),a("li",[v._v("新增 archlinux 安装器(基于 HowardZorn 提交的PR #45 ).")]),v._v(" "),a("li",[v._v("新增 苹果平台 安装器")])]),v._v(" "),a("div",[a("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),v._v(" "),a("script2",{attrs:{type:"text/javascript"}},[v._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),v._v(" "),a("h2",{attrs:{id:"袋鼠数据库工具-v0-23-1-beta"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#袋鼠数据库工具-v0-23-1-beta"}},[v._v("#")]),v._v(" "),a("a",{attrs:{href:"/zh/download/v0.23.1.200518"}},[v._v("袋鼠数据库工具 v0.23.1 (Beta)")])]),v._v(" "),a("ol",[a("li",[v._v("改进日期、日期时间选取控件.")]),v._v(" "),a("li",[v._v("改进标题栏背景图片(颜色).")]),v._v(" "),a("li",[v._v("改进网格列标题.")]),v._v(" "),a("li",[v._v("更新中文翻译.")]),v._v(" "),a("li",[v._v("修复: 不能更新日期、日期时间类型数据.")]),v._v(" "),a("li",[v._v("修复: 不能更新浮点类型数据.")]),v._v(" "),a("li",[v._v("修复: 不能更新数值类型(Numeric)")]),v._v(" "),a("li",[v._v("修复: MySQL: 不能更新字符串数组类型(Char)")]),v._v(" "),a("li",[v._v("修复: PostgreSQL: SQL中名字错误")]),v._v(" "),a("li",[v._v("修复: 数据网格工具栏状态错误.")])]),v._v(" "),a("h2",{attrs:{id:"袋鼠数据库工具-v0-22-1-beta"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#袋鼠数据库工具-v0-22-1-beta"}},[v._v("#")]),v._v(" "),a("a",{attrs:{href:"/zh/download/v0.22.1.200511"}},[v._v("袋鼠数据库工具 v0.22.1 (Beta)")])]),v._v(" "),a("ol",[a("li",[v._v("增加中文语言翻译(简体中文[zh-CN//zh-SG]、繁体中文[zh-TW/zh-HK])")]),v._v(" "),a("li",[v._v("SQLite: 新建数据库检查并增加扩展名(.sqlite).")]),v._v(" "),a("li",[v._v("改进设计器、删除、刷新体验,可以定位到原对象.")]),v._v(" "),a("li",[v._v("改进 Windows 平台自动化部署和安装脚本.")]),v._v(" "),a("li",[v._v("修复: 重命名时奔溃的bug.")]),v._v(" "),a("li",[v._v("修复: 删除对象时崩溃的bug.")]),v._v(" "),a("li",[v._v("修复: 保存表设计器修改时崩溃的bug")]),v._v(" "),a("li",[v._v("修复: 空表无法增加数据行")]),v._v(" "),a("li",[v._v("修复: 及时模式无法保存追加行")])]),v._v(" "),a("h2",{attrs:{id:"袋鼠数据库工具-v0-21-1-beta"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#袋鼠数据库工具-v0-21-1-beta"}},[v._v("#")]),v._v(" "),a("a",{attrs:{href:"/zh/download/v0.21.1.200504"}},[v._v("袋鼠数据库工具 v0.21.1 (Beta)")])]),v._v(" "),a("ol",[a("li",[v._v("重构整个DataGrid,为了更好的用户体验")]),v._v(" "),a("li",[v._v("DataGrid 支持三种编辑模式: LIVE / CACHE / TRANSACTION")]),v._v(" "),a("li",[v._v("DataGrid 支持复制粘贴多行操作")]),v._v(" "),a("li",[v._v("当粘贴多行时,自动更新编辑模式为 CACHE 模式")]),v._v(" "),a("li",[v._v("修复: 查询构建器 where 子句表达式错误")])]),v._v(" "),a("h2",{attrs:{id:"袋鼠数据库工具-v0-20-1-dev"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#袋鼠数据库工具-v0-20-1-dev"}},[v._v("#")]),v._v(" "),a("a",{attrs:{href:"/zh/download/v0.20.1.200420"}},[v._v("袋鼠数据库工具 v0.20.1 (Dev)")])]),v._v(" "),a("ol",[a("li",[v._v("数据网格实现复制数据行到剪贴板功能(TSV 格式)")]),v._v(" "),a("li",[v._v("重构表结构设计器弹出菜单.")]),v._v(" "),a("li",[v._v("表结构设计器实现克隆功能.")]),v._v(" "),a("li",[v._v("表结构设计器实现添加功能.")]),v._v(" "),a("li",[v._v("表结构设计器实现多行支持(删除/上移/下移).")]),v._v(" "),a("li",[v._v("表结构设计器实现复制功能.")]),v._v(" "),a("li",[v._v("表结构设计器实现剪切功能.")]),v._v(" "),a("li",[v._v("表结构设计器实现粘贴功能.")]),v._v(" "),a("li",[v._v("改进数据网格中文本处理性能.")])]),v._v(" "),a("div",[a("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),v._v(" "),a("script2",{attrs:{type:"text/javascript"}},[v._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),v._v(" "),a("h2",{attrs:{id:"袋鼠数据库工具-v0-19-1-dev"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#袋鼠数据库工具-v0-19-1-dev"}},[v._v("#")]),v._v(" "),a("a",{attrs:{href:"/zh/download/v0.19.1.200413"}},[v._v("袋鼠数据库工具 v0.19.1 (Dev)")])]),v._v(" "),a("ol",[a("li",[v._v("对象树上实现复制对象名称(长短名).")]),v._v(" "),a("li",[v._v("数据网格实现复制数据行为 SQL 语句(Insert/Update/Delete).")]),v._v(" "),a("li",[v._v("数据网格实现复制数据行为 TSV 格式")]),v._v(" "),a("li",[v._v("数据网格实现复制数据行为 CSV 格式")]),v._v(" "),a("li",[v._v("数据网格实现复制数据行为 PHP 数组")]),v._v(" "),a("li",[v._v("数据网格实现复制数据行为 JSON 格式")]),v._v(" "),a("li",[v._v("改进分栏控件边样式.")]),v._v(" "),a("li",[v._v("修复: 格式化BLOB数据时崩溃")]),v._v(" "),a("li",[v._v("修复: 数据表无关键字字段时崩溃")]),v._v(" "),a("li",[v._v("修复: 数据表关键字段中包含下划线时崩溃(_)")]),v._v(" "),a("li",[v._v("修复: 字段空值告警")]),v._v(" "),a("li",[v._v("修复: 错误调用告警(to_string)")])]),v._v(" "),a("h2",{attrs:{id:"袋鼠数据库工具-v0-18-1-dev"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#袋鼠数据库工具-v0-18-1-dev"}},[v._v("#")]),v._v(" "),a("a",{attrs:{href:"/zh/download/v0.18.1.200406"}},[v._v("袋鼠数据库工具 v0.18.1 (Dev)")])]),v._v(" "),a("ol",[a("li",[v._v("加密保存用户密码.")]),v._v(" "),a("li",[v._v("数据网格支持插入、克隆、删除操作.")]),v._v(" "),a("li",[v._v("开始视图中支持数据库连接克隆")]),v._v(" "),a("li",[v._v("数据库对象树支持导出表结构SQL到剪贴板和文件")]),v._v(" "),a("li",[v._v("数据库对象树支持导出表结构SQL到编辑器中")]),v._v(" "),a("li",[v._v("数据库对象树支持刷新操作")]),v._v(" "),a("li",[v._v("改进工作区视图标题页展示行为")]),v._v(" "),a("li",[v._v("修复: 修复目录树回车键行为")]),v._v(" "),a("li",[v._v("修复: 修复打开表时崩溃行为(有空值)")])]),v._v(" "),a("h2",{attrs:{id:"袋鼠数据库工具-v0-17-0-dev"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#袋鼠数据库工具-v0-17-0-dev"}},[v._v("#")]),v._v(" "),a("a",{attrs:{href:"/zh/download/v0.17.0.200323"}},[v._v("袋鼠数据库工具 v0.17.0 (Dev)")])]),v._v(" "),a("ol",[a("li",[v._v("支持SSH隧道方式连接数据库 (Windows, Linux/Unix and MacOS)")]),v._v(" "),a("li",[v._v("数据库连接对话框增加连接测试功能")]),v._v(" "),a("li",[v._v("重构数据表格上下文菜单")]),v._v(" "),a("li",[v._v("数据库对象树菜单增加导出SQL(剪贴板和文件)菜单")]),v._v(" "),a("li",[v._v("实现数据表格选择菜单功能(全选和反选)")]),v._v(" "),a("li",[v._v("实现数据表格跳转到指定行菜单")]),v._v(" "),a("li",[v._v("修复: 切换表格和表单时崩溃")])]),v._v(" "),a("h2",{attrs:{id:"袋鼠数据库工具-v0-16-0-dev"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#袋鼠数据库工具-v0-16-0-dev"}},[v._v("#")]),v._v(" "),a("a",{attrs:{href:"/zh/download/v0.16.0.200316"}},[v._v("袋鼠数据库工具 v0.16.0 (Dev)")])]),v._v(" "),a("ol",[a("li",[v._v("数据库连接支持SSH隧道(Windows 未通过测试).")]),v._v(" "),a("li",[v._v("数据浏览页支持输入页面号切换")]),v._v(" "),a("li",[v._v("改进对话框中的开关控件布局")]),v._v(" "),a("li",[v._v("修复:Windows 版不能打开链接")]),v._v(" "),a("li",[v._v("修复: 日志文件序号问题")])]),v._v(" "),a("div",[a("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),v._v(" "),a("script2",{attrs:{type:"text/javascript"}},[v._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),v._v(" "),a("h2",{attrs:{id:"袋鼠数据库工具-v0-15-0-dev"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#袋鼠数据库工具-v0-15-0-dev"}},[v._v("#")]),v._v(" "),a("a",{attrs:{href:"/zh/download/v0.15.0.200302"}},[v._v("袋鼠数据库工具 v0.15.0 (Dev)")])]),v._v(" "),a("ol",[a("li",[v._v("更新并分享 openssl.vapi,集成加密模块保护用户敏感数据.")]),v._v(" "),a("li",[v._v("改进语言支持(消息模版, zh_Hans and zh_Hant)")]),v._v(" "),a("li",[v._v("改进首页资源加载性能(不在卡顿)")]),v._v(" "),a("li",[v._v("应用网络代理设置")]),v._v(" "),a("li",[v._v("Linux: 切换首页浏览器视图为版本更新时间线视图")]),v._v(" "),a("li",[v._v("使用下拉选择框代替编辑器")])]),v._v(" "),a("h2",{attrs:{id:"袋鼠数据库工具-v0-14-0-dev"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#袋鼠数据库工具-v0-14-0-dev"}},[v._v("#")]),v._v(" "),a("a",{attrs:{href:"/zh/download/v0.14.0.200217"}},[v._v("袋鼠数据库工具 v0.14.0 (Dev)")])]),v._v(" "),a("ol",[a("li",[v._v("SQLite: 支持创建新数据库")]),v._v(" "),a("li",[v._v("重构数据库树向下文菜单")]),v._v(" "),a("li",[v._v("集成OpenSSL用于支持保护用户密码")]),v._v(" "),a("li",[v._v("右侧面板图标添加手指指针,用于提示可点击")]),v._v(" "),a("li",[v._v("修复:第一次启动时的窗口大小")])]),v._v(" "),a("h2",{attrs:{id:"袋鼠数据库工具-v0-13-0-dev"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#袋鼠数据库工具-v0-13-0-dev"}},[v._v("#")]),v._v(" "),a("a",{attrs:{href:"/zh/download/v0.13.0.200210"}},[v._v("袋鼠数据库工具 v0.13.0 (Dev)")])]),v._v(" "),a("ol",[a("li",[v._v("数据网格应用格式设置")]),v._v(" "),a("li",[v._v("SQL编辑器应用格式设置")]),v._v(" "),a("li",[v._v("Windows 32位版本支持")]),v._v(" "),a("li",[v._v("实现SSH隧道初步支持")]),v._v(" "),a("li",[v._v("微调数据库连接对话框(完善配置保存和加载)")]),v._v(" "),a("li",[v._v("修复连接首页图标bug")])]),v._v(" "),a("h2",{attrs:{id:"袋鼠数据库工具-v0-12-1-dev"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#袋鼠数据库工具-v0-12-1-dev"}},[v._v("#")]),v._v(" "),a("a",{attrs:{href:"/zh/download/v0.12.1.200120"}},[v._v("袋鼠数据库工具 v0.12.1 (Dev)")])]),v._v(" "),a("ol",[a("li",[v._v("新增应用配置对话框,可加载和保存应用配置")]),v._v(" "),a("li",[v._v("界面增加「夜间模式」支持")]),v._v(" "),a("li",[v._v("使用新配置模型重构连接对话框")]),v._v(" "),a("li",[v._v("使用新配置模型重构连接开始页面")])]),v._v(" "),a("div",[a("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),v._v(" "),a("script2",{attrs:{type:"text/javascript"}},[v._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),v._v(" "),a("h2",{attrs:{id:"袋鼠数据库工具-v0-11-1-dev"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#袋鼠数据库工具-v0-11-1-dev"}},[v._v("#")]),v._v(" "),a("a",{attrs:{href:"/zh/download/v0.11.1.200113"}},[v._v("袋鼠数据库工具 v0.11.1 (Dev)")])]),v._v(" "),a("ol",[a("li",[v._v("重新设计连接对话框,支持SSH、SSL、高级设置;")]),v._v(" "),a("li",[v._v("首页增加捐赠图片展示 (Paypal/Wechat/Alipay)")]),v._v(" "),a("li",[v._v("重新设置配置模型和文件(init --\x3e json)")]),v._v(" "),a("li",[v._v("在窗口标题栏使用符号图标(#25)")]),v._v(" "),a("li",[v._v("修复:表格中编辑数据会批量更新的bug")])]),v._v(" "),a("h2",{attrs:{id:"袋鼠数据库工具-v0-11-0-dev"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#袋鼠数据库工具-v0-11-0-dev"}},[v._v("#")]),v._v(" "),a("a",{attrs:{href:"/zh/download/v0.11.0.200106"}},[v._v("袋鼠数据库工具 v0.11.0 (Dev)")])]),v._v(" "),a("ol",[a("li",[v._v("增加程序首页,展示版本更新列表或显示网站首页(Linux)")]),v._v(" "),a("li",[v._v("重新实现 DSV 格式引擎")]),v._v(" "),a("li",[v._v("改进 CSV 格式与其它工具的兼容性")]),v._v(" "),a("li",[v._v("改进 DSV 格式设置UI布局")]),v._v(" "),a("li",[v._v("改进日期在线编辑控件,支持即时编辑")]),v._v(" "),a("li",[v._v("修复: 生成错误的SQL语句.")]),v._v(" "),a("li",[v._v("修复: 导入数据时奔溃.")]),v._v(" "),a("li",[v._v("修复: 无法保存数据网格中编辑的数据")]),v._v(" "),a("li",[v._v("修复: 修复一些控制台警告")])]),v._v(" "),a("h2",{attrs:{id:"袋鼠数据库工具-v0-10-0-dev"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#袋鼠数据库工具-v0-10-0-dev"}},[v._v("#")]),v._v(" "),a("a",{attrs:{href:"/zh/download/v0.10.0.191223"}},[v._v("袋鼠数据库工具 v0.10.0 (Dev)")])]),v._v(" "),a("ol",[a("li",[v._v("增加导出向导用户界面")]),v._v(" "),a("li",[v._v("支持批量导出数据表为文件")]),v._v(" "),a("li",[v._v("支持多达7种数据格式(DSV/JSON/XML/HTML/Markdown/SQL)")]),v._v(" "),a("li",[v._v("支持数据字段重名(别名或标题)")])]),v._v(" "),a("h2",{attrs:{id:"袋鼠数据库工具-v0-9-5-dev"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#袋鼠数据库工具-v0-9-5-dev"}},[v._v("#")]),v._v(" "),a("a",{attrs:{href:"/zh/download/v0.9.5.191216"}},[v._v("袋鼠数据库工具 v0.9.5 (Dev)")])]),v._v(" "),a("ol",[a("li",[v._v("支持从DSV(CSV、TSV)格式文件导入数据")]),v._v(" "),a("li",[v._v("支持从JSON格式文件导入数据")]),v._v(" "),a("li",[v._v("支持XML格式文件导入数据")]),v._v(" "),a("li",[v._v("使用libxml2库重写导出数据为XML格式")]),v._v(" "),a("li",[v._v("增加导出助理界面")]),v._v(" "),a("li",[v._v("初步实现导出格式、导出表选择页面")])]),v._v(" "),a("div",[a("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),v._v(" "),a("script2",{attrs:{type:"text/javascript"}},[v._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),v._v(" "),a("h2",{attrs:{id:"袋鼠数据库工具-v0-9-4-dev"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#袋鼠数据库工具-v0-9-4-dev"}},[v._v("#")]),v._v(" "),a("a",{attrs:{href:"/zh/download/v0.9.4.191209"}},[v._v("袋鼠数据库工具 v0.9.4 (Dev)")])]),v._v(" "),a("ol",[a("li",[v._v("实现文件导入处理结果界面")]),v._v(" "),a("li",[v._v("数据导入增加5中导入模式(追加、更新、合并、删除、替换)")]),v._v(" "),a("li",[v._v("实现导入数据到表中(SQLite)")]),v._v(" "),a("li",[v._v("重构对话框,增加翻译、艺术家和许可证信息,修复Mac和Ubuntu平台无法展示图片的问题;")])]),v._v(" "),a("h2",{attrs:{id:"袋鼠数据库工具-v0-9-3-dev"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#袋鼠数据库工具-v0-9-3-dev"}},[v._v("#")]),v._v(" "),a("a",{attrs:{href:"/zh/download/v0.9.3.191202"}},[v._v("袋鼠数据库工具 v0.9.3 (Dev)")])]),v._v(" "),a("ol",[a("li",[v._v("实现工具页用于支持导入、导出功能")]),v._v(" "),a("li",[v._v("增加IDE相关接口,用于后续重构支持;")])]),v._v(" "),a("h2",{attrs:{id:"袋鼠数据库工具-v0-9-2-dev"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#袋鼠数据库工具-v0-9-2-dev"}},[v._v("#")]),v._v(" "),a("a",{attrs:{href:"/zh/download/v0.9.2.191125"}},[v._v("袋鼠数据库工具 v0.9.2 (Dev)")])]),v._v(" "),a("ol",[a("li",[v._v("实现从文件导入数据功能(DSV/XML/JSON) #19\n"),a("ul",[a("li",[v._v("实现文件导入格式、编码和预览界面")]),v._v(" "),a("li",[v._v("实现文件导入格式参数设置界面")]),v._v(" "),a("li",[v._v("实现文件导入解析数据预览界面")]),v._v(" "),a("li",[v._v("实现文件导入字段映射界面(功能未实现)")]),v._v(" "),a("li",[v._v("实现文件导入处理进度界面(功能未实现)")]),v._v(" "),a("li",[v._v("实现文件导入之DSV格式解析和预览支持")]),v._v(" "),a("li",[v._v("实现数据字段和目标表字段映射支持")])])])]),v._v(" "),a("h2",{attrs:{id:"袋鼠数据库工具-v0-9-1-dev"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#袋鼠数据库工具-v0-9-1-dev"}},[v._v("#")]),v._v(" "),a("a",{attrs:{href:"/zh/download/v0.9.1.191118"}},[v._v("袋鼠数据库工具 v0.9.1 (Dev)")])]),v._v(" "),a("ol",[a("li",[v._v("支持导出数据到剪贴板或文件 #18\n"),a("ul",[a("li",[v._v("支持导出为 DSV 格式(CSV/TSV/...)")]),v._v(" "),a("li",[v._v("支持导出为 JSON 格式;")]),v._v(" "),a("li",[v._v("支持导出为 XML 格式")]),v._v(" "),a("li",[v._v("支持导出为 HTML 格式")]),v._v(" "),a("li",[v._v("支持导出为 SQL 格式(INSERT)")]),v._v(" "),a("li",[v._v("支持导出为 Markdown 格式")])])]),v._v(" "),a("li",[v._v("改进保存文件对话框文件过滤条件,提升用户体验")])]),v._v(" "),a("h2",{attrs:{id:"袋鼠数据库工具-v0-9-0-dev"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#袋鼠数据库工具-v0-9-0-dev"}},[v._v("#")]),v._v(" "),a("a",{attrs:{href:"/zh/download/v0.9.0.191111"}},[v._v("袋鼠数据库工具 v0.9.0 (Dev)")])]),v._v(" "),a("ol",[a("li",[v._v("支持数据库表结构编辑和保存 #5")]),v._v(" "),a("li",[v._v("支持导出为JSON和DSV格式")])]),v._v(" "),a("div",[a("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),v._v(" "),a("script2",{attrs:{type:"text/javascript"}},[v._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),v._v(" "),a("h2",{attrs:{id:"袋鼠数据库工具-v0-8-5-dev"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#袋鼠数据库工具-v0-8-5-dev"}},[v._v("#")]),v._v(" "),a("a",{attrs:{href:"/zh/download/v0.8.5.191104"}},[v._v("袋鼠数据库工具 v0.8.5 (Dev)")])]),v._v(" "),a("ol",[a("li",[v._v("支持表结构编辑和保存(SQLite、PostgreSQL 预览版) #5")]),v._v(" "),a("li",[v._v("增加了数据导出的UI和接口")]),v._v(" "),a("li",[v._v("新建表保存时同步更新Tab页面标题")])]),v._v(" "),a("h2",{attrs:{id:"袋鼠数据库工具-v0-8-4-dev"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#袋鼠数据库工具-v0-8-4-dev"}},[v._v("#")]),v._v(" "),a("a",{attrs:{href:"/zh/download/v0.8.4.191028"}},[v._v("袋鼠数据库工具 v0.8.4 (Dev)")])]),v._v(" "),a("ol",[a("li",[v._v("重组数据库对象树和界面 #17")]),v._v(" "),a("li",[v._v("增加数据库对象树刷新菜单")]),v._v(" "),a("li",[v._v("实现多个数据库支持")]),v._v(" "),a("li",[v._v("编辑表结构并保存(MySQL 预览) #5")])]),v._v(" "),a("h2",{attrs:{id:"袋鼠数据库工具-v0-8-3-dev"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#袋鼠数据库工具-v0-8-3-dev"}},[v._v("#")]),v._v(" "),a("a",{attrs:{href:"/zh/download/v0.8.3.191021"}},[v._v("袋鼠数据库工具 v0.8.3 (Dev)")])]),v._v(" "),a("ol",[a("li",[v._v("新建连接时出现插件未加载错误 #12")]),v._v(" "),a("li",[v._v("增加 MacOS 平台编译支持 #13")]),v._v(" "),a("li",[v._v("重构数据库对象模型并改进互操作性")])]),v._v(" "),a("h2",{attrs:{id:"袋鼠数据库工具-v0-8-2-dev"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#袋鼠数据库工具-v0-8-2-dev"}},[v._v("#")]),v._v(" "),a("a",{attrs:{href:"/zh/download/v0.8.2.191014"}},[v._v("袋鼠数据库工具 v0.8.2 (Dev)")])]),v._v(" "),a("ol",[a("li",[v._v("改进字段选择对话框,支持根据值选择字段 #9")]),v._v(" "),a("li",[v._v("改进表设计器支持 Tab 键 #3")]),v._v(" "),a("li",[v._v("修复: 字段表达式对话框重加载失败 #10")]),v._v(" "),a("li",[v._v("修复: 开始菜单和桌面快捷键和图标 #7")]),v._v(" "),a("li",[v._v("修复: SQL 语法高亮支持 #8")]),v._v(" "),a("li",[v._v("修复: 数据表单加载失败 #11")])]),v._v(" "),a("div",[a("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),v._v(" "),a("script2",{attrs:{type:"text/javascript"}},[v._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),v._v(" "),a("h2",{attrs:{id:"袋鼠数据库工具-v0-8-1-dev"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#袋鼠数据库工具-v0-8-1-dev"}},[v._v("#")]),v._v(" "),a("a",{attrs:{href:"/zh/download/v0.8.1.190930"}},[v._v("袋鼠数据库工具 v0.8.1 (Dev)")])]),v._v(" "),a("ol",[a("li",[v._v("改进:生成正确的编辑 SQL 语言")]),v._v(" "),a("li",[v._v("重构: 增加源代码编辑模块")]),v._v(" "),a("li",[v._v("改进:SQLite 模式SQL生成器")]),v._v(" "),a("li",[v._v("修复: 编辑器无法正确显示空白行")]),v._v(" "),a("li",[v._v("修复: 新增好行时获取字符串失败(控制台告警)")]),v._v(" "),a("li",[v._v("修复: 编辑表结构时控制台报错")])]),v._v(" "),a("h2",{attrs:{id:"袋鼠数据库工具-v0-8-0-dev"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#袋鼠数据库工具-v0-8-0-dev"}},[v._v("#")]),v._v(" "),a("a",{attrs:{href:"/zh/download/v0.8.0.190923"}},[v._v("袋鼠数据库工具 v0.8.0 (Dev)")])]),v._v(" "),a("ol",[a("li",[v._v("实现 PostgreSQL SQL 生成器(11.0)")]),v._v(" "),a("li",[v._v("实现保存表结构到数据库(只创建)")]),v._v(" "),a("li",[v._v("更新构建脚本:隐藏控制台窗口")]),v._v(" "),a("li",[v._v("更新Windows安装程序:增加 MySQL 和 PostgreSQL 客户端库")]),v._v(" "),a("li",[v._v("更新关于对话框中的链接")]),v._v(" "),a("li",[v._v("改进单行编辑器控件(自动聚焦)")]),v._v(" "),a("li",[v._v("更新忙状态时的界面光标")])]),v._v(" "),a("h2",{attrs:{id:"袋鼠数据库工具-v0-7-2-dev"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#袋鼠数据库工具-v0-7-2-dev"}},[v._v("#")]),v._v(" "),a("a",{attrs:{href:"/zh/download/v0.7.2.190916"}},[v._v("袋鼠数据库工具 v0.7.2 (Dev)")])]),v._v(" "),a("ol",[a("li",[v._v("实现 PostgreSQL 11 加载器")]),v._v(" "),a("li",[v._v("实现 PostgreSQL 11 表设计表单")]),v._v(" "),a("li",[v._v("重构项目目录")]),v._v(" "),a("li",[v._v("创建项目网站项目:dbkangaroo.github.io")]),v._v(" "),a("li",[v._v("增加 Windows 安装器脚本")])]),v._v(" "),a("h2",{attrs:{id:"袋鼠数据库工具-v0-6-0-dev"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#袋鼠数据库工具-v0-6-0-dev"}},[v._v("#")]),v._v(" 袋鼠数据库工具 v0.6.0 (Dev)")]),v._v(" "),a("ol",[a("li",[v._v("实现数据网格中编辑和保存功能")]),v._v(" "),a("li",[v._v("实现表单编辑和保存功能")]),v._v(" "),a("li",[v._v("实现国际化支持(I18N)")]),v._v(" "),a("li",[v._v("实现中文语言翻译")])]),v._v(" "),a("h2",{attrs:{id:"袋鼠数据库工具-v0-4-0-dev"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#袋鼠数据库工具-v0-4-0-dev"}},[v._v("#")]),v._v(" 袋鼠数据库工具 v0.4.0 (Dev)")]),v._v(" "),a("ol",[a("li",[v._v("实现数据翻页功能")]),v._v(" "),a("li",[v._v("实现查询构建器和应用")]),v._v(" "),a("li",[v._v("实现导出数据为CSV文件")]),v._v(" "),a("li",[v._v("实现系统日志输出视图")]),v._v(" "),a("li",[v._v("实现编辑和执行SQL")]),v._v(" "),a("li",[v._v("实现多个查询结果支持")])]),v._v(" "),a("h2",{attrs:{id:"袋鼠数据库工具-v0-2-0-dev"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#袋鼠数据库工具-v0-2-0-dev"}},[v._v("#")]),v._v(" 袋鼠数据库工具 v0.2.0 (Dev)")]),v._v(" "),a("ol",[a("li",[v._v("增加连接设置界面")]),v._v(" "),a("li",[v._v("增加连接管理模块")]),v._v(" "),a("li",[v._v("实现加载并显示数据库对象树")]),v._v(" "),a("li",[v._v("实现打开并显示表数据")])]),v._v(" "),a("div",[a("script2",{attrs:{type:"text/javascript",async:"true",src:"https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"}}),v._v(" "),a("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),v._v(" "),a("script2",{attrs:{type:"text/javascript"}},[v._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1)])}),[],!1,null,null,null);_.default=i.exports}}]); \ No newline at end of file diff --git a/assets/js/135.e177e752.js b/assets/js/135.e177e752.js new file mode 100644 index 000000000..83f6ce19e --- /dev/null +++ b/assets/js/135.e177e752.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[135],{720:function(t,s,e){"use strict";e.r(s);var a=e(13),l=Object(a.a)({},(function(){var t=this,s=t.$createElement,e=t._self._c||s;return e("ContentSlotsDistributor",{attrs:{"slot-key":t.$parent.slotKey}},[e("h1",{attrs:{id:"数据库模型设计"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#数据库模型设计"}},[t._v("#")]),t._v(" 数据库模型设计")]),t._v(" "),e("div",{staticClass:"custom-block danger"},[e("p",{staticClass:"custom-block-title"},[t._v("模型设计 仍然处于早期阶段,")]),t._v(" "),e("p",[t._v("源于SQL解析模块的缺失,无法精准解析表和视图结构,导致了功能无法完整实现,只适合做前期体验"),e("br")])]),t._v(" "),e("Vssue",{attrs:{"issue-id":10,title:t.$title}})],1)}),[],!1,null,null,null);s.default=l.exports}}]); \ No newline at end of file diff --git a/assets/js/136.145c2985.js b/assets/js/136.145c2985.js new file mode 100644 index 000000000..e7f20d494 --- /dev/null +++ b/assets/js/136.145c2985.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[136],{721:function(t,s,e){"use strict";e.r(s);var i=e(13),r=Object(i.a)({},(function(){var t=this.$createElement,s=this._self._c||t;return s("ContentSlotsDistributor",{attrs:{"slot-key":this.$parent.slotKey}},[s("h1",{attrs:{id:"表结构设计器"}},[s("a",{staticClass:"header-anchor",attrs:{href:"#表结构设计器"}},[this._v("#")]),this._v(" 表结构设计器")]),this._v(" "),s("Vssue",{attrs:{"issue-id":8,title:this.$title}})],1)}),[],!1,null,null,null);s.default=r.exports}}]); \ No newline at end of file diff --git a/assets/js/137.4b160748.js b/assets/js/137.4b160748.js new file mode 100644 index 000000000..417b498ff --- /dev/null +++ b/assets/js/137.4b160748.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[137],{724:function(t,s,i){"use strict";i.r(s);var a=i(13),e=Object(a.a)({},(function(){var t=this.$createElement,s=this._self._c||t;return s("ContentSlotsDistributor",{attrs:{"slot-key":this.$parent.slotKey}},[s("h1",{attrs:{id:"视图设计器"}},[s("a",{staticClass:"header-anchor",attrs:{href:"#视图设计器"}},[this._v("#")]),this._v(" 视图设计器")]),this._v(" "),s("div",{staticClass:"custom-block danger"},[s("p",{staticClass:"custom-block-title"},[this._v("视图设计器 功能提示")]),this._v(" "),s("p",[this._v("源于 SQL 解析模块的缺失,无法精准解析 SQL ,故无法最小化和格式化SQL,也无法可视化构建编辑SQL,请知悉;")])])])}),[],!1,null,null,null);s.default=e.exports}}]); \ No newline at end of file diff --git a/assets/js/138.ce3d4f13.js b/assets/js/138.ce3d4f13.js new file mode 100644 index 000000000..1248bd35f --- /dev/null +++ b/assets/js/138.ce3d4f13.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[138],{725:function(t,r,e){"use strict";e.r(r);var o=e(13),a=Object(o.a)({},(function(){var t=this,r=t.$createElement,e=t._self._c||r;return e("ContentSlotsDistributor",{attrs:{"slot-key":t.$parent.slotKey}},[e("h1",{attrs:{id:"odbc-驱动程序"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#odbc-驱动程序"}},[t._v("#")]),t._v(" ODBC 驱动程序")]),t._v(" "),e("h2",{attrs:{id:"免费的-odbc-驱动程序"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#免费的-odbc-驱动程序"}},[t._v("#")]),t._v(" 免费的 ODBC 驱动程序")]),t._v(" "),e("p",[t._v("提供一些常见的第三方 ODBC 驱动程序及下载链接")]),t._v(" "),e("table",[e("thead",[e("tr",[e("th",[t._v("ODBC 组件")]),t._v(" "),e("th",[t._v("Windows")]),t._v(" "),e("th",[t._v("Linux")]),t._v(" "),e("th",[t._v("macOS")])])]),t._v(" "),e("tbody",[e("tr",[e("td",[t._v("ODBC Driver Manager")]),t._v(" "),e("td",[t._v("系统自带")]),t._v(" "),e("td",[e("a",{attrs:{href:"http://www.unixodbc.org/",target:"_blank",rel:"noopener noreferrer"}},[t._v("UnixODBC"),e("OutboundLink")],1),t._v(" / "),e("a",{attrs:{href:"http://www.iodbc.org/dataspace/doc/iodbc/wiki/iodbcWiki/Downloads",target:"_blank",rel:"noopener noreferrer"}},[t._v("iODBC"),e("OutboundLink")],1)]),t._v(" "),e("td",[e("a",{attrs:{href:"http://www.unixodbc.org/",target:"_blank",rel:"noopener noreferrer"}},[t._v("UnixODBC"),e("OutboundLink")],1),t._v(" / "),e("a",{attrs:{href:"http://www.iodbc.org/dataspace/doc/iodbc/wiki/iodbcWiki/Downloads",target:"_blank",rel:"noopener noreferrer"}},[t._v("iODBC"),e("OutboundLink")],1)])]),t._v(" "),e("tr",[e("td",[t._v("Access 2010")]),t._v(" "),e("td",[e("a",{attrs:{href:"https://www.microsoft.com/en-us/download/confirmation.aspx?id=13255&6B49FDFB-8E5B-4B07-BC31-15695C5A2143=1",target:"_blank",rel:"noopener noreferrer"}},[t._v("官方站"),e("OutboundLink")],1)]),t._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/mdbtools/mdbtools",target:"_blank",rel:"noopener noreferrer"}},[t._v("LibMDBODBC"),e("OutboundLink")],1)]),t._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/mdbtools/mdbtools",target:"_blank",rel:"noopener noreferrer"}},[t._v("LibMDBODBC"),e("OutboundLink")],1)])]),t._v(" "),e("tr",[e("td",[t._v("Access 2016")]),t._v(" "),e("td",[e("a",{attrs:{href:"https://www.microsoft.com/en-us/download/confirmation.aspx?id=54920&6B49FDFB-8E5B-4B07-BC31-15695C5A2143=1",target:"_blank",rel:"noopener noreferrer"}},[t._v("官方站"),e("OutboundLink")],1)]),t._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/mdbtools/mdbtools",target:"_blank",rel:"noopener noreferrer"}},[t._v("LibMDBODBC"),e("OutboundLink")],1)]),t._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/mdbtools/mdbtools",target:"_blank",rel:"noopener noreferrer"}},[t._v("LibMDBODBC"),e("OutboundLink")],1)])]),t._v(" "),e("tr",[e("td",[t._v("SQLite (x86-64)")]),t._v(" "),e("td",[e("a",{attrs:{href:"https://kangaroo.awaysoft.com/downloads/odbc/sqlite-odbc-x64.exe",target:"_blank",rel:"noopener noreferrer"}},[t._v("服务器1"),e("OutboundLink")],1),t._v(" "),e("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/odbc/sqlite-odbc-x64.exe",target:"_blank",rel:"noopener noreferrer"}},[t._v("服务器2"),e("OutboundLink")],1),t._v(" "),e("a",{attrs:{href:"http://www.ch-werner.de/sqliteodbc/sqliteodbc_w64.exe",target:"_blank",rel:"noopener noreferrer"}},[t._v("官方站"),e("OutboundLink")],1)]),t._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/softace/sqliteodbc",target:"_blank",rel:"noopener noreferrer"}},[t._v("SQLite ODBC"),e("OutboundLink")],1)]),t._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/softace/sqliteodbc",target:"_blank",rel:"noopener noreferrer"}},[t._v("SQLite ODBC"),e("OutboundLink")],1)])]),t._v(" "),e("tr",[e("td",[t._v("MySQL (x86-64)")]),t._v(" "),e("td",[e("a",{attrs:{href:"https://kangaroo.awaysoft.com/downloads/odbc/mysql-odbc-x64.msi",target:"_blank",rel:"noopener noreferrer"}},[t._v("服务器1"),e("OutboundLink")],1),t._v(" "),e("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/odbc/mysql-odbc-x64.msi",target:"_blank",rel:"noopener noreferrer"}},[t._v("服务器2"),e("OutboundLink")],1),t._v(" "),e("a",{attrs:{href:"https://dev.mysql.com/downloads/connector/odbc/",target:"_blank",rel:"noopener noreferrer"}},[t._v("官方站"),e("OutboundLink")],1)]),t._v(" "),e("td",[e("a",{attrs:{href:"https://dev.mysql.com/downloads/connector/odbc/",target:"_blank",rel:"noopener noreferrer"}},[t._v("官方站"),e("OutboundLink")],1)]),t._v(" "),e("td",[e("a",{attrs:{href:"https://dev.mysql.com/downloads/connector/odbc/",target:"_blank",rel:"noopener noreferrer"}},[t._v("官方站"),e("OutboundLink")],1)])]),t._v(" "),e("tr",[e("td",[t._v("MariaDB (x86-64)")]),t._v(" "),e("td",[e("a",{attrs:{href:"https://kangaroo.awaysoft.com/downloads/odbc/mariadb-odbc-x64.msi",target:"_blank",rel:"noopener noreferrer"}},[t._v("服务器1"),e("OutboundLink")],1),t._v(" "),e("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/odbc/mariadb-odbc-x64.msi",target:"_blank",rel:"noopener noreferrer"}},[t._v("服务器2"),e("OutboundLink")],1),t._v(" "),e("a",{attrs:{href:"https://mariadb.com/downloads/connectors/connectors-data-access/odbc-connector/",target:"_blank",rel:"noopener noreferrer"}},[t._v("官方站"),e("OutboundLink")],1)]),t._v(" "),e("td",[e("a",{attrs:{href:"https://mariadb.com/downloads/connectors/connectors-data-access/odbc-connector/",target:"_blank",rel:"noopener noreferrer"}},[t._v("官方站"),e("OutboundLink")],1)]),t._v(" "),e("td",[e("a",{attrs:{href:"https://mariadb.com/downloads/connectors/connectors-data-access/odbc-connector/",target:"_blank",rel:"noopener noreferrer"}},[t._v("官方站"),e("OutboundLink")],1)])]),t._v(" "),e("tr",[e("td",[t._v("PostgreSQL (x86-64)")]),t._v(" "),e("td",[e("a",{attrs:{href:"https://kangaroo.awaysoft.com/downloads/odbc/postgresql-odbc-x64.msi",target:"_blank",rel:"noopener noreferrer"}},[t._v("服务器1"),e("OutboundLink")],1),t._v(" "),e("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/odbc/postgresql-odbc-x64.msi",target:"_blank",rel:"noopener noreferrer"}},[t._v("服务器2"),e("OutboundLink")],1),t._v(" "),e("a",{attrs:{href:"https://ftp.postgresql.org/pub/odbc/versions/msi/psqlodbc_13_02_0000-x64.zip",target:"_blank",rel:"noopener noreferrer"}},[t._v("官方站"),e("OutboundLink")],1)]),t._v(" "),e("td",[e("a",{attrs:{href:"https://www.postgresql.org/ftp/odbc/versions/",target:"_blank",rel:"noopener noreferrer"}},[t._v("官方站"),e("OutboundLink")],1)]),t._v(" "),e("td",[e("a",{attrs:{href:"https://www.postgresql.org/ftp/odbc/versions/",target:"_blank",rel:"noopener noreferrer"}},[t._v("官方站"),e("OutboundLink")],1)])]),t._v(" "),e("tr",[e("td",[t._v("SQL Server")]),t._v(" "),e("td",[e("a",{attrs:{href:"https://download.microsoft.com/download/1/a/4/1a4a49b8-9fe6-4237-be0d-a6b8f2d559b5/en-US/18.0.1.1/x64/msodbcsql.msi",target:"_blank",rel:"noopener noreferrer"}},[t._v("官方站"),e("OutboundLink")],1)]),t._v(" "),e("td",[e("a",{attrs:{href:"https://docs.microsoft.com/en-us/sql/connect/odbc/linux-mac/installing-the-microsoft-odbc-driver-for-sql-server",target:"_blank",rel:"noopener noreferrer"}},[t._v("官方站"),e("OutboundLink")],1)]),t._v(" "),e("td",[e("a",{attrs:{href:"https://docs.microsoft.com/en-us/sql/connect/odbc/linux-mac/install-microsoft-odbc-driver-sql-server-macos?view=sql-server-ver16",target:"_blank",rel:"noopener noreferrer"}},[t._v("官方站"),e("OutboundLink")],1)])]),t._v(" "),e("tr",[e("td",[t._v("Oracle")]),t._v(" "),e("td",[e("a",{attrs:{href:"https://www.oracle.com/database/technologies/dotnet-odacdeploy-downloads.html",target:"_blank",rel:"noopener noreferrer"}},[t._v("官方站"),e("OutboundLink")],1)]),t._v(" "),e("td"),t._v(" "),e("td")])])]),t._v(" "),e("p",[e("a",{attrs:{href:"http://www.unixodbc.org/drivers.html",target:"_blank",rel:"noopener noreferrer"}},[t._v("UnixODBC 驱动列表"),e("OutboundLink")],1)]),t._v(" "),e("h2",{attrs:{id:"收费的-odbc-驱动程序"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#收费的-odbc-驱动程序"}},[t._v("#")]),t._v(" 收费的 ODBC 驱动程序")]),t._v(" "),e("p",[e("a",{attrs:{href:"https://www.easysoft.com/products/data_access/index.html#odbc-drivers",target:"_blank",rel:"noopener noreferrer"}},[t._v("Easysoft ODBC Drivers"),e("OutboundLink")],1),e("br"),t._v(" "),e("a",{attrs:{href:"https://www.cdata.com/odbc/",target:"_blank",rel:"noopener noreferrer"}},[t._v("CData Software ODBC Drivers"),e("OutboundLink")],1),e("br"),t._v(" "),e("a",{attrs:{href:"https://www.devart.com/odbc/",target:"_blank",rel:"noopener noreferrer"}},[t._v("Devart ODBC Drivers"),e("OutboundLink")],1)]),t._v(" "),e("div",[e("script2",{attrs:{type:"text/javascript",async:"true",src:"https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"}}),t._v(" "),e("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),t._v(" "),e("script2",{attrs:{type:"text/javascript"}},[t._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),t._v(" "),e("h2",{attrs:{id:"unixodbc-iodbc-安装与配置"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#unixodbc-iodbc-安装与配置"}},[t._v("#")]),t._v(" UnixODBC / iODBC 安装与配置")]),t._v(" "),e("ol",[e("li",[t._v("安装 UnixODBC / iODBC")])]),t._v(" "),e("div",{staticClass:"language-bash extra-class"},[e("pre",{pre:!0,attrs:{class:"language-bash"}},[e("code",[t._v("yum "),e("span",{pre:!0,attrs:{class:"token function"}},[t._v("install")]),t._v(" -y "),e("span",{pre:!0,attrs:{class:"token operator"}},[t._v("<")]),t._v("unixodbc "),e("span",{pre:!0,attrs:{class:"token operator"}},[t._v("|")]),t._v(" iodbc"),e("span",{pre:!0,attrs:{class:"token operator"}},[t._v(">")]),t._v("\nyum "),e("span",{pre:!0,attrs:{class:"token function"}},[t._v("install")]),t._v(" mysql-connector-odbc mariadb-connector-odbc pgodbc "),e("span",{pre:!0,attrs:{class:"token operator"}},[t._v("<")]),t._v("ODBC driver package"),e("span",{pre:!0,attrs:{class:"token operator"}},[t._v(">")]),t._v("\n")])])]),e("ol",{attrs:{start:"2"}},[e("li",[t._v("配置 ODBC 驱动程序"),e("br"),t._v("\n配置文件默认路径: "),e("code",[t._v("/etc/odbcinst.ini")]),t._v(", ODBC 驱动配置模板如下:")])]),t._v(" "),e("div",{staticClass:"language- extra-class"},[e("pre",{pre:!0,attrs:{class:"language-text"}},[e("code",[t._v("[DRIVER_NAME]\n Description = 驱动程序简介\n Driver = 驱动程序库完整路径\n Setup = 驱动程序配置模块完整路径\n")])])]),e("p",[t._v("配置完成后, 您可以使用命令列出所有已安装的驱动程序: "),e("code",[t._v("odbcinst -q -d")])]),t._v(" "),e("ol",{attrs:{start:"3"}},[e("li",[t._v("系统数据源配置"),e("br"),t._v("\n配置文件默认路径: "),e("code",[t._v("/etc/odbc.ini")]),t._v(", ODBC 数据源配置模板如下:")])]),t._v(" "),e("div",{staticClass:"language- extra-class"},[e("pre",{pre:!0,attrs:{class:"language-text"}},[e("code",[t._v("[my_datasource]\nDriver = DRIVER_NAME\nDescription = 数据源简介\nServerPort = myoobserver:8888\nTargetDSN = mytargetdsn\nLogonUser = server_username\nLogonAuth = password_for_LogonUser\n")])])]),e("p",[t._v("ODBC 数据源配置最重要的注意事项是数据源中的驱动(Driver)必需保持和驱动配置文件(odbcinst.ini)中的驱动名(DRIVER_NAME)一致。")]),t._v(" "),e("ol",{attrs:{start:"3"}},[e("li",[e("p",[t._v("文件数据源配置"),e("br"),t._v("\n配置文件默认路径: "),e("code",[t._v("/etc/ODBCDataSources")]),t._v(", ODBC 数据源配置模板如前所示;")])]),t._v(" "),e("li",[e("p",[t._v("用户独享数据源配置"),e("br"),t._v("\n配置文件默认路径: "),e("code",[t._v("/home/auser/.odbc.ini")]),t._v(", ODBC 数据源配置模板如前所示;")])])]),t._v(" "),e("p",[t._v("最后,您可以使用命令行列出所有已配置好的数据源: "),e("code",[t._v("odbcinst -q -s")])]),t._v(" "),e("div",[e("script2",{attrs:{type:"text/javascript",async:"true",src:"https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"}}),t._v(" "),e("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),t._v(" "),e("script2",{attrs:{type:"text/javascript"}},[t._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1)])}),[],!1,null,null,null);r.default=a.exports}}]); \ No newline at end of file diff --git a/assets/js/139.d3f5c3c6.js b/assets/js/139.d3f5c3c6.js new file mode 100644 index 000000000..1c3356dcb --- /dev/null +++ b/assets/js/139.d3f5c3c6.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[139],{726:function(t,s,r){"use strict";r.r(s);var a=r(13),e=Object(a.a)({},(function(){var t=this,s=t.$createElement,r=t._self._c||s;return r("ContentSlotsDistributor",{attrs:{"slot-key":t.$parent.slotKey}},[r("h1",{attrs:{id:"查询编辑器"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#查询编辑器"}},[t._v("#")]),t._v(" 查询编辑器")]),t._v(" "),r("h2",{attrs:{id:"为何自动完成窗口按钮显示为乱码"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#为何自动完成窗口按钮显示为乱码"}},[t._v("#")]),t._v(" 为何自动完成窗口按钮显示为乱码?")]),t._v(" "),r("p",[t._v("这是因为您选择的查询编辑器字体未支持当前语言字符(中文),建议您重新选择查询编辑器字体解决这个问题。\n请按照如下步骤选择字体:")]),t._v(" "),r("ol",[r("li",[t._v("主菜单选择 "),r("strong",[t._v("setting")]),t._v(" 菜单项,在打开的设置对话框中切换到 "),r("strong",[t._v("编辑器")]),t._v(" 页")]),t._v(" "),r("li",[t._v("导航至配置项 "),r("strong",[t._v("字体名字 & 大小")])]),t._v(" "),r("li",[t._v("在弹出的字体选择对话框中选择能正确显示下方编辑框中的本地文字的字体即可;")])])])}),[],!1,null,null,null);s.default=e.exports}}]); \ No newline at end of file diff --git a/assets/js/14.216cf8d6.js b/assets/js/14.216cf8d6.js new file mode 100644 index 000000000..a656e92cf --- /dev/null +++ b/assets/js/14.216cf8d6.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[14],{541:function(a,t,o){a.exports=o.p+"assets/img/installer-windows-portable.e1181841.png"},623:function(a,t,o){"use strict";o.r(t);var s=o(13),n=Object(s.a)({},(function(){var a=this,t=a.$createElement,s=a._self._c||t;return s("ContentSlotsDistributor",{attrs:{"slot-key":a.$parent.slotKey}},[s("h1",{attrs:{id:"install-on-windows"}},[s("a",{staticClass:"header-anchor",attrs:{href:"#install-on-windows"}},[a._v("#")]),a._v(" Install on Windows")]),a._v(" "),s("h2",{attrs:{id:"install-kangaroo-via-official-website"}},[s("a",{staticClass:"header-anchor",attrs:{href:"#install-kangaroo-via-official-website"}},[a._v("#")]),a._v(" Install Kangaroo via Official website")]),a._v(" "),s("div",{staticClass:"custom-block tip"},[s("p",{staticClass:"custom-block-title"},[a._v("TIP")]),a._v(" "),s("p",[a._v("Recommended installation method, support windows 7 and all above version(64 bit)")])]),a._v(" "),s("h3",{attrs:{id:"download-kangaroo"}},[s("a",{staticClass:"header-anchor",attrs:{href:"#download-kangaroo"}},[a._v("#")]),a._v(" Download Kangaroo")]),a._v(" "),s("p",[a._v("Download the latest version of Kangaroo from "),s("a",{attrs:{href:"../download"}},[a._v("Download")]),a._v(", recommend "),s("strong",[a._v("installer")]),a._v(" for normal users.")]),a._v(" "),s("h3",{attrs:{id:"install-kangaroo"}},[s("a",{staticClass:"header-anchor",attrs:{href:"#install-kangaroo"}},[a._v("#")]),a._v(" Install Kangaroo")]),a._v(" "),s("h4",{attrs:{id:"windows-installer"}},[s("a",{staticClass:"header-anchor",attrs:{href:"#windows-installer"}},[a._v("#")]),a._v(" Windows Installer")]),a._v(" "),s("p",[a._v("Double click the installer and follow the guide to install Kangaroo on your windows directly.")]),a._v(" "),s("p",[a._v("If you want to make Kangaroo portable, like install and run it on USB device, then you should check the component "),s("strong",[a._v("Profile in app directory")]),a._v(" on windows installer.\n"),s("img",{attrs:{src:o(541),alt:"Make Kangaroo portable"}})]),a._v(" "),s("h4",{attrs:{id:"windows-portable"}},[s("a",{staticClass:"header-anchor",attrs:{href:"#windows-portable"}},[a._v("#")]),a._v(" Windows Portable")]),a._v(" "),s("ol",[s("li",[a._v("Create folder to put the Kangaroo app, ex: D:\\Program Files\\Kangaroo\\")]),a._v(" "),s("li",[a._v("Uncompress Kangaroo package to target folder with 7-Zip (7z.exe)")]),a._v(" "),s("li",[a._v("Create shortcut on desktop for Kangaroo app(bin\\kangaroo.exe).")]),a._v(" "),s("li",[a._v("Double click the shortcut to run Kangaroo")])]),a._v(" "),s("h2",{attrs:{id:"install-kangaroo-via-winget"}},[s("a",{staticClass:"header-anchor",attrs:{href:"#install-kangaroo-via-winget"}},[a._v("#")]),a._v(" Install Kangaroo via WinGet")]),a._v(" "),s("div",{staticClass:"custom-block warning"},[s("p",{staticClass:"custom-block-title"},[a._v("WARNING")]),a._v(" "),s("p",[a._v("This method support windows 10 and above versions only")])]),a._v(" "),s("p",[a._v("Download and install WinGet tool, then execute the command to install Kangaroo")]),a._v(" "),s("div",{staticClass:"language-cmd extra-class"},[s("pre",{pre:!0,attrs:{class:"language-text"}},[s("code",[a._v("winget install Taozuhong.Kangaroo\n")])])]),s("h2",{attrs:{id:"install-kangaroo-via-microsoft-store"}},[s("a",{staticClass:"header-anchor",attrs:{href:"#install-kangaroo-via-microsoft-store"}},[a._v("#")]),a._v(" Install Kangaroo via Microsoft Store")]),a._v(" "),s("div",{staticClass:"custom-block warning"},[s("p",{staticClass:"custom-block-title"},[a._v("WARNING")]),a._v(" "),s("p",[a._v("This method support windows 10 and above versions only")])]),a._v(" "),s("p",[a._v("Not yet support")]),a._v(" "),s("Vssue",{attrs:{"issue-id":4,title:a.$title}})],1)}),[],!1,null,null,null);t.default=n.exports}}]); \ No newline at end of file diff --git a/assets/js/140.c6642f97.js b/assets/js/140.c6642f97.js new file mode 100644 index 000000000..80484d565 --- /dev/null +++ b/assets/js/140.c6642f97.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[140],{731:function(t,e,s){"use strict";s.r(e);var i=s(13),a=Object(i.a)({},(function(){var t=this,e=t.$createElement,s=t._self._c||e;return s("ContentSlotsDistributor",{attrs:{"slot-key":t.$parent.slotKey}},[s("h1",{attrs:{id:"功能特性列表"}},[s("a",{staticClass:"header-anchor",attrs:{href:"#功能特性列表"}},[t._v("#")]),t._v(" 功能特性列表")]),t._v(" "),s("div",[s("table",[s("tbody",[s("tr",[s("td",[t._v("袋鼠工具特性")]),t._v(" "),s("td",{staticStyle:{"text-align":"center"}},[s("a",{attrs:{target:"_blank",href:"/zh/download/v1.0.6.201109.html"}},[t._v("v2021")])]),t._v(" "),s("td",{staticStyle:{"text-align":"center"}},[s("a",{attrs:{target:"_blank",href:"/zh/download/v1.10.2.220701.html"}},[t._v("v2022")])]),t._v(" "),s("td",{staticStyle:{"text-align":"center"}},[s("a",{attrs:{target:"_blank",href:"/zh/download/v2.3.1.230201.html"}},[t._v("v2023")])]),t._v(" "),s("td",{staticStyle:{"text-align":"center"}},[t._v("v2024")]),t._v(" "),s("td",{staticStyle:{"text-align":"center"}},[t._v("v2025")])]),t._v(" "),s("tr",{staticStyle:{"background-color":"#67C23A"}},[s("td",[s("b",[t._v("数据库系统")])]),t._v(" "),s("td"),t._v(" "),s("td"),t._v(" "),s("td"),t._v(" "),s("td"),t._v(" "),s("td")]),t._v(" "),s("tr",[s("td",[t._v("MySQL 5.1 或以上")]),t._v(" "),s("td",{staticStyle:{"text-align":"center"}},[s("img",{attrs:{src:"/images/icon-2021.svg"}})]),t._v(" "),s("td",{staticStyle:{"text-align":"center"}},[s("img",{attrs:{src:"/images/icon-2022.svg"}})]),t._v(" "),s("td",{staticStyle:{"text-align":"center"}},[s("img",{attrs:{src:"/images/icon-2023.svg"}})]),t._v(" "),s("td",{staticStyle:{"text-align":"center"}},[s("img",{attrs:{src:"/images/icon-2024.svg"}})]),t._v(" "),s("td")]),t._v(" "),s("tr",[s("td",[t._v("MariaDB 10.0 或以上")]),t._v(" "),s("td",{staticStyle:{"text-align":"center"}},[s("img",{attrs:{src:"/images/icon-2021.svg"}})]),t._v(" "),s("td",{staticStyle:{"text-align":"center"}},[s("img",{attrs:{src:"/images/icon-2022.svg"}})]),t._v(" "),s("td",{staticStyle:{"text-align":"center"}},[s("img",{attrs:{src:"/images/icon-2023.svg"}})]),t._v(" "),s("td",{staticStyle:{"text-align":"center"}},[s("img",{attrs:{src:"/images/icon-2024.svg"}})]),t._v(" "),s("td")]),t._v(" "),s("tr",[s("td",[t._v("PostgreSQL 9.5 或以上")]),t._v(" "),s("td",{staticStyle:{"text-align":"center"}},[s("img",{attrs:{src:"/images/icon-2021.svg"}})]),t._v(" "),s("td",{staticStyle:{"text-align":"center"}},[s("img",{attrs:{src:"/images/icon-2022.svg"}})]),t._v(" "),s("td",{staticStyle:{"text-align":"center"}},[s("img",{attrs:{src:"/images/icon-2023.svg"}})]),t._v(" "),s("td",{staticStyle:{"text-align":"center"}},[s("img",{attrs:{src:"/images/icon-2024.svg"}})]),t._v(" "),s("td")]),t._v(" "),s("tr",[s("td",[t._v("SQLite 3.0")]),t._v(" "),s("td",{staticStyle:{"text-align":"center"}},[s("img",{attrs:{src:"/images/icon-2021.svg"}})]),t._v(" "),s("td",{staticStyle:{"text-align":"center"}},[s("img",{attrs:{src:"/images/icon-2022.svg"}})]),t._v(" "),s("td",{staticStyle:{"text-align":"center"}},[s("img",{attrs:{src:"/images/icon-2023.svg"}})]),t._v(" "),s("td",{staticStyle:{"text-align":"center"}},[s("img",{attrs:{src:"/images/icon-2024.svg"}})]),t._v(" "),s("td")]),t._v(" "),s("tr",{staticStyle:{"background-color":"#67C23A"}},[s("td",[s("b",[t._v("连接")])]),t._v(" "),s("td"),t._v(" "),s("td"),t._v(" "),s("td"),t._v(" "),s("td"),t._v(" "),s("td")]),t._v(" "),s("tr",[s("td",[t._v("安全连接: SSH/SSL")]),t._v(" "),s("td",{staticStyle:{"text-align":"center"}},[s("img",{attrs:{src:"/images/icon-2021.svg"}})]),t._v(" "),s("td",{staticStyle:{"text-align":"center"}},[s("img",{attrs:{src:"/images/icon-2022.svg"}})]),t._v(" "),s("td",{staticStyle:{"text-align":"center"}},[s("img",{attrs:{src:"/images/icon-2023.svg"}})]),t._v(" "),s("td",{staticStyle:{"text-align":"center"}},[s("img",{attrs:{src:"/images/icon-2024.svg"}})]),t._v(" "),s("td")]),t._v(" "),s("tr",[s("td",[t._v("导出或导入连接设置")]),t._v(" "),s("td",{staticStyle:{"text-align":"center"}},[s("img",{attrs:{src:"/images/icon-2021.svg"}})]),t._v(" "),s("td",{staticStyle:{"text-align":"center"}},[s("img",{attrs:{src:"/images/icon-2022.svg"}})]),t._v(" "),s("td",{staticStyle:{"text-align":"center"}},[s("img",{attrs:{src:"/images/icon-2023.svg"}})]),t._v(" "),s("td",{staticStyle:{"text-align":"center"}},[s("img",{attrs:{src:"/images/icon-2024.svg"}})]),t._v(" "),s("td")]),t._v(" "),s("tr",{staticStyle:{"background-color":"#67C23A"}},[s("td",[s("b",[t._v("数据库对象支持")])]),t._v(" "),s("td"),t._v(" "),s("td"),t._v(" "),s("td"),t._v(" "),s("td"),t._v(" "),s("td")]),t._v(" "),s("tr",[s("td",[t._v("数据库")]),t._v(" "),s("td"),t._v(" "),s("td"),t._v(" "),s("td",{staticStyle:{"text-align":"center"}},[s("img",{attrs:{src:"/images/icon-2023.svg"}})]),t._v(" "),s("td",{staticStyle:{"text-align":"center"}},[s("img",{attrs:{src:"/images/icon-2024.svg"}})]),t._v(" "),s("td")]),t._v(" "),s("tr",[s("td",[t._v("架构")]),t._v(" "),s("td"),t._v(" "),s("td"),t._v(" "),s("td",{staticStyle:{"text-align":"center"}},[s("img",{attrs:{src:"/images/icon-2023.svg"}})]),t._v(" "),s("td",{staticStyle:{"text-align":"center"}},[s("img",{attrs:{src:"/images/icon-2024.svg"}})]),t._v(" "),s("td")]),t._v(" "),s("tr",[s("td",[t._v("数据表")]),t._v(" "),s("td"),t._v(" "),s("td"),t._v(" "),s("td",{staticStyle:{"text-align":"center"}},[s("img",{attrs:{src:"/images/icon-2023.svg"}})]),t._v(" "),s("td",{staticStyle:{"text-align":"center"}},[s("img",{attrs:{src:"/images/icon-2024.svg"}})]),t._v(" "),s("td")]),t._v(" "),s("tr",[s("td",[t._v("视图")]),t._v(" "),s("td"),t._v(" "),s("td"),t._v(" "),s("td",{staticStyle:{"text-align":"center"}},[s("img",{attrs:{src:"/images/icon-2023.svg"}})]),t._v(" "),s("td",{staticStyle:{"text-align":"center"}},[s("img",{attrs:{src:"/images/icon-2024.svg"}})]),t._v(" "),s("td")]),t._v(" "),s("tr",[s("td",[t._v("索引")]),t._v(" "),s("td"),t._v(" "),s("td"),t._v(" "),s("td",{staticStyle:{"text-align":"center"}},[s("img",{attrs:{src:"/images/icon-2023.svg"}})]),t._v(" "),s("td",{staticStyle:{"text-align":"center"}},[s("img",{attrs:{src:"/images/icon-2024.svg"}})]),t._v(" "),s("td")]),t._v(" "),s("tr",[s("td",[t._v("触发器")]),t._v(" "),s("td"),t._v(" "),s("td"),t._v(" "),s("td",{staticStyle:{"text-align":"center"}},[s("img",{attrs:{src:"/images/icon-2023.svg"}})]),t._v(" "),s("td",{staticStyle:{"text-align":"center"}},[s("img",{attrs:{src:"/images/icon-2024.svg"}})]),t._v(" "),s("td")]),t._v(" "),s("tr",[s("td",[t._v("函数/存储过程")]),t._v(" "),s("td"),t._v(" "),s("td"),t._v(" "),s("td",{staticStyle:{"text-align":"center"}},[s("img",{attrs:{src:"/images/icon-2023.svg"}})]),t._v(" "),s("td",{staticStyle:{"text-align":"center"}},[s("img",{attrs:{src:"/images/icon-2024.svg"}})]),t._v(" "),s("td")]),t._v(" "),s("tr",{staticStyle:{"background-color":"#67C23A"}},[s("td",[s("b",[t._v("数据查看器和编辑器")])]),t._v(" "),s("td"),t._v(" "),s("td"),t._v(" "),s("td"),t._v(" "),s("td"),t._v(" "),s("td")]),t._v(" "),s("tr",[s("td",[t._v("网格视图")]),t._v(" "),s("td",{staticStyle:{"text-align":"center"}},[s("img",{attrs:{src:"/images/icon-2021.svg"}})]),t._v(" "),s("td",{staticStyle:{"text-align":"center"}},[s("img",{attrs:{src:"/images/icon-2022.svg"}})]),t._v(" "),s("td",{staticStyle:{"text-align":"center"}},[s("img",{attrs:{src:"/images/icon-2023.svg"}})]),t._v(" "),s("td",{staticStyle:{"text-align":"center"}},[s("img",{attrs:{src:"/images/icon-2024.svg"}})]),t._v(" "),s("td")]),t._v(" "),s("tr",[s("td",[t._v("表单视图")]),t._v(" "),s("td",{staticStyle:{"text-align":"center"}},[s("img",{attrs:{src:"/images/icon-2021.svg"}})]),t._v(" "),s("td",{staticStyle:{"text-align":"center"}},[s("img",{attrs:{src:"/images/icon-2022.svg"}})]),t._v(" "),s("td",{staticStyle:{"text-align":"center"}},[s("img",{attrs:{src:"/images/icon-2023.svg"}})]),t._v(" "),s("td",{staticStyle:{"text-align":"center"}},[s("img",{attrs:{src:"/images/icon-2024.svg"}})]),t._v(" "),s("td")]),t._v(" "),s("tr",[s("td",[t._v("图表视图")]),t._v(" "),s("td"),t._v(" "),s("td"),t._v(" "),s("td",{staticStyle:{"text-align":"center"}}),t._v(" "),s("td",{staticStyle:{"text-align":"center"}}),t._v(" "),s("td")]),t._v(" "),s("tr",[s("td",[t._v("地图视图")]),t._v(" "),s("td"),t._v(" "),s("td"),t._v(" "),s("td",{staticStyle:{"text-align":"center"}}),t._v(" "),s("td",{staticStyle:{"text-align":"center"}}),t._v(" "),s("td")]),t._v(" "),s("tr",[s("td",[t._v("自动生成单元值")]),t._v(" "),s("td",{staticStyle:{"text-align":"center"}},[s("img",{attrs:{src:"/images/icon-2021.svg"}})]),t._v(" "),s("td",{staticStyle:{"text-align":"center"}},[s("img",{attrs:{src:"/images/icon-2022.svg"}})]),t._v(" "),s("td",{staticStyle:{"text-align":"center"}},[s("img",{attrs:{src:"/images/icon-2023.svg"}})]),t._v(" "),s("td",{staticStyle:{"text-align":"center"}},[s("img",{attrs:{src:"/images/icon-2024.svg"}})]),t._v(" "),s("td")]),t._v(" "),s("tr",[s("td",{staticStyle:{color:"#ffd700"}},[t._v("单元值算法更新")]),t._v(" "),s("td",{staticStyle:{"text-align":"center"}},[s("img",{attrs:{src:""}})]),t._v(" "),s("td",{staticStyle:{"text-align":"center"}},[s("img",{attrs:{src:"/images/icon-2022.svg"}})]),t._v(" "),s("td",{staticStyle:{"text-align":"center"}},[s("img",{attrs:{src:"/images/icon-2023.svg"}})]),t._v(" "),s("td",{staticStyle:{"text-align":"center"}},[s("img",{attrs:{src:"/images/icon-2024.svg"}})]),t._v(" "),s("td")]),t._v(" "),s("tr",[s("td",{staticStyle:{color:"#ffd700"}},[t._v("单元值算法复制")]),t._v(" "),s("td",{staticStyle:{"text-align":"center"}},[s("img",{attrs:{src:""}})]),t._v(" "),s("td",{staticStyle:{"text-align":"center"}},[s("img",{attrs:{src:"/images/icon-2022.svg"}})]),t._v(" "),s("td",{staticStyle:{"text-align":"center"}},[s("img",{attrs:{src:"/images/icon-2023.svg"}})]),t._v(" "),s("td",{staticStyle:{"text-align":"center"}},[s("img",{attrs:{src:"/images/icon-2024.svg"}})]),t._v(" "),s("td")]),t._v(" "),s("tr",[s("td",[t._v("文本、图片查看和编辑")]),t._v(" "),s("td",{staticStyle:{"text-align":"center"}},[s("img",{attrs:{src:"/images/icon-2021.svg"}})]),t._v(" "),s("td",{staticStyle:{"text-align":"center"}},[s("img",{attrs:{src:"/images/icon-2022.svg"}})]),t._v(" "),s("td",{staticStyle:{"text-align":"center"}},[s("img",{attrs:{src:"/images/icon-2023.svg"}})]),t._v(" "),s("td",{staticStyle:{"text-align":"center"}},[s("img",{attrs:{src:"/images/icon-2024.svg"}})]),t._v(" "),s("td")]),t._v(" "),s("tr",[s("td",[t._v("二进制、网页查看和编辑")]),t._v(" "),s("td",{staticStyle:{"text-align":"center"}},[s("img",{attrs:{src:""}})]),t._v(" "),s("td",{staticStyle:{"text-align":"center"}},[s("img",{attrs:{src:"/images/icon-2022.svg"}})]),t._v(" "),s("td",{staticStyle:{"text-align":"center"}},[s("img",{attrs:{src:"/images/icon-2023.svg"}})]),t._v(" "),s("td",{staticStyle:{"text-align":"center"}},[s("img",{attrs:{src:"/images/icon-2024.svg"}})]),t._v(" "),s("td")]),t._v(" "),s("tr",[s("td",[t._v("原始数据模式编辑")]),t._v(" "),s("td",{staticStyle:{"text-align":"center"}},[s("img",{attrs:{src:"/images/icon-2021.svg"}})]),t._v(" "),s("td",{staticStyle:{"text-align":"center"}},[s("img",{attrs:{src:"/images/icon-2022.svg"}})]),t._v(" "),s("td",{staticStyle:{"text-align":"center"}},[s("img",{attrs:{src:"/images/icon-2023.svg"}})]),t._v(" "),s("td",{staticStyle:{"text-align":"center"}},[s("img",{attrs:{src:"/images/icon-2024.svg"}})]),t._v(" "),s("td")]),t._v(" "),s("tr",[s("td",[t._v("自定义数据类型颜色")]),t._v(" "),s("td",{staticStyle:{"text-align":"center"}},[s("img",{attrs:{src:"/images/icon-2021.svg"}})]),t._v(" "),s("td",{staticStyle:{"text-align":"center"}},[s("img",{attrs:{src:"/images/icon-2022.svg"}})]),t._v(" "),s("td",{staticStyle:{"text-align":"center"}},[s("img",{attrs:{src:"/images/icon-2023.svg"}})]),t._v(" "),s("td",{staticStyle:{"text-align":"center"}},[s("img",{attrs:{src:"/images/icon-2024.svg"}})]),t._v(" "),s("td")]),t._v(" "),s("tr",[s("td",[t._v("筛选记录")]),t._v(" "),s("td",{staticStyle:{"text-align":"center"}},[s("img",{attrs:{src:"/images/icon-2021.svg"}})]),t._v(" "),s("td",{staticStyle:{"text-align":"center"}},[s("img",{attrs:{src:"/images/icon-2022.svg"}})]),t._v(" "),s("td",{staticStyle:{"text-align":"center"}},[s("img",{attrs:{src:"/images/icon-2023.svg"}})]),t._v(" "),s("td",{staticStyle:{"text-align":"center"}},[s("img",{attrs:{src:"/images/icon-2024.svg"}})]),t._v(" "),s("td")]),t._v(" "),s("tr",{staticStyle:{"background-color":"#67C23A"}},[s("td",[s("b",[t._v("SQL 或脚本处理")])]),t._v(" "),s("td"),t._v(" "),s("td"),t._v(" "),s("td"),t._v(" "),s("td"),t._v(" "),s("td")]),t._v(" "),s("tr",[s("td",[t._v("SQL 或脚本编辑器")]),t._v(" "),s("td",{staticStyle:{"text-align":"center"}},[s("img",{attrs:{src:"/images/icon-2021.svg"}})]),t._v(" "),s("td",{staticStyle:{"text-align":"center"}},[s("img",{attrs:{src:"/images/icon-2022.svg"}})]),t._v(" "),s("td",{staticStyle:{"text-align":"center"}},[s("img",{attrs:{src:"/images/icon-2023.svg"}})]),t._v(" "),s("td",{staticStyle:{"text-align":"center"}},[s("img",{attrs:{src:"/images/icon-2024.svg"}})]),t._v(" "),s("td")]),t._v(" "),s("tr",[s("td",[t._v("SQL 关键字自动完成")]),t._v(" "),s("td",{staticStyle:{"text-align":"center"}},[s("img",{attrs:{src:"/images/icon-2021.svg"}})]),t._v(" "),s("td",{staticStyle:{"text-align":"center"}},[s("img",{attrs:{src:"/images/icon-2022.svg"}})]),t._v(" "),s("td",{staticStyle:{"text-align":"center"}},[s("img",{attrs:{src:"/images/icon-2023.svg"}})]),t._v(" "),s("td",{staticStyle:{"text-align":"center"}},[s("img",{attrs:{src:"/images/icon-2024.svg"}})]),t._v(" "),s("td")]),t._v(" "),s("tr",[s("td",[t._v("用户数据自动完成")]),t._v(" "),s("td",{staticStyle:{"text-align":"center"}},[s("img",{attrs:{src:"/images/icon-2021.svg"}})]),t._v(" "),s("td",{staticStyle:{"text-align":"center"}},[s("img",{attrs:{src:"/images/icon-2022.svg"}})]),t._v(" "),s("td",{staticStyle:{"text-align":"center"}},[s("img",{attrs:{src:"/images/icon-2023.svg"}})]),t._v(" "),s("td",{staticStyle:{"text-align":"center"}},[s("img",{attrs:{src:"/images/icon-2024.svg"}})]),t._v(" "),s("td")]),t._v(" "),s("tr",[s("td",[t._v("可视化 SQL 或脚本创建工具")]),t._v(" "),s("td",{staticStyle:{"text-align":"center"}},[s("img",{attrs:{src:""}})]),t._v(" "),s("td",{staticStyle:{"text-align":"center"}},[s("img",{attrs:{src:"/images/icon-2022.svg"}})]),t._v(" "),s("td",{staticStyle:{"text-align":"center"}},[s("img",{attrs:{src:"/images/icon-2023.svg"}})]),t._v(" "),s("td",{staticStyle:{"text-align":"center"}},[s("img",{attrs:{src:"/images/icon-2024.svg"}})]),t._v(" "),s("td")]),t._v(" "),s("tr",[s("td",[t._v("SQL 代码或脚本美化或简化")]),t._v(" "),s("td",{staticStyle:{"text-align":"center"}},[s("img",{attrs:{src:""}})]),t._v(" "),s("td",{staticStyle:{"text-align":"center"}},[s("img",{attrs:{src:"/images/icon-2022.svg"}})]),t._v(" "),s("td",{staticStyle:{"text-align":"center"}},[s("img",{attrs:{src:"/images/icon-2023.svg"}})]),t._v(" "),s("td",{staticStyle:{"text-align":"center"}},[s("img",{attrs:{src:"/images/icon-2024.svg"}})]),t._v(" "),s("td")]),t._v(" "),s("tr",[s("td",[t._v("查找和替换")]),t._v(" "),s("td",{staticStyle:{"text-align":"center"}},[s("img",{attrs:{src:"/images/icon-2021.svg"}})]),t._v(" "),s("td",{staticStyle:{"text-align":"center"}},[s("img",{attrs:{src:"/images/icon-2022.svg"}})]),t._v(" "),s("td",{staticStyle:{"text-align":"center"}},[s("img",{attrs:{src:"/images/icon-2023.svg"}})]),t._v(" "),s("td",{staticStyle:{"text-align":"center"}},[s("img",{attrs:{src:"/images/icon-2024.svg"}})]),t._v(" "),s("td")]),t._v(" "),s("tr",[s("td",[t._v("在外部编辑器中打开查询文件")]),t._v(" "),s("td",{staticStyle:{"text-align":"center"}}),t._v(" "),s("td",{staticStyle:{"text-align":"center"}}),t._v(" "),s("td",{staticStyle:{"text-align":"center"}},[s("img",{attrs:{src:"/images/icon-2023.svg"}})]),t._v(" "),s("td",{staticStyle:{"text-align":"center"}},[s("img",{attrs:{src:"/images/icon-2024.svg"}})]),t._v(" "),s("td")]),t._v(" "),s("tr",{staticStyle:{"background-color":"#67C23A"}},[s("td",[s("b",[t._v("数据模型")])]),t._v(" "),s("td"),t._v(" "),s("td"),t._v(" "),s("td"),t._v(" "),s("td"),t._v(" "),s("td")]),t._v(" "),s("tr",[s("td",[t._v("概念、逻辑和物理模型")]),t._v(" "),s("td",{staticStyle:{"text-align":"center"}}),t._v(" "),s("td",{staticStyle:{"text-align":"center"}},[s("img",{attrs:{src:"/images/icon-2022.svg"}})]),t._v(" "),s("td",{staticStyle:{"text-align":"center"}},[s("img",{attrs:{src:"/images/icon-2023.svg"}})]),t._v(" "),s("td",{staticStyle:{"text-align":"center"}},[s("img",{attrs:{src:"/images/icon-2024.svg"}})]),t._v(" "),s("td")]),t._v(" "),s("tr",[s("td",[t._v("逆向或正向工程")]),t._v(" "),s("td",{staticStyle:{"text-align":"center"}}),t._v(" "),s("td",{staticStyle:{"text-align":"center"}},[s("img",{attrs:{src:"/images/icon-2022.svg"}})]),t._v(" "),s("td",{staticStyle:{"text-align":"center"}},[s("img",{attrs:{src:"/images/icon-2023.svg"}})]),t._v(" "),s("td",{staticStyle:{"text-align":"center"}},[s("img",{attrs:{src:"/images/icon-2024.svg"}})]),t._v(" "),s("td")]),t._v(" "),s("tr",[s("td",[t._v("添加线、层、图像、笔记、艺术文本和形状")]),t._v(" "),s("td",{staticStyle:{"text-align":"center"}}),t._v(" "),s("td",{staticStyle:{"text-align":"center"}},[s("img",{attrs:{src:"/images/icon-2022.svg"}})]),t._v(" "),s("td",{staticStyle:{"text-align":"center"}},[s("img",{attrs:{src:"/images/icon-2023.svg"}})]),t._v(" "),s("td",{staticStyle:{"text-align":"center"}},[s("img",{attrs:{src:"/images/icon-2024.svg"}})]),t._v(" "),s("td")]),t._v(" "),s("tr",[s("td",[t._v("导出数据库图表到 PDF 和图形文件")]),t._v(" "),s("td",{staticStyle:{"text-align":"center"}}),t._v(" "),s("td",{staticStyle:{"text-align":"center"}},[s("img",{attrs:{src:"/images/icon-2022.svg"}})]),t._v(" "),s("td",{staticStyle:{"text-align":"center"}},[s("img",{attrs:{src:"/images/icon-2023.svg"}})]),t._v(" "),s("td",{staticStyle:{"text-align":"center"}},[s("img",{attrs:{src:"/images/icon-2024.svg"}})]),t._v(" "),s("td")]),t._v(" "),s("tr",{staticStyle:{"background-color":"#67C23A"}},[s("td",[s("b",[t._v("导入或导出")])]),t._v(" "),s("td"),t._v(" "),s("td"),t._v(" "),s("td"),t._v(" "),s("td"),t._v(" "),s("td")]),t._v(" "),s("tr",[s("td",[t._v("从文件导入数据: TXT, CSV, XML, JSON")]),t._v(" "),s("td",{staticStyle:{"text-align":"center"}},[s("img",{attrs:{src:"/images/icon-2021.svg"}})]),t._v(" "),s("td",{staticStyle:{"text-align":"center"}},[s("img",{attrs:{src:"/images/icon-2022.svg"}})]),t._v(" "),s("td",{staticStyle:{"text-align":"center"}},[s("img",{attrs:{src:"/images/icon-2023.svg"}})]),t._v(" "),s("td",{staticStyle:{"text-align":"center"}},[s("img",{attrs:{src:"/images/icon-2024.svg"}})]),t._v(" "),s("td")]),t._v(" "),s("tr",[s("td",[t._v("导出数据为文件: TXT, CSV, XML, JSON")]),t._v(" "),s("td",{staticStyle:{"text-align":"center"}},[s("img",{attrs:{src:"/images/icon-2021.svg"}})]),t._v(" "),s("td",{staticStyle:{"text-align":"center"}},[s("img",{attrs:{src:"/images/icon-2022.svg"}})]),t._v(" "),s("td",{staticStyle:{"text-align":"center"}},[s("img",{attrs:{src:"/images/icon-2023.svg"}})]),t._v(" "),s("td",{staticStyle:{"text-align":"center"}},[s("img",{attrs:{src:"/images/icon-2024.svg"}})]),t._v(" "),s("td")]),t._v(" "),s("tr",[s("td",[t._v("导出数据到格式:Markdown、HTML")]),t._v(" "),s("td",{staticStyle:{"text-align":"center"}},[s("img",{attrs:{src:"/images/icon-2021.svg"}})]),t._v(" "),s("td",{staticStyle:{"text-align":"center"}},[s("img",{attrs:{src:"/images/icon-2022.svg"}})]),t._v(" "),s("td",{staticStyle:{"text-align":"center"}},[s("img",{attrs:{src:"/images/icon-2023.svg"}})]),t._v(" "),s("td",{staticStyle:{"text-align":"center"}},[s("img",{attrs:{src:"/images/icon-2024.svg"}})]),t._v(" "),s("td")]),t._v(" "),s("tr",[s("td",[t._v("生成设计文档: Markdown、HTML")]),t._v(" "),s("td",{staticStyle:{"text-align":"center"}},[s("img",{attrs:{src:"/images/icon-2021.svg"}})]),t._v(" "),s("td",{staticStyle:{"text-align":"center"}},[s("img",{attrs:{src:"/images/icon-2022.svg"}})]),t._v(" "),s("td",{staticStyle:{"text-align":"center"}},[s("img",{attrs:{src:"/images/icon-2023.svg"}})]),t._v(" "),s("td",{staticStyle:{"text-align":"center"}},[s("img",{attrs:{src:"/images/icon-2024.svg"}})]),t._v(" "),s("td")]),t._v(" "),s("tr",{staticStyle:{"background-color":"#67C23A"}},[s("td",[s("b",[t._v("数据操作")])]),t._v(" "),s("td"),t._v(" "),s("td"),t._v(" "),s("td"),t._v(" "),s("td"),t._v(" "),s("td")]),t._v(" "),s("tr",[s("td",[t._v("转储或运行 SQL 或脚本文件")]),t._v(" "),s("td"),t._v(" "),s("td"),t._v(" "),s("td",{staticStyle:{"text-align":"center"}},[s("img",{attrs:{src:"/images/icon-2023.svg"}})]),t._v(" "),s("td",{staticStyle:{"text-align":"center"}},[s("img",{attrs:{src:"/images/icon-2024.svg"}})]),t._v(" "),s("td")]),t._v(" "),s("tr",{staticStyle:{"background-color":"#67C23A"}},[s("td",[s("b",[t._v("服务器安全性")])]),t._v(" "),s("td"),t._v(" "),s("td"),t._v(" "),s("td"),t._v(" "),s("td"),t._v(" "),s("td")]),t._v(" "),s("tr",[s("td",[t._v("角色管理")]),t._v(" "),s("td"),t._v(" "),s("td"),t._v(" "),s("td",{staticStyle:{"text-align":"center"}},[s("img",{attrs:{src:"/images/icon-2023.svg"}})]),t._v(" "),s("td",{staticStyle:{"text-align":"center"}},[s("img",{attrs:{src:"/images/icon-2024.svg"}})]),t._v(" "),s("td")]),t._v(" "),s("tr",[s("td",[t._v("用户管理")]),t._v(" "),s("td"),t._v(" "),s("td"),t._v(" "),s("td",{staticStyle:{"text-align":"center"}},[s("img",{attrs:{src:"/images/icon-2023.svg"}})]),t._v(" "),s("td",{staticStyle:{"text-align":"center"}},[s("img",{attrs:{src:"/images/icon-2024.svg"}})]),t._v(" "),s("td")]),t._v(" "),s("tr",{staticStyle:{"background-color":"#67C23A"}},[s("td",[s("b",[t._v("其他实用功能")])]),t._v(" "),s("td"),t._v(" "),s("td"),t._v(" "),s("td"),t._v(" "),s("td"),t._v(" "),s("td")]),t._v(" "),s("tr",[s("td",[t._v("数据库范围搜索")]),t._v(" "),s("td"),t._v(" "),s("td"),t._v(" "),s("td",{staticStyle:{"text-align":"center"}},[s("img",{attrs:{src:"/images/icon-2023.svg"}})]),t._v(" "),s("td",{staticStyle:{"text-align":"center"}},[s("img",{attrs:{src:"/images/icon-2024.svg"}})]),t._v(" "),s("td")]),t._v(" "),s("tr",[s("td",[t._v("深色模式")]),t._v(" "),s("td"),t._v(" "),s("td",{staticStyle:{"text-align":"center"}},[s("img",{attrs:{src:"/images/icon-2022.svg"}})]),t._v(" "),s("td",{staticStyle:{"text-align":"center"}},[s("img",{attrs:{src:"/images/icon-2023.svg"}})]),t._v(" "),s("td",{staticStyle:{"text-align":"center"}},[s("img",{attrs:{src:"/images/icon-2024.svg"}})]),t._v(" "),s("td")]),t._v(" "),s("tr",[s("td",{staticStyle:{color:"#ffd700"}},[t._v("快捷键自定义")]),t._v(" "),s("td"),t._v(" "),s("td",{staticStyle:{"text-align":"center"}},[s("img",{attrs:{src:"/images/icon-2022.svg"}})]),t._v(" "),s("td",{staticStyle:{"text-align":"center"}},[s("img",{attrs:{src:"/images/icon-2023.svg"}})]),t._v(" "),s("td",{staticStyle:{"text-align":"center"}},[s("img",{attrs:{src:"/images/icon-2024.svg"}})]),t._v(" "),s("td")]),t._v(" "),s("tr",[s("td",{staticStyle:{color:"#ffd700"}},[t._v("编辑器样式")]),t._v(" "),s("td"),t._v(" "),s("td"),t._v(" "),s("td",{staticStyle:{"text-align":"center"}},[s("img",{attrs:{src:"/images/icon-2023.svg"}})]),t._v(" "),s("td",{staticStyle:{"text-align":"center"}},[s("img",{attrs:{src:"/images/icon-2024.svg"}})]),t._v(" "),s("td")]),t._v(" "),s("tr",[s("td",{staticStyle:{color:"#ffd700"}},[t._v("分割视图")]),t._v(" "),s("td"),t._v(" "),s("td"),t._v(" "),s("td",{staticStyle:{"text-align":"center"}},[s("img",{attrs:{src:"/images/icon-2023.svg"}})]),t._v(" "),s("td",{staticStyle:{"text-align":"center"}},[s("img",{attrs:{src:"/images/icon-2024.svg"}})]),t._v(" "),s("td")])])])]),t._v(" "),s("div",[s("script2",{attrs:{type:"text/javascript",async:"true",src:"https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"}}),t._v(" "),s("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),t._v(" "),s("script2",{attrs:{type:"text/javascript"}},[t._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1)])}),[],!1,null,null,null);e.default=a.exports}}]); \ No newline at end of file diff --git a/assets/js/141.257ee340.js b/assets/js/141.257ee340.js new file mode 100644 index 000000000..638b4dd18 --- /dev/null +++ b/assets/js/141.257ee340.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[141],{729:function(a,t,s){"use strict";s.r(t);var n=s(13),e=Object(n.a)({},(function(){var a=this,t=a.$createElement,s=a._self._c||t;return s("ContentSlotsDistributor",{attrs:{"slot-key":a.$parent.slotKey}},[s("h1",{attrs:{id:"linux-平台安装"}},[s("a",{staticClass:"header-anchor",attrs:{href:"#linux-平台安装"}},[a._v("#")]),a._v(" Linux 平台安装")]),a._v(" "),s("h2",{attrs:{id:"下载-袋鼠数据库工具"}},[s("a",{staticClass:"header-anchor",attrs:{href:"#下载-袋鼠数据库工具"}},[a._v("#")]),a._v(" 下载 袋鼠数据库工具")]),a._v(" "),s("p",[a._v("点击链接下载最新版的袋鼠数据库工具 "),s("a",{attrs:{href:"../download"}},[a._v("下载")])]),a._v(" "),s("h2",{attrs:{id:"在-debian-ubuntu-发行版上安装"}},[s("a",{staticClass:"header-anchor",attrs:{href:"#在-debian-ubuntu-发行版上安装"}},[a._v("#")]),a._v(" 在 Debian/Ubuntu 发行版上安装")]),a._v(" "),s("p",[a._v("先从官网下载 Debian/Ubuntu 支持的安装包(*.deb),然后执行命令:")]),a._v(" "),s("div",{staticClass:"language-bash extra-class"},[s("pre",{pre:!0,attrs:{class:"language-bash"}},[s("code",[s("span",{pre:!0,attrs:{class:"token comment"}},[a._v("# For Ubuntu")]),a._v("\n"),s("span",{pre:!0,attrs:{class:"token function"}},[a._v("sudo")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token function"}},[a._v("apt")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token function"}},[a._v("install")]),a._v(" kangaroo-max-3.92.1.230901-x86_64.deb\n\n"),s("span",{pre:!0,attrs:{class:"token comment"}},[a._v("# For Debian")]),a._v("\n"),s("span",{pre:!0,attrs:{class:"token function"}},[a._v("sudo")]),a._v(" dpkg -i kangaroo-max-3.92.1.230901-x86_64.deb\n")])])]),s("h2",{attrs:{id:"在-rhel-centos-fedora-发行版上安装"}},[s("a",{staticClass:"header-anchor",attrs:{href:"#在-rhel-centos-fedora-发行版上安装"}},[a._v("#")]),a._v(" 在 RHEL/CentOS/Fedora 发行版上安装")]),a._v(" "),s("p",[a._v("先从官网下载 RHEL/CentOS/Fedora 支持的安装包(*.rpm),然后执行命令:")]),a._v(" "),s("div",{staticClass:"language-bash extra-class"},[s("pre",{pre:!0,attrs:{class:"language-bash"}},[s("code",[s("span",{pre:!0,attrs:{class:"token comment"}},[a._v("# For Fedora")]),a._v("\n"),s("span",{pre:!0,attrs:{class:"token function"}},[a._v("sudo")]),a._v(" dnf "),s("span",{pre:!0,attrs:{class:"token function"}},[a._v("install")]),a._v(" kangaroo-max-3.92.1.230901-x86_64.rpm\n\n"),s("span",{pre:!0,attrs:{class:"token comment"}},[a._v("# For RHEL/CentOS")]),a._v("\n"),s("span",{pre:!0,attrs:{class:"token function"}},[a._v("sudo")]),a._v(" yum "),s("span",{pre:!0,attrs:{class:"token function"}},[a._v("install")]),a._v(" kangaroo-max-3.92.1.230901-x86_64.rpm\n")])])]),s("h2",{attrs:{id:"在-arch-linux-发行版上安装"}},[s("a",{staticClass:"header-anchor",attrs:{href:"#在-arch-linux-发行版上安装"}},[a._v("#")]),a._v(" 在 Arch Linux 发行版上安装")]),a._v(" "),s("p",[a._v("先从官网下载 Arch Linux 支持的安装包(*.pkg.tar.zst),然后执行命令:")]),a._v(" "),s("div",{staticClass:"language-bash extra-class"},[s("pre",{pre:!0,attrs:{class:"language-bash"}},[s("code",[s("span",{pre:!0,attrs:{class:"token function"}},[a._v("sudo")]),a._v(" pacman -U kangaroo-max-3.91.1.230901-1-x86_64.pkg.tar.zst\n")])])]),s("Vssue",{attrs:{"issue-id":5,title:a.$title}})],1)}),[],!1,null,null,null);t.default=e.exports}}]); \ No newline at end of file diff --git a/assets/js/142.f902223b.js b/assets/js/142.f902223b.js new file mode 100644 index 000000000..ab190d58b --- /dev/null +++ b/assets/js/142.f902223b.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[142],{730:function(t,e,a){"use strict";a.r(e);var v=a(13),_=Object(v.a)({},(function(){var t=this,e=t.$createElement,a=t._self._c||e;return a("ContentSlotsDistributor",{attrs:{"slot-key":t.$parent.slotKey}},[a("h1",{attrs:{id:"袋鼠价格方案"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#袋鼠价格方案"}},[t._v("#")]),t._v(" 袋鼠价格方案")]),t._v(" "),a("h2",{attrs:{id:"特性价格方案"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#特性价格方案"}},[t._v("#")]),t._v(" 特性价格方案")]),t._v(" "),a("p",[t._v("以下版本价格均为按年订阅价格,包含一年内免费升级和支持服务。")]),t._v(" "),a("table",[a("thead",[a("tr",[a("th",[t._v("特性方案")]),t._v(" "),a("th",{staticStyle:{"text-align":"center"}},[t._v("企业许可证")]),t._v(" "),a("th",{staticStyle:{"text-align":"center"}},[t._v("非商业许可证")]),t._v(" "),a("th",[t._v("许可证展期")])])]),t._v(" "),a("tbody",[a("tr",[a("td",[t._v("多数据库 (含税)")]),t._v(" "),a("td",{staticStyle:{"text-align":"center"}},[t._v("CNY 1899")]),t._v(" "),a("td",{staticStyle:{"text-align":"center"}},[t._v("CNY 699")]),t._v(" "),a("td",[t._v("八折优惠")])]),t._v(" "),a("tr",[a("td",[t._v("单数据库 (含税)")]),t._v(" "),a("td",{staticStyle:{"text-align":"center"}},[t._v("CNY 499")]),t._v(" "),a("td",{staticStyle:{"text-align":"center"}},[t._v("CNY 199")]),t._v(" "),a("td",[t._v("八折优惠")])])])]),t._v(" "),a("h2",{attrs:{id:"许可证设备支持"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#许可证设备支持"}},[t._v("#")]),t._v(" 许可证设备支持")]),t._v(" "),a("ol",[a("li",[t._v("一个许可证对应一个用户,通过手机进行验证及绑定。")]),t._v(" "),a("li",[t._v("一个许可证可支持 3 台设备(Windows / MacOS / Linux)。")])])])}),[],!1,null,null,null);e.default=_.exports}}]); \ No newline at end of file diff --git a/assets/js/143.07d2e25b.js b/assets/js/143.07d2e25b.js new file mode 100644 index 000000000..41f0e4a98 --- /dev/null +++ b/assets/js/143.07d2e25b.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[143],{733:function(a,t,s){"use strict";s.r(t);var e=s(13),n=Object(e.a)({},(function(){var a=this,t=a.$createElement,s=a._self._c||t;return s("ContentSlotsDistributor",{attrs:{"slot-key":a.$parent.slotKey}},[s("h1",{attrs:{id:"高分辨率缩放设置"}},[s("a",{staticClass:"header-anchor",attrs:{href:"#高分辨率缩放设置"}},[a._v("#")]),a._v(" 高分辨率缩放设置")]),a._v(" "),s("p",[a._v("GTK4 已经实现所有平台的高分辨率缩放支持, 所有的 GTK4 应用都会自动应用系统缩放设置进行缩放。但有时候会存在缩放问题,需要您尝试一下另一种方式来实现缩放支持,详细的解决办法如下:")]),a._v(" "),s("h2",{attrs:{id:"_4k-分辨率缩放-200"}},[s("a",{staticClass:"header-anchor",attrs:{href:"#_4k-分辨率缩放-200"}},[a._v("#")]),a._v(" 4K 分辨率缩放(200%)")]),a._v(" "),s("h3",{attrs:{id:"windows"}},[s("a",{staticClass:"header-anchor",attrs:{href:"#windows"}},[a._v("#")]),a._v(" Windows")]),a._v(" "),s("div",{staticClass:"language- extra-class"},[s("pre",{pre:!0,attrs:{class:"language-text"}},[s("code",[a._v("GDK_SCALE = 2\n// GDK_DPI_SCALE=96\n")])])]),s("h3",{attrs:{id:"macos"}},[s("a",{staticClass:"header-anchor",attrs:{href:"#macos"}},[a._v("#")]),a._v(" macOS")]),a._v(" "),s("div",{staticClass:"language- extra-class"},[s("pre",{pre:!0,attrs:{class:"language-text"}},[s("code",[a._v("// 环境变量 \nGDK_SCALE = 2\n// GDK_DPI_SCALE = 96\n")])])]),s("h3",{attrs:{id:"linux-gtk"}},[s("a",{staticClass:"header-anchor",attrs:{href:"#linux-gtk"}},[a._v("#")]),a._v(" Linux / GTK")]),a._v(" "),s("div",{staticClass:"language- extra-class"},[s("pre",{pre:!0,attrs:{class:"language-text"}},[s("code",[a._v("// 环境变量 \nGDK_SCALE = 2\n// GDK_DPI_SCALE = 96\n\nor\n\n// (X11 Server) XSettings value\nGdk/WindowScalingFactor = 2\nGdk/UnscaledDPI = 98340\n")])])]),s("h3",{attrs:{id:"linux-kde"}},[s("a",{staticClass:"header-anchor",attrs:{href:"#linux-kde"}},[a._v("#")]),a._v(" Linux / KDE")]),a._v(" "),s("div",{staticClass:"language- extra-class"},[s("pre",{pre:!0,attrs:{class:"language-text"}},[s("code",[a._v("// 环境变量 \nunset GDK_SCALE\nunset GDK_DPI_SCALE\n\n// (X11 Server) XSettings value: ~/.config/xsettingsd/xsettingsd.conf\nGdk/WindowScalingFactor = 2\nGdk/UnscaledDPI = 98340\n")])])]),s("h2",{attrs:{id:"_8k-分辨率缩放-400"}},[s("a",{staticClass:"header-anchor",attrs:{href:"#_8k-分辨率缩放-400"}},[a._v("#")]),a._v(" 8K 分辨率缩放(400%)")]),a._v(" "),s("h3",{attrs:{id:"windows-2"}},[s("a",{staticClass:"header-anchor",attrs:{href:"#windows-2"}},[a._v("#")]),a._v(" Windows")]),a._v(" "),s("div",{staticClass:"language- extra-class"},[s("pre",{pre:!0,attrs:{class:"language-text"}},[s("code",[a._v("GDK_SCALE = 4\n// GDK_DPI_SCALE=96\n")])])]),s("h3",{attrs:{id:"macos-2"}},[s("a",{staticClass:"header-anchor",attrs:{href:"#macos-2"}},[a._v("#")]),a._v(" macOS")]),a._v(" "),s("div",{staticClass:"language- extra-class"},[s("pre",{pre:!0,attrs:{class:"language-text"}},[s("code",[a._v("// 环境变量 \nGDK_SCALE = 4\n// GDK_DPI_SCALE = 96\n")])])]),s("h3",{attrs:{id:"linux-gtk-2"}},[s("a",{staticClass:"header-anchor",attrs:{href:"#linux-gtk-2"}},[a._v("#")]),a._v(" Linux / GTK")]),a._v(" "),s("div",{staticClass:"language- extra-class"},[s("pre",{pre:!0,attrs:{class:"language-text"}},[s("code",[a._v("// 环境变量 \nGDK_SCALE = 4\n// GDK_DPI_SCALE = 96\n\nor\n\n// (X11 Server) XSettings value\nGdk/WindowScalingFactor = 4\nGdk/UnscaledDPI = 98340\n")])])]),s("h3",{attrs:{id:"linux-kde-2"}},[s("a",{staticClass:"header-anchor",attrs:{href:"#linux-kde-2"}},[a._v("#")]),a._v(" Linux / KDE")]),a._v(" "),s("div",{staticClass:"language- extra-class"},[s("pre",{pre:!0,attrs:{class:"language-text"}},[s("code",[a._v("// 环境变量 \nunset GDK_SCALE\nunset GDK_DPI_SCALE\n\n// (X11 Server) XSettings value: ~/.config/xsettingsd/xsettingsd.conf\nGdk/WindowScalingFactor = 4\nGdk/UnscaledDPI = 98340\n")])])])])}),[],!1,null,null,null);t.default=n.exports}}]); \ No newline at end of file diff --git a/assets/js/144.0a60b01c.js b/assets/js/144.0a60b01c.js new file mode 100644 index 000000000..b90b43003 --- /dev/null +++ b/assets/js/144.0a60b01c.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[144],{736:function(t,a,s){"use strict";s.r(a);var r=s(13),i=Object(r.a)({},(function(){var t=this,a=t.$createElement,s=t._self._c||a;return s("ContentSlotsDistributor",{attrs:{"slot-key":t.$parent.slotKey}},[s("h1",{attrs:{id:"系统需求"}},[s("a",{staticClass:"header-anchor",attrs:{href:"#系统需求"}},[t._v("#")]),t._v(" 系统需求")]),t._v(" "),s("h2",{attrs:{id:"操作系统"}},[s("a",{staticClass:"header-anchor",attrs:{href:"#操作系统"}},[t._v("#")]),t._v(" 操作系统")]),t._v(" "),s("ul",[s("li",[t._v("macOS: ≥ v10.14")]),t._v(" "),s("li",[t._v("Linux: 在 Ubuntu 20.04 / ArchLinux 上测试通过, 支持 x64 架构.")]),t._v(" "),s("li",[t._v("Windows: 需要 Windows 7 以上版本, 支持 x86 和 amd64 (x64) 架构.")])]),t._v(" "),s("h2",{attrs:{id:"硬件"}},[s("a",{staticClass:"header-anchor",attrs:{href:"#硬件"}},[t._v("#")]),t._v(" 硬件")]),t._v(" "),s("ul",[s("li",[t._v("Windows 1G 以上内存")]),t._v(" "),s("li",[t._v("Mac 1G 以上内存")]),t._v(" "),s("li",[t._v("Linux 1G 以上内存")])])])}),[],!1,null,null,null);a.default=i.exports}}]); \ No newline at end of file diff --git a/assets/js/145.fa876bd1.js b/assets/js/145.fa876bd1.js new file mode 100644 index 000000000..002422f2c --- /dev/null +++ b/assets/js/145.fa876bd1.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[145],{737:function(t,s,i){"use strict";i.r(s);var a=i(13),e=Object(a.a)({},(function(){var t=this.$createElement,s=this._self._c||t;return s("ContentSlotsDistributor",{attrs:{"slot-key":this.$parent.slotKey}},[s("h1",{attrs:{id:"可视化sql构建器"}},[s("a",{staticClass:"header-anchor",attrs:{href:"#可视化sql构建器"}},[this._v("#")]),this._v(" 可视化SQL构建器")]),this._v(" "),s("div",{staticClass:"custom-block danger"},[s("p",{staticClass:"custom-block-title"},[this._v("括号语句未支持")]),this._v(" "),s("p",[this._v("源于 GTK 组件设计原因,无法精准重建 SQL,导致包含括号的复杂句暂未支持,请斟酌使用。")])])])}),[],!1,null,null,null);s.default=e.exports}}]); \ No newline at end of file diff --git a/assets/js/146.21b703f8.js b/assets/js/146.21b703f8.js new file mode 100644 index 000000000..895290bbc --- /dev/null +++ b/assets/js/146.21b703f8.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[146],{738:function(v,t,_){"use strict";_.r(t);var a=_(13),r=Object(a.a)({},(function(){var v=this,t=v.$createElement,_=v._self._c||t;return _("ContentSlotsDistributor",{attrs:{"slot-key":v.$parent.slotKey}},[_("h1",{attrs:{id:"下载-袋鼠数据库工具"}},[_("a",{staticClass:"header-anchor",attrs:{href:"#下载-袋鼠数据库工具"}},[v._v("#")]),v._v(" 下载 袋鼠数据库工具")]),v._v(" "),_("p",[v._v("始终建议您下载或升级到袋鼠数据库工具最新版本,因为新特性和缺陷修复会包含在滚动发布的新版本中;"),_("strong",[v._v("由于服务器空间限制原因,某些服务器仅提供最新版本下载。")])]),v._v(" "),_("div",{staticClass:"custom-block danger"},[_("p",{staticClass:"custom-block-title"},[v._v("重要提示")]),v._v(" "),_("p",[v._v("版本中标注有 "),_("Badge",{attrs:{text:"Dev"}}),v._v(" "),_("Badge",{attrs:{text:"Beta"}}),v._v(" 字样的可以免费使用,其它版本需要付费。")],1)]),v._v(" "),_("h2",{attrs:{id:"袋鼠数据库工具版本"}},[_("a",{staticClass:"header-anchor",attrs:{href:"#袋鼠数据库工具版本"}},[v._v("#")]),v._v(" 袋鼠数据库工具版本")]),v._v(" "),_("table",[_("thead",[_("tr",[_("th",[v._v("发布日期")]),v._v(" "),_("th",[v._v("Windows")]),v._v(" "),_("th",[v._v("Linux")]),v._v(" "),_("th",[v._v("MacOS")]),v._v(" "),_("th",[v._v("iOS")]),v._v(" "),_("th",[v._v("Android")])])]),v._v(" "),_("tbody",[_("tr",[_("td",[v._v("2023-09-01")]),v._v(" "),_("td",[_("a",{attrs:{href:"./v3.92.1.230901"}},[v._v("v3.92.1")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v3.92.1.230901"}},[v._v("v3.92.1")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v3.92.1.230901"}},[v._v("v3.92.1")])]),v._v(" "),_("td"),v._v(" "),_("td")]),v._v(" "),_("tr",[_("td",[v._v("2023-08-01")]),v._v(" "),_("td",[_("a",{attrs:{href:"./v3.91.1.230801"}},[v._v("v3.91.1 (Beta)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v3.91.1.230801"}},[v._v("v3.91.1 (Beta)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v3.91.1.230801"}},[v._v("v3.91.1 (Beta)")])]),v._v(" "),_("td"),v._v(" "),_("td")]),v._v(" "),_("tr",[_("td",[v._v("2023-07-01")]),v._v(" "),_("td",[_("a",{attrs:{href:"./v3.90.1.230701"}},[v._v("v3.90.1 (Beta)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v3.90.1.230701"}},[v._v("v3.90.1 (Beta)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v3.90.1.230701"}},[v._v("v3.90.1 (Beta)")])]),v._v(" "),_("td"),v._v(" "),_("td")]),v._v(" "),_("tr",[_("td",[v._v("2023-06-02")]),v._v(" "),_("td",[_("a",{attrs:{href:"./v2.99.3.230602"}},[v._v("v2.99.3 (Beta)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v2.99.3.230602"}},[v._v("v2.99.3 (Beta)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v2.99.3.230602"}},[v._v("v2.99.3 (Beta)")])]),v._v(" "),_("td"),v._v(" "),_("td")]),v._v(" "),_("tr",[_("td",[v._v("2023-05-08")]),v._v(" "),_("td",[_("a",{attrs:{href:"./v1.10.3.230508"}},[v._v("v1.10.3 (Beta)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v1.10.3.230508"}},[v._v("v1.10.3 (Beta)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v1.10.3.230508"}},[v._v("v1.10.3 (Beta)")])]),v._v(" "),_("td"),v._v(" "),_("td")]),v._v(" "),_("tr",[_("td",[v._v("2023-04-28")]),v._v(" "),_("td",[_("a",{attrs:{href:"./v2.99.2.230428"}},[v._v("v2.99.2 (Beta)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v2.99.2.230428"}},[v._v("v2.99.2 (Beta)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v2.99.2.230428"}},[v._v("v2.99.2 (Beta)")])]),v._v(" "),_("td"),v._v(" "),_("td")]),v._v(" "),_("tr",[_("td",[v._v("2023-04-02")]),v._v(" "),_("td",[_("a",{attrs:{href:"./v2.99.1.230331"}},[v._v("v2.99.1 (Beta)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v2.99.1.230331"}},[v._v("v2.99.1 (Beta)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v2.99.1.230331"}},[v._v("v2.99.1 (Beta)")])]),v._v(" "),_("td"),v._v(" "),_("td")]),v._v(" "),_("tr",[_("td",[v._v("2023-03-01")]),v._v(" "),_("td",[_("a",{attrs:{href:"./v2.3.2.230301"}},[v._v("v2.3.2 (Beta)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v2.3.2.230301"}},[v._v("v2.3.2 (Beta)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v2.3.2.230301"}},[v._v("v2.3.2 (Beta)")])]),v._v(" "),_("td"),v._v(" "),_("td")]),v._v(" "),_("tr",[_("td",[v._v("2023-02-01")]),v._v(" "),_("td",[_("a",{attrs:{href:"./v2.3.1.230201"}},[v._v("v2.3.1 (Beta)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v2.3.1.230201"}},[v._v("v2.3.1 (Beta)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v2.3.1.230201"}},[v._v("v2.3.1 (Beta)")])]),v._v(" "),_("td"),v._v(" "),_("td")]),v._v(" "),_("tr",[_("td",[v._v("2023-01-01")]),v._v(" "),_("td",[_("a",{attrs:{href:"./v2.2.1.230101"}},[v._v("v2.2.1 (Beta)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v2.2.1.230101"}},[v._v("v2.2.1 (Beta)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v2.2.1.230101"}},[v._v("v2.2.1 (Beta)")])]),v._v(" "),_("td"),v._v(" "),_("td")]),v._v(" "),_("tr",[_("td",[v._v("2022-12-01")]),v._v(" "),_("td",[_("a",{attrs:{href:"./v2.1.1.221201"}},[v._v("v2.1.1 (Beta)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v2.1.1.221201"}},[v._v("v2.1.1 (Beta)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v2.1.1.221201"}},[v._v("v2.1.1 (Beta)")])]),v._v(" "),_("td"),v._v(" "),_("td")]),v._v(" "),_("tr",[_("td",[v._v("2022-11-01")]),v._v(" "),_("td",[_("a",{attrs:{href:"./v2.0.0.221101"}},[v._v("v2.0.0 (Beta)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v2.0.0.221101"}},[v._v("v2.0.0 (Beta)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v2.0.0.221101"}},[v._v("v2.0.0 (Beta)")])]),v._v(" "),_("td"),v._v(" "),_("td")]),v._v(" "),_("tr",[_("td",[v._v("2022-10-01")]),v._v(" "),_("td",[_("a",{attrs:{href:"./v1.99.1.221001"}},[v._v("v1.99.1 (Dev)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v1.99.1.221001"}},[v._v("v1.99.1 (Dev)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v1.99.1.221001"}},[v._v("v1.99.1 (Dev)")])]),v._v(" "),_("td"),v._v(" "),_("td")]),v._v(" "),_("tr",[_("td",[v._v("2022-09-04")]),v._v(" "),_("td",[_("a",{attrs:{href:"./v1.98.1.220904"}},[v._v("v1.98.1 (Dev)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v1.98.1.220904"}},[v._v("v1.98.1 (Dev)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v1.98.1.220904"}},[v._v("v1.98.1 (Dev)")])]),v._v(" "),_("td"),v._v(" "),_("td")]),v._v(" "),_("tr",[_("td",[v._v("2022-07-31")]),v._v(" "),_("td",[_("a",{attrs:{href:"./v1.97.1.220731"}},[v._v("v1.97.1 (Dev)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v1.97.1.220731"}},[v._v("v1.97.1 (Dev)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v1.97.1.220731"}},[v._v("v1.97.1 (Dev)")])]),v._v(" "),_("td"),v._v(" "),_("td")]),v._v(" "),_("tr",[_("td",[v._v("2022-07-01")]),v._v(" "),_("td",[_("a",{attrs:{href:"./v1.10.2.220701"}},[v._v("v1.10.2 (Beta)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v1.10.2.220701"}},[v._v("v1.10.2 (Beta)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v1.10.2.220701"}},[v._v("v1.10.2 (Beta)")])]),v._v(" "),_("td"),v._v(" "),_("td")]),v._v(" "),_("tr",[_("td",[v._v("2022-07-01")]),v._v(" "),_("td",[_("a",{attrs:{href:"./v1.96.1.220701"}},[v._v("v1.96.1 (Dev)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v1.96.1.220701"}},[v._v("v1.96.1 (Dev)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v1.96.1.220701"}},[v._v("v1.96.1 (Dev)")])]),v._v(" "),_("td"),v._v(" "),_("td")]),v._v(" "),_("tr",[_("td",[v._v("2022-06-01")]),v._v(" "),_("td",[_("a",{attrs:{href:"./v1.95.1.220601"}},[v._v("v1.95.1 (Dev)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v1.95.1.220601"}},[v._v("v1.95.1 (Dev)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v1.95.1.220601"}},[v._v("v1.95.1 (Dev)")])]),v._v(" "),_("td"),v._v(" "),_("td")]),v._v(" "),_("tr",[_("td",[v._v("2022-05-01")]),v._v(" "),_("td",[_("a",{attrs:{href:"./v1.94.1.220501"}},[v._v("v1.94.1 (Dev)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v1.94.1.220501"}},[v._v("v1.94.1 (Dev)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v1.94.1.220501"}},[v._v("v1.94.1 (Dev)")])]),v._v(" "),_("td"),v._v(" "),_("td")]),v._v(" "),_("tr",[_("td",[v._v("2022-04-01")]),v._v(" "),_("td",[_("a",{attrs:{href:"./v1.93.1.220401"}},[v._v("v1.93.1 (Dev)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v1.93.1.220401"}},[v._v("v1.93.1 (Dev)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v1.93.1.220401"}},[v._v("v1.93.1 (Dev)")])]),v._v(" "),_("td"),v._v(" "),_("td")]),v._v(" "),_("tr",[_("td",[v._v("2022-02-28")]),v._v(" "),_("td",[_("a",{attrs:{href:"./v1.92.1.220228"}},[v._v("v1.92.1 (Dev)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v1.92.1.220228"}},[v._v("v1.92.1 (Dev)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v1.92.1.220228"}},[v._v("v1.92.1 (Dev)")])]),v._v(" "),_("td"),v._v(" "),_("td")]),v._v(" "),_("tr",[_("td",[v._v("2022-01-28")]),v._v(" "),_("td",[_("a",{attrs:{href:"./v1.91.1.220128"}},[v._v("v1.91.1 (Dev)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v1.91.1.220128"}},[v._v("v1.91.1 (Dev)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v1.91.1.220128"}},[v._v("v1.91.1 (Dev)")])]),v._v(" "),_("td"),v._v(" "),_("td")]),v._v(" "),_("tr",[_("td",[v._v("2021-12-31")]),v._v(" "),_("td",[_("a",{attrs:{href:"./v1.90.1.211231"}},[v._v("v1.90.1 (Dev)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v1.90.1.211231"}},[v._v("v1.90.1 (Dev)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v1.90.1.211231"}},[v._v("v1.90.1 (Dev)")])]),v._v(" "),_("td"),v._v(" "),_("td")]),v._v(" "),_("tr",[_("td",[v._v("2021-07-31")]),v._v(" "),_("td",[_("a",{attrs:{href:"./v1.10.1.210731"}},[v._v("v1.10.1 (Beta)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v1.10.1.210731"}},[v._v("v1.10.1 (Beta)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v1.10.1.210731"}},[v._v("v1.10.1 (Beta)")])]),v._v(" "),_("td"),v._v(" "),_("td")]),v._v(" "),_("tr",[_("td",[v._v("2021-05-31")]),v._v(" "),_("td",[_("a",{attrs:{href:"./v1.9.1.210531"}},[v._v("v1.9.1 (Dev)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v1.9.1.210531"}},[v._v("v1.9.1 (Dev)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v1.9.1.210531"}},[v._v("v1.9.1 (Dev)")])]),v._v(" "),_("td"),v._v(" "),_("td")]),v._v(" "),_("tr",[_("td",[v._v("2021-04-30")]),v._v(" "),_("td",[_("a",{attrs:{href:"./v1.8.1.210430"}},[v._v("v1.8.1 (Dev)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v1.8.1.210430"}},[v._v("v1.8.1 (Dev)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v1.8.1.210430"}},[v._v("v1.8.1 (Dev)")])]),v._v(" "),_("td"),v._v(" "),_("td")]),v._v(" "),_("tr",[_("td",[v._v("2021-03-31")]),v._v(" "),_("td",[_("a",{attrs:{href:"./v1.7.1.210331"}},[v._v("v1.7.1 (Dev)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v1.7.1.210331"}},[v._v("v1.7.1 (Dev)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v1.7.1.210331"}},[v._v("v1.7.1 (Dev)")])]),v._v(" "),_("td"),v._v(" "),_("td")]),v._v(" "),_("tr",[_("td",[v._v("2021-01-31")]),v._v(" "),_("td",[_("a",{attrs:{href:"./v1.6.1.210131"}},[v._v("v1.6.1 (Dev)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v1.6.1.210131"}},[v._v("v1.6.1 (Dev)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v1.6.1.210131"}},[v._v("v1.6.1 (Dev)")])]),v._v(" "),_("td"),v._v(" "),_("td")]),v._v(" "),_("tr",[_("td",[v._v("2020-12-31")]),v._v(" "),_("td",[_("a",{attrs:{href:"./v1.5.1.201231"}},[v._v("v1.5.1 (Dev)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v1.5.1.201231"}},[v._v("v1.5.1 (Dev)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v1.5.1.201231"}},[v._v("v1.5.1 (Dev)")])]),v._v(" "),_("td"),v._v(" "),_("td")]),v._v(" "),_("tr",[_("td",[v._v("2020-11-09")]),v._v(" "),_("td",[_("a",{attrs:{href:"./v1.0.6.201109"}},[v._v("v1.0.6 (Beta)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v1.0.6.201109"}},[v._v("v1.0.6 (Beta)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v1.0.6.201109"}},[v._v("v1.0.6 (Beta)")])]),v._v(" "),_("td"),v._v(" "),_("td")]),v._v(" "),_("tr",[_("td",[v._v("2020-11-02")]),v._v(" "),_("td",[_("a",{attrs:{href:"./v1.3.1.201102"}},[v._v("v1.3.1 (Dev)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v1.3.1.201102"}},[v._v("v1.3.1 (Dev)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v1.3.1.201102"}},[v._v("v1.3.1 (Dev)")])]),v._v(" "),_("td"),v._v(" "),_("td")]),v._v(" "),_("tr",[_("td",[v._v("2020-10-19")]),v._v(" "),_("td",[_("a",{attrs:{href:"./v1.0.5.201019"}},[v._v("v1.0.5 (Beta)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v1.0.5.201019"}},[v._v("v1.0.5 (Beta)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v1.0.5.201019"}},[v._v("v1.0.5 (Beta)")])]),v._v(" "),_("td"),v._v(" "),_("td")]),v._v(" "),_("tr",[_("td",[v._v("2020-09-21")]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.99.3.200921"}},[v._v("v0.99.3 (Beta)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.99.3.200921"}},[v._v("v0.99.3 (Beta)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.99.3.200921"}},[v._v("v0.99.3 (Beta)")])]),v._v(" "),_("td"),v._v(" "),_("td")]),v._v(" "),_("tr",[_("td",[v._v("2020-09-07")]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.99.2.200907"}},[v._v("v0.99.2 (Beta)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.99.2.200907"}},[v._v("v0.99.2 (Beta)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.99.2.200907"}},[v._v("v0.99.2 (Beta)")])]),v._v(" "),_("td"),v._v(" "),_("td")]),v._v(" "),_("tr",[_("td",[v._v("2020-08-24")]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.99.1.200824"}},[v._v("v0.99.1 (Beta)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.99.1.200824"}},[v._v("v0.99.1 (Beta)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.99.1.200824"}},[v._v("v0.99.1 (Beta)")])]),v._v(" "),_("td"),v._v(" "),_("td")]),v._v(" "),_("tr",[_("td",[v._v("2020-08-17")]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.33.1.200817"}},[v._v("v0.33.1 (Dev)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.33.1.200817"}},[v._v("v0.33.1 (Dev)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.33.1.200817"}},[v._v("v0.33.1 (Dev)")])]),v._v(" "),_("td"),v._v(" "),_("td")]),v._v(" "),_("tr",[_("td",[v._v("2020-08-10")]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.32.1.200810"}},[v._v("v0.32.1 (Dev)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.32.1.200810"}},[v._v("v0.32.1 (Dev)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.32.1.200810"}},[v._v("v0.32.1 (Dev)")])]),v._v(" "),_("td"),v._v(" "),_("td")]),v._v(" "),_("tr",[_("td",[v._v("2020-08-03")]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.31.1.200803"}},[v._v("v0.31.1 (Dev)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.31.1.200803"}},[v._v("v0.31.1 (Dev)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.31.1.200803"}},[v._v("v0.31.1 (Dev)")])]),v._v(" "),_("td"),v._v(" "),_("td")]),v._v(" "),_("tr",[_("td",[v._v("2020-07-27")]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.30.1.200727"}},[v._v("v0.30.1 (Dev)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.30.1.200727"}},[v._v("v0.30.1 (Dev)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.30.1.200727"}},[v._v("v0.30.1 (Dev)")])]),v._v(" "),_("td"),v._v(" "),_("td")]),v._v(" "),_("tr",[_("td",[v._v("2020-07-13")]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.29.1.200713"}},[v._v("v0.29.1 (Dev)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.29.1.200713"}},[v._v("v0.29.1 (Dev)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.29.1.200713"}},[v._v("v0.29.1 (Dev)")])]),v._v(" "),_("td"),v._v(" "),_("td")]),v._v(" "),_("tr",[_("td",[v._v("2020-06-29")]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.28.1.200629"}},[v._v("v0.28.1 (Dev)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.28.1.200629"}},[v._v("v0.28.1 (Dev)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.28.1.200629"}},[v._v("v0.28.1 (Dev)")])]),v._v(" "),_("td"),v._v(" "),_("td")]),v._v(" "),_("tr",[_("td",[v._v("2020-06-22")]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.27.1.200622"}},[v._v("v0.27.1 (Beta)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.27.1.200622"}},[v._v("v0.27.1 (Beta)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.27.1.200622"}},[v._v("v0.27.1 (Beta)")])]),v._v(" "),_("td"),v._v(" "),_("td")]),v._v(" "),_("tr",[_("td",[v._v("2020-06-15")]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.26.1.200615"}},[v._v("v0.26.1 (Dev)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.26.1.200615"}},[v._v("v0.26.1 (Dev)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.26.1.200615"}},[v._v("v0.26.1 (Dev)")])]),v._v(" "),_("td"),v._v(" "),_("td")]),v._v(" "),_("tr",[_("td",[v._v("2020-06-01")]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.25.1.200601"}},[v._v("v0.25.1 (Beta)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.25.1.200601"}},[v._v("v0.25.1 (Beta)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.25.1.200601"}},[v._v("v0.25.1 (Beta)")])]),v._v(" "),_("td"),v._v(" "),_("td")]),v._v(" "),_("tr",[_("td",[v._v("2020-05-25")]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.24.1.200525"}},[v._v("v0.24.1 (Dev)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.24.1.200525"}},[v._v("v0.24.1 (Dev)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.24.1.200525"}},[v._v("v0.24.1 (Dev)")])]),v._v(" "),_("td"),v._v(" "),_("td")]),v._v(" "),_("tr",[_("td",[v._v("2020-05-18")]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.23.1.200518"}},[v._v("v0.23.1 (Beta)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.23.1.200518"}},[v._v("v0.23.1 (Beta)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.23.1.200518"}},[v._v("v0.23.1 (Beta)")])]),v._v(" "),_("td"),v._v(" "),_("td")]),v._v(" "),_("tr",[_("td",[v._v("2020-05-11")]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.22.1.200511"}},[v._v("v0.22.1 (Beta)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.22.1.200511"}},[v._v("v0.22.1 (Beta)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.22.1.200511"}},[v._v("v0.22.1 (Beta)")])]),v._v(" "),_("td"),v._v(" "),_("td")]),v._v(" "),_("tr",[_("td",[v._v("2020-05-04")]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.21.1.200504"}},[v._v("v0.21.1 (Beta)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.21.1.200504"}},[v._v("v0.21.1 (Beta)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.21.1.200504"}},[v._v("v0.21.1 (Beta)")])]),v._v(" "),_("td"),v._v(" "),_("td")]),v._v(" "),_("tr",[_("td",[v._v("2020-04-20")]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.20.1.200420"}},[v._v("v0.20.1 (Dev)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.20.1.200420"}},[v._v("v0.20.1 (Dev)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.20.1.200420"}},[v._v("v0.20.1 (Dev)")])]),v._v(" "),_("td"),v._v(" "),_("td")]),v._v(" "),_("tr",[_("td",[v._v("2020-04-13")]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.19.1.200413"}},[v._v("v0.19.1 (Dev)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.19.1.200413"}},[v._v("v0.19.1 (Dev)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.19.1.200413"}},[v._v("v0.19.1 (Dev)")])]),v._v(" "),_("td"),v._v(" "),_("td")]),v._v(" "),_("tr",[_("td",[v._v("2020-04-06")]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.18.1.200406"}},[v._v("v0.18.1 (Dev)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.18.1.200406"}},[v._v("v0.18.1 (Dev)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.18.1.200406"}},[v._v("v0.18.1 (Dev)")])]),v._v(" "),_("td"),v._v(" "),_("td")]),v._v(" "),_("tr",[_("td",[v._v("2020-03-23")]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.17.0.200323"}},[v._v("v0.17.0 (Dev)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.17.0.200323"}},[v._v("v0.17.0 (Dev)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.17.0.200323"}},[v._v("v0.17.0 (Dev)")])]),v._v(" "),_("td"),v._v(" "),_("td")]),v._v(" "),_("tr",[_("td",[v._v("2020-03-16")]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.16.0.200316"}},[v._v("v0.16.0 (Dev)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.16.0.200316"}},[v._v("v0.16.0 (Dev)")])]),v._v(" "),_("td"),v._v(" "),_("td"),v._v(" "),_("td")]),v._v(" "),_("tr",[_("td",[v._v("2020-03-02")]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.15.0.200302"}},[v._v("v0.15.0 (Dev)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.15.0.200302"}},[v._v("v0.15.0 (Dev)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.15.0.200302"}},[v._v("v0.15.0 (Dev)")])]),v._v(" "),_("td"),v._v(" "),_("td")]),v._v(" "),_("tr",[_("td",[v._v("2020-02-17")]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.14.0.200217"}},[v._v("v0.14.0 (Dev)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.14.0.200217"}},[v._v("v0.14.0 (Dev)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.14.0.200217"}},[v._v("v0.14.0 (Dev)")])]),v._v(" "),_("td"),v._v(" "),_("td")]),v._v(" "),_("tr",[_("td",[v._v("2020-02-10")]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.13.0.200210"}},[v._v("v0.13.0 (Dev)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.13.0.200210"}},[v._v("v0.13.0 (Dev)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.13.0.200210"}},[v._v("v0.13.0 (Dev)")])]),v._v(" "),_("td"),v._v(" "),_("td")]),v._v(" "),_("tr",[_("td",[v._v("2020-01-20")]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.12.1.200120"}},[v._v("v0.12.1 (Dev)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.12.1.200120"}},[v._v("v0.12.1 (Dev)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.12.1.200120"}},[v._v("v0.12.1 (Dev)")])]),v._v(" "),_("td"),v._v(" "),_("td")]),v._v(" "),_("tr",[_("td",[v._v("2020-01-13")]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.11.1.200113"}},[v._v("v0.11.1 (Dev)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.11.1.200113"}},[v._v("v0.11.1 (Dev)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.11.1.200113"}},[v._v("v0.11.1 (Dev)")])]),v._v(" "),_("td"),v._v(" "),_("td")]),v._v(" "),_("tr",[_("td",[v._v("2020-01-06")]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.11.0.200106"}},[v._v("v0.11.0 (Dev)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.11.0.200106"}},[v._v("v0.11.0 (Dev)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.11.0.200106"}},[v._v("v0.11.0 (Dev)")])]),v._v(" "),_("td"),v._v(" "),_("td")]),v._v(" "),_("tr",[_("td",[v._v("2019-12-23")]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.10.0.191223"}},[v._v("v0.10.0 (Dev)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.10.0.191223"}},[v._v("v0.10.0 (Dev)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.10.0.191223"}},[v._v("v0.10.0 (Dev)")])]),v._v(" "),_("td"),v._v(" "),_("td")]),v._v(" "),_("tr",[_("td",[v._v("2019-12-16")]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.9.5.191216"}},[v._v("v0.9.5 (Dev)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.9.5.191216"}},[v._v("v0.9.5 (Dev)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.9.5.191216"}},[v._v("v0.9.5 (Dev)")])]),v._v(" "),_("td"),v._v(" "),_("td")]),v._v(" "),_("tr",[_("td",[v._v("2019-12-09")]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.9.4.191209"}},[v._v("v0.9.4 (Dev)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.9.4.191209"}},[v._v("v0.9.4 (Dev)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.9.4.191209"}},[v._v("v0.9.4 (Dev)")])]),v._v(" "),_("td"),v._v(" "),_("td")]),v._v(" "),_("tr",[_("td",[v._v("2019-12-02")]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.9.3.191202"}},[v._v("v0.9.3 (Dev)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.9.3.191202"}},[v._v("v0.9.3 (Dev)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.9.3.191202"}},[v._v("v0.9.3 (Dev)")])]),v._v(" "),_("td"),v._v(" "),_("td")]),v._v(" "),_("tr",[_("td",[v._v("2019-11-25")]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.9.2.191125"}},[v._v("v0.9.2 (Dev)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.9.2.191125"}},[v._v("v0.9.2 (Dev)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.9.2.191125"}},[v._v("v0.9.2 (Dev)")])]),v._v(" "),_("td"),v._v(" "),_("td")]),v._v(" "),_("tr",[_("td",[v._v("2019-11-18")]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.9.1.191118"}},[v._v("v0.9.1 (Dev)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.9.1.191118"}},[v._v("v0.9.1 (Dev)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.9.1.191118"}},[v._v("v0.9.1 (Dev)")])]),v._v(" "),_("td"),v._v(" "),_("td")]),v._v(" "),_("tr",[_("td",[v._v("2019-11-11")]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.9.0.191111"}},[v._v("v0.9.0 (Dev)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.9.0.191111"}},[v._v("v0.9.0 (Dev)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.9.0.191111"}},[v._v("v0.9.0 (Dev)")])]),v._v(" "),_("td"),v._v(" "),_("td")]),v._v(" "),_("tr",[_("td",[v._v("2019-11-04")]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.8.5.191104"}},[v._v("v0.8.5 (Dev)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.8.5.191104"}},[v._v("v0.8.5 (Dev)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.8.5.191104"}},[v._v("v0.8.5 (Dev)")])]),v._v(" "),_("td"),v._v(" "),_("td")]),v._v(" "),_("tr",[_("td",[v._v("2019-10-28")]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.8.4.191028"}},[v._v("v0.8.4 (Dev)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.8.4.191028"}},[v._v("v0.8.4 (Dev)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.8.4.191028"}},[v._v("v0.8.4 (Dev)")])]),v._v(" "),_("td"),v._v(" "),_("td")]),v._v(" "),_("tr",[_("td",[v._v("2019-10-21")]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.8.3.191021"}},[v._v("v0.8.3 (Dev)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.8.3.191021"}},[v._v("v0.8.3 (Dev)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.8.3.191021"}},[v._v("v0.8.3 (Dev)")])]),v._v(" "),_("td"),v._v(" "),_("td")]),v._v(" "),_("tr",[_("td",[v._v("2019-10-14")]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.8.2.191014"}},[v._v("v0.8.2 (Dev)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.8.2.191014"}},[v._v("v0.8.2 (Dev)")])]),v._v(" "),_("td"),v._v(" "),_("td"),v._v(" "),_("td")]),v._v(" "),_("tr",[_("td",[v._v("2019-09-30")]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.8.1.190930"}},[v._v("v0.8.1 (Dev)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.8.1.190930"}},[v._v("v0.8.1 (Dev)")])]),v._v(" "),_("td"),v._v(" "),_("td"),v._v(" "),_("td")]),v._v(" "),_("tr",[_("td",[v._v("2019-09-23")]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.8.0.190923"}},[v._v("v0.8.0 (Dev)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.8.0.190923"}},[v._v("v0.8.0 (Dev)")])]),v._v(" "),_("td"),v._v(" "),_("td"),v._v(" "),_("td")]),v._v(" "),_("tr",[_("td",[v._v("2019-09-16")]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.7.2.190916"}},[v._v("v0.7.2 (Dev)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.7.2.190916"}},[v._v("v0.7.2 (Dev)")])]),v._v(" "),_("td"),v._v(" "),_("td"),v._v(" "),_("td")])])]),v._v(" "),_("div",[_("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),v._v(" "),_("script2",{attrs:{type:"text/javascript"}},[v._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1)])}),[],!1,null,null,null);t.default=r.exports}}]); \ No newline at end of file diff --git a/assets/js/147.1367084b.js b/assets/js/147.1367084b.js new file mode 100644 index 000000000..b3e503b6f --- /dev/null +++ b/assets/js/147.1367084b.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[147],{739:function(t,a,r){"use strict";r.r(a);var e=r(13),o=Object(e.a)({},(function(){var t=this,a=t.$createElement,r=t._self._c||a;return r("ContentSlotsDistributor",{attrs:{"slot-key":t.$parent.slotKey}},[r("h1",{attrs:{id:"袋鼠数据库工具-v0-10-0-dev"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#袋鼠数据库工具-v0-10-0-dev"}},[t._v("#")]),t._v(" 袋鼠数据库工具 v0.10.0 (Dev)")]),t._v(" "),r("h2",{attrs:{id:"新特性或修复的缺陷列表"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#新特性或修复的缺陷列表"}},[t._v("#")]),t._v(" 新特性或修复的缺陷列表")]),t._v(" "),r("ol",[r("li",[t._v("增加导出向导用户界面")]),t._v(" "),r("li",[t._v("支持批量导出数据表为文件")]),t._v(" "),r("li",[t._v("支持多达7种数据格式(DSV/JSON/XML/HTML/Markdown/SQL)")]),t._v(" "),r("li",[t._v("支持数据字段重名(别名或标题)")])]),t._v(" "),r("div",[r("script2",{attrs:{type:"text/javascript",async:"true",src:"https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"}}),t._v(" "),r("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),t._v(" "),r("script2",{attrs:{type:"text/javascript"}},[t._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),t._v(" "),r("h2",{attrs:{id:"安装程序和便携安装包"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#安装程序和便携安装包"}},[t._v("#")]),t._v(" 安装程序和便携安装包 "),r("Badge",{attrs:{text:"链接已失效",type:"warning"}})],1),t._v(" "),r("table",[r("thead",[r("tr",[r("th",[t._v("安装包")]),t._v(" "),r("th",[t._v("Windows (64 bit)")]),t._v(" "),r("th",[t._v("Linux (64 bit)")]),t._v(" "),r("th",[t._v("MacOS (64 bit)")])])]),t._v(" "),r("tbody",[r("tr",[r("td",[t._v("安装程序"),r("br"),t._v(" (Github.com)")]),t._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.10.0.191223/Kangaroo_0.10.0.191223_win64.exe",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows"),r("OutboundLink")],1)]),t._v(" "),r("td"),t._v(" "),r("td")]),t._v(" "),r("tr",[r("td",[t._v("安装包"),r("br"),t._v(" (Github.com)")]),t._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.10.0.191223/Kangaroo_0.10.0.191223_win64.7z",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows"),r("OutboundLink")],1)]),t._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.10.0.191223/Kangaroo_0.10.0.191223_ubuntu.zip",target:"_blank",rel:"noopener noreferrer"}},[t._v("Ubuntu"),r("OutboundLink")],1)]),t._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.10.0.191223/Kangaroo_0.10.0.191223_macos.zip",target:"_blank",rel:"noopener noreferrer"}},[t._v("MacOS"),r("OutboundLink")],1)])]),t._v(" "),r("tr",[r("td",[t._v("安装程序"),r("br"),t._v(" (Gitee.com)")]),t._v(" "),r("td",[r("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/316332/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows"),r("OutboundLink")],1)]),t._v(" "),r("td"),t._v(" "),r("td")]),t._v(" "),r("tr",[r("td",[t._v("安装包"),r("br"),t._v(" (Gitee.com)")]),t._v(" "),r("td",[r("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/316333/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows"),r("OutboundLink")],1)]),t._v(" "),r("td",[r("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/316330/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("Ubuntu"),r("OutboundLink")],1)]),t._v(" "),r("td",[r("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/316329/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("MacOS"),r("OutboundLink")],1)])])])])])}),[],!1,null,null,null);a.default=o.exports}}]); \ No newline at end of file diff --git a/assets/js/148.59bcbcaf.js b/assets/js/148.59bcbcaf.js new file mode 100644 index 000000000..0bef9997a --- /dev/null +++ b/assets/js/148.59bcbcaf.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[148],{740:function(t,a,r){"use strict";r.r(a);var e=r(13),o=Object(e.a)({},(function(){var t=this,a=t.$createElement,r=t._self._c||a;return r("ContentSlotsDistributor",{attrs:{"slot-key":t.$parent.slotKey}},[r("h1",{attrs:{id:"袋鼠数据库工具-v0-11-0-dev"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#袋鼠数据库工具-v0-11-0-dev"}},[t._v("#")]),t._v(" 袋鼠数据库工具 v0.11.0 (Dev)")]),t._v(" "),r("h2",{attrs:{id:"新特性或修复的缺陷列表"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#新特性或修复的缺陷列表"}},[t._v("#")]),t._v(" 新特性或修复的缺陷列表")]),t._v(" "),r("ol",[r("li",[t._v("增加程序首页,展示版本更新列表或显示网站首页(Linux)")]),t._v(" "),r("li",[t._v("重新实现 DSV 格式引擎")]),t._v(" "),r("li",[t._v("改进 CSV 格式与其它工具的兼容性")]),t._v(" "),r("li",[t._v("改进 DSV 格式设置UI布局")]),t._v(" "),r("li",[t._v("改进日期在线编辑控件,支持即时编辑")]),t._v(" "),r("li",[t._v("修复: 生成错误的SQL语句.")]),t._v(" "),r("li",[t._v("修复: 导入数据时奔溃.")]),t._v(" "),r("li",[t._v("修复: 无法保存数据网格中编辑的数据")]),t._v(" "),r("li",[t._v("修复: 修复一些控制台警告")])]),t._v(" "),r("div",[r("script2",{attrs:{type:"text/javascript",async:"true",src:"https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"}}),t._v(" "),r("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),t._v(" "),r("script2",{attrs:{type:"text/javascript"}},[t._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),t._v(" "),r("h2",{attrs:{id:"安装程序和便携安装包"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#安装程序和便携安装包"}},[t._v("#")]),t._v(" 安装程序和便携安装包 "),r("Badge",{attrs:{text:"链接已失效",type:"warning"}})],1),t._v(" "),r("table",[r("thead",[r("tr",[r("th",[t._v("安装包")]),t._v(" "),r("th",[t._v("Windows (64 bit)")]),t._v(" "),r("th",[t._v("Linux (64 bit)")]),t._v(" "),r("th",[t._v("MacOS (64 bit)")])])]),t._v(" "),r("tbody",[r("tr",[r("td",[t._v("安装程序"),r("br"),t._v(" (Github.com)")]),t._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.11.0.200106/Kangaroo_0.11.0.200106_win64.exe",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows"),r("OutboundLink")],1)]),t._v(" "),r("td"),t._v(" "),r("td")]),t._v(" "),r("tr",[r("td",[t._v("安装包"),r("br"),t._v(" (Github.com)")]),t._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.11.0.200106/Kangaroo_0.11.0.200106_win64.7z",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows"),r("OutboundLink")],1)]),t._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.11.0.200106/Kangaroo_0.11.0.200106_ubuntu.zip",target:"_blank",rel:"noopener noreferrer"}},[t._v("Ubuntu"),r("OutboundLink")],1)]),t._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.11.0.200106/Kangaroo_0.11.0.200106_macos.zip",target:"_blank",rel:"noopener noreferrer"}},[t._v("MacOS"),r("OutboundLink")],1)])]),t._v(" "),r("tr",[r("td",[t._v("安装程序"),r("br"),t._v(" (Gitee.com)")]),t._v(" "),r("td",[r("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/322206/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows"),r("OutboundLink")],1)]),t._v(" "),r("td"),t._v(" "),r("td")]),t._v(" "),r("tr",[r("td",[t._v("安装包"),r("br"),t._v(" (Gitee.com)")]),t._v(" "),r("td",[r("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/322207/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows"),r("OutboundLink")],1)]),t._v(" "),r("td",[r("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/322000/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("Ubuntu"),r("OutboundLink")],1)]),t._v(" "),r("td",[r("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/321999/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("MacOS"),r("OutboundLink")],1)])])])])])}),[],!1,null,null,null);a.default=o.exports}}]); \ No newline at end of file diff --git a/assets/js/149.83561af8.js b/assets/js/149.83561af8.js new file mode 100644 index 000000000..9dbf23049 --- /dev/null +++ b/assets/js/149.83561af8.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[149],{741:function(t,a,e){"use strict";e.r(a);var r=e(13),o=Object(r.a)({},(function(){var t=this,a=t.$createElement,e=t._self._c||a;return e("ContentSlotsDistributor",{attrs:{"slot-key":t.$parent.slotKey}},[e("h1",{attrs:{id:"袋鼠数据库工具-v0-11-1-dev"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#袋鼠数据库工具-v0-11-1-dev"}},[t._v("#")]),t._v(" 袋鼠数据库工具 v0.11.1 (Dev)")]),t._v(" "),e("h2",{attrs:{id:"新特性或修复的缺陷列表"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#新特性或修复的缺陷列表"}},[t._v("#")]),t._v(" 新特性或修复的缺陷列表")]),t._v(" "),e("ol",[e("li",[t._v("重新设计连接对话框,支持SSH、SSL、高级设置;")]),t._v(" "),e("li",[t._v("首页增加捐赠图片展示 (Paypal/Wechat/Alipay)")]),t._v(" "),e("li",[t._v("重新设置配置模型和文件(init --\x3e json)")]),t._v(" "),e("li",[t._v("在窗口标题栏使用符号图标(#25)")]),t._v(" "),e("li",[t._v("修复:表格中编辑数据会批量更新的bug")])]),t._v(" "),e("div",[e("script2",{attrs:{type:"text/javascript",async:"true",src:"https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"}}),t._v(" "),e("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),t._v(" "),e("script2",{attrs:{type:"text/javascript"}},[t._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),t._v(" "),e("h2",{attrs:{id:"安装程序和便携安装包"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#安装程序和便携安装包"}},[t._v("#")]),t._v(" 安装程序和便携安装包 "),e("Badge",{attrs:{text:"链接已失效",type:"warning"}})],1),t._v(" "),e("table",[e("thead",[e("tr",[e("th",[t._v("安装包")]),t._v(" "),e("th",[t._v("Windows (64 bit)")]),t._v(" "),e("th",[t._v("Linux (64 bit)")]),t._v(" "),e("th",[t._v("MacOS (64 bit)")])])]),t._v(" "),e("tbody",[e("tr",[e("td",[t._v("安装程序"),e("br"),t._v(" (Github.com)")]),t._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.11.1.200113/Kangaroo_0.11.1.200113_win64.exe",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows"),e("OutboundLink")],1)]),t._v(" "),e("td"),t._v(" "),e("td")]),t._v(" "),e("tr",[e("td",[t._v("安装包"),e("br"),t._v(" (Github.com)")]),t._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.11.1.200113/Kangaroo_0.11.1.200113_win64.7z",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows"),e("OutboundLink")],1)]),t._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.11.1.200113/Kangaroo_0.11.1.200113_ubuntu.zip",target:"_blank",rel:"noopener noreferrer"}},[t._v("Ubuntu"),e("OutboundLink")],1)]),t._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.11.1.200113/Kangaroo_0.11.1.200113_macos.zip",target:"_blank",rel:"noopener noreferrer"}},[t._v("MacOS"),e("OutboundLink")],1)])]),t._v(" "),e("tr",[e("td",[t._v("安装程序"),e("br"),t._v(" (Gitee.com)")]),t._v(" "),e("td",[e("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/326642/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows"),e("OutboundLink")],1)]),t._v(" "),e("td"),t._v(" "),e("td")]),t._v(" "),e("tr",[e("td",[t._v("安装包"),e("br"),t._v(" (Gitee.com)")]),t._v(" "),e("td",[e("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/326643/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows"),e("OutboundLink")],1)]),t._v(" "),e("td",[e("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/326641/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("Ubuntu"),e("OutboundLink")],1)]),t._v(" "),e("td",[e("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/326644/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("MacOS"),e("OutboundLink")],1)])])])])])}),[],!1,null,null,null);a.default=o.exports}}]); \ No newline at end of file diff --git a/assets/js/15.6cceb56b.js b/assets/js/15.6cceb56b.js new file mode 100644 index 000000000..6ffd34452 --- /dev/null +++ b/assets/js/15.6cceb56b.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[15],{558:function(e,t,a){e.exports=a.p+"assets/img/kangaroo-sqlite-create.339d584f.png"},631:function(e,t,a){"use strict";a.r(t);var n=a(13),s=Object(n.a)({},(function(){var e=this,t=e.$createElement,n=e._self._c||t;return n("ContentSlotsDistributor",{attrs:{"slot-key":e.$parent.slotKey}},[n("h1",{attrs:{id:"sqlite-enhancements"}},[n("a",{staticClass:"header-anchor",attrs:{href:"#sqlite-enhancements"}},[e._v("#")]),e._v(" SQLite enhancements")]),e._v(" "),n("h2",{attrs:{id:"create-database-connection-quickly"}},[n("a",{staticClass:"header-anchor",attrs:{href:"#create-database-connection-quickly"}},[e._v("#")]),e._v(" Create database connection quickly")]),e._v(" "),n("p",[e._v("Drag and drop a sqlite database file from file manager into connection home page, the connection is created quickly.")]),e._v(" "),n("h2",{attrs:{id:"create-a-new-database"}},[n("a",{staticClass:"header-anchor",attrs:{href:"#create-a-new-database"}},[e._v("#")]),e._v(" Create a new database")]),e._v(" "),n("p",[e._v("There are two ways to create sqlite database in the Kangaroo app:")]),e._v(" "),n("ol",[n("li",[n("p",[e._v("Create a empty file with sqlite file extension(.db/.sqlite), then drag and drop it on the connection home page to create an connection.")])]),e._v(" "),n("li",[n("p",[e._v("Click the [new connection] button to open connection dialog, then choose SQLite database type, click the icon on the left side of file path edit control to create an new sqlite database file.\n"),n("img",{attrs:{src:a(558),alt:"Create SQLite database"}})])])]),e._v(" "),n("Vssue",{attrs:{"issue-id":11,title:e.$title}})],1)}),[],!1,null,null,null);t.default=s.exports}}]); \ No newline at end of file diff --git a/assets/js/150.123a2fff.js b/assets/js/150.123a2fff.js new file mode 100644 index 000000000..35d4110a9 --- /dev/null +++ b/assets/js/150.123a2fff.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[150],{742:function(t,a,r){"use strict";r.r(a);var e=r(13),o=Object(e.a)({},(function(){var t=this,a=t.$createElement,r=t._self._c||a;return r("ContentSlotsDistributor",{attrs:{"slot-key":t.$parent.slotKey}},[r("h1",{attrs:{id:"袋鼠数据库工具-v0-12-1-dev"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#袋鼠数据库工具-v0-12-1-dev"}},[t._v("#")]),t._v(" 袋鼠数据库工具 v0.12.1 (Dev)")]),t._v(" "),r("h2",{attrs:{id:"新特性或修复的缺陷列表"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#新特性或修复的缺陷列表"}},[t._v("#")]),t._v(" 新特性或修复的缺陷列表")]),t._v(" "),r("ol",[r("li",[t._v("新增应用配置对话框,可加载和保存应用配置")]),t._v(" "),r("li",[t._v("界面增加「夜间模式」支持")]),t._v(" "),r("li",[t._v("使用新配置模型重构连接对话框")]),t._v(" "),r("li",[t._v("使用新配置模型重构连接开始页面")])]),t._v(" "),r("div",[r("script2",{attrs:{type:"text/javascript",async:"true",src:"https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"}}),t._v(" "),r("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),t._v(" "),r("script2",{attrs:{type:"text/javascript"}},[t._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),t._v(" "),r("h2",{attrs:{id:"安装程序和便携安装包"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#安装程序和便携安装包"}},[t._v("#")]),t._v(" 安装程序和便携安装包 "),r("Badge",{attrs:{text:"链接已失效",type:"warning"}})],1),t._v(" "),r("table",[r("thead",[r("tr",[r("th",[t._v("安装包")]),t._v(" "),r("th",[t._v("Windows (64 bit)")]),t._v(" "),r("th",[t._v("Linux (64 bit)")]),t._v(" "),r("th",[t._v("MacOS (64 bit)")])])]),t._v(" "),r("tbody",[r("tr",[r("td",[t._v("安装程序"),r("br"),t._v(" (Github.com)")]),t._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.12.1.200120/Kangaroo_0.12.1.200120_win64.exe",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows"),r("OutboundLink")],1)]),t._v(" "),r("td"),t._v(" "),r("td")]),t._v(" "),r("tr",[r("td",[t._v("安装包"),r("br"),t._v(" (Github.com)")]),t._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.12.1.200120/Kangaroo_0.12.1.200120_win64.7z",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows"),r("OutboundLink")],1)]),t._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.12.1.200120/Kangaroo_0.12.1.200120_ubuntu.zip",target:"_blank",rel:"noopener noreferrer"}},[t._v("Ubuntu"),r("OutboundLink")],1)]),t._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.12.1.200120/Kangaroo_0.12.1.200120_macos.zip",target:"_blank",rel:"noopener noreferrer"}},[t._v("MacOS"),r("OutboundLink")],1)])]),t._v(" "),r("tr",[r("td",[t._v("安装程序"),r("br"),t._v(" (Gitee.com)")]),t._v(" "),r("td",[r("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/328533/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows"),r("OutboundLink")],1)]),t._v(" "),r("td"),t._v(" "),r("td")]),t._v(" "),r("tr",[r("td",[t._v("安装包"),r("br"),t._v(" (Gitee.com)")]),t._v(" "),r("td",[r("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/328534/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows"),r("OutboundLink")],1)]),t._v(" "),r("td",[r("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/328536/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("Ubuntu"),r("OutboundLink")],1)]),t._v(" "),r("td",[r("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/328535/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("MacOS"),r("OutboundLink")],1)])])])])])}),[],!1,null,null,null);a.default=o.exports}}]); \ No newline at end of file diff --git a/assets/js/151.3ab77f63.js b/assets/js/151.3ab77f63.js new file mode 100644 index 000000000..8eabc696b --- /dev/null +++ b/assets/js/151.3ab77f63.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[151],{743:function(t,a,o){"use strict";o.r(a);var r=o(13),e=Object(r.a)({},(function(){var t=this,a=t.$createElement,o=t._self._c||a;return o("ContentSlotsDistributor",{attrs:{"slot-key":t.$parent.slotKey}},[o("h1",{attrs:{id:"袋鼠数据库工具-v0-13-0-dev"}},[o("a",{staticClass:"header-anchor",attrs:{href:"#袋鼠数据库工具-v0-13-0-dev"}},[t._v("#")]),t._v(" 袋鼠数据库工具 v0.13.0 (Dev)")]),t._v(" "),o("h2",{attrs:{id:"新特性或修复的缺陷列表"}},[o("a",{staticClass:"header-anchor",attrs:{href:"#新特性或修复的缺陷列表"}},[t._v("#")]),t._v(" 新特性或修复的缺陷列表")]),t._v(" "),o("ol",[o("li",[t._v("数据网格应用格式设置")]),t._v(" "),o("li",[t._v("SQL编辑器应用格式设置")]),t._v(" "),o("li",[t._v("Windows 32位版本支持")]),t._v(" "),o("li",[t._v("实现SSH隧道初步支持")]),t._v(" "),o("li",[t._v("微调数据库连接对话框(完善配置保存和加载)")]),t._v(" "),o("li",[t._v("修复连接首页图标bug")])]),t._v(" "),o("div",[o("script2",{attrs:{type:"text/javascript",async:"true",src:"https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"}}),t._v(" "),o("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),t._v(" "),o("script2",{attrs:{type:"text/javascript"}},[t._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),t._v(" "),o("h2",{attrs:{id:"安装程序和便携安装包"}},[o("a",{staticClass:"header-anchor",attrs:{href:"#安装程序和便携安装包"}},[t._v("#")]),t._v(" 安装程序和便携安装包 "),o("Badge",{attrs:{text:"链接已失效",type:"warning"}})],1),t._v(" "),o("table",[o("thead",[o("tr",[o("th",[t._v("安装包")]),t._v(" "),o("th",[t._v("Windows(32 bit)")]),t._v(" "),o("th",[t._v("Windows(64 bit)")]),t._v(" "),o("th",[t._v("Linux(64 bit)")]),t._v(" "),o("th",[t._v("MacOS(64 bit)")])])]),t._v(" "),o("tbody",[o("tr",[o("td",[t._v("安装程序"),o("br"),t._v(" (Github.com)")]),t._v(" "),o("td",[o("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.13.0.200210/Kangaroo_0.13.0.200210_win32.exe",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows"),o("OutboundLink")],1)]),t._v(" "),o("td",[o("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.13.0.200210/Kangaroo_0.13.0.200210_win64.exe",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows"),o("OutboundLink")],1)]),t._v(" "),o("td"),t._v(" "),o("td")]),t._v(" "),o("tr",[o("td",[t._v("安装包"),o("br"),t._v(" (Github.com)")]),t._v(" "),o("td",[o("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.13.0.200210/Kangaroo_0.13.0.200210_win32.7z",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows"),o("OutboundLink")],1)]),t._v(" "),o("td",[o("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.13.0.200210/Kangaroo_0.13.0.200210_win64.7z",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows"),o("OutboundLink")],1)]),t._v(" "),o("td",[o("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.13.0.200210/Kangaroo_0.13.0.200210_ubuntu.zip",target:"_blank",rel:"noopener noreferrer"}},[t._v("Ubuntu"),o("OutboundLink")],1)]),t._v(" "),o("td",[o("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.13.0.200210/Kangaroo_0.13.0.200210_macos.zip",target:"_blank",rel:"noopener noreferrer"}},[t._v("MacOS"),o("OutboundLink")],1)])]),t._v(" "),o("tr",[o("td",[t._v("安装程序"),o("br"),t._v(" (Gitee.com)")]),t._v(" "),o("td",[o("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/332466/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows"),o("OutboundLink")],1)]),t._v(" "),o("td",[o("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/332454/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows"),o("OutboundLink")],1)]),t._v(" "),o("td"),t._v(" "),o("td")]),t._v(" "),o("tr",[o("td",[t._v("安装包"),o("br"),t._v(" (Gitee.com)")]),t._v(" "),o("td",[o("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/332461/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows"),o("OutboundLink")],1)]),t._v(" "),o("td",[o("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/332456/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows"),o("OutboundLink")],1)]),t._v(" "),o("td",[o("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/332485/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("Ubuntu"),o("OutboundLink")],1)]),t._v(" "),o("td",[o("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/332484/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("MacOS"),o("OutboundLink")],1)])])])])])}),[],!1,null,null,null);a.default=e.exports}}]); \ No newline at end of file diff --git a/assets/js/152.d7722406.js b/assets/js/152.d7722406.js new file mode 100644 index 000000000..944151b5b --- /dev/null +++ b/assets/js/152.d7722406.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[152],{744:function(t,a,e){"use strict";e.r(a);var r=e(13),o=Object(r.a)({},(function(){var t=this,a=t.$createElement,e=t._self._c||a;return e("ContentSlotsDistributor",{attrs:{"slot-key":t.$parent.slotKey}},[e("h1",{attrs:{id:"袋鼠数据库工具-v0-14-0-dev"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#袋鼠数据库工具-v0-14-0-dev"}},[t._v("#")]),t._v(" 袋鼠数据库工具 v0.14.0 (Dev)")]),t._v(" "),e("h2",{attrs:{id:"新特性或修复的缺陷列表"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#新特性或修复的缺陷列表"}},[t._v("#")]),t._v(" 新特性或修复的缺陷列表")]),t._v(" "),e("ol",[e("li",[t._v("SQLite: 支持创建新数据库")]),t._v(" "),e("li",[t._v("重构数据库树向下文菜单")]),t._v(" "),e("li",[t._v("集成OpenSSL用于支持保护用户密码")]),t._v(" "),e("li",[t._v("右侧面板图标添加手指指针,用于提示可点击")]),t._v(" "),e("li",[t._v("修复:第一次启动时的窗口大小")])]),t._v(" "),e("div",[e("script2",{attrs:{type:"text/javascript",async:"true",src:"https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"}}),t._v(" "),e("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),t._v(" "),e("script2",{attrs:{type:"text/javascript"}},[t._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),t._v(" "),e("h2",{attrs:{id:"安装程序和便携安装包"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#安装程序和便携安装包"}},[t._v("#")]),t._v(" 安装程序和便携安装包 "),e("Badge",{attrs:{text:"链接已失效",type:"warning"}})],1),t._v(" "),e("table",[e("thead",[e("tr",[e("th",[t._v("安装包")]),t._v(" "),e("th",[t._v("Windows(32 bit)")]),t._v(" "),e("th",[t._v("Windows(64 bit)")]),t._v(" "),e("th",[t._v("Linux(64 bit)")]),t._v(" "),e("th",[t._v("MacOS(64 bit)")])])]),t._v(" "),e("tbody",[e("tr",[e("td",[t._v("安装程序"),e("br"),t._v(" (Github.com)")]),t._v(" "),e("td"),t._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.14.0.200217/Kangaroo_0.14.0.200217_win64.exe",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows"),e("OutboundLink")],1)]),t._v(" "),e("td"),t._v(" "),e("td")]),t._v(" "),e("tr",[e("td",[t._v("安装包"),e("br"),t._v(" (Github.com)")]),t._v(" "),e("td"),t._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.14.0.200217/Kangaroo_0.14.0.200217_win64.7z",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows"),e("OutboundLink")],1)]),t._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.14.0.200217/Kangaroo_0.14.0.200217_ubuntu.zip",target:"_blank",rel:"noopener noreferrer"}},[t._v("Ubuntu"),e("OutboundLink")],1)]),t._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.14.0.200217/Kangaroo_0.14.0.200217_macos.zip",target:"_blank",rel:"noopener noreferrer"}},[t._v("MacOS"),e("OutboundLink")],1)])]),t._v(" "),e("tr",[e("td",[t._v("安装程序"),e("br"),t._v(" (Gitee.com)")]),t._v(" "),e("td"),t._v(" "),e("td",[e("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/335051/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows"),e("OutboundLink")],1)]),t._v(" "),e("td"),t._v(" "),e("td")]),t._v(" "),e("tr",[e("td",[t._v("安装包"),e("br"),t._v(" (Gitee.com)")]),t._v(" "),e("td"),t._v(" "),e("td",[e("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/335052/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows"),e("OutboundLink")],1)]),t._v(" "),e("td",[e("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/335048/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("Ubuntu"),e("OutboundLink")],1)]),t._v(" "),e("td",[e("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/335053/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("MacOS"),e("OutboundLink")],1)])])])])])}),[],!1,null,null,null);a.default=o.exports}}]); \ No newline at end of file diff --git a/assets/js/153.a7afe675.js b/assets/js/153.a7afe675.js new file mode 100644 index 000000000..55982bdc4 --- /dev/null +++ b/assets/js/153.a7afe675.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[153],{745:function(t,a,r){"use strict";r.r(a);var e=r(13),o=Object(e.a)({},(function(){var t=this,a=t.$createElement,r=t._self._c||a;return r("ContentSlotsDistributor",{attrs:{"slot-key":t.$parent.slotKey}},[r("h1",{attrs:{id:"袋鼠数据库工具-v0-15-0-dev"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#袋鼠数据库工具-v0-15-0-dev"}},[t._v("#")]),t._v(" 袋鼠数据库工具 v0.15.0 (Dev)")]),t._v(" "),r("h2",{attrs:{id:"新特性或修复的缺陷列表"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#新特性或修复的缺陷列表"}},[t._v("#")]),t._v(" 新特性或修复的缺陷列表")]),t._v(" "),r("ol",[r("li",[t._v("更新并分享 openssl.vapi,集成加密模块保护用户敏感数据.")]),t._v(" "),r("li",[t._v("改进语言支持(消息模版, zh_Hans and zh_Hant)")]),t._v(" "),r("li",[t._v("改进首页资源加载性能(不在卡顿)")]),t._v(" "),r("li",[t._v("应用网络代理设置")]),t._v(" "),r("li",[t._v("Linux: 切换首页浏览器视图为版本更新时间线视图")]),t._v(" "),r("li",[t._v("使用下拉选择框代替编辑器")])]),t._v(" "),r("div",[r("script2",{attrs:{type:"text/javascript",async:"true",src:"https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"}}),t._v(" "),r("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),t._v(" "),r("script2",{attrs:{type:"text/javascript"}},[t._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),t._v(" "),r("h2",{attrs:{id:"安装程序和便携安装包"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#安装程序和便携安装包"}},[t._v("#")]),t._v(" 安装程序和便携安装包 "),r("Badge",{attrs:{text:"链接已失效",type:"warning"}})],1),t._v(" "),r("table",[r("thead",[r("tr",[r("th",[t._v("安装包")]),t._v(" "),r("th",[t._v("Windows(32 bit)")]),t._v(" "),r("th",[t._v("Windows(64 bit)")]),t._v(" "),r("th",[t._v("Linux(64 bit)")]),t._v(" "),r("th",[t._v("MacOS(64 bit)")])])]),t._v(" "),r("tbody",[r("tr",[r("td",[t._v("安装程序"),r("br"),t._v("(Github.com)")]),t._v(" "),r("td"),t._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.15.0.200302/Kangaroo_0.15.0.200302_win64.exe",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows"),r("OutboundLink")],1)]),t._v(" "),r("td"),t._v(" "),r("td")]),t._v(" "),r("tr",[r("td",[t._v("安装包"),r("br"),t._v("(Github.com)")]),t._v(" "),r("td"),t._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.15.0.200302/Kangaroo_0.15.0.200302_win64.7z",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows"),r("OutboundLink")],1)]),t._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.15.0.200302/Kangaroo_0.15.0.200302_arch.zip",target:"_blank",rel:"noopener noreferrer"}},[t._v("Arch"),r("OutboundLink")],1),t._v(" "),r("br"),t._v(" "),r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.15.0.200302/Kangaroo_0.15.0.200302_ubuntu.zip",target:"_blank",rel:"noopener noreferrer"}},[t._v("Ubuntu"),r("OutboundLink")],1)]),t._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.15.0.200302/Kangaroo_0.15.0.200302_macos.zip",target:"_blank",rel:"noopener noreferrer"}},[t._v("MacOS"),r("OutboundLink")],1)])]),t._v(" "),r("tr",[r("td",[t._v("安装程序"),r("br"),t._v("(Gitee.com)")]),t._v(" "),r("td"),t._v(" "),r("td",[r("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/341170/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows"),r("OutboundLink")],1)]),t._v(" "),r("td"),t._v(" "),r("td")]),t._v(" "),r("tr",[r("td",[t._v("安装包"),r("br"),t._v("(Gitee.com)")]),t._v(" "),r("td"),t._v(" "),r("td",[r("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/341171/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows"),r("OutboundLink")],1)]),t._v(" "),r("td",[r("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/341177/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("Arch"),r("OutboundLink")],1),t._v(" "),r("br"),t._v(" "),r("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/341176/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("Ubuntu"),r("OutboundLink")],1)]),t._v(" "),r("td",[r("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/341175/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("MacOS"),r("OutboundLink")],1)])])])])])}),[],!1,null,null,null);a.default=o.exports}}]); \ No newline at end of file diff --git a/assets/js/154.9914a923.js b/assets/js/154.9914a923.js new file mode 100644 index 000000000..420525ee2 --- /dev/null +++ b/assets/js/154.9914a923.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[154],{747:function(t,a,r){"use strict";r.r(a);var e=r(13),o=Object(e.a)({},(function(){var t=this,a=t.$createElement,r=t._self._c||a;return r("ContentSlotsDistributor",{attrs:{"slot-key":t.$parent.slotKey}},[r("h1",{attrs:{id:"袋鼠数据库工具-v0-16-0-dev"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#袋鼠数据库工具-v0-16-0-dev"}},[t._v("#")]),t._v(" 袋鼠数据库工具 v0.16.0 (Dev)")]),t._v(" "),r("h2",{attrs:{id:"新特性或修复的缺陷列表"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#新特性或修复的缺陷列表"}},[t._v("#")]),t._v(" 新特性或修复的缺陷列表")]),t._v(" "),r("ol",[r("li",[t._v("数据库连接支持SSH隧道(Windows 未通过测试).")]),t._v(" "),r("li",[t._v("数据浏览页支持输入页面号切换")]),t._v(" "),r("li",[t._v("改进对话框中的开关控件布局")]),t._v(" "),r("li",[t._v("修复:Windows 版不能打开链接")]),t._v(" "),r("li",[t._v("修复: 日志文件序号问题")])]),t._v(" "),r("div",[r("script2",{attrs:{type:"text/javascript",async:"true",src:"https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"}}),t._v(" "),r("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),t._v(" "),r("script2",{attrs:{type:"text/javascript"}},[t._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),t._v(" "),r("h2",{attrs:{id:"安装程序和便携安装包"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#安装程序和便携安装包"}},[t._v("#")]),t._v(" 安装程序和便携安装包 "),r("Badge",{attrs:{text:"链接已失效",type:"warning"}})],1),t._v(" "),r("table",[r("thead",[r("tr",[r("th",[t._v("安装包")]),t._v(" "),r("th",[t._v("Windows(32 bit)")]),t._v(" "),r("th",[t._v("Windows(64 bit)")]),t._v(" "),r("th",[t._v("Linux(64 bit)")]),t._v(" "),r("th",[t._v("MacOS(64 bit)")])])]),t._v(" "),r("tbody",[r("tr",[r("td",[t._v("安装程序"),r("br"),t._v("(Github.com)")]),t._v(" "),r("td"),t._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.16.0.200316/Kangaroo_0.16.0.200316_win64.exe",target:"_blank",rel:"noopener noreferrer"}},[t._v("Installer"),r("OutboundLink")],1)]),t._v(" "),r("td"),t._v(" "),r("td")]),t._v(" "),r("tr",[r("td",[t._v("安装包"),r("br"),t._v("(Github.com)")]),t._v(" "),r("td"),t._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.16.0.200316/Kangaroo_0.16.0.200316_win64.7z",target:"_blank",rel:"noopener noreferrer"}},[t._v("Portable"),r("OutboundLink")],1)]),t._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.16.0.200316/Kangaroo_0.16.0.200316_arch.zip",target:"_blank",rel:"noopener noreferrer"}},[t._v("Arch"),r("OutboundLink")],1)]),t._v(" "),r("td")]),t._v(" "),r("tr",[r("td",[t._v("安装程序"),r("br"),t._v("(Gitee.com)")]),t._v(" "),r("td"),t._v(" "),r("td",[r("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/349488/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("Installer"),r("OutboundLink")],1)]),t._v(" "),r("td"),t._v(" "),r("td")]),t._v(" "),r("tr",[r("td",[t._v("安装包"),r("br"),t._v("(Gitee.com)")]),t._v(" "),r("td"),t._v(" "),r("td",[r("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/349487/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("Portable"),r("OutboundLink")],1)]),t._v(" "),r("td",[r("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/349489/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("Arch"),r("OutboundLink")],1)]),t._v(" "),r("td")])])])])}),[],!1,null,null,null);a.default=o.exports}}]); \ No newline at end of file diff --git a/assets/js/155.bbe648b9.js b/assets/js/155.bbe648b9.js new file mode 100644 index 000000000..485814241 --- /dev/null +++ b/assets/js/155.bbe648b9.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[155],{746:function(t,a,r){"use strict";r.r(a);var e=r(13),o=Object(e.a)({},(function(){var t=this,a=t.$createElement,r=t._self._c||a;return r("ContentSlotsDistributor",{attrs:{"slot-key":t.$parent.slotKey}},[r("h1",{attrs:{id:"袋鼠数据库工具-v0-17-0-dev"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#袋鼠数据库工具-v0-17-0-dev"}},[t._v("#")]),t._v(" 袋鼠数据库工具 v0.17.0 (Dev)")]),t._v(" "),r("h2",{attrs:{id:"新特性或修复的缺陷列表"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#新特性或修复的缺陷列表"}},[t._v("#")]),t._v(" 新特性或修复的缺陷列表")]),t._v(" "),r("ol",[r("li",[t._v("支持SSH隧道方式连接数据库 (Windows, Linux/Unix and MacOS)")]),t._v(" "),r("li",[t._v("数据库连接对话框增加连接测试功能")]),t._v(" "),r("li",[t._v("重构数据表格上下文菜单")]),t._v(" "),r("li",[t._v("数据库对象树菜单增加导出SQL(剪贴板和文件)菜单")]),t._v(" "),r("li",[t._v("实现数据表格选择菜单功能(全选和反选)")]),t._v(" "),r("li",[t._v("实现数据表格跳转到指定行菜单")]),t._v(" "),r("li",[t._v("修复: 切换表格和表单时崩溃")])]),t._v(" "),r("div",[r("script2",{attrs:{type:"text/javascript",async:"true",src:"https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"}}),t._v(" "),r("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),t._v(" "),r("script2",{attrs:{type:"text/javascript"}},[t._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),t._v(" "),r("h2",{attrs:{id:"安装程序和便携安装包"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#安装程序和便携安装包"}},[t._v("#")]),t._v(" 安装程序和便携安装包 "),r("Badge",{attrs:{text:"链接已失效",type:"warning"}})],1),t._v(" "),r("table",[r("thead",[r("tr",[r("th",[t._v("安装包")]),t._v(" "),r("th",[t._v("Windows(32 bit)")]),t._v(" "),r("th",[t._v("Windows(64 bit)")]),t._v(" "),r("th",[t._v("Linux(64 bit)")]),t._v(" "),r("th",[t._v("MacOS(64 bit)")])])]),t._v(" "),r("tbody",[r("tr",[r("td",[t._v("安装程序"),r("br"),t._v("(Github.com)")]),t._v(" "),r("td"),t._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.17.0.200323/Kangaroo_0.17.0.200323_win64.exe",target:"_blank",rel:"noopener noreferrer"}},[t._v("Installer"),r("OutboundLink")],1)]),t._v(" "),r("td"),t._v(" "),r("td")]),t._v(" "),r("tr",[r("td",[t._v("安装包"),r("br"),t._v("(Github.com)")]),t._v(" "),r("td"),t._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.17.0.200323/Kangaroo_0.17.0.200323_win64.7z",target:"_blank",rel:"noopener noreferrer"}},[t._v("Portable"),r("OutboundLink")],1)]),t._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.17.0.200323/Kangaroo_0.17.0.200323_arch.zip",target:"_blank",rel:"noopener noreferrer"}},[t._v("Arch"),r("OutboundLink")],1)]),t._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.17.0.200323/Kangaroo_0.17.0.200323_macos.zip",target:"_blank",rel:"noopener noreferrer"}},[t._v("MacOS"),r("OutboundLink")],1)])]),t._v(" "),r("tr",[r("td",[t._v("安装程序"),r("br"),t._v("(Gitee.com)")]),t._v(" "),r("td"),t._v(" "),r("td",[r("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/354379/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("Installer"),r("OutboundLink")],1)]),t._v(" "),r("td"),t._v(" "),r("td")]),t._v(" "),r("tr",[r("td",[t._v("安装包"),r("br"),t._v("(Gitee.com)")]),t._v(" "),r("td"),t._v(" "),r("td",[r("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/354378/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("Portable"),r("OutboundLink")],1)]),t._v(" "),r("td",[r("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/354377/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("Arch"),r("OutboundLink")],1)]),t._v(" "),r("td",[r("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/354376/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("MacOS"),r("OutboundLink")],1)])])])])])}),[],!1,null,null,null);a.default=o.exports}}]); \ No newline at end of file diff --git a/assets/js/156.85e71406.js b/assets/js/156.85e71406.js new file mode 100644 index 000000000..e9271f718 --- /dev/null +++ b/assets/js/156.85e71406.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[156],{748:function(t,a,r){"use strict";r.r(a);var e=r(13),o=Object(e.a)({},(function(){var t=this,a=t.$createElement,r=t._self._c||a;return r("ContentSlotsDistributor",{attrs:{"slot-key":t.$parent.slotKey}},[r("h1",{attrs:{id:"袋鼠数据库工具-v0-18-1-dev"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#袋鼠数据库工具-v0-18-1-dev"}},[t._v("#")]),t._v(" 袋鼠数据库工具 v0.18.1 (Dev)")]),t._v(" "),r("h2",{attrs:{id:"新特性或修复的缺陷列表"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#新特性或修复的缺陷列表"}},[t._v("#")]),t._v(" 新特性或修复的缺陷列表")]),t._v(" "),r("ol",[r("li",[t._v("加密保存用户密码.")]),t._v(" "),r("li",[t._v("数据网格支持插入、克隆、删除操作.")]),t._v(" "),r("li",[t._v("开始视图中支持数据库连接克隆")]),t._v(" "),r("li",[t._v("数据库对象树支持导出表结构SQL到剪贴板和文件")]),t._v(" "),r("li",[t._v("数据库对象树支持导出表结构SQL到编辑器中")]),t._v(" "),r("li",[t._v("数据库对象树支持刷新操作")]),t._v(" "),r("li",[t._v("改进工作区视图标题页展示行为")]),t._v(" "),r("li",[t._v("修复: 修复目录树回车键行为")]),t._v(" "),r("li",[t._v("修复: 修复打开表时崩溃行为(有空值)")])]),t._v(" "),r("div",[r("script2",{attrs:{type:"text/javascript",async:"true",src:"https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"}}),t._v(" "),r("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),t._v(" "),r("script2",{attrs:{type:"text/javascript"}},[t._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),t._v(" "),r("h2",{attrs:{id:"安装程序和便携安装包"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#安装程序和便携安装包"}},[t._v("#")]),t._v(" 安装程序和便携安装包 "),r("Badge",{attrs:{text:"链接已失效",type:"warning"}})],1),t._v(" "),r("table",[r("thead",[r("tr",[r("th",[t._v("安装包")]),t._v(" "),r("th",[t._v("Windows(32 bit)")]),t._v(" "),r("th",[t._v("Windows(64 bit)")]),t._v(" "),r("th",[t._v("Linux(64 bit)")]),t._v(" "),r("th",[t._v("MacOS(64 bit)")])])]),t._v(" "),r("tbody",[r("tr",[r("td",[t._v("安装程序"),r("br"),t._v("(Github.com)")]),t._v(" "),r("td"),t._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.18.1.200406/Kangaroo_0.18.1.200406_win64.exe",target:"_blank",rel:"noopener noreferrer"}},[t._v("Installer"),r("OutboundLink")],1)]),t._v(" "),r("td"),t._v(" "),r("td")]),t._v(" "),r("tr",[r("td",[t._v("安装包"),r("br"),t._v("(Github.com)")]),t._v(" "),r("td"),t._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.18.1.200406/Kangaroo_0.18.1.200406_win64.7z",target:"_blank",rel:"noopener noreferrer"}},[t._v("Portable"),r("OutboundLink")],1)]),t._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.18.1.200406/Kangaroo_0.18.1.200406_arch.zip",target:"_blank",rel:"noopener noreferrer"}},[t._v("Arch"),r("OutboundLink")],1)]),t._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.18.1.200406/Kangaroo_0.18.1.200406_macos.zip",target:"_blank",rel:"noopener noreferrer"}},[t._v("MacOS"),r("OutboundLink")],1)])]),t._v(" "),r("tr",[r("td",[t._v("安装程序"),r("br"),t._v("(Gitee.com)")]),t._v(" "),r("td"),t._v(" "),r("td",[r("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/368199/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("Installer"),r("OutboundLink")],1)]),t._v(" "),r("td"),t._v(" "),r("td")]),t._v(" "),r("tr",[r("td",[t._v("安装包"),r("br"),t._v("(Gitee.com)")]),t._v(" "),r("td"),t._v(" "),r("td",[r("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/368198/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("Portable"),r("OutboundLink")],1)]),t._v(" "),r("td",[r("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/368200/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("Arch"),r("OutboundLink")],1)]),t._v(" "),r("td",[r("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/368196/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("MacOS"),r("OutboundLink")],1)])])])])])}),[],!1,null,null,null);a.default=o.exports}}]); \ No newline at end of file diff --git a/assets/js/157.80024aa3.js b/assets/js/157.80024aa3.js new file mode 100644 index 000000000..50f1108db --- /dev/null +++ b/assets/js/157.80024aa3.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[157],{749:function(t,a,r){"use strict";r.r(a);var e=r(13),o=Object(e.a)({},(function(){var t=this,a=t.$createElement,r=t._self._c||a;return r("ContentSlotsDistributor",{attrs:{"slot-key":t.$parent.slotKey}},[r("h1",{attrs:{id:"袋鼠数据库工具-v0-19-1-dev"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#袋鼠数据库工具-v0-19-1-dev"}},[t._v("#")]),t._v(" 袋鼠数据库工具 v0.19.1 (Dev)")]),t._v(" "),r("h2",{attrs:{id:"新特性或修复的缺陷列表"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#新特性或修复的缺陷列表"}},[t._v("#")]),t._v(" 新特性或修复的缺陷列表")]),t._v(" "),r("ol",[r("li",[t._v("对象树上实现复制对象名称(长短名).")]),t._v(" "),r("li",[t._v("数据网格实现复制数据行为 SQL 语句(Insert/Update/Delete).")]),t._v(" "),r("li",[t._v("数据网格实现复制数据行为 TSV 格式")]),t._v(" "),r("li",[t._v("数据网格实现复制数据行为 CSV 格式")]),t._v(" "),r("li",[t._v("数据网格实现复制数据行为 PHP 数组")]),t._v(" "),r("li",[t._v("数据网格实现复制数据行为 JSON 格式")]),t._v(" "),r("li",[t._v("改进分栏控件边样式.")]),t._v(" "),r("li",[t._v("修复: 格式化BLOB数据时崩溃")]),t._v(" "),r("li",[t._v("修复: 数据表无关键字字段时崩溃")]),t._v(" "),r("li",[t._v("修复: 数据表关键字段中包含下划线时崩溃(_)")]),t._v(" "),r("li",[t._v("修复: 字段空值告警")]),t._v(" "),r("li",[t._v("修复: 错误调用告警(to_string)")])]),t._v(" "),r("div",[r("script2",{attrs:{type:"text/javascript",async:"true",src:"https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"}}),t._v(" "),r("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),t._v(" "),r("script2",{attrs:{type:"text/javascript"}},[t._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),t._v(" "),r("h2",{attrs:{id:"安装程序和便携安装包"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#安装程序和便携安装包"}},[t._v("#")]),t._v(" 安装程序和便携安装包 "),r("Badge",{attrs:{text:"链接已失效",type:"warning"}})],1),t._v(" "),r("table",[r("thead",[r("tr",[r("th",[t._v("安装包")]),t._v(" "),r("th",[t._v("Windows(32 bit)")]),t._v(" "),r("th",[t._v("Windows(64 bit)")]),t._v(" "),r("th",[t._v("Linux(64 bit)")]),t._v(" "),r("th",[t._v("MacOS(64 bit)")])])]),t._v(" "),r("tbody",[r("tr",[r("td",[t._v("安装程序"),r("br"),t._v("(Github.com)")]),t._v(" "),r("td"),t._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.19.1.200413B/Kangaroo_0.19.1.200413_win64.exe",target:"_blank",rel:"noopener noreferrer"}},[t._v("Installer"),r("OutboundLink")],1)]),t._v(" "),r("td"),t._v(" "),r("td")]),t._v(" "),r("tr",[r("td",[t._v("安装包"),r("br"),t._v("(Github.com)")]),t._v(" "),r("td"),t._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.19.1.200413B/Kangaroo_0.19.1.200413_win64.7z",target:"_blank",rel:"noopener noreferrer"}},[t._v("Portable"),r("OutboundLink")],1)]),t._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.19.1.200413B/Kangaroo_0.19.1.200413_arch.zip",target:"_blank",rel:"noopener noreferrer"}},[t._v("Arch"),r("OutboundLink")],1)]),t._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.19.1.200413B/Kangaroo_0.19.1.200413_macos.zip",target:"_blank",rel:"noopener noreferrer"}},[t._v("MacOS"),r("OutboundLink")],1)])]),t._v(" "),r("tr",[r("td",[t._v("安装程序"),r("br"),t._v("(Gitee.com)")]),t._v(" "),r("td"),t._v(" "),r("td",[r("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/372122/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("Installer"),r("OutboundLink")],1)]),t._v(" "),r("td"),t._v(" "),r("td")]),t._v(" "),r("tr",[r("td",[t._v("安装包"),r("br"),t._v("(Gitee.com)")]),t._v(" "),r("td"),t._v(" "),r("td",[r("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/372123/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("Portable"),r("OutboundLink")],1)]),t._v(" "),r("td",[r("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/372126/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("Arch"),r("OutboundLink")],1)]),t._v(" "),r("td",[r("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/372125/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("MacOS"),r("OutboundLink")],1)])])])])])}),[],!1,null,null,null);a.default=o.exports}}]); \ No newline at end of file diff --git a/assets/js/158.a9054970.js b/assets/js/158.a9054970.js new file mode 100644 index 000000000..5dcc65f60 --- /dev/null +++ b/assets/js/158.a9054970.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[158],{750:function(t,a,r){"use strict";r.r(a);var e=r(13),o=Object(e.a)({},(function(){var t=this,a=t.$createElement,r=t._self._c||a;return r("ContentSlotsDistributor",{attrs:{"slot-key":t.$parent.slotKey}},[r("h1",{attrs:{id:"袋鼠数据库工具-v0-20-1-dev"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#袋鼠数据库工具-v0-20-1-dev"}},[t._v("#")]),t._v(" 袋鼠数据库工具 v0.20.1 (Dev)")]),t._v(" "),r("h2",{attrs:{id:"新特性或修复的缺陷列表"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#新特性或修复的缺陷列表"}},[t._v("#")]),t._v(" 新特性或修复的缺陷列表")]),t._v(" "),r("ol",[r("li",[t._v("数据网格实现复制数据行到剪贴板功能(TSV 格式)")]),t._v(" "),r("li",[t._v("重构表结构设计器弹出菜单.")]),t._v(" "),r("li",[t._v("表结构设计器实现克隆功能.")]),t._v(" "),r("li",[t._v("表结构设计器实现添加功能.")]),t._v(" "),r("li",[t._v("表结构设计器实现多行支持(删除/上移/下移).")]),t._v(" "),r("li",[t._v("表结构设计器实现复制功能.")]),t._v(" "),r("li",[t._v("表结构设计器实现剪切功能.")]),t._v(" "),r("li",[t._v("表结构设计器实现粘贴功能.")]),t._v(" "),r("li",[t._v("改进数据网格中文本处理性能.")])]),t._v(" "),r("div",[r("script2",{attrs:{type:"text/javascript",async:"true",src:"https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"}}),t._v(" "),r("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),t._v(" "),r("script2",{attrs:{type:"text/javascript"}},[t._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),t._v(" "),r("h2",{attrs:{id:"安装程序和便携安装包"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#安装程序和便携安装包"}},[t._v("#")]),t._v(" 安装程序和便携安装包 "),r("Badge",{attrs:{text:"链接已失效",type:"warning"}})],1),t._v(" "),r("table",[r("thead",[r("tr",[r("th",[t._v("安装包")]),t._v(" "),r("th",[t._v("Windows(32 bit)")]),t._v(" "),r("th",[t._v("Windows(64 bit)")]),t._v(" "),r("th",[t._v("Linux(64 bit)")]),t._v(" "),r("th",[t._v("MacOS(64 bit)")])])]),t._v(" "),r("tbody",[r("tr",[r("td",[t._v("安装程序"),r("br"),t._v("(Github.com)")]),t._v(" "),r("td"),t._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.20.1.200420/Kangaroo_0.20.1.200420_win64.exe",target:"_blank",rel:"noopener noreferrer"}},[t._v("Installer"),r("OutboundLink")],1)]),t._v(" "),r("td"),t._v(" "),r("td")]),t._v(" "),r("tr",[r("td",[t._v("安装包"),r("br"),t._v("(Github.com)")]),t._v(" "),r("td"),t._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.20.1.200420/Kangaroo_0.20.1.200420_win64.7z",target:"_blank",rel:"noopener noreferrer"}},[t._v("Portable"),r("OutboundLink")],1)]),t._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.20.1.200420/Kangaroo_0.20.1.200420_arch.zip",target:"_blank",rel:"noopener noreferrer"}},[t._v("Arch"),r("OutboundLink")],1)]),t._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.20.1.200420/Kangaroo_0.20.1.200420_macos.zip",target:"_blank",rel:"noopener noreferrer"}},[t._v("MacOS"),r("OutboundLink")],1)])]),t._v(" "),r("tr",[r("td",[t._v("安装程序"),r("br"),t._v("(Gitee.com)")]),t._v(" "),r("td"),t._v(" "),r("td",[r("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/377250/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("Installer"),r("OutboundLink")],1)]),t._v(" "),r("td"),t._v(" "),r("td")]),t._v(" "),r("tr",[r("td",[t._v("安装包"),r("br"),t._v("(Gitee.com)")]),t._v(" "),r("td"),t._v(" "),r("td",[r("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/377256/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("Portable"),r("OutboundLink")],1)]),t._v(" "),r("td",[r("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/377248/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("Arch"),r("OutboundLink")],1)]),t._v(" "),r("td",[r("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/377249/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("MacOS"),r("OutboundLink")],1)])])])])])}),[],!1,null,null,null);a.default=o.exports}}]); \ No newline at end of file diff --git a/assets/js/159.29bbe4e9.js b/assets/js/159.29bbe4e9.js new file mode 100644 index 000000000..7efda3630 --- /dev/null +++ b/assets/js/159.29bbe4e9.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[159],{752:function(t,a,r){"use strict";r.r(a);var e=r(13),o=Object(e.a)({},(function(){var t=this,a=t.$createElement,r=t._self._c||a;return r("ContentSlotsDistributor",{attrs:{"slot-key":t.$parent.slotKey}},[r("h1",{attrs:{id:"袋鼠数据库工具-v0-21-1-beta"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#袋鼠数据库工具-v0-21-1-beta"}},[t._v("#")]),t._v(" 袋鼠数据库工具 v0.21.1 (Beta)")]),t._v(" "),r("h2",{attrs:{id:"新特性或修复的缺陷列表"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#新特性或修复的缺陷列表"}},[t._v("#")]),t._v(" 新特性或修复的缺陷列表")]),t._v(" "),r("ol",[r("li",[t._v("重构整个DataGrid,为了更好的用户体验")]),t._v(" "),r("li",[t._v("DataGrid 支持三种编辑模式: LIVE / CACHE / TRANSACTION")]),t._v(" "),r("li",[t._v("DataGrid 支持复制粘贴多行操作")]),t._v(" "),r("li",[t._v("当粘贴多行时,自动更新编辑模式为 CACHE 模式")]),t._v(" "),r("li",[t._v("修复: 查询构建器 where 子句表达式错误")])]),t._v(" "),r("div",[r("script2",{attrs:{type:"text/javascript",async:"true",src:"https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"}}),t._v(" "),r("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),t._v(" "),r("script2",{attrs:{type:"text/javascript"}},[t._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),t._v(" "),r("h2",{attrs:{id:"安装程序和便携安装包"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#安装程序和便携安装包"}},[t._v("#")]),t._v(" 安装程序和便携安装包 "),r("Badge",{attrs:{text:"链接已失效",type:"warning"}})],1),t._v(" "),r("table",[r("thead",[r("tr",[r("th",[t._v("安装包")]),t._v(" "),r("th",[t._v("Windows(32 bit)")]),t._v(" "),r("th",[t._v("Windows(64 bit)")]),t._v(" "),r("th",[t._v("Linux(64 bit)")]),t._v(" "),r("th",[t._v("MacOS(64 bit)")])])]),t._v(" "),r("tbody",[r("tr",[r("td",[t._v("安装程序"),r("br"),t._v("(Github.com)")]),t._v(" "),r("td"),t._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.21.1.200504/Kangaroo_0.21.1.200504_win64.exe",target:"_blank",rel:"noopener noreferrer"}},[t._v("Installer"),r("OutboundLink")],1)]),t._v(" "),r("td"),t._v(" "),r("td")]),t._v(" "),r("tr",[r("td",[t._v("安装包"),r("br"),t._v("(Github.com)")]),t._v(" "),r("td"),t._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.21.1.200504/Kangaroo_0.21.1.200504_win64.7z",target:"_blank",rel:"noopener noreferrer"}},[t._v("Portable"),r("OutboundLink")],1)]),t._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.21.1.200504/Kangaroo_0.21.1.200504_arch.zip",target:"_blank",rel:"noopener noreferrer"}},[t._v("Arch"),r("OutboundLink")],1)]),t._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.21.1.200504/Kangaroo_0.21.1.200504_macos.zip",target:"_blank",rel:"noopener noreferrer"}},[t._v("MacOS"),r("OutboundLink")],1)])]),t._v(" "),r("tr",[r("td",[t._v("安装程序"),r("br"),t._v("(Gitee.com)")]),t._v(" "),r("td"),t._v(" "),r("td",[r("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/385678/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("Installer"),r("OutboundLink")],1)]),t._v(" "),r("td"),t._v(" "),r("td")]),t._v(" "),r("tr",[r("td",[t._v("安装包"),r("br"),t._v("(Gitee.com)")]),t._v(" "),r("td"),t._v(" "),r("td",[r("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/385679/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("Portable"),r("OutboundLink")],1)]),t._v(" "),r("td",[r("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/385466/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("Arch"),r("OutboundLink")],1)]),t._v(" "),r("td",[r("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/385467/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("MacOS"),r("OutboundLink")],1)])])])])])}),[],!1,null,null,null);a.default=o.exports}}]); \ No newline at end of file diff --git a/assets/js/16.5b409cfe.js b/assets/js/16.5b409cfe.js new file mode 100644 index 000000000..480b7b2ed --- /dev/null +++ b/assets/js/16.5b409cfe.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[16],{487:function(t,a,r){t.exports=r.p+"assets/img/kangaroo_mp.aba271a6.png"},718:function(t,a,r){"use strict";r.r(a);var s=r(13),e=Object(s.a)({},(function(){var t=this,a=t.$createElement,s=t._self._c||a;return s("ContentSlotsDistributor",{attrs:{"slot-key":t.$parent.slotKey}},[s("h1",{attrs:{id:"袋鼠使用文档"}},[s("a",{staticClass:"header-anchor",attrs:{href:"#袋鼠使用文档"}},[t._v("#")]),t._v(" 袋鼠使用文档")]),t._v(" "),s("p",[t._v("这里是所有用户文档的集中入口,您可以从这里查找您需要的文档,如果没有您需要的文档,您可以在项目缺陷库中提交请求,我们会第一时间更新、补充和完善文档;也欢迎您为袋鼠贡献文档;")]),t._v(" "),s("h2",{attrs:{id:"微信公众号"}},[s("a",{staticClass:"header-anchor",attrs:{href:"#微信公众号"}},[t._v("#")]),t._v(" 微信公众号")]),t._v(" "),s("p",[t._v("为即时推送关于袋鼠的大篇幅文章和视频,故开通了微信公众号: 袋鼠数据库工具 (DataTableOnline),有兴趣的同学可关注。 "),s("br"),t._v(" "),s("img",{attrs:{src:r(487),alt:"袋鼠微信公众号"}})]),t._v(" "),s("h2",{attrs:{id:"系统需求"}},[s("a",{staticClass:"header-anchor",attrs:{href:"#系统需求"}},[t._v("#")]),t._v(" 系统需求")]),t._v(" "),s("p",[s("RouterLink",{attrs:{to:"/zh/document/system-requirements.html"}},[t._v("最低系统需求")])],1),t._v(" "),s("h2",{attrs:{id:"价格方案"}},[s("a",{staticClass:"header-anchor",attrs:{href:"#价格方案"}},[t._v("#")]),t._v(" 价格方案")]),t._v(" "),s("p",[s("RouterLink",{attrs:{to:"/zh/document/pricing.html"}},[t._v("袋鼠价格方案")])],1),t._v(" "),s("h2",{attrs:{id:"更新记录"}},[s("a",{staticClass:"header-anchor",attrs:{href:"#更新记录"}},[t._v("#")]),t._v(" 更新记录")]),t._v(" "),s("p",[s("RouterLink",{attrs:{to:"/zh/document/changelog.html"}},[t._v("袋鼠数据库工具更新时间线")])],1),t._v(" "),s("h2",{attrs:{id:"安装袋鼠"}},[s("a",{staticClass:"header-anchor",attrs:{href:"#安装袋鼠"}},[t._v("#")]),t._v(" 安装袋鼠")]),t._v(" "),s("p",[t._v("Windows 版本袋鼠数据库工具具有完整的功能支持,且具有最佳用户体验:"),s("br"),t._v(" "),s("RouterLink",{attrs:{to:"/zh/document/install-windows.html"}},[t._v("Windows 平台安装袋鼠数据库工具")])],1),t._v(" "),s("p",[t._v("Linux 版本袋鼠数据库工具具有完整的功能支持,安装很轻松:"),s("br"),t._v(" "),s("RouterLink",{attrs:{to:"/zh/document/install-linux.html"}},[t._v("Linux 平台安装袋鼠数据库工具")])],1),t._v(" "),s("p",[t._v("MacOS 版本袋鼠数据库工具具有完整的功能支持,安装体验正在完善中:"),s("br"),t._v(" "),s("RouterLink",{attrs:{to:"/zh/document/install-macos.html"}},[t._v("MacOS 平台安装袋鼠数据库工具")])],1),t._v(" "),s("h2",{attrs:{id:"功能特性"}},[s("a",{staticClass:"header-anchor",attrs:{href:"#功能特性"}},[t._v("#")]),t._v(" 功能特性")]),t._v(" "),s("p",[s("RouterLink",{attrs:{to:"/zh/document/feature-matrix.html"}},[t._v("完整功能清单")])],1),t._v(" "),s("h2",{attrs:{id:"界面快照"}},[s("a",{staticClass:"header-anchor",attrs:{href:"#界面快照"}},[t._v("#")]),t._v(" 界面快照")]),t._v(" "),s("p",[s("a",{attrs:{href:"screenshots"}},[t._v("工具界面快照")])]),t._v(" "),s("h2",{attrs:{id:"连接数据库"}},[s("a",{staticClass:"header-anchor",attrs:{href:"#连接数据库"}},[t._v("#")]),t._v(" 连接数据库")]),t._v(" "),s("p",[s("RouterLink",{attrs:{to:"/zh/document/connection.html"}},[t._v("建立一个数据库连接")])],1),t._v(" "),s("h2",{attrs:{id:"新建数据表"}},[s("a",{staticClass:"header-anchor",attrs:{href:"#新建数据表"}},[t._v("#")]),t._v(" 新建数据表")]),t._v(" "),s("p",[s("RouterLink",{attrs:{to:"/zh/document/designer-schema.html"}},[t._v("表对象设计器")])],1),t._v(" "),s("h2",{attrs:{id:"数据编辑器"}},[s("a",{staticClass:"header-anchor",attrs:{href:"#数据编辑器"}},[t._v("#")]),t._v(" 数据编辑器")]),t._v(" "),s("p",[s("RouterLink",{attrs:{to:"/zh/document/datagrid.html"}},[t._v("数据浏览及编辑视图")])],1),t._v(" "),s("h2",{attrs:{id:"查询分析器"}},[s("a",{staticClass:"header-anchor",attrs:{href:"#查询分析器"}},[t._v("#")]),t._v(" 查询分析器")]),t._v(" "),s("p",[s("RouterLink",{attrs:{to:"/zh/document/editor.html"}},[t._v("SQL 编辑查询视图")])],1),t._v(" "),s("h2",{attrs:{id:"sqlite特色功能"}},[s("a",{staticClass:"header-anchor",attrs:{href:"#sqlite特色功能"}},[t._v("#")]),t._v(" SQLite特色功能")]),t._v(" "),s("p",[s("RouterLink",{attrs:{to:"/zh/document/sqlite.html"}},[t._v("SQLite 特色功能")])],1),t._v(" "),s("h2",{attrs:{id:"odbc-驱动程序"}},[s("a",{staticClass:"header-anchor",attrs:{href:"#odbc-驱动程序"}},[t._v("#")]),t._v(" ODBC 驱动程序")]),t._v(" "),s("p",[s("a",{attrs:{href:"drivers"}},[t._v("ODBC 驱动程序")])]),t._v(" "),s("h2",{attrs:{id:"_2k-3k-4k-显示器设置"}},[s("a",{staticClass:"header-anchor",attrs:{href:"#_2k-3k-4k-显示器设置"}},[t._v("#")]),t._v(" 2K/3K/4K 显示器设置")]),t._v(" "),s("p",[s("RouterLink",{attrs:{to:"/zh/document/scale.html"}},[t._v("高分辨率缩放设置")])],1),t._v(" "),s("h2",{attrs:{id:"常用问题列表"}},[s("a",{staticClass:"header-anchor",attrs:{href:"#常用问题列表"}},[t._v("#")]),t._v(" 常用问题列表")]),t._v(" "),s("p",[s("RouterLink",{attrs:{to:"/zh/document/faq.html"}},[t._v("常用问题列表")])],1),t._v(" "),s("Vssue",{attrs:{"issue-id":2,title:t.$title}})],1)}),[],!1,null,null,null);a.default=e.exports}}]); \ No newline at end of file diff --git a/assets/js/160.8f39ed62.js b/assets/js/160.8f39ed62.js new file mode 100644 index 000000000..9da82ba65 --- /dev/null +++ b/assets/js/160.8f39ed62.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[160],{751:function(t,a,r){"use strict";r.r(a);var e=r(13),o=Object(e.a)({},(function(){var t=this,a=t.$createElement,r=t._self._c||a;return r("ContentSlotsDistributor",{attrs:{"slot-key":t.$parent.slotKey}},[r("h1",{attrs:{id:"袋鼠数据库工具-v0-22-1-beta"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#袋鼠数据库工具-v0-22-1-beta"}},[t._v("#")]),t._v(" 袋鼠数据库工具 v0.22.1 (Beta)")]),t._v(" "),r("h2",{attrs:{id:"新特性或修复的缺陷列表"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#新特性或修复的缺陷列表"}},[t._v("#")]),t._v(" 新特性或修复的缺陷列表")]),t._v(" "),r("ol",[r("li",[t._v("增加中文语言翻译(简体中文[zh-CN//zh-SG]、繁体中文[zh-TW/zh-HK])")]),t._v(" "),r("li",[t._v("SQLite: 新建数据库检查并增加扩展名(.sqlite).")]),t._v(" "),r("li",[t._v("改进设计器、删除、刷新体验,可以定位到原对象.")]),t._v(" "),r("li",[t._v("改进 Windows 平台自动化部署和安装脚本.")]),t._v(" "),r("li",[t._v("修复: 重命名时奔溃的bug.")]),t._v(" "),r("li",[t._v("修复: 删除对象时崩溃的bug.")]),t._v(" "),r("li",[t._v("修复: 保存表设计器修改时崩溃的bug")]),t._v(" "),r("li",[t._v("修复: 空表无法增加数据行")]),t._v(" "),r("li",[t._v("修复: 及时模式无法保存追加行")])]),t._v(" "),r("div",[r("script2",{attrs:{type:"text/javascript",async:"true",src:"https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"}}),t._v(" "),r("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),t._v(" "),r("script2",{attrs:{type:"text/javascript"}},[t._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),t._v(" "),r("h2",{attrs:{id:"安装程序和便携安装包"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#安装程序和便携安装包"}},[t._v("#")]),t._v(" 安装程序和便携安装包 "),r("Badge",{attrs:{text:"链接已失效",type:"warning"}})],1),t._v(" "),r("table",[r("thead",[r("tr",[r("th",[t._v("安装包")]),t._v(" "),r("th",[t._v("Windows(32 bit)")]),t._v(" "),r("th",[t._v("Windows(64 bit)")]),t._v(" "),r("th",[t._v("Linux(64 bit)")]),t._v(" "),r("th",[t._v("MacOS(64 bit)")])])]),t._v(" "),r("tbody",[r("tr",[r("td",[t._v("安装程序"),r("br"),t._v("(Github.com)")]),t._v(" "),r("td"),t._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.22.1.200511/kangaroo_0.22.1.200511_AMD64.exe",target:"_blank",rel:"noopener noreferrer"}},[t._v("Installer"),r("OutboundLink")],1)]),t._v(" "),r("td"),t._v(" "),r("td")]),t._v(" "),r("tr",[r("td",[t._v("安装包"),r("br"),t._v("(Github.com)")]),t._v(" "),r("td"),t._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.22.1.200511/kangaroo_0.22.1.200511_AMD64.7z",target:"_blank",rel:"noopener noreferrer"}},[t._v("Portable"),r("OutboundLink")],1)]),t._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.22.1.200511/kangaroo_0.22.1.200511_arch.zip",target:"_blank",rel:"noopener noreferrer"}},[t._v("Arch"),r("OutboundLink")],1)]),t._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.22.1.200511/kangaroo_0.22.1.200511_macos.zip",target:"_blank",rel:"noopener noreferrer"}},[t._v("MacOS"),r("OutboundLink")],1)])]),t._v(" "),r("tr",[r("td",[t._v("安装程序"),r("br"),t._v("(Gitee.com)")]),t._v(" "),r("td"),t._v(" "),r("td",[r("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/389721/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("Installer"),r("OutboundLink")],1)]),t._v(" "),r("td"),t._v(" "),r("td")]),t._v(" "),r("tr",[r("td",[t._v("安装包"),r("br"),t._v("(Gitee.com)")]),t._v(" "),r("td"),t._v(" "),r("td",[r("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/389725/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("Portable"),r("OutboundLink")],1)]),t._v(" "),r("td",[r("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/389722/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("Arch"),r("OutboundLink")],1)]),t._v(" "),r("td",[r("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/389723/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("MacOS"),r("OutboundLink")],1)])])])])])}),[],!1,null,null,null);a.default=o.exports}}]); \ No newline at end of file diff --git a/assets/js/161.2baceaba.js b/assets/js/161.2baceaba.js new file mode 100644 index 000000000..9a9cd5f98 --- /dev/null +++ b/assets/js/161.2baceaba.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[161],{753:function(t,a,r){"use strict";r.r(a);var e=r(13),o=Object(e.a)({},(function(){var t=this,a=t.$createElement,r=t._self._c||a;return r("ContentSlotsDistributor",{attrs:{"slot-key":t.$parent.slotKey}},[r("h1",{attrs:{id:"袋鼠数据库工具-v0-23-1-beta"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#袋鼠数据库工具-v0-23-1-beta"}},[t._v("#")]),t._v(" 袋鼠数据库工具 v0.23.1 (Beta)")]),t._v(" "),r("h2",{attrs:{id:"新特性或修复的缺陷列表"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#新特性或修复的缺陷列表"}},[t._v("#")]),t._v(" 新特性或修复的缺陷列表")]),t._v(" "),r("ol",[r("li",[t._v("改进日期、日期时间选取控件.")]),t._v(" "),r("li",[t._v("改进标题栏背景图片(颜色).")]),t._v(" "),r("li",[t._v("改进网格列标题.")]),t._v(" "),r("li",[t._v("更新中文翻译.")]),t._v(" "),r("li",[t._v("修复: 不能更新日期、日期时间类型数据.")]),t._v(" "),r("li",[t._v("修复: 不能更新浮点类型数据.")]),t._v(" "),r("li",[t._v("修复: 不能更新数值类型(Numeric)")]),t._v(" "),r("li",[t._v("修复: MySQL: 不能更新字符串数组类型(Char)")]),t._v(" "),r("li",[t._v("修复: PostgreSQL: SQL中名字错误")]),t._v(" "),r("li",[t._v("修复: 数据网格工具栏状态错误.")])]),t._v(" "),r("div",[r("script2",{attrs:{type:"text/javascript",async:"true",src:"https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"}}),t._v(" "),r("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),t._v(" "),r("script2",{attrs:{type:"text/javascript"}},[t._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),t._v(" "),r("h2",{attrs:{id:"安装程序和便携安装包"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#安装程序和便携安装包"}},[t._v("#")]),t._v(" 安装程序和便携安装包 "),r("Badge",{attrs:{text:"链接已失效",type:"warning"}})],1),t._v(" "),r("table",[r("thead",[r("tr",[r("th",[t._v("安装包")]),t._v(" "),r("th",[t._v("Windows(32 bit)")]),t._v(" "),r("th",[t._v("Windows(64 bit)")]),t._v(" "),r("th",[t._v("Linux(64 bit)")]),t._v(" "),r("th",[t._v("MacOS(64 bit)")])])]),t._v(" "),r("tbody",[r("tr",[r("td",[t._v("安装程序"),r("br"),t._v("(Github.com)")]),t._v(" "),r("td"),t._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.23.1.200518/kangaroo_0.23.1.200518_AMD64.exe",target:"_blank",rel:"noopener noreferrer"}},[t._v("Installer"),r("OutboundLink")],1)]),t._v(" "),r("td"),t._v(" "),r("td")]),t._v(" "),r("tr",[r("td",[t._v("安装包"),r("br"),t._v("(Github.com)")]),t._v(" "),r("td"),t._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.23.1.200518/kangaroo_0.23.1.200518_AMD64.7z",target:"_blank",rel:"noopener noreferrer"}},[t._v("Portable"),r("OutboundLink")],1)]),t._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.23.1.200518/kangaroo_0.23.1.200518_arch.zip",target:"_blank",rel:"noopener noreferrer"}},[t._v("Arch"),r("OutboundLink")],1)]),t._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.23.1.200518/kangaroo_0.23.1.200518_macos.zip",target:"_blank",rel:"noopener noreferrer"}},[t._v("MacOS"),r("OutboundLink")],1)])]),t._v(" "),r("tr",[r("td",[t._v("安装程序"),r("br"),t._v("(Gitee.com)")]),t._v(" "),r("td"),t._v(" "),r("td",[r("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/394608/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("Installer"),r("OutboundLink")],1)]),t._v(" "),r("td"),t._v(" "),r("td")]),t._v(" "),r("tr",[r("td",[t._v("安装包"),r("br"),t._v("(Gitee.com)")]),t._v(" "),r("td"),t._v(" "),r("td",[r("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/394611/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("Portable"),r("OutboundLink")],1)]),t._v(" "),r("td",[r("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/394610/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("Arch"),r("OutboundLink")],1)]),t._v(" "),r("td",[r("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/394721/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("MacOS"),r("OutboundLink")],1)])])])])])}),[],!1,null,null,null);a.default=o.exports}}]); \ No newline at end of file diff --git a/assets/js/162.aa9a047d.js b/assets/js/162.aa9a047d.js new file mode 100644 index 000000000..9b062609d --- /dev/null +++ b/assets/js/162.aa9a047d.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[162],{754:function(t,a,r){"use strict";r.r(a);var e=r(13),o=Object(e.a)({},(function(){var t=this,a=t.$createElement,r=t._self._c||a;return r("ContentSlotsDistributor",{attrs:{"slot-key":t.$parent.slotKey}},[r("h1",{attrs:{id:"袋鼠数据库工具-v0-24-1-dev"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#袋鼠数据库工具-v0-24-1-dev"}},[t._v("#")]),t._v(" 袋鼠数据库工具 v0.24.1 (Dev)")]),t._v(" "),r("h2",{attrs:{id:"新特性或修复的缺陷列表"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#新特性或修复的缺陷列表"}},[t._v("#")]),t._v(" 新特性或修复的缺陷列表")]),t._v(" "),r("ol",[r("li",[t._v("新增 SQL 格式化模块,支持美化和简化SQL.")]),t._v(" "),r("li",[t._v("新增 archlinux 安装器(基于 HowardZorn 提交的PR #45 ).")]),t._v(" "),r("li",[t._v("新增 苹果平台 安装器")])]),t._v(" "),r("div",[r("script2",{attrs:{type:"text/javascript",async:"true",src:"https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"}}),t._v(" "),r("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),t._v(" "),r("script2",{attrs:{type:"text/javascript"}},[t._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),t._v(" "),r("h2",{attrs:{id:"安装程序和便携安装包"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#安装程序和便携安装包"}},[t._v("#")]),t._v(" 安装程序和便携安装包 "),r("Badge",{attrs:{text:"链接已失效",type:"warning"}})],1),t._v(" "),r("table",[r("thead",[r("tr",[r("th",[t._v("安装包")]),t._v(" "),r("th",[t._v("Windows(32 bit)")]),t._v(" "),r("th",[t._v("Windows(64 bit)")]),t._v(" "),r("th",[t._v("Linux(64 bit)")]),t._v(" "),r("th",[t._v("MacOS(64 bit)")])])]),t._v(" "),r("tbody",[r("tr",[r("td",[t._v("安装程序"),r("br"),t._v("(Github.com)")]),t._v(" "),r("td"),t._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.24.1.200525/kangaroo_0.24.1.200525_AMD64.exe",target:"_blank",rel:"noopener noreferrer"}},[t._v("win64"),r("OutboundLink")],1)]),t._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.24.1.200525/kangaroo-0.24.1.200525-1-x86_64.pkg.tar.xz",target:"_blank",rel:"noopener noreferrer"}},[t._v("Arch"),r("OutboundLink")],1)]),t._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.24.1.200525/kangaroo_0.24.1.200525_macos.dmg",target:"_blank",rel:"noopener noreferrer"}},[t._v("MacOS"),r("OutboundLink")],1)])]),t._v(" "),r("tr",[r("td",[t._v("安装包"),r("br"),t._v("(Github.com)")]),t._v(" "),r("td"),t._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.24.1.200525/kangaroo_0.24.1.200525_AMD64.7z",target:"_blank",rel:"noopener noreferrer"}},[t._v("win64"),r("OutboundLink")],1)]),t._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.24.1.200525/kangaroo_0.24.1.200525_arch.tar.gz",target:"_blank",rel:"noopener noreferrer"}},[t._v("Arch"),r("OutboundLink")],1)]),t._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.24.1.200525/kangaroo_0.24.1.200525_macos.tar.gz",target:"_blank",rel:"noopener noreferrer"}},[t._v("MacOS"),r("OutboundLink")],1)])]),t._v(" "),r("tr",[r("td",[t._v("安装程序"),r("br"),t._v("(Gitee.com)")]),t._v(" "),r("td"),t._v(" "),r("td",[r("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/399960/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("win64"),r("OutboundLink")],1)]),t._v(" "),r("td",[r("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/399956/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("Arch"),r("OutboundLink")],1)]),t._v(" "),r("td",[r("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/399953/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("MacOS"),r("OutboundLink")],1)])]),t._v(" "),r("tr",[r("td",[t._v("安装包"),r("br"),t._v("(Gitee.com)")]),t._v(" "),r("td"),t._v(" "),r("td",[r("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/399969/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("win64"),r("OutboundLink")],1)]),t._v(" "),r("td",[r("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/399952/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("Arch"),r("OutboundLink")],1)]),t._v(" "),r("td",[r("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/399955/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("MacOS"),r("OutboundLink")],1)])])])])])}),[],!1,null,null,null);a.default=o.exports}}]); \ No newline at end of file diff --git a/assets/js/163.3a84b3f1.js b/assets/js/163.3a84b3f1.js new file mode 100644 index 000000000..9e897adba --- /dev/null +++ b/assets/js/163.3a84b3f1.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[163],{756:function(t,a,r){"use strict";r.r(a);var o=r(13),e=Object(o.a)({},(function(){var t=this,a=t.$createElement,r=t._self._c||a;return r("ContentSlotsDistributor",{attrs:{"slot-key":t.$parent.slotKey}},[r("h1",{attrs:{id:"袋鼠数据库工具-v0-25-1-beta"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#袋鼠数据库工具-v0-25-1-beta"}},[t._v("#")]),t._v(" 袋鼠数据库工具 v0.25.1 (Beta)")]),t._v(" "),r("h2",{attrs:{id:"新特性或修复的缺陷列表"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#新特性或修复的缺陷列表"}},[t._v("#")]),t._v(" 新特性或修复的缺陷列表")]),t._v(" "),r("ol",[r("li",[t._v("为数据库空间导航栏添加上下文菜单")]),t._v(" "),r("li",[t._v("为对象树数据库和模式节点添加查询.")]),t._v(" "),r("li",[t._v("更新中文翻译(zh-CN/zh-TW/zh-HK/zh-SG).")]),t._v(" "),r("li",[t._v("修复: PostgreSQL 12: 表和视图未显示 #46")]),t._v(" "),r("li",[t._v("修复: MariaDB 10.5: 不存在的列 cons.ENFORCED #47")]),t._v(" "),r("li",[t._v("修复: PostgreSQL 12: 不存在的列 c.consrc #48")]),t._v(" "),r("li",[t._v("修复: PostgreSQL 11.7 / 9.6: 数据行不存在 #49")]),t._v(" "),r("li",[t._v("修复: MySQL 5.7.30: information_schema 不存在表 'CHECK_CONSTRAINTS' #50")]),t._v(" "),r("li",[t._v("修复: PostgreSQL 9.6: 不存在的列 c.relispartition #51")]),t._v(" "),r("li",[t._v("修复: PostgreSQL: 数据库模式显示错误")]),t._v(" "),r("li",[t._v("修复: 数据网格列头显示错误(含有下划线字符_)")])]),t._v(" "),r("div",[r("script2",{attrs:{type:"text/javascript",async:"true",src:"https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"}}),t._v(" "),r("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),t._v(" "),r("script2",{attrs:{type:"text/javascript"}},[t._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),t._v(" "),r("h2",{attrs:{id:"安装程序和便携安装包"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#安装程序和便携安装包"}},[t._v("#")]),t._v(" 安装程序和便携安装包 "),r("Badge",{attrs:{text:"链接已失效",type:"warning"}})],1),t._v(" "),r("table",[r("thead",[r("tr",[r("th",[t._v("安装包")]),t._v(" "),r("th",[t._v("Windows(64 bit)")]),t._v(" "),r("th",[t._v("Linux(64 bit)")]),t._v(" "),r("th",[t._v("MacOS(64 bit)")])])]),t._v(" "),r("tbody",[r("tr",[r("td",[t._v("安装程序"),r("br"),t._v("(Github.com)")]),t._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.25.1.200601/kangaroo_0.25.1.200601_AMD64.exe",target:"_blank",rel:"noopener noreferrer"}},[t._v("win64"),r("OutboundLink")],1)]),t._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.25.1.200601/kangaroo-0.25.1.200601-1-x86_64.pkg.tar.xz",target:"_blank",rel:"noopener noreferrer"}},[t._v("Arch"),r("OutboundLink")],1)]),t._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.25.1.200601/kangaroo_0.25.1.200601_macos.dmg",target:"_blank",rel:"noopener noreferrer"}},[t._v("MacOS"),r("OutboundLink")],1)])]),t._v(" "),r("tr",[r("td",[t._v("安装包"),r("br"),t._v("(Github.com)")]),t._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.25.1.200601/kangaroo_0.25.1.200601_AMD64.7z",target:"_blank",rel:"noopener noreferrer"}},[t._v("win64"),r("OutboundLink")],1)]),t._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.25.1.200601/kangaroo_0.25.1.200601_arch.tar.gz",target:"_blank",rel:"noopener noreferrer"}},[t._v("Arch"),r("OutboundLink")],1),t._v(" "),r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.25.1.200601/kangaroo_0.25.1.200601_ubuntu.tar.gz",target:"_blank",rel:"noopener noreferrer"}},[t._v("Ubuntu"),r("OutboundLink")],1)]),t._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.25.1.200601/kangaroo_0.25.1.200601_macos.tar.gz",target:"_blank",rel:"noopener noreferrer"}},[t._v("MacOS"),r("OutboundLink")],1)])]),t._v(" "),r("tr",[r("td",[t._v("安装程序"),r("br"),t._v("(Gitee.com)")]),t._v(" "),r("td",[r("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/404585/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("win64"),r("OutboundLink")],1)]),t._v(" "),r("td",[r("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/404583/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("Arch"),r("OutboundLink")],1)]),t._v(" "),r("td",[r("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/404581/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("MacOS"),r("OutboundLink")],1)])]),t._v(" "),r("tr",[r("td",[t._v("安装包"),r("br"),t._v("(Gitee.com)")]),t._v(" "),r("td",[r("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/404586/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("win64"),r("OutboundLink")],1)]),t._v(" "),r("td",[r("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/404580/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("Arch"),r("OutboundLink")],1),t._v(" "),r("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/404584/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("Ubuntu"),r("OutboundLink")],1)]),t._v(" "),r("td",[r("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/404582/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("MacOS"),r("OutboundLink")],1)])])])])])}),[],!1,null,null,null);a.default=e.exports}}]); \ No newline at end of file diff --git a/assets/js/164.ed3fddde.js b/assets/js/164.ed3fddde.js new file mode 100644 index 000000000..b752d9ff9 --- /dev/null +++ b/assets/js/164.ed3fddde.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[164],{758:function(t,a,r){"use strict";r.r(a);var e=r(13),o=Object(e.a)({},(function(){var t=this,a=t.$createElement,r=t._self._c||a;return r("ContentSlotsDistributor",{attrs:{"slot-key":t.$parent.slotKey}},[r("h1",{attrs:{id:"袋鼠数据库工具-v0-26-1-dev"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#袋鼠数据库工具-v0-26-1-dev"}},[t._v("#")]),t._v(" 袋鼠数据库工具 v0.26.1 (Dev)")]),t._v(" "),r("h2",{attrs:{id:"新特性或修复的缺陷列表"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#新特性或修复的缺陷列表"}},[t._v("#")]),t._v(" 新特性或修复的缺陷列表")]),t._v(" "),r("ol",[r("li",[t._v("支持智能提示数据挖掘(SQLite/MySQL/PostgreSQL)")]),t._v(" "),r("li",[t._v("支持编辑视图代码自动完成(v1)")])]),t._v(" "),r("div",[r("script2",{attrs:{type:"text/javascript",async:"true",src:"https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"}}),t._v(" "),r("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),t._v(" "),r("script2",{attrs:{type:"text/javascript"}},[t._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),t._v(" "),r("h2",{attrs:{id:"安装程序和便携安装包"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#安装程序和便携安装包"}},[t._v("#")]),t._v(" 安装程序和便携安装包 "),r("Badge",{attrs:{text:"链接已失效",type:"warning"}})],1),t._v(" "),r("table",[r("thead",[r("tr",[r("th",[t._v("安装包")]),t._v(" "),r("th",[t._v("Windows(64 bit)")]),t._v(" "),r("th",[t._v("Linux(64 bit)")]),t._v(" "),r("th",[t._v("MacOS(64 bit)")])])]),t._v(" "),r("tbody",[r("tr",[r("td",[t._v("安装程序"),r("br"),t._v("(Github.com)")]),t._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.26.1.200615/kangaroo_0.26.1.200615_AMD64.exe",target:"_blank",rel:"noopener noreferrer"}},[t._v("win64"),r("OutboundLink")],1)]),t._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.26.1.200615/kangaroo-0.26.1.200615-1-x86_64.pkg.tar.xz",target:"_blank",rel:"noopener noreferrer"}},[t._v("Arch"),r("OutboundLink")],1)]),t._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.26.1.200615/kangaroo_0.26.1.200615_macos.dmg",target:"_blank",rel:"noopener noreferrer"}},[t._v("MacOS"),r("OutboundLink")],1)])]),t._v(" "),r("tr",[r("td",[t._v("安装包"),r("br"),t._v("(Github.com)")]),t._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.26.1.200615/kangaroo_0.26.1.200615_AMD64.7z",target:"_blank",rel:"noopener noreferrer"}},[t._v("win64"),r("OutboundLink")],1)]),t._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.26.1.200615/kangaroo_0.26.1.200615_arch.tar.gz",target:"_blank",rel:"noopener noreferrer"}},[t._v("Arch"),r("OutboundLink")],1),t._v(" "),r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.26.1.200615/kangaroo_0.26.1.200615_ubuntu.tar.gz",target:"_blank",rel:"noopener noreferrer"}},[t._v("Ubuntu"),r("OutboundLink")],1)]),t._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.26.1.200615/kangaroo_0.26.1.200615_macos.tar.gz",target:"_blank",rel:"noopener noreferrer"}},[t._v("MacOS"),r("OutboundLink")],1)])]),t._v(" "),r("tr",[r("td",[t._v("安装程序"),r("br"),t._v("(Gitee.com)")]),t._v(" "),r("td",[r("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/415203/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("win64"),r("OutboundLink")],1)]),t._v(" "),r("td",[r("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/415200/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("Arch"),r("OutboundLink")],1)]),t._v(" "),r("td",[r("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/415198/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("MacOS"),r("OutboundLink")],1)])]),t._v(" "),r("tr",[r("td",[t._v("安装包"),r("br"),t._v("(Gitee.com)")]),t._v(" "),r("td",[r("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/415201/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("win64"),r("OutboundLink")],1)]),t._v(" "),r("td",[r("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/415202/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("Arch"),r("OutboundLink")],1),t._v(" "),r("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/415199/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("Ubuntu"),r("OutboundLink")],1)]),t._v(" "),r("td",[r("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/415197/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("MacOS"),r("OutboundLink")],1)])])])])])}),[],!1,null,null,null);a.default=o.exports}}]); \ No newline at end of file diff --git a/assets/js/165.5558b43f.js b/assets/js/165.5558b43f.js new file mode 100644 index 000000000..3a9a80586 --- /dev/null +++ b/assets/js/165.5558b43f.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[165],{755:function(t,a,r){"use strict";r.r(a);var o=r(13),e=Object(o.a)({},(function(){var t=this,a=t.$createElement,r=t._self._c||a;return r("ContentSlotsDistributor",{attrs:{"slot-key":t.$parent.slotKey}},[r("h1",{attrs:{id:"袋鼠数据库工具-v0-27-1-beta"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#袋鼠数据库工具-v0-27-1-beta"}},[t._v("#")]),t._v(" 袋鼠数据库工具 v0.27.1 (Beta)")]),t._v(" "),r("h2",{attrs:{id:"新特性或修复的缺陷列表"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#新特性或修复的缺陷列表"}},[t._v("#")]),t._v(" 新特性或修复的缺陷列表")]),t._v(" "),r("ol",[r("li",[t._v("改进 PostgreSQL 的智能提示数据")]),t._v(" "),r("li",[t._v("改进智能提示之自动完成样式(增加图标、过滤支持)")]),t._v(" "),r("li",[t._v("添加智能提示之函数参数自动提示功能")]),t._v(" "),r("li",[t._v("添加复制选中列头功能(长短名)")]),t._v(" "),r("li",[t._v("添加复制全部列头功能(TSV/CSV)")]),t._v(" "),r("li",[t._v("更新发布包命名格式")]),t._v(" "),r("li",[t._v("更新中文语言翻译")])]),t._v(" "),r("div",[r("script2",{attrs:{type:"text/javascript",async:"true",src:"https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"}}),t._v(" "),r("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),t._v(" "),r("script2",{attrs:{type:"text/javascript"}},[t._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),t._v(" "),r("h2",{attrs:{id:"安装程序和便携安装包"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#安装程序和便携安装包"}},[t._v("#")]),t._v(" 安装程序和便携安装包 "),r("Badge",{attrs:{text:"链接已失效",type:"warning"}})],1),t._v(" "),r("table",[r("thead",[r("tr",[r("th",[t._v("安装包")]),t._v(" "),r("th",[t._v("Windows(64 bit)")]),t._v(" "),r("th",[t._v("Linux(64 bit)")]),t._v(" "),r("th",[t._v("MacOS(64 bit)")])])]),t._v(" "),r("tbody",[r("tr",[r("td",[t._v("安装程序"),r("br"),t._v("(Github.com)")]),t._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.27.1.200622/kangaroo-0.27.1.200622-AMD64.exe",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows"),r("OutboundLink")],1)]),t._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.27.1.200622/kangaroo-0.27.1.200622-1-x86_64.pkg.tar.xz",target:"_blank",rel:"noopener noreferrer"}},[t._v("Arch"),r("OutboundLink")],1)]),t._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.27.1.200622/kangaroo-0.27.1.200622-macos.dmg",target:"_blank",rel:"noopener noreferrer"}},[t._v("MacOS"),r("OutboundLink")],1)])]),t._v(" "),r("tr",[r("td",[t._v("安装包"),r("br"),t._v("(Github.com)")]),t._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.27.1.200622/kangaroo-0.27.1.200622-AMD64.7z",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows"),r("OutboundLink")],1)]),t._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.27.1.200622/kangaroo-0.27.1.200622-arch.tar.gz",target:"_blank",rel:"noopener noreferrer"}},[t._v("Arch"),r("OutboundLink")],1),t._v(" "),r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.27.1.200622/kangaroo-0.27.1.200622-ubuntu.tar.gz",target:"_blank",rel:"noopener noreferrer"}},[t._v("Ubuntu"),r("OutboundLink")],1)]),t._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.27.1.200622/kangaroo-0.27.1.200622-macos.tar.gz",target:"_blank",rel:"noopener noreferrer"}},[t._v("MacOS"),r("OutboundLink")],1)])]),t._v(" "),r("tr",[r("td",[t._v("安装程序"),r("br"),t._v("(Gitee.com)")]),t._v(" "),r("td",[r("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/419723/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows"),r("OutboundLink")],1)]),t._v(" "),r("td",[r("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/419721/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("Arch"),r("OutboundLink")],1)]),t._v(" "),r("td",[r("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/419725/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("MacOS"),r("OutboundLink")],1)])]),t._v(" "),r("tr",[r("td",[t._v("安装包"),r("br"),t._v("(Gitee.com)")]),t._v(" "),r("td",[r("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/419722/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows"),r("OutboundLink")],1)]),t._v(" "),r("td",[r("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/419724/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("Arch"),r("OutboundLink")],1),t._v(" "),r("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/419720/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("Ubuntu"),r("OutboundLink")],1)]),t._v(" "),r("td",[r("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/419719/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("MacOS"),r("OutboundLink")],1)])])])])])}),[],!1,null,null,null);a.default=e.exports}}]); \ No newline at end of file diff --git a/assets/js/166.6f26f1e2.js b/assets/js/166.6f26f1e2.js new file mode 100644 index 000000000..d0120cc9f --- /dev/null +++ b/assets/js/166.6f26f1e2.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[166],{760:function(t,a,r){"use strict";r.r(a);var o=r(13),e=Object(o.a)({},(function(){var t=this,a=t.$createElement,r=t._self._c||a;return r("ContentSlotsDistributor",{attrs:{"slot-key":t.$parent.slotKey}},[r("h1",{attrs:{id:"袋鼠数据库工具-v0-28-1-dev"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#袋鼠数据库工具-v0-28-1-dev"}},[t._v("#")]),t._v(" 袋鼠数据库工具 v0.28.1 (Dev)")]),t._v(" "),r("h2",{attrs:{id:"新特性或修复的缺陷列表"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#新特性或修复的缺陷列表"}},[t._v("#")]),t._v(" 新特性或修复的缺陷列表")]),t._v(" "),r("ol",[r("li",[t._v("实现查找替换功能")]),t._v(" "),r("li",[t._v("更新中文语言翻译(zh-CN/zh-TW/zh-HK/zh-SG)")])]),t._v(" "),r("div",[r("script2",{attrs:{type:"text/javascript",async:"true",src:"https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"}}),t._v(" "),r("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),t._v(" "),r("script2",{attrs:{type:"text/javascript"}},[t._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),t._v(" "),r("h2",{attrs:{id:"安装程序和便携安装包"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#安装程序和便携安装包"}},[t._v("#")]),t._v(" 安装程序和便携安装包 "),r("Badge",{attrs:{text:"链接已失效",type:"warning"}})],1),t._v(" "),r("table",[r("thead",[r("tr",[r("th",[t._v("安装包")]),t._v(" "),r("th",[t._v("Windows(64 bit)")]),t._v(" "),r("th",[t._v("Linux(64 bit)")]),t._v(" "),r("th",[t._v("MacOS(64 bit)")])])]),t._v(" "),r("tbody",[r("tr",[r("td",[t._v("安装程序"),r("br"),t._v("(Github.com)")]),t._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.28.1.200629/kangaroo-0.28.1.200629-AMD64.exe",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows"),r("OutboundLink")],1)]),t._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.28.1.200629/kangaroo-0.28.1.200629-1-x86_64.pkg.tar.xz",target:"_blank",rel:"noopener noreferrer"}},[t._v("Arch"),r("OutboundLink")],1)]),t._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.28.1.200629/kangaroo-0.28.1.200629-macos.dmg",target:"_blank",rel:"noopener noreferrer"}},[t._v("MacOS"),r("OutboundLink")],1)])]),t._v(" "),r("tr",[r("td",[t._v("安装包"),r("br"),t._v("(Github.com)")]),t._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.28.1.200629/kangaroo-0.28.1.200629-AMD64.7z",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows"),r("OutboundLink")],1)]),t._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.28.1.200629/kangaroo-0.28.1.200629-arch.tar.gz",target:"_blank",rel:"noopener noreferrer"}},[t._v("Arch"),r("OutboundLink")],1),t._v(" "),r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.28.1.200629/kangaroo-0.28.1.200629-ubuntu.tar.gz",target:"_blank",rel:"noopener noreferrer"}},[t._v("Ubuntu"),r("OutboundLink")],1)]),t._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.28.1.200629/kangaroo-0.28.1.200629-macos.tar.gz",target:"_blank",rel:"noopener noreferrer"}},[t._v("MacOS"),r("OutboundLink")],1)])]),t._v(" "),r("tr",[r("td",[t._v("安装程序"),r("br"),t._v("(Gitee.com)")]),t._v(" "),r("td",[r("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/423543/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows"),r("OutboundLink")],1)]),t._v(" "),r("td",[r("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/423542/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("Arch"),r("OutboundLink")],1)]),t._v(" "),r("td",[r("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/423539/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("MacOS"),r("OutboundLink")],1)])]),t._v(" "),r("tr",[r("td",[t._v("安装包"),r("br"),t._v("(Gitee.com)")]),t._v(" "),r("td",[r("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/423541/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows"),r("OutboundLink")],1)]),t._v(" "),r("td",[r("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/423537/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("Arch"),r("OutboundLink")],1),t._v(" "),r("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/423538/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("Ubuntu"),r("OutboundLink")],1)]),t._v(" "),r("td",[r("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/423536/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("MacOS"),r("OutboundLink")],1)])])])])])}),[],!1,null,null,null);a.default=e.exports}}]); \ No newline at end of file diff --git a/assets/js/167.f282776e.js b/assets/js/167.f282776e.js new file mode 100644 index 000000000..c7e16466c --- /dev/null +++ b/assets/js/167.f282776e.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[167],{757:function(a,t,r){"use strict";r.r(t);var e=r(13),o=Object(e.a)({},(function(){var a=this,t=a.$createElement,r=a._self._c||t;return r("ContentSlotsDistributor",{attrs:{"slot-key":a.$parent.slotKey}},[r("h1",{attrs:{id:"袋鼠数据库工具-v0-29-1-dev"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#袋鼠数据库工具-v0-29-1-dev"}},[a._v("#")]),a._v(" 袋鼠数据库工具 v0.29.1 (Dev)")]),a._v(" "),r("h2",{attrs:{id:"新特性或修复的缺陷列表"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#新特性或修复的缺陷列表"}},[a._v("#")]),a._v(" 新特性或修复的缺陷列表")]),a._v(" "),r("ol",[r("li",[a._v("实现插件扩展系统")]),a._v(" "),r("li",[a._v("实现一个简单的演示插件(example)")]),a._v(" "),r("li",[a._v("更新 ArchLinux and MacOSX 安装包脚本")]),a._v(" "),r("li",[a._v("更新便携式发布包(更具 *nix 风格)")])]),a._v(" "),r("div",[r("script2",{attrs:{type:"text/javascript",async:"true",src:"https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"}}),a._v(" "),r("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),a._v(" "),r("script2",{attrs:{type:"text/javascript"}},[a._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),a._v(" "),r("h2",{attrs:{id:"安装程序和便携安装包"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#安装程序和便携安装包"}},[a._v("#")]),a._v(" 安装程序和便携安装包 "),r("Badge",{attrs:{text:"链接已失效",type:"warning"}})],1),a._v(" "),r("table",[r("thead",[r("tr",[r("th",[a._v("安装包")]),a._v(" "),r("th",[a._v("Windows(64 bit)")]),a._v(" "),r("th",[a._v("Linux(64 bit)")]),a._v(" "),r("th",[a._v("MacOS(64 bit)")])])]),a._v(" "),r("tbody",[r("tr",[r("td",[a._v("安装程序"),r("br"),a._v("(Github.com)")]),a._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.29.1.200713/kangaroo-0.29.1.200713-AMD64.exe",target:"_blank",rel:"noopener noreferrer"}},[a._v("Windows"),r("OutboundLink")],1)]),a._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.29.1.200713/kangaroo-0.29.1.200713-1-x86_64.pkg.tar.xz",target:"_blank",rel:"noopener noreferrer"}},[a._v("Arch"),r("OutboundLink")],1)]),a._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.29.1.200713/kangaroo-0.29.1.200713-macos.dmg",target:"_blank",rel:"noopener noreferrer"}},[a._v("MacOS"),r("OutboundLink")],1)])]),a._v(" "),r("tr",[r("td",[a._v("安装包"),r("br"),a._v("(Github.com)")]),a._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.29.1.200713/kangaroo-0.29.1.200713-AMD64.7z",target:"_blank",rel:"noopener noreferrer"}},[a._v("Windows"),r("OutboundLink")],1)]),a._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.29.1.200713/kangaroo-0.29.1.200713-arch.tar.gz",target:"_blank",rel:"noopener noreferrer"}},[a._v("Arch"),r("OutboundLink")],1),a._v(" "),r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.29.1.200713/kangaroo-0.29.1.200713-ubuntu.tar.gz",target:"_blank",rel:"noopener noreferrer"}},[a._v("Ubuntu"),r("OutboundLink")],1)]),a._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.29.1.200713/kangaroo-0.29.1.200713-macos.tar.gz",target:"_blank",rel:"noopener noreferrer"}},[a._v("MacOS"),r("OutboundLink")],1)])]),a._v(" "),r("tr",[r("td",[a._v("安装程序"),r("br"),a._v("(Gitee.com)")]),a._v(" "),r("td",[r("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/432588/download",target:"_blank",rel:"noopener noreferrer"}},[a._v("Windows"),r("OutboundLink")],1)]),a._v(" "),r("td",[r("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/432571/download",target:"_blank",rel:"noopener noreferrer"}},[a._v("Arch"),r("OutboundLink")],1)]),a._v(" "),r("td",[r("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/432607/download",target:"_blank",rel:"noopener noreferrer"}},[a._v("MacOS"),r("OutboundLink")],1)])]),a._v(" "),r("tr",[r("td",[a._v("安装包"),r("br"),a._v("(Gitee.com)")]),a._v(" "),r("td",[r("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/432588/download",target:"_blank",rel:"noopener noreferrer"}},[a._v("Windows"),r("OutboundLink")],1)]),a._v(" "),r("td",[r("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/432572/download",target:"_blank",rel:"noopener noreferrer"}},[a._v("Arch"),r("OutboundLink")],1),a._v(" "),r("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/432574/download",target:"_blank",rel:"noopener noreferrer"}},[a._v("Ubuntu"),r("OutboundLink")],1)]),a._v(" "),r("td",[r("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/432573/download",target:"_blank",rel:"noopener noreferrer"}},[a._v("MacOS"),r("OutboundLink")],1)])])])])])}),[],!1,null,null,null);t.default=o.exports}}]); \ No newline at end of file diff --git a/assets/js/168.2a163ff2.js b/assets/js/168.2a163ff2.js new file mode 100644 index 000000000..a4a8b662c --- /dev/null +++ b/assets/js/168.2a163ff2.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[168],{759:function(t,a,r){"use strict";r.r(a);var o=r(13),e=Object(o.a)({},(function(){var t=this,a=t.$createElement,r=t._self._c||a;return r("ContentSlotsDistributor",{attrs:{"slot-key":t.$parent.slotKey}},[r("h1",{attrs:{id:"袋鼠数据库工具-v0-30-1-dev"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#袋鼠数据库工具-v0-30-1-dev"}},[t._v("#")]),t._v(" 袋鼠数据库工具 v0.30.1 (Dev)")]),t._v(" "),r("h2",{attrs:{id:"新特性或修复的缺陷列表"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#新特性或修复的缺陷列表"}},[t._v("#")]),t._v(" 新特性或修复的缺陷列表")]),t._v(" "),r("ol",[r("li",[t._v("插件系统增加应用相对搜索路径")]),t._v(" "),r("li",[t._v("增加数据查看面板和按钮")]),t._v(" "),r("li",[t._v("实现文本和图像查看器")]),t._v(" "),r("li",[t._v("界面按钮更新为瘦身平面样式")])]),t._v(" "),r("div",[r("script2",{attrs:{type:"text/javascript",async:"true",src:"https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"}}),t._v(" "),r("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),t._v(" "),r("script2",{attrs:{type:"text/javascript"}},[t._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),t._v(" "),r("h2",{attrs:{id:"安装程序和便携安装包"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#安装程序和便携安装包"}},[t._v("#")]),t._v(" 安装程序和便携安装包 "),r("Badge",{attrs:{text:"链接已失效",type:"warning"}})],1),t._v(" "),r("table",[r("thead",[r("tr",[r("th",[t._v("安装包")]),t._v(" "),r("th",[t._v("Windows(64 bit)")]),t._v(" "),r("th",[t._v("Linux(64 bit)")]),t._v(" "),r("th",[t._v("MacOS(64 bit)")])])]),t._v(" "),r("tbody",[r("tr",[r("td",[t._v("安装程序"),r("br"),t._v("(Github.com)")]),t._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.30.1.200727/kangaroo-0.30.1.200727-AMD64.exe",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows"),r("OutboundLink")],1)]),t._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.30.1.200727/kangaroo-0.30.1.200727-1-x86_64.pkg.tar.xz",target:"_blank",rel:"noopener noreferrer"}},[t._v("Arch"),r("OutboundLink")],1)]),t._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.30.1.200727/kangaroo-0.30.1.200727-macos.dmg",target:"_blank",rel:"noopener noreferrer"}},[t._v("MacOS"),r("OutboundLink")],1)])]),t._v(" "),r("tr",[r("td",[t._v("安装包"),r("br"),t._v("(Github.com)")]),t._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.30.1.200727/kangaroo-0.30.1.200727-AMD64.7z",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows"),r("OutboundLink")],1)]),t._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.30.1.200727/kangaroo-0.30.1.200727-arch.tar.gz",target:"_blank",rel:"noopener noreferrer"}},[t._v("Arch"),r("OutboundLink")],1),t._v(" "),r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.30.1.200727/kangaroo-0.30.1.200727-ubuntu.tar.gz",target:"_blank",rel:"noopener noreferrer"}},[t._v("Ubuntu"),r("OutboundLink")],1)]),t._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.30.1.200727/kangaroo-0.30.1.200727-macos.tar.gz",target:"_blank",rel:"noopener noreferrer"}},[t._v("MacOS"),r("OutboundLink")],1)])]),t._v(" "),r("tr",[r("td",[t._v("安装程序"),r("br"),t._v("(Gitee.com)")]),t._v(" "),r("td",[r("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/442683/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows"),r("OutboundLink")],1)]),t._v(" "),r("td",[r("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/442678/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("Arch"),r("OutboundLink")],1)]),t._v(" "),r("td",[r("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/442684/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("MacOS"),r("OutboundLink")],1)])]),t._v(" "),r("tr",[r("td",[t._v("安装包"),r("br"),t._v("(Gitee.com)")]),t._v(" "),r("td",[r("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/442682/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows"),r("OutboundLink")],1)]),t._v(" "),r("td",[r("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/442677/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("Arch"),r("OutboundLink")],1),t._v(" "),r("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/442676/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("Ubuntu"),r("OutboundLink")],1)]),t._v(" "),r("td",[r("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/442685/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("MacOS"),r("OutboundLink")],1)])])])])])}),[],!1,null,null,null);a.default=e.exports}}]); \ No newline at end of file diff --git a/assets/js/169.49e337eb.js b/assets/js/169.49e337eb.js new file mode 100644 index 000000000..da101e09d --- /dev/null +++ b/assets/js/169.49e337eb.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[169],{761:function(t,a,r){"use strict";r.r(a);var e=r(13),o=Object(e.a)({},(function(){var t=this,a=t.$createElement,r=t._self._c||a;return r("ContentSlotsDistributor",{attrs:{"slot-key":t.$parent.slotKey}},[r("h1",{attrs:{id:"袋鼠数据库工具-v0-31-1-dev"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#袋鼠数据库工具-v0-31-1-dev"}},[t._v("#")]),t._v(" 袋鼠数据库工具 v0.31.1 (Dev)")]),t._v(" "),r("h2",{attrs:{id:"新特性或修复的缺陷列表"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#新特性或修复的缺陷列表"}},[t._v("#")]),t._v(" 新特性或修复的缺陷列表")]),t._v(" "),r("ol",[r("li",[t._v("实现 BLOB 内容识别(文件类型识别)")]),t._v(" "),r("li",[t._v("实现 SQLite BLOB 类型数据处理(导入 / 导出 / 置空)")]),t._v(" "),r("li",[t._v("实现 MySQL BLOB 类型数据处理(导入 / 导出 / 置空)")]),t._v(" "),r("li",[t._v("实现 PostgreSQL BLOB 类型数据处理(导入 / 导出 / 置空)")]),t._v(" "),r("li",[t._v("实现以文本方式查看 BLOB 数据")]),t._v(" "),r("li",[t._v("应用紧凑样式到查找与搜索框")])]),t._v(" "),r("div",[r("script2",{attrs:{type:"text/javascript",async:"true",src:"https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"}}),t._v(" "),r("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),t._v(" "),r("script2",{attrs:{type:"text/javascript"}},[t._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),t._v(" "),r("h2",{attrs:{id:"安装程序和便携安装包"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#安装程序和便携安装包"}},[t._v("#")]),t._v(" 安装程序和便携安装包 "),r("Badge",{attrs:{text:"链接已失效",type:"warning"}})],1),t._v(" "),r("table",[r("thead",[r("tr",[r("th",[t._v("安装包")]),t._v(" "),r("th",[t._v("Windows(64 bit)")]),t._v(" "),r("th",[t._v("Linux(64 bit)")]),t._v(" "),r("th",[t._v("MacOS(64 bit)")])])]),t._v(" "),r("tbody",[r("tr",[r("td",[t._v("安装程序"),r("br"),t._v("(Github.com)")]),t._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.31.1.200803/kangaroo-0.31.1.200803-AMD64.exe",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows"),r("OutboundLink")],1)]),t._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.31.1.200803/kangaroo-0.31.1.200803-1-x86_64.pkg.tar.xz",target:"_blank",rel:"noopener noreferrer"}},[t._v("Arch"),r("OutboundLink")],1)]),t._v(" "),r("td",[t._v("MacOS")])]),t._v(" "),r("tr",[r("td",[t._v("安装包"),r("br"),t._v("(Github.com)")]),t._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.31.1.200803/kangaroo-0.31.1.200803-AMD64.7z",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows"),r("OutboundLink")],1)]),t._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.31.1.200803/kangaroo-0.31.1.200803-arch.tar.gz",target:"_blank",rel:"noopener noreferrer"}},[t._v("Arch"),r("OutboundLink")],1),t._v(" "),r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.31.1.200803/kangaroo-0.31.1.200803-ubuntu.tar.gz",target:"_blank",rel:"noopener noreferrer"}},[t._v("Ubuntu"),r("OutboundLink")],1)]),t._v(" "),r("td",[t._v("MacOS")])]),t._v(" "),r("tr",[r("td",[t._v("安装程序"),r("br"),t._v("(Gitee.com)")]),t._v(" "),r("td",[r("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/446400/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows"),r("OutboundLink")],1)]),t._v(" "),r("td",[r("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/446402/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("Arch"),r("OutboundLink")],1)]),t._v(" "),r("td",[t._v("MacOS")])]),t._v(" "),r("tr",[r("td",[t._v("安装包"),r("br"),t._v("(Gitee.com)")]),t._v(" "),r("td",[r("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/446401/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows"),r("OutboundLink")],1)]),t._v(" "),r("td",[r("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/446403/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("Arch"),r("OutboundLink")],1),t._v(" "),r("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/446404/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("Ubuntu"),r("OutboundLink")],1)]),t._v(" "),r("td",[t._v("MacOS")])])])])])}),[],!1,null,null,null);a.default=o.exports}}]); \ No newline at end of file diff --git a/assets/js/17.4b0b9d91.js b/assets/js/17.4b0b9d91.js new file mode 100644 index 000000000..722a0b6c8 --- /dev/null +++ b/assets/js/17.4b0b9d91.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[17],{487:function(t,a,r){t.exports=r.p+"assets/img/kangaroo_mp.aba271a6.png"},727:function(t,a,r){"use strict";r.r(a);var e=r(13),_=Object(e.a)({},(function(){var t=this,a=t.$createElement,e=t._self._c||a;return e("ContentSlotsDistributor",{attrs:{"slot-key":t.$parent.slotKey}},[e("h1",{attrs:{id:"常用问题列表"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#常用问题列表"}},[t._v("#")]),t._v(" 常用问题列表")]),t._v(" "),e("h2",{attrs:{id:"关于许可证"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#关于许可证"}},[t._v("#")]),t._v(" 关于许可证")]),t._v(" "),e("h3",{attrs:{id:"袋鼠数据库工具是否免费"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#袋鼠数据库工具是否免费"}},[t._v("#")]),t._v(" 袋鼠数据库工具是否免费?")]),t._v(" "),e("p",[t._v("2022年2月1日,袋鼠基于可持续发展的考虑,上线了新版用户许可协议,基于该协议,标记为"),e("Badge",{attrs:{text:"Dev"}}),t._v(" "),e("Badge",{attrs:{text:"Beta"}}),t._v("的版本个人和组织可以免费使用,其它版本需要付费使用,详情请阅读"),e("RouterLink",{attrs:{to:"/zh/license/service-agreement.html"}},[t._v("产品许可证")]),t._v(" 获得更多明细.")],1),t._v(" "),e("h3",{attrs:{id:"袋鼠数据库工具是否开放源码"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#袋鼠数据库工具是否开放源码"}},[t._v("#")]),t._v(" 袋鼠数据库工具是否开放源码?")]),t._v(" "),e("p",[t._v("如果开源能获得足够的赞助和支持,可支持项目可持续发展,开放源码将会是工具发展过程中的一个优先候选项。")]),t._v(" "),e("h2",{attrs:{id:"关于版本"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#关于版本"}},[t._v("#")]),t._v(" 关于版本")]),t._v(" "),e("h3",{attrs:{id:"如何获得工具的当前版本"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#如何获得工具的当前版本"}},[t._v("#")]),t._v(" 如何获得工具的当前版本?")]),t._v(" "),e("p",[t._v("您可以从工具的关于对话框窗口中获取版本信息:\n第一步: 从__主菜单__进入__帮助__子菜单,然后点击__关于__菜单项,打开关于对话框\n第二步:关于对话框文本的第二行即为当前版本,版本格式为:主版本.次版本.发布版本.构建日期,例如:'0.8.5.191108'")]),t._v(" "),e("h2",{attrs:{id:"什么时候推出稳定版本"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#什么时候推出稳定版本"}},[t._v("#")]),t._v(" 什么时候推出稳定版本?")]),t._v(" "),e("p",[t._v("袋鼠持续在努力推进稳定版本的输出目标,稳定版本有两个考量点:")]),t._v(" "),e("ol",[e("li",[t._v("袋鼠依赖的库(GLib/GTK4)的成熟度和稳定性,需要选取高度成熟和稳定的依赖版本;")]),t._v(" "),e("li",[t._v("袋鼠自身的功能成熟度和稳定性最关键,开发组在持续评估这方面的情况;\n综合各方面的信息,乐观预计在袋鼠四周年的时候(2023.4.1)推出稳定版本。")])]),t._v(" "),e("h2",{attrs:{id:"关于多语言"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#关于多语言"}},[t._v("#")]),t._v(" 关于多语言")]),t._v(" "),e("h3",{attrs:{id:"袋鼠数据库工具支持哪些语言"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#袋鼠数据库工具支持哪些语言"}},[t._v("#")]),t._v(" 袋鼠数据库工具支持哪些语言?")]),t._v(" "),e("p",[t._v("袋鼠数据库工具官方支持英语和中文,其它语言得依靠社区支持;")]),t._v(" "),e("h3",{attrs:{id:"如何切换支持其它语言"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#如何切换支持其它语言"}},[t._v("#")]),t._v(" 如何切换支持其它语言?")]),t._v(" "),e("p",[t._v("设置环境变量后启动应用即可切换,环境变量请参考平台文档。\n【温馨提示】完整的本地化变量清单如下")]),t._v(" "),e("div",{staticClass:"language- extra-class"},[e("pre",{pre:!0,attrs:{class:"language-text"}},[e("code",[t._v("LANG=zh_CN.UTF-8\nLC_CTYPE=zh_CN.UTF-8\nLC_NUMERIC=zh_CN.UTF-8\nLC_TIME=zh_CN.UTF-8\nLC_COLLATE=zh_CN.UTF-8\nLC_MONETARY=zh_CN.UTF-8\nLC_MESSAGES=zh_CN.UTF-8\nLC_ALL=zh_CN.UTF-8\n\nLC_PAPER=zh_CN.UTF-8\nLC_MEASUREMENT=zh_CN.UTF-8\n")])])]),e("h2",{attrs:{id:"安装包校验"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#安装包校验"}},[t._v("#")]),t._v(" 安装包校验")]),t._v(" "),e("h3",{attrs:{id:"如何校验下载的安装包是否完整"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#如何校验下载的安装包是否完整"}},[t._v("#")]),t._v(" 如何校验下载的安装包是否完整?")]),t._v(" "),e("p",[t._v("您可以按如下步骤对安装包进行校验:")]),t._v(" "),e("ol",[e("li",[e("p",[t._v("下载 SHA256 哈希值文件和签名文件(SHA256SUM and SHA256SUM.asc)")])]),t._v(" "),e("li",[e("p",[t._v("获取签名用的公匙"),e("br"),t._v(" "),e("strong",[t._v("1.6.1 及更新版本适用")]),e("br"),t._v("\n签名用公匙ID: 8C0C55F7DEC8FC52 (当前有效, 生成于 2021)"),e("br"),t._v("\n签名用公匙: E4F02524471B195CCEFBD7158C0C55F7DEC8FC52 "),e("br")]),t._v(" "),e("p",[e("strong",[t._v("1.6.1 以前的版本适用")]),e("br"),t._v("\n签名用公匙ID: 702F717E0A17659D (已归档, 生成于 2020)"),e("br"),t._v("\n签名用公匙: 33E5119C5781C1B37E56E580702F717E0A17659D "),e("br")]),t._v(" "),e("p",[e("code",[t._v("gpg --keyserver hkp://hkps.pool.sks-keyservers.net --receive-keys 8C0C55F7DEC8FC52")])])]),t._v(" "),e("li",[e("p",[t._v("校验哈希值文件签名"),e("br"),t._v(" "),e("code",[t._v("gpg --verify kangaroo-1.6.1.210131.sha256sum.asc")])])]),t._v(" "),e("li",[e("p",[t._v("校验安装包文件哈希值"),e("br"),t._v("\n在安装包下载目录内执行命令行获得安装包文件哈希:"),e("br"),t._v(" "),e("code",[t._v("sha256sum kangaroo-1.6.1.")]),t._v(" "),e("br"),t._v("\n然后在 SHA256SUM 文件内搜索是否存在相同的哈希:"),e("br"),t._v(" "),e("code",[t._v("grep kangaroo-1.6.1.sha256sum")])])])]),t._v(" "),e("h2",{attrs:{id:"技术支持"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#技术支持"}},[t._v("#")]),t._v(" 技术支持")]),t._v(" "),e("h3",{attrs:{id:"如何获得袋鼠数据库工具的最新进展"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#如何获得袋鼠数据库工具的最新进展"}},[t._v("#")]),t._v(" 如何获得袋鼠数据库工具的最新进展?")]),t._v(" "),e("p",[t._v("您可以从以下渠道获得袋鼠数据库工具的最新信息:\n"),e("a",{attrs:{href:"https://twitter.com/Kangaroo",target:"_blank",rel:"noopener noreferrer"}},[t._v("Twitter"),e("OutboundLink")],1),t._v(" "),e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo",target:"_blank",rel:"noopener noreferrer"}},[t._v("Github"),e("OutboundLink")],1),t._v(" "),e("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo",target:"_blank",rel:"noopener noreferrer"}},[t._v("Gitee(码云)"),e("OutboundLink")],1),t._v(" "),e("a",{attrs:{href:"https://www.datatable.online/zh/",target:"_blank",rel:"noopener noreferrer"}},[t._v("官方网站"),e("OutboundLink")],1)]),t._v(" "),e("h3",{attrs:{id:"如何获得技术支持"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#如何获得技术支持"}},[t._v("#")]),t._v(" 如何获得技术支持?")]),t._v(" "),e("p",[t._v("您可以在项目仓库 "),e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo",target:"_blank",rel:"noopener noreferrer"}},[t._v("Github"),e("OutboundLink")],1),t._v(" /\n"),e("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo",target:"_blank",rel:"noopener noreferrer"}},[t._v("Gitee(码云)"),e("OutboundLink")],1),t._v(" 提交缺陷和需求来获得官方支持,也可以分享您的解决方案;")]),t._v(" "),e("h3",{attrs:{id:"微信公众号"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#微信公众号"}},[t._v("#")]),t._v(" 微信公众号")]),t._v(" "),e("p",[t._v("为即时推送关于袋鼠的大篇幅文章和视频,故开通了微信公众号: 袋鼠数据库工具 (DataTableOnline),有兴趣的同学可关注。 "),e("br"),t._v(" "),e("img",{attrs:{src:r(487),alt:"袋鼠微信公众号"}})]),t._v(" "),e("Vssue",{attrs:{"issue-id":3,title:t.$title}})],1)}),[],!1,null,null,null);a.default=_.exports}}]); \ No newline at end of file diff --git a/assets/js/170.63fdb5a0.js b/assets/js/170.63fdb5a0.js new file mode 100644 index 000000000..4db4446c0 --- /dev/null +++ b/assets/js/170.63fdb5a0.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[170],{762:function(t,a,r){"use strict";r.r(a);var e=r(13),o=Object(e.a)({},(function(){var t=this,a=t.$createElement,r=t._self._c||a;return r("ContentSlotsDistributor",{attrs:{"slot-key":t.$parent.slotKey}},[r("h1",{attrs:{id:"袋鼠数据库工具-v0-32-1-dev"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#袋鼠数据库工具-v0-32-1-dev"}},[t._v("#")]),t._v(" 袋鼠数据库工具 v0.32.1 (Dev)")]),t._v(" "),r("h2",{attrs:{id:"新特性或修复的缺陷列表"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#新特性或修复的缺陷列表"}},[t._v("#")]),t._v(" 新特性或修复的缺陷列表")]),t._v(" "),r("ol",[r("li",[t._v("实现生成网页格式的数据库设计文档")]),t._v(" "),r("li",[t._v("实现生成 Markdown 格式的数据库设计文档")]),t._v(" "),r("li",[t._v("更新导入 / 导出 功能图标")])]),t._v(" "),r("div",[r("script2",{attrs:{type:"text/javascript",async:"true",src:"https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"}}),t._v(" "),r("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),t._v(" "),r("script2",{attrs:{type:"text/javascript"}},[t._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),t._v(" "),r("h2",{attrs:{id:"安装程序和便携安装包"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#安装程序和便携安装包"}},[t._v("#")]),t._v(" 安装程序和便携安装包 "),r("Badge",{attrs:{text:"链接已失效",type:"warning"}})],1),t._v(" "),r("table",[r("thead",[r("tr",[r("th",[t._v("安装包")]),t._v(" "),r("th",[t._v("Windows(64 bit)")]),t._v(" "),r("th",[t._v("Linux(64 bit)")]),t._v(" "),r("th",[t._v("MacOS(64 bit)")])])]),t._v(" "),r("tbody",[r("tr",[r("td",[t._v("安装程序"),r("br"),t._v("(Github.com)")]),t._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.32.1.200810/kangaroo-0.32.1.200810-AMD64.exe",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows"),r("OutboundLink")],1)]),t._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.32.1.200810/kangaroo-0.32.1.200810-1-x86_64.pkg.tar.xz",target:"_blank",rel:"noopener noreferrer"}},[t._v("Arch"),r("OutboundLink")],1)]),t._v(" "),r("td",[t._v("MacOS")])]),t._v(" "),r("tr",[r("td",[t._v("安装包"),r("br"),t._v("(Github.com)")]),t._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.32.1.200810/kangaroo-0.32.1.200810-AMD64.7z",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows"),r("OutboundLink")],1)]),t._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.32.1.200810/kangaroo-0.32.1.200810-arch.tar.gz",target:"_blank",rel:"noopener noreferrer"}},[t._v("Arch"),r("OutboundLink")],1),t._v(" "),r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.32.1.200810/kangaroo-0.32.1.200810-ubuntu.tar.gz",target:"_blank",rel:"noopener noreferrer"}},[t._v("Ubuntu"),r("OutboundLink")],1)]),t._v(" "),r("td",[t._v("MacOS")])]),t._v(" "),r("tr",[r("td",[t._v("安装程序"),r("br"),t._v("(Gitee.com)")]),t._v(" "),r("td",[r("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/450511/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows"),r("OutboundLink")],1)]),t._v(" "),r("td",[r("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/450508/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("Arch"),r("OutboundLink")],1)]),t._v(" "),r("td",[t._v("MacOS")])]),t._v(" "),r("tr",[r("td",[t._v("安装包"),r("br"),t._v("(Gitee.com)")]),t._v(" "),r("td",[r("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/450512/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows"),r("OutboundLink")],1)]),t._v(" "),r("td",[r("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/450509/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("Arch"),r("OutboundLink")],1),t._v(" "),r("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/450510/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("Ubuntu"),r("OutboundLink")],1)]),t._v(" "),r("td",[t._v("MacOS")])])])])])}),[],!1,null,null,null);a.default=o.exports}}]); \ No newline at end of file diff --git a/assets/js/171.605a5b5b.js b/assets/js/171.605a5b5b.js new file mode 100644 index 000000000..f8015d081 --- /dev/null +++ b/assets/js/171.605a5b5b.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[171],{763:function(t,a,r){"use strict";r.r(a);var e=r(13),o=Object(e.a)({},(function(){var t=this,a=t.$createElement,r=t._self._c||a;return r("ContentSlotsDistributor",{attrs:{"slot-key":t.$parent.slotKey}},[r("h1",{attrs:{id:"袋鼠数据库工具-v0-33-1-dev"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#袋鼠数据库工具-v0-33-1-dev"}},[t._v("#")]),t._v(" 袋鼠数据库工具 v0.33.1 (Dev)")]),t._v(" "),r("h2",{attrs:{id:"新特性或修复的缺陷列表"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#新特性或修复的缺陷列表"}},[t._v("#")]),t._v(" 新特性或修复的缺陷列表")]),t._v(" "),r("ol",[r("li",[t._v("更新应用标题栏和页面导航栏样式")]),t._v(" "),r("li",[t._v("改进日期时间选取控件")]),t._v(" "),r("li",[t._v("改进日期时间网格单元渲染器")]),t._v(" "),r("li",[t._v("实现日期时间数据编辑保存")]),t._v(" "),r("li",[t._v("更新 Windows 部署脚本:包含插件库(libpeas)的加载器")]),t._v(" "),r("li",[t._v("更新构建脚本增加第三方依赖库(用于支持 PDF/地图/绘图)")]),t._v(" "),r("li",[t._v("更新构建脚本改进调试支持")]),t._v(" "),r("li",[t._v("修复: 无法显示动画图片(.gif)")])]),t._v(" "),r("div",[r("script2",{attrs:{type:"text/javascript",async:"true",src:"https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"}}),t._v(" "),r("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),t._v(" "),r("script2",{attrs:{type:"text/javascript"}},[t._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),t._v(" "),r("h2",{attrs:{id:"安装程序和便携安装包"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#安装程序和便携安装包"}},[t._v("#")]),t._v(" 安装程序和便携安装包 "),r("Badge",{attrs:{text:"链接已失效",type:"warning"}})],1),t._v(" "),r("p",[t._v("强烈建议您使用 sha256sum 和 GnuPG 工具来校验您从网络上下载的包文件的SHA256哈希值及其GPG签名,确保您的包文件100%正确无篡改。")]),t._v(" "),r("table",[r("thead",[r("tr",[r("th",[t._v("安装包")]),t._v(" "),r("th",[t._v("Windows(64 bit)")]),t._v(" "),r("th",[t._v("Linux(64 bit)")]),t._v(" "),r("th",[t._v("MacOS(64 bit)")])])]),t._v(" "),r("tbody",[r("tr",[r("td",[t._v("安装程序"),r("br"),t._v("(Github.com)")]),t._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.33.1.200817/kangaroo-0.33.1.200817-AMD64.exe",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows"),r("OutboundLink")],1)]),t._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.33.1.200817/kangaroo-0.33.1.200817-1-x86_64.pkg.tar.xz",target:"_blank",rel:"noopener noreferrer"}},[t._v("Arch"),r("OutboundLink")],1)]),t._v(" "),r("td",[t._v("MacOS")])]),t._v(" "),r("tr",[r("td",[t._v("安装包"),r("br"),t._v("(Github.com)")]),t._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.33.1.200817/kangaroo-0.33.1.200817-AMD64.7z",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows"),r("OutboundLink")],1)]),t._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.33.1.200817/kangaroo-0.33.1.200817-arch.tar.gz",target:"_blank",rel:"noopener noreferrer"}},[t._v("Arch"),r("OutboundLink")],1),t._v(" "),r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.33.1.200817/kangaroo-0.33.1.200817-ubuntu.tar.gz",target:"_blank",rel:"noopener noreferrer"}},[t._v("Ubuntu"),r("OutboundLink")],1)]),t._v(" "),r("td",[t._v("MacOS")])]),t._v(" "),r("tr",[r("td",[t._v("哈希及签名"),r("br"),t._v("(Github.com)")]),t._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.33.1.200817/kangaroo-0.33.1.200817.sha256sum",target:"_blank",rel:"noopener noreferrer"}},[t._v("SHA256SUM"),r("OutboundLink")],1)]),t._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.33.1.200817/kangaroo-0.33.1.200817.sha256sum.asc",target:"_blank",rel:"noopener noreferrer"}},[t._v("SHA256SUM.GPG"),r("OutboundLink")],1)]),t._v(" "),r("td")]),t._v(" "),r("tr",[r("td",[t._v("安装程序"),r("br"),t._v("(Gitee.com)")]),t._v(" "),r("td",[r("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/455480/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows"),r("OutboundLink")],1)]),t._v(" "),r("td",[r("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/455476/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("Arch"),r("OutboundLink")],1)]),t._v(" "),r("td",[t._v("MacOS")])]),t._v(" "),r("tr",[r("td",[t._v("安装包"),r("br"),t._v("(Gitee.com)")]),t._v(" "),r("td",[r("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/455482/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows"),r("OutboundLink")],1)]),t._v(" "),r("td",[r("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/455477/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("Arch"),r("OutboundLink")],1),t._v(" "),r("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/455478/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("Ubuntu"),r("OutboundLink")],1)]),t._v(" "),r("td",[t._v("MacOS")])]),t._v(" "),r("tr",[r("td",[t._v("哈希及签名"),r("br"),t._v("(Gitee.com)")]),t._v(" "),r("td",[r("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/455474/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("SHA256SUM"),r("OutboundLink")],1)]),t._v(" "),r("td",[r("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/455475/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("SHA256SUM.GPG"),r("OutboundLink")],1)]),t._v(" "),r("td")])])])])}),[],!1,null,null,null);a.default=o.exports}}]); \ No newline at end of file diff --git a/assets/js/172.421494f5.js b/assets/js/172.421494f5.js new file mode 100644 index 000000000..7b876b2ec --- /dev/null +++ b/assets/js/172.421494f5.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[172],{764:function(t,a,e){"use strict";e.r(a);var r=e(13),o=Object(r.a)({},(function(){var t=this,a=t.$createElement,e=t._self._c||a;return e("ContentSlotsDistributor",{attrs:{"slot-key":t.$parent.slotKey}},[e("h1",{attrs:{id:"袋鼠数据库工具-v0-7-2-dev"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#袋鼠数据库工具-v0-7-2-dev"}},[t._v("#")]),t._v(" 袋鼠数据库工具 v0.7.2 (Dev)")]),t._v(" "),e("h2",{attrs:{id:"新特性或修复的缺陷列表"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#新特性或修复的缺陷列表"}},[t._v("#")]),t._v(" 新特性或修复的缺陷列表")]),t._v(" "),e("ol",[e("li",[t._v("实现 PostgreSQL 11 加载器")]),t._v(" "),e("li",[t._v("实现 PostgreSQL 11 表设计表单")]),t._v(" "),e("li",[t._v("重构项目目录")]),t._v(" "),e("li",[t._v("创建项目网站项目:dbkangaroo.github.io")]),t._v(" "),e("li",[t._v("增加 Windows 安装器脚本")])]),t._v(" "),e("div",[e("script2",{attrs:{type:"text/javascript",async:"true",src:"https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"}}),t._v(" "),e("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),t._v(" "),e("script2",{attrs:{type:"text/javascript"}},[t._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),t._v(" "),e("h2",{attrs:{id:"安装程序和便携安装包"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#安装程序和便携安装包"}},[t._v("#")]),t._v(" 安装程序和便携安装包 "),e("Badge",{attrs:{text:"链接已失效",type:"warning"}})],1),t._v(" "),e("table",[e("thead",[e("tr",[e("th",[t._v("平台")]),t._v(" "),e("th",[t._v("安装程序 (64 bit)")]),t._v(" "),e("th",[t._v("便携安装包 (64 bit)")])])]),t._v(" "),e("tbody",[e("tr",[e("td",[t._v("Windows")]),t._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.7.2.190916/Kangaroo_0.7.2.190916_x64.exe",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows"),e("OutboundLink")],1)]),t._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.7.2.190916/Kangaroo_win64_0.7.2.190916.zip",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows"),e("OutboundLink")],1)])]),t._v(" "),e("tr",[e("td",[t._v("Linux")]),t._v(" "),e("td"),t._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.7.2.190916/Kangaroo_ubuntu_0.7.2.190916.zip",target:"_blank",rel:"noopener noreferrer"}},[t._v("Ubuntu"),e("OutboundLink")],1)])])])])])}),[],!1,null,null,null);a.default=o.exports}}]); \ No newline at end of file diff --git a/assets/js/173.4aef31a8.js b/assets/js/173.4aef31a8.js new file mode 100644 index 000000000..4da958f4e --- /dev/null +++ b/assets/js/173.4aef31a8.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[173],{765:function(t,a,e){"use strict";e.r(a);var r=e(13),o=Object(r.a)({},(function(){var t=this,a=t.$createElement,e=t._self._c||a;return e("ContentSlotsDistributor",{attrs:{"slot-key":t.$parent.slotKey}},[e("h1",{attrs:{id:"袋鼠数据库工具-v0-8-0-dev"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#袋鼠数据库工具-v0-8-0-dev"}},[t._v("#")]),t._v(" 袋鼠数据库工具 v0.8.0 (Dev)")]),t._v(" "),e("h2",{attrs:{id:"新特性或修复的缺陷列表"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#新特性或修复的缺陷列表"}},[t._v("#")]),t._v(" 新特性或修复的缺陷列表")]),t._v(" "),e("ol",[e("li",[t._v("实现 PostgreSQL SQL 生成器(11.0)")]),t._v(" "),e("li",[t._v("实现保存表结构到数据库(只创建)")]),t._v(" "),e("li",[t._v("更新构建脚本:隐藏控制台窗口")]),t._v(" "),e("li",[t._v("更新Windows安装程序:增加 MySQL 和 PostgreSQL 客户端库")]),t._v(" "),e("li",[t._v("更新关于对话框中的链接")]),t._v(" "),e("li",[t._v("改进单行编辑器控件(自动聚焦)")]),t._v(" "),e("li",[t._v("更新忙状态时的界面光标")])]),t._v(" "),e("div",[e("script2",{attrs:{type:"text/javascript",async:"true",src:"https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"}}),t._v(" "),e("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),t._v(" "),e("script2",{attrs:{type:"text/javascript"}},[t._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),t._v(" "),e("h2",{attrs:{id:"安装程序和便携安装包"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#安装程序和便携安装包"}},[t._v("#")]),t._v(" 安装程序和便携安装包 "),e("Badge",{attrs:{text:"链接已失效",type:"warning"}})],1),t._v(" "),e("table",[e("thead",[e("tr",[e("th",[t._v("平台")]),t._v(" "),e("th",[t._v("安装程序 (64 bit)")]),t._v(" "),e("th",[t._v("便携安装包 (64 bit)")])])]),t._v(" "),e("tbody",[e("tr",[e("td",[t._v("Windows")]),t._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.8.0.190923/Kangaroo_0.8.0.190923_win64.exe",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows"),e("OutboundLink")],1)]),t._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.8.0.190923/Kangaroo_0.8.0.190923_win64.7z",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows"),e("OutboundLink")],1)])]),t._v(" "),e("tr",[e("td",[t._v("Linux")]),t._v(" "),e("td"),t._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.8.0.190923/Kangaroo_0.8.0.190923_ubuntu.zip",target:"_blank",rel:"noopener noreferrer"}},[t._v("Ubuntu"),e("OutboundLink")],1)])])])])])}),[],!1,null,null,null);a.default=o.exports}}]); \ No newline at end of file diff --git a/assets/js/174.70a297dc.js b/assets/js/174.70a297dc.js new file mode 100644 index 000000000..28f8d3989 --- /dev/null +++ b/assets/js/174.70a297dc.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[174],{766:function(t,a,e){"use strict";e.r(a);var r=e(13),o=Object(r.a)({},(function(){var t=this,a=t.$createElement,e=t._self._c||a;return e("ContentSlotsDistributor",{attrs:{"slot-key":t.$parent.slotKey}},[e("h1",{attrs:{id:"袋鼠数据库工具-v0-8-1-dev"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#袋鼠数据库工具-v0-8-1-dev"}},[t._v("#")]),t._v(" 袋鼠数据库工具 v0.8.1 (Dev)")]),t._v(" "),e("h2",{attrs:{id:"新特性或修复的缺陷列表"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#新特性或修复的缺陷列表"}},[t._v("#")]),t._v(" 新特性或修复的缺陷列表")]),t._v(" "),e("ol",[e("li",[t._v("改进:生成正确的编辑 SQL 语言")]),t._v(" "),e("li",[t._v("重构: 增加源代码编辑模块")]),t._v(" "),e("li",[t._v("改进:SQLite 模式SQL生成器")]),t._v(" "),e("li",[t._v("修复: 编辑器无法正确显示空白行")]),t._v(" "),e("li",[t._v("修复: 新增好行时获取字符串失败(控制台告警)")]),t._v(" "),e("li",[t._v("修复: 编辑表结构时控制台报错")])]),t._v(" "),e("div",[e("script2",{attrs:{type:"text/javascript",async:"true",src:"https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"}}),t._v(" "),e("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),t._v(" "),e("script2",{attrs:{type:"text/javascript"}},[t._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),t._v(" "),e("h2",{attrs:{id:"安装程序和便携安装包"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#安装程序和便携安装包"}},[t._v("#")]),t._v(" 安装程序和便携安装包 "),e("Badge",{attrs:{text:"链接已失效",type:"warning"}})],1),t._v(" "),e("table",[e("thead",[e("tr",[e("th",[t._v("平台")]),t._v(" "),e("th",[t._v("安装程序 (64 bit)")]),t._v(" "),e("th",[t._v("便携安装包 (64 bit)")])])]),t._v(" "),e("tbody",[e("tr",[e("td",[t._v("Windows")]),t._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.8.1.190930/Kangaroo_0.8.1.190930_win64.exe",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows"),e("OutboundLink")],1)]),t._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.8.1.190930/Kangaroo_0.8.1.190930_win64.7z",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows"),e("OutboundLink")],1)])]),t._v(" "),e("tr",[e("td",[t._v("Linux")]),t._v(" "),e("td"),t._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.8.1.190930/Kangaroo_0.8.1.190930_ubuntu.zip",target:"_blank",rel:"noopener noreferrer"}},[t._v("Ubuntu"),e("OutboundLink")],1)])])])])])}),[],!1,null,null,null);a.default=o.exports}}]); \ No newline at end of file diff --git a/assets/js/175.bf206adf.js b/assets/js/175.bf206adf.js new file mode 100644 index 000000000..fbcecf08d --- /dev/null +++ b/assets/js/175.bf206adf.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[175],{767:function(t,a,e){"use strict";e.r(a);var r=e(13),o=Object(r.a)({},(function(){var t=this,a=t.$createElement,e=t._self._c||a;return e("ContentSlotsDistributor",{attrs:{"slot-key":t.$parent.slotKey}},[e("h1",{attrs:{id:"袋鼠数据库工具-v0-8-2-dev"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#袋鼠数据库工具-v0-8-2-dev"}},[t._v("#")]),t._v(" 袋鼠数据库工具 v0.8.2 (Dev)")]),t._v(" "),e("h2",{attrs:{id:"新特性或修复的缺陷列表"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#新特性或修复的缺陷列表"}},[t._v("#")]),t._v(" 新特性或修复的缺陷列表")]),t._v(" "),e("ol",[e("li",[t._v("改进字段选择对话框,支持根据值选择字段 #9")]),t._v(" "),e("li",[t._v("改进表设计器支持 Tab 键 #3")]),t._v(" "),e("li",[t._v("修复: 字段表达式对话框重加载失败 #10")]),t._v(" "),e("li",[t._v("修复: 开始菜单和桌面快捷键和图标 #7")]),t._v(" "),e("li",[t._v("修复: SQL 语法高亮支持 #8")]),t._v(" "),e("li",[t._v("修复: 数据表单加载失败 #11")])]),t._v(" "),e("div",[e("script2",{attrs:{type:"text/javascript",async:"true",src:"https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"}}),t._v(" "),e("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),t._v(" "),e("script2",{attrs:{type:"text/javascript"}},[t._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),t._v(" "),e("h2",{attrs:{id:"安装程序和便携安装包"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#安装程序和便携安装包"}},[t._v("#")]),t._v(" 安装程序和便携安装包 "),e("Badge",{attrs:{text:"链接已失效",type:"warning"}})],1),t._v(" "),e("table",[e("thead",[e("tr",[e("th",[t._v("平台")]),t._v(" "),e("th",[t._v("安装程序 (64 bit)")]),t._v(" "),e("th",[t._v("便携安装包 (64 bit)")])])]),t._v(" "),e("tbody",[e("tr",[e("td",[t._v("Windows")]),t._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.8.2.191014/Kangaroo_0.8.2.191014_win64.exe",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows"),e("OutboundLink")],1)]),t._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.8.2.191014/Kangaroo_0.8.2.191014_win64.7z",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows"),e("OutboundLink")],1)])]),t._v(" "),e("tr",[e("td",[t._v("Linux")]),t._v(" "),e("td"),t._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.8.2.191014/Kangaroo_0.8.2.191014_ubuntu.zip",target:"_blank",rel:"noopener noreferrer"}},[t._v("Ubuntu"),e("OutboundLink")],1)])]),t._v(" "),e("tr",[e("td",[t._v("MacOS")]),t._v(" "),e("td"),t._v(" "),e("td")])])])])}),[],!1,null,null,null);a.default=o.exports}}]); \ No newline at end of file diff --git a/assets/js/176.57b9e8d1.js b/assets/js/176.57b9e8d1.js new file mode 100644 index 000000000..873d0a5ad --- /dev/null +++ b/assets/js/176.57b9e8d1.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[176],{768:function(t,a,e){"use strict";e.r(a);var r=e(13),o=Object(r.a)({},(function(){var t=this,a=t.$createElement,e=t._self._c||a;return e("ContentSlotsDistributor",{attrs:{"slot-key":t.$parent.slotKey}},[e("h1",{attrs:{id:"袋鼠数据库工具-v0-8-3-dev"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#袋鼠数据库工具-v0-8-3-dev"}},[t._v("#")]),t._v(" 袋鼠数据库工具 v0.8.3 (Dev)")]),t._v(" "),e("h2",{attrs:{id:"新特性或修复的缺陷列表"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#新特性或修复的缺陷列表"}},[t._v("#")]),t._v(" 新特性或修复的缺陷列表")]),t._v(" "),e("ol",[e("li",[t._v("新建连接时出现插件未加载错误 #12")]),t._v(" "),e("li",[t._v("增加 MacOS 平台编译支持 #13")]),t._v(" "),e("li",[t._v("重构数据库对象模型并改进互操作性")])]),t._v(" "),e("div",[e("script2",{attrs:{type:"text/javascript",async:"true",src:"https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"}}),t._v(" "),e("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),t._v(" "),e("script2",{attrs:{type:"text/javascript"}},[t._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),t._v(" "),e("h2",{attrs:{id:"安装程序和便携安装包"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#安装程序和便携安装包"}},[t._v("#")]),t._v(" 安装程序和便携安装包 "),e("Badge",{attrs:{text:"链接已失效",type:"warning"}})],1),t._v(" "),e("table",[e("thead",[e("tr",[e("th",[t._v("平台")]),t._v(" "),e("th",[t._v("安装程序 (64 bit)")]),t._v(" "),e("th",[t._v("便携安装包 (64 bit)")])])]),t._v(" "),e("tbody",[e("tr",[e("td",[t._v("Windows")]),t._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.8.3.191021/Kangaroo_0.8.3.191021_win64.exe",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows"),e("OutboundLink")],1)]),t._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.8.3.191021/Kangaroo_0.8.3.191021_win64.7z",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows"),e("OutboundLink")],1)])]),t._v(" "),e("tr",[e("td",[t._v("Linux")]),t._v(" "),e("td"),t._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.8.3.191021/Kangaroo_0.8.3.191021_ubuntu.zip",target:"_blank",rel:"noopener noreferrer"}},[t._v("Ubuntu"),e("OutboundLink")],1)])]),t._v(" "),e("tr",[e("td",[t._v("MacOS")]),t._v(" "),e("td"),t._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.8.3.191021/Kangaroo_0.8.3.191021_macos.zip",target:"_blank",rel:"noopener noreferrer"}},[t._v("MacOS"),e("OutboundLink")],1)])])])])])}),[],!1,null,null,null);a.default=o.exports}}]); \ No newline at end of file diff --git a/assets/js/177.c5ce3f94.js b/assets/js/177.c5ce3f94.js new file mode 100644 index 000000000..71a929250 --- /dev/null +++ b/assets/js/177.c5ce3f94.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[177],{770:function(t,a,e){"use strict";e.r(a);var r=e(13),o=Object(r.a)({},(function(){var t=this,a=t.$createElement,e=t._self._c||a;return e("ContentSlotsDistributor",{attrs:{"slot-key":t.$parent.slotKey}},[e("h1",{attrs:{id:"袋鼠数据库工具-v0-8-4-dev"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#袋鼠数据库工具-v0-8-4-dev"}},[t._v("#")]),t._v(" 袋鼠数据库工具 v0.8.4 (Dev)")]),t._v(" "),e("h2",{attrs:{id:"新特性或修复的缺陷列表"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#新特性或修复的缺陷列表"}},[t._v("#")]),t._v(" 新特性或修复的缺陷列表")]),t._v(" "),e("ol",[e("li",[t._v("重组数据库对象树和界面 #17")]),t._v(" "),e("li",[t._v("增加数据库对象树刷新菜单")]),t._v(" "),e("li",[t._v("实现多个数据库支持")]),t._v(" "),e("li",[t._v("编辑表结构并保存(MySQL 预览) #5")])]),t._v(" "),e("div",[e("script2",{attrs:{type:"text/javascript",async:"true",src:"https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"}}),t._v(" "),e("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),t._v(" "),e("script2",{attrs:{type:"text/javascript"}},[t._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),t._v(" "),e("h2",{attrs:{id:"安装程序和便携安装包"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#安装程序和便携安装包"}},[t._v("#")]),t._v(" 安装程序和便携安装包 "),e("Badge",{attrs:{text:"链接已失效",type:"warning"}})],1),t._v(" "),e("table",[e("thead",[e("tr",[e("th",[t._v("平台")]),t._v(" "),e("th",[t._v("安装程序 (64 bit)")]),t._v(" "),e("th",[t._v("便携安装包 (64 bit)")])])]),t._v(" "),e("tbody",[e("tr",[e("td",[t._v("Windows")]),t._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.8.4.191028/Kangaroo_0.8.4.191028_win64.exe",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows"),e("OutboundLink")],1)]),t._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.8.4.191028/Kangaroo_0.8.4.191028_win64.7z",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows"),e("OutboundLink")],1)])]),t._v(" "),e("tr",[e("td",[t._v("Linux")]),t._v(" "),e("td"),t._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.8.4.191028/Kangaroo_0.8.4.191028_ubuntu.zip",target:"_blank",rel:"noopener noreferrer"}},[t._v("Ubuntu"),e("OutboundLink")],1)])]),t._v(" "),e("tr",[e("td",[t._v("MacOS")]),t._v(" "),e("td"),t._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.8.4.191028/Kangaroo_0.8.4.191028_macos.zip",target:"_blank",rel:"noopener noreferrer"}},[t._v("MacOS"),e("OutboundLink")],1)])])])])])}),[],!1,null,null,null);a.default=o.exports}}]); \ No newline at end of file diff --git a/assets/js/178.f0313f65.js b/assets/js/178.f0313f65.js new file mode 100644 index 000000000..2554b3c04 --- /dev/null +++ b/assets/js/178.f0313f65.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[178],{769:function(t,a,e){"use strict";e.r(a);var r=e(13),o=Object(r.a)({},(function(){var t=this,a=t.$createElement,e=t._self._c||a;return e("ContentSlotsDistributor",{attrs:{"slot-key":t.$parent.slotKey}},[e("h1",{attrs:{id:"袋鼠数据库工具-v0-8-5-dev"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#袋鼠数据库工具-v0-8-5-dev"}},[t._v("#")]),t._v(" 袋鼠数据库工具 v0.8.5 (Dev)")]),t._v(" "),e("h2",{attrs:{id:"新特性或修复的缺陷列表"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#新特性或修复的缺陷列表"}},[t._v("#")]),t._v(" 新特性或修复的缺陷列表")]),t._v(" "),e("ol",[e("li",[t._v("支持表结构编辑和保存(SQLite、PostgreSQL 预览版)")]),t._v(" "),e("li",[t._v("增加了数据导出的UI和接口")]),t._v(" "),e("li",[t._v("新建表保存时同步更新Tab页面标题")])]),t._v(" "),e("div",[e("script2",{attrs:{type:"text/javascript",async:"true",src:"https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"}}),t._v(" "),e("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),t._v(" "),e("script2",{attrs:{type:"text/javascript"}},[t._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),t._v(" "),e("h2",{attrs:{id:"安装程序和便携安装包"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#安装程序和便携安装包"}},[t._v("#")]),t._v(" 安装程序和便携安装包 "),e("Badge",{attrs:{text:"链接已失效",type:"warning"}})],1),t._v(" "),e("table",[e("thead",[e("tr",[e("th",[t._v("平台")]),t._v(" "),e("th",[t._v("安装程序 (64 bit)")]),t._v(" "),e("th",[t._v("便携安装包 (64 bit)")])])]),t._v(" "),e("tbody",[e("tr",[e("td",[t._v("Windows")]),t._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.8.5.191104/Kangaroo_0.8.5.191104_win64.exe",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows"),e("OutboundLink")],1)]),t._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.8.5.191104/Kangaroo_0.8.5.191104_win64.7z",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows"),e("OutboundLink")],1)])]),t._v(" "),e("tr",[e("td",[t._v("Linux")]),t._v(" "),e("td"),t._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.8.5.191104/Kangaroo_0.8.5.191104_ubuntu.zip",target:"_blank",rel:"noopener noreferrer"}},[t._v("Ubuntu"),e("OutboundLink")],1)])]),t._v(" "),e("tr",[e("td",[t._v("MacOS")]),t._v(" "),e("td"),t._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.8.5.191104/Kangaroo_0.8.5.191104_macos.zip",target:"_blank",rel:"noopener noreferrer"}},[t._v("MacOS"),e("OutboundLink")],1)])])])])])}),[],!1,null,null,null);a.default=o.exports}}]); \ No newline at end of file diff --git a/assets/js/179.efd7516e.js b/assets/js/179.efd7516e.js new file mode 100644 index 000000000..9b79526db --- /dev/null +++ b/assets/js/179.efd7516e.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[179],{771:function(t,a,e){"use strict";e.r(a);var r=e(13),o=Object(r.a)({},(function(){var t=this,a=t.$createElement,e=t._self._c||a;return e("ContentSlotsDistributor",{attrs:{"slot-key":t.$parent.slotKey}},[e("h1",{attrs:{id:"袋鼠数据库工具-v0-9-0-dev"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#袋鼠数据库工具-v0-9-0-dev"}},[t._v("#")]),t._v(" 袋鼠数据库工具 v0.9.0 (Dev)")]),t._v(" "),e("h2",{attrs:{id:"新特性或修复的缺陷列表"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#新特性或修复的缺陷列表"}},[t._v("#")]),t._v(" 新特性或修复的缺陷列表")]),t._v(" "),e("ol",[e("li",[t._v("支持数据库表结构编辑和保存 #5")]),t._v(" "),e("li",[t._v("支持导出为JSON和DSV格式")])]),t._v(" "),e("div",[e("script2",{attrs:{type:"text/javascript",async:"true",src:"https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"}}),t._v(" "),e("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),t._v(" "),e("script2",{attrs:{type:"text/javascript"}},[t._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),t._v(" "),e("h2",{attrs:{id:"安装程序和便携安装包"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#安装程序和便携安装包"}},[t._v("#")]),t._v(" 安装程序和便携安装包 "),e("Badge",{attrs:{text:"链接已失效",type:"warning"}})],1),t._v(" "),e("table",[e("thead",[e("tr",[e("th",[t._v("平台")]),t._v(" "),e("th",[t._v("安装程序 (64 bit)")]),t._v(" "),e("th",[t._v("便携安装包 (64 bit)")])])]),t._v(" "),e("tbody",[e("tr",[e("td",[t._v("Windows")]),t._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.9.0.191111/Kangaroo_0.9.0.191111_win64.exe",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows"),e("OutboundLink")],1)]),t._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.9.0.191111/Kangaroo_0.9.0.191111_win64.7z",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows"),e("OutboundLink")],1)])]),t._v(" "),e("tr",[e("td",[t._v("Linux")]),t._v(" "),e("td"),t._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.9.0.191111/Kangaroo_0.9.0.191111_ubuntu.zip",target:"_blank",rel:"noopener noreferrer"}},[t._v("Ubuntu"),e("OutboundLink")],1)])]),t._v(" "),e("tr",[e("td",[t._v("MacOS")]),t._v(" "),e("td"),t._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.9.0.191111/Kangaroo_0.9.0.191111_macos.zip",target:"_blank",rel:"noopener noreferrer"}},[t._v("MacOS"),e("OutboundLink")],1)])])])])])}),[],!1,null,null,null);a.default=o.exports}}]); \ No newline at end of file diff --git a/assets/js/18.9cd2ec47.js b/assets/js/18.9cd2ec47.js new file mode 100644 index 000000000..9e69da88f --- /dev/null +++ b/assets/js/18.9cd2ec47.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[18],{564:function(t,a,s){t.exports=s.p+"assets/img/installer-mac-home.d7b285b1.png"},732:function(t,a,s){"use strict";s.r(a);var r=s(13),e=Object(r.a)({},(function(){var t=this,a=t.$createElement,r=t._self._c||a;return r("ContentSlotsDistributor",{attrs:{"slot-key":t.$parent.slotKey}},[r("h1",{attrs:{id:"macos-平台安装"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#macos-平台安装"}},[t._v("#")]),t._v(" MacOS 平台安装")]),t._v(" "),r("div",{staticClass:"custom-block danger"},[r("p",{staticClass:"custom-block-title"},[t._v("打开来自身份不明开发者(未签名)的 Mac App")]),t._v(" "),r("p",[t._v("若要覆盖安全性设置且仍然打开 App,请按照以下步骤操作:"),r("br")]),t._v(" "),r("ol",[r("li",[t._v("在 Mac 上的“访达” 中,找到想要打开的 App。"),r("br"),t._v("\n请勿使用启动台来执行此操作。启动台不允许访问快捷菜单。")]),t._v(" "),r("li",[t._v("按住 Control 键点按 App 图标,然后从快捷键菜单中选取“打开”。")]),t._v(" "),r("li",[t._v("点按“打开”。"),r("br"),t._v("\n该 App 将存储为安全性设置的例外情况,今后您将可以通过连按打开它,如同任何注册的 App 那样。")])])]),t._v(" "),r("h2",{attrs:{id:"下载袋鼠数据库工具"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#下载袋鼠数据库工具"}},[t._v("#")]),t._v(" 下载袋鼠数据库工具")]),t._v(" "),r("p",[t._v("点击链接下载最新版的袋鼠数据库工具 "),r("a",{attrs:{href:"../download"}},[t._v("下载")])]),t._v(" "),r("h2",{attrs:{id:"安装袋鼠数据库工具"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#安装袋鼠数据库工具"}},[t._v("#")]),t._v(" 安装袋鼠数据库工具")]),t._v(" "),r("p",[t._v("MacOS 平台提供了两种安装方式:安装程序 和 手工安装,您可以根据您的喜好安装;")]),t._v(" "),r("h3",{attrs:{id:"安装程序"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#安装程序"}},[t._v("#")]),t._v(" 安装程序")]),t._v(" "),r("ol",[r("li",[t._v("在文件管理器中挂载并打开 DMG 安装器")]),t._v(" "),r("li",[t._v("在显示的界面中拖动袋鼠图标到右边的应用图标上即可完成安装。\n"),r("img",{attrs:{src:s(564),alt:"Mac 安装界面"}})]),t._v(" "),r("li",[t._v("从应用中心启动袋鼠数据库工具,检查是否一切正常")])]),t._v(" "),r("Vssue",{attrs:{"issue-id":6,title:t.$title}})],1)}),[],!1,null,null,null);a.default=e.exports}}]); \ No newline at end of file diff --git a/assets/js/180.ac6350ed.js b/assets/js/180.ac6350ed.js new file mode 100644 index 000000000..11b4501d2 --- /dev/null +++ b/assets/js/180.ac6350ed.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[180],{772:function(t,a,r){"use strict";r.r(a);var e=r(13),o=Object(e.a)({},(function(){var t=this,a=t.$createElement,r=t._self._c||a;return r("ContentSlotsDistributor",{attrs:{"slot-key":t.$parent.slotKey}},[r("h1",{attrs:{id:"袋鼠数据库工具-v0-9-1-dev"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#袋鼠数据库工具-v0-9-1-dev"}},[t._v("#")]),t._v(" 袋鼠数据库工具 v0.9.1 (Dev)")]),t._v(" "),r("h2",{attrs:{id:"新特性或修复的缺陷列表"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#新特性或修复的缺陷列表"}},[t._v("#")]),t._v(" 新特性或修复的缺陷列表")]),t._v(" "),r("ol",[r("li",[t._v("支持导出数据到剪贴板或文件 #18\n"),r("ul",[r("li",[t._v("支持导出为 DSV 格式(CSV/TSV/...)")]),t._v(" "),r("li",[t._v("支持导出为 JSON 格式;")]),t._v(" "),r("li",[t._v("支持导出为 XML 格式")]),t._v(" "),r("li",[t._v("支持导出为 HTML 格式")]),t._v(" "),r("li",[t._v("支持导出为 SQL 格式(INSERT)")]),t._v(" "),r("li",[t._v("支持导出为 Markdown 格式")])])]),t._v(" "),r("li",[t._v("改进保存文件对话框文件过滤条件,提升用户体验")])]),t._v(" "),r("div",[r("script2",{attrs:{type:"text/javascript",async:"true",src:"https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"}}),t._v(" "),r("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),t._v(" "),r("script2",{attrs:{type:"text/javascript"}},[t._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),t._v(" "),r("h2",{attrs:{id:"安装程序和便携安装包"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#安装程序和便携安装包"}},[t._v("#")]),t._v(" 安装程序和便携安装包 "),r("Badge",{attrs:{text:"链接已失效",type:"warning"}})],1),t._v(" "),r("table",[r("thead",[r("tr",[r("th",[t._v("平台")]),t._v(" "),r("th",[t._v("安装程序 (64 bit)")]),t._v(" "),r("th",[t._v("便携安装包 (64 bit)")])])]),t._v(" "),r("tbody",[r("tr",[r("td",[t._v("Windows")]),t._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.9.1.191118/Kangaroo_0.9.1.191118_win64.exe",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows"),r("OutboundLink")],1)]),t._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.9.1.191118/Kangaroo_0.9.1.191118_win64.7z",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows"),r("OutboundLink")],1)])]),t._v(" "),r("tr",[r("td",[t._v("Linux")]),t._v(" "),r("td"),t._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.9.1.191118/Kangaroo_0.9.1.191118_ubuntu.zip",target:"_blank",rel:"noopener noreferrer"}},[t._v("Ubuntu"),r("OutboundLink")],1)])]),t._v(" "),r("tr",[r("td",[t._v("MacOS")]),t._v(" "),r("td"),t._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.9.1.191118/Kangaroo_0.9.1.191118_macos.zip",target:"_blank",rel:"noopener noreferrer"}},[t._v("MacOS"),r("OutboundLink")],1)])])])])])}),[],!1,null,null,null);a.default=o.exports}}]); \ No newline at end of file diff --git a/assets/js/181.dc5ca4a8.js b/assets/js/181.dc5ca4a8.js new file mode 100644 index 000000000..eea073b7d --- /dev/null +++ b/assets/js/181.dc5ca4a8.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[181],{773:function(t,a,e){"use strict";e.r(a);var r=e(13),o=Object(r.a)({},(function(){var t=this,a=t.$createElement,e=t._self._c||a;return e("ContentSlotsDistributor",{attrs:{"slot-key":t.$parent.slotKey}},[e("h1",{attrs:{id:"袋鼠数据库工具-v0-9-2-dev"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#袋鼠数据库工具-v0-9-2-dev"}},[t._v("#")]),t._v(" 袋鼠数据库工具 v0.9.2 (Dev)")]),t._v(" "),e("h2",{attrs:{id:"新特性或修复的缺陷列表"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#新特性或修复的缺陷列表"}},[t._v("#")]),t._v(" 新特性或修复的缺陷列表")]),t._v(" "),e("ol",[e("li",[t._v("实现从文件导入数据功能(DSV/XML/JSON) #19\n"),e("ul",[e("li",[t._v("实现文件导入格式、编码和预览界面")]),t._v(" "),e("li",[t._v("实现文件导入格式参数设置界面")]),t._v(" "),e("li",[t._v("实现文件导入解析数据预览界面")]),t._v(" "),e("li",[t._v("实现文件导入字段映射界面(功能未实现)")]),t._v(" "),e("li",[t._v("实现文件导入处理进度界面(功能未实现)")]),t._v(" "),e("li",[t._v("实现文件导入之DSV格式解析和预览支持")]),t._v(" "),e("li",[t._v("实现数据字段和目标表字段映射支持")])])])]),t._v(" "),e("div",[e("script2",{attrs:{type:"text/javascript",async:"true",src:"https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"}}),t._v(" "),e("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),t._v(" "),e("script2",{attrs:{type:"text/javascript"}},[t._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),t._v(" "),e("h2",{attrs:{id:"安装程序和便携安装包"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#安装程序和便携安装包"}},[t._v("#")]),t._v(" 安装程序和便携安装包 "),e("Badge",{attrs:{text:"链接已失效",type:"warning"}})],1),t._v(" "),e("table",[e("thead",[e("tr",[e("th",[t._v("平台")]),t._v(" "),e("th",[t._v("安装程序 (64 bit)")]),t._v(" "),e("th",[t._v("便携安装包 (64 bit)")])])]),t._v(" "),e("tbody",[e("tr",[e("td",[t._v("Windows")]),t._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.9.2.191125/Kangaroo_0.9.2.191125_win64.exe",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows"),e("OutboundLink")],1)]),t._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.9.2.191125/Kangaroo_0.9.2.191125_win64.7z",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows"),e("OutboundLink")],1)])]),t._v(" "),e("tr",[e("td",[t._v("Linux")]),t._v(" "),e("td"),t._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.9.2.191125/Kangaroo_0.9.2.191125_ubuntu.zip",target:"_blank",rel:"noopener noreferrer"}},[t._v("Ubuntu"),e("OutboundLink")],1)])]),t._v(" "),e("tr",[e("td",[t._v("MacOS")]),t._v(" "),e("td"),t._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.9.2.191125/Kangaroo_0.9.2.191125_macos.zip",target:"_blank",rel:"noopener noreferrer"}},[t._v("MacOS"),e("OutboundLink")],1)])])])])])}),[],!1,null,null,null);a.default=o.exports}}]); \ No newline at end of file diff --git a/assets/js/182.2a31ce3d.js b/assets/js/182.2a31ce3d.js new file mode 100644 index 000000000..c874d65d8 --- /dev/null +++ b/assets/js/182.2a31ce3d.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[182],{775:function(t,a,e){"use strict";e.r(a);var r=e(13),o=Object(r.a)({},(function(){var t=this,a=t.$createElement,e=t._self._c||a;return e("ContentSlotsDistributor",{attrs:{"slot-key":t.$parent.slotKey}},[e("h1",{attrs:{id:"袋鼠数据库工具-v0-9-3-dev"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#袋鼠数据库工具-v0-9-3-dev"}},[t._v("#")]),t._v(" 袋鼠数据库工具 v0.9.3 (Dev)")]),t._v(" "),e("h2",{attrs:{id:"新特性或修复的缺陷列表"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#新特性或修复的缺陷列表"}},[t._v("#")]),t._v(" 新特性或修复的缺陷列表")]),t._v(" "),e("ol",[e("li",[t._v("实现工具页用于支持导入、导出功能")]),t._v(" "),e("li",[t._v("增加IDE相关接口,用于后续重构支持;")])]),t._v(" "),e("div",[e("script2",{attrs:{type:"text/javascript",async:"true",src:"https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"}}),t._v(" "),e("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),t._v(" "),e("script2",{attrs:{type:"text/javascript"}},[t._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),t._v(" "),e("h2",{attrs:{id:"安装程序和便携安装包"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#安装程序和便携安装包"}},[t._v("#")]),t._v(" 安装程序和便携安装包 "),e("Badge",{attrs:{text:"链接已失效",type:"warning"}})],1),t._v(" "),e("table",[e("thead",[e("tr",[e("th",[t._v("平台")]),t._v(" "),e("th",[t._v("安装程序 (64 bit)")]),t._v(" "),e("th",[t._v("便携安装包 (64 bit)")])])]),t._v(" "),e("tbody",[e("tr",[e("td",[t._v("Windows")]),t._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.9.2.191202/Kangaroo_0.9.2.191202_win64.exe",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows"),e("OutboundLink")],1)]),t._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.9.2.191202/Kangaroo_0.9.2.191202_win64.7z",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows"),e("OutboundLink")],1)])]),t._v(" "),e("tr",[e("td",[t._v("Linux")]),t._v(" "),e("td"),t._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.9.2.191202/Kangaroo_0.9.2.191202_ubuntu.zip",target:"_blank",rel:"noopener noreferrer"}},[t._v("Ubuntu"),e("OutboundLink")],1)])]),t._v(" "),e("tr",[e("td",[t._v("MacOS")]),t._v(" "),e("td"),t._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.9.2.191202/Kangaroo_0.9.2.191202_macos.zip",target:"_blank",rel:"noopener noreferrer"}},[t._v("MacOS"),e("OutboundLink")],1)])])])])])}),[],!1,null,null,null);a.default=o.exports}}]); \ No newline at end of file diff --git a/assets/js/183.fa797a62.js b/assets/js/183.fa797a62.js new file mode 100644 index 000000000..39d37209d --- /dev/null +++ b/assets/js/183.fa797a62.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[183],{774:function(t,a,e){"use strict";e.r(a);var r=e(13),o=Object(r.a)({},(function(){var t=this,a=t.$createElement,e=t._self._c||a;return e("ContentSlotsDistributor",{attrs:{"slot-key":t.$parent.slotKey}},[e("h1",{attrs:{id:"袋鼠数据库工具-v0-9-4-dev"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#袋鼠数据库工具-v0-9-4-dev"}},[t._v("#")]),t._v(" 袋鼠数据库工具 v0.9.4 (Dev)")]),t._v(" "),e("h2",{attrs:{id:"新特性或修复的缺陷列表"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#新特性或修复的缺陷列表"}},[t._v("#")]),t._v(" 新特性或修复的缺陷列表")]),t._v(" "),e("ol",[e("li",[t._v("实现文件导入处理结果界面")]),t._v(" "),e("li",[t._v("数据导入增加5中导入模式(追加、更新、合并、删除、替换)")]),t._v(" "),e("li",[t._v("实现导入数据到表中(SQLite)")]),t._v(" "),e("li",[t._v("重构对话框,增加翻译、艺术家和许可证信息,修复Mac和Ubuntu平台无法展示图片的问题;")])]),t._v(" "),e("div",[e("script2",{attrs:{type:"text/javascript",async:"true",src:"https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"}}),t._v(" "),e("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),t._v(" "),e("script2",{attrs:{type:"text/javascript"}},[t._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),t._v(" "),e("h2",{attrs:{id:"安装程序和便携安装包"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#安装程序和便携安装包"}},[t._v("#")]),t._v(" 安装程序和便携安装包 "),e("Badge",{attrs:{text:"链接已失效",type:"warning"}})],1),t._v(" "),e("table",[e("thead",[e("tr",[e("th",[t._v("平台")]),t._v(" "),e("th",[t._v("安装程序 (64 bit)")]),t._v(" "),e("th",[t._v("便携安装包 (64 bit)")])])]),t._v(" "),e("tbody",[e("tr",[e("td",[t._v("Windows")]),t._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.9.4.191209/Kangaroo_0.9.4.191209_win64.exe",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows"),e("OutboundLink")],1)]),t._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.9.4.191209/Kangaroo_0.9.4.191209_win64.7z",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows"),e("OutboundLink")],1)])]),t._v(" "),e("tr",[e("td",[t._v("Linux")]),t._v(" "),e("td"),t._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.9.4.191209/Kangaroo_0.9.4.191209_ubuntu.zip",target:"_blank",rel:"noopener noreferrer"}},[t._v("Ubuntu"),e("OutboundLink")],1)])]),t._v(" "),e("tr",[e("td",[t._v("MacOS")]),t._v(" "),e("td"),t._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.9.4.191209/Kangaroo_0.9.4.191209_macos.zip",target:"_blank",rel:"noopener noreferrer"}},[t._v("MacOS"),e("OutboundLink")],1)])])])])])}),[],!1,null,null,null);a.default=o.exports}}]); \ No newline at end of file diff --git a/assets/js/184.3acb7097.js b/assets/js/184.3acb7097.js new file mode 100644 index 000000000..3516b6c76 --- /dev/null +++ b/assets/js/184.3acb7097.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[184],{776:function(t,a,r){"use strict";r.r(a);var e=r(13),o=Object(e.a)({},(function(){var t=this,a=t.$createElement,r=t._self._c||a;return r("ContentSlotsDistributor",{attrs:{"slot-key":t.$parent.slotKey}},[r("h1",{attrs:{id:"袋鼠数据库工具-v0-9-5-dev"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#袋鼠数据库工具-v0-9-5-dev"}},[t._v("#")]),t._v(" 袋鼠数据库工具 v0.9.5 (Dev)")]),t._v(" "),r("h2",{attrs:{id:"新特性或修复的缺陷列表"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#新特性或修复的缺陷列表"}},[t._v("#")]),t._v(" 新特性或修复的缺陷列表")]),t._v(" "),r("ol",[r("li",[t._v("支持从DSV(CSV、TSV)格式文件导入数据")]),t._v(" "),r("li",[t._v("支持从JSON格式文件导入数据")]),t._v(" "),r("li",[t._v("支持XML格式文件导入数据")]),t._v(" "),r("li",[t._v("使用libxml2库重写导出数据为XML格式")]),t._v(" "),r("li",[t._v("增加导出助理界面")]),t._v(" "),r("li",[t._v("初步实现导出格式、导出表选择页面")])]),t._v(" "),r("div",[r("script2",{attrs:{type:"text/javascript",async:"true",src:"https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"}}),t._v(" "),r("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),t._v(" "),r("script2",{attrs:{type:"text/javascript"}},[t._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),t._v(" "),r("h2",{attrs:{id:"安装程序和便携安装包"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#安装程序和便携安装包"}},[t._v("#")]),t._v(" 安装程序和便携安装包 "),r("Badge",{attrs:{text:"链接已失效",type:"warning"}})],1),t._v(" "),r("table",[r("thead",[r("tr",[r("th",[t._v("安装包")]),t._v(" "),r("th",[t._v("Windows (64 bit)")]),t._v(" "),r("th",[t._v("Linux (64 bit)")]),t._v(" "),r("th",[t._v("MacOS (64 bit)")])])]),t._v(" "),r("tbody",[r("tr",[r("td",[t._v("安装程序"),r("br"),t._v(" (Github.com)")]),t._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.9.5.191216/Kangaroo_0.9.5.191216_win64.exe",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows"),r("OutboundLink")],1)]),t._v(" "),r("td"),t._v(" "),r("td")]),t._v(" "),r("tr",[r("td",[t._v("安装包"),r("br"),t._v(" (Github.com)")]),t._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.9.5.191216/Kangaroo_0.9.5.191216_win64.7z",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows"),r("OutboundLink")],1)]),t._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.9.5.191216/Kangaroo_0.9.5.191216_ubuntu.zip",target:"_blank",rel:"noopener noreferrer"}},[t._v("Ubuntu"),r("OutboundLink")],1)]),t._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.9.5.191216/Kangaroo_0.9.5.191216_macos.zip",target:"_blank",rel:"noopener noreferrer"}},[t._v("MacOS"),r("OutboundLink")],1)])]),t._v(" "),r("tr",[r("td",[t._v("安装程序"),r("br"),t._v(" (Gitee.com)")]),t._v(" "),r("td",[r("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/312739/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows"),r("OutboundLink")],1)]),t._v(" "),r("td"),t._v(" "),r("td")]),t._v(" "),r("tr",[r("td",[t._v("安装包"),r("br"),t._v(" (Gitee.com)")]),t._v(" "),r("td",[r("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/312740/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows"),r("OutboundLink")],1)]),t._v(" "),r("td",[r("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/312737/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("Ubuntu"),r("OutboundLink")],1)]),t._v(" "),r("td",[r("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/312736/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("MacOS"),r("OutboundLink")],1)])])])])])}),[],!1,null,null,null);a.default=o.exports}}]); \ No newline at end of file diff --git a/assets/js/185.efd4feec.js b/assets/js/185.efd4feec.js new file mode 100644 index 000000000..879e7be1c --- /dev/null +++ b/assets/js/185.efd4feec.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[185],{777:function(t,a,r){"use strict";r.r(a);var o=r(13),e=Object(o.a)({},(function(){var t=this,a=t.$createElement,r=t._self._c||a;return r("ContentSlotsDistributor",{attrs:{"slot-key":t.$parent.slotKey}},[r("h1",{attrs:{id:"袋鼠数据库工具-v0-99-1-beta"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#袋鼠数据库工具-v0-99-1-beta"}},[t._v("#")]),t._v(" 袋鼠数据库工具 v0.99.1 (Beta)")]),t._v(" "),r("h2",{attrs:{id:"新特性或修复的缺陷列表"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#新特性或修复的缺陷列表"}},[t._v("#")]),t._v(" 新特性或修复的缺陷列表")]),t._v(" "),r("ol",[r("li",[t._v("改进表设计器通知用户保存修改")]),t._v(" "),r("li",[t._v("改进消息对话框标题显示")]),t._v(" "),r("li",[t._v("改进表设计器预览页只显示修改部分SQL")]),t._v(" "),r("li",[t._v("更新SQLite/MySQL/PostgreSQL 元模型及数据")]),t._v(" "),r("li",[t._v("改进 Windows 安装程序显示许可证和多语言支持")]),t._v(" "),r("li",[t._v("Make kangaroo portable #59")])]),t._v(" "),r("div",[r("script2",{attrs:{type:"text/javascript",async:"true",src:"https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"}}),t._v(" "),r("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),t._v(" "),r("script2",{attrs:{type:"text/javascript"}},[t._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),t._v(" "),r("h2",{attrs:{id:"安装程序和便携安装包"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#安装程序和便携安装包"}},[t._v("#")]),t._v(" 安装程序和便携安装包 "),r("Badge",{attrs:{text:"链接已失效",type:"warning"}})],1),t._v(" "),r("p",[t._v("强烈建议您使用 sha256sum 和 GnuPG 工具来校验您从网络上下载的包文件的SHA256哈希值及其GPG签名,确保您的包文件100%正确无篡改。")]),t._v(" "),r("table",[r("thead",[r("tr",[r("th",[t._v("安装包")]),t._v(" "),r("th",[t._v("Windows(64 bit)")]),t._v(" "),r("th",[t._v("Linux(64 bit)")]),t._v(" "),r("th",[t._v("MacOS(64 bit)")])])]),t._v(" "),r("tbody",[r("tr",[r("td",[t._v("安装程序"),r("br"),t._v("(Github.com)")]),t._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.99.1.200824/kangaroo-0.99.1.200824-AMD64.exe",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows"),r("OutboundLink")],1)]),t._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.99.1.200824/kangaroo-0.99.1.200824-1-x86_64.pkg.tar.xz",target:"_blank",rel:"noopener noreferrer"}},[t._v("Arch"),r("OutboundLink")],1)]),t._v(" "),r("td",[t._v("MacOS")])]),t._v(" "),r("tr",[r("td",[t._v("安装包"),r("br"),t._v("(Github.com)")]),t._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.99.1.200824/kangaroo-0.99.1.200824-AMD64.7z",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows"),r("OutboundLink")],1)]),t._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.99.1.200824/kangaroo-0.99.1.200824-arch.tar.gz",target:"_blank",rel:"noopener noreferrer"}},[t._v("Arch"),r("OutboundLink")],1),t._v(" "),r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.99.1.200824/kangaroo-0.99.1.200824-ubuntu.tar.gz",target:"_blank",rel:"noopener noreferrer"}},[t._v("Ubuntu"),r("OutboundLink")],1)]),t._v(" "),r("td",[t._v("MacOS")])]),t._v(" "),r("tr",[r("td",[t._v("哈希及签名"),r("br"),t._v("(Github.com)")]),t._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.99.1.200824/kangaroo-0.99.1.200824.sha256sum",target:"_blank",rel:"noopener noreferrer"}},[t._v("SHA256SUM"),r("OutboundLink")],1)]),t._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.99.1.200824/kangaroo-0.99.1.200824.sha256sum.asc",target:"_blank",rel:"noopener noreferrer"}},[t._v("SHA256SUM.GPG"),r("OutboundLink")],1)]),t._v(" "),r("td")]),t._v(" "),r("tr",[r("td",[t._v("安装程序"),r("br"),t._v("(Gitee.com)")]),t._v(" "),r("td",[r("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/460605/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows"),r("OutboundLink")],1)]),t._v(" "),r("td",[r("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/460602/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("Arch"),r("OutboundLink")],1)]),t._v(" "),r("td",[t._v("MacOS")])]),t._v(" "),r("tr",[r("td",[t._v("安装包"),r("br"),t._v("(Gitee.com)")]),t._v(" "),r("td",[r("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/460612/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows"),r("OutboundLink")],1)]),t._v(" "),r("td",[r("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/460598/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("Arch"),r("OutboundLink")],1),t._v(" "),r("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/460599/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("Ubuntu"),r("OutboundLink")],1)]),t._v(" "),r("td",[t._v("MacOS")])]),t._v(" "),r("tr",[r("td",[t._v("哈希及签名"),r("br"),t._v("(Gitee.com)")]),t._v(" "),r("td",[r("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/460600/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("SHA256SUM"),r("OutboundLink")],1)]),t._v(" "),r("td",[r("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/460601/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("SHA256SUM.GPG"),r("OutboundLink")],1)]),t._v(" "),r("td")])])])])}),[],!1,null,null,null);a.default=e.exports}}]); \ No newline at end of file diff --git a/assets/js/186.86565a55.js b/assets/js/186.86565a55.js new file mode 100644 index 000000000..ff07f9af7 --- /dev/null +++ b/assets/js/186.86565a55.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[186],{778:function(t,r,a){"use strict";a.r(r);var e=a(13),o=Object(e.a)({},(function(){var t=this,r=t.$createElement,a=t._self._c||r;return a("ContentSlotsDistributor",{attrs:{"slot-key":t.$parent.slotKey}},[a("h1",{attrs:{id:"袋鼠数据库工具-v0-99-2-beta"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#袋鼠数据库工具-v0-99-2-beta"}},[t._v("#")]),t._v(" 袋鼠数据库工具 v0.99.2 (Beta)")]),t._v(" "),a("h2",{attrs:{id:"新特性或修复的缺陷列表"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#新特性或修复的缺陷列表"}},[t._v("#")]),t._v(" 新特性或修复的缺陷列表")]),t._v(" "),a("ol",[a("li",[t._v("更新打包脚本: 制作 Mac OS X 安装程序包和便携式安装包")]),t._v(" "),a("li",[t._v("改进工具页面本地化支持")]),t._v(" "),a("li",[t._v("更新中文语言包(zh-CN/zh-TW/zh-HK/zh-SG)")]),t._v(" "),a("li",[t._v("修复: 提示 MySQL server has done away 后,没有自动\\手动重连 #63")]),t._v(" "),a("li",[t._v("修复: 无法加载认证插件 caching_sha2_password #64")]),t._v(" "),a("li",[t._v("修复: 控制台警告消息")])]),t._v(" "),a("div",[a("script2",{attrs:{type:"text/javascript",async:"true",src:"https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"}}),t._v(" "),a("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),t._v(" "),a("script2",{attrs:{type:"text/javascript"}},[t._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),t._v(" "),a("h2",{attrs:{id:"安装程序和便携安装包"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#安装程序和便携安装包"}},[t._v("#")]),t._v(" 安装程序和便携安装包 "),a("Badge",{attrs:{text:"链接已失效",type:"warning"}})],1),t._v(" "),a("p",[t._v("强烈建议您使用 sha256sum 和 GnuPG 工具来校验您从网络上下载的包文件的SHA256哈希值及其GPG签名,确保您的包文件100%正确无篡改。")]),t._v(" "),a("table",[a("thead",[a("tr",[a("th",[t._v("安装包")]),t._v(" "),a("th",[t._v("Windows(64 bit)")]),t._v(" "),a("th",[t._v("Linux(64 bit)")]),t._v(" "),a("th",[t._v("MacOS(64 bit)")])])]),t._v(" "),a("tbody",[a("tr",[a("td",[t._v("安装程序"),a("br"),t._v("(Injdk.cn)")]),t._v(" "),a("td",[a("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo//v0.99.2.200907/kangaroo-0.99.2.200907-AMD64.exe",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows"),a("OutboundLink")],1)]),t._v(" "),a("td",[a("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo//v0.99.2.200907/kangaroo-0.99.2.200907-1-x86_64.pkg.tar.xz",target:"_blank",rel:"noopener noreferrer"}},[t._v("Arch"),a("OutboundLink")],1)]),t._v(" "),a("td",[a("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo//v0.99.2.200907/kangaroo-0.99.2.200907-macos.dmg",target:"_blank",rel:"noopener noreferrer"}},[t._v("MacOS"),a("OutboundLink")],1)])]),t._v(" "),a("tr",[a("td",[t._v("安装包"),a("br"),t._v("(Injdk.cn)")]),t._v(" "),a("td",[a("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo//v0.99.2.200907/kangaroo-0.99.2.200907-AMD64.7z",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows"),a("OutboundLink")],1)]),t._v(" "),a("td",[a("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo//v0.99.2.200907/kangaroo-0.99.2.200907-arch.tar.gz",target:"_blank",rel:"noopener noreferrer"}},[t._v("Arch"),a("OutboundLink")],1),t._v(" "),a("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo//v0.99.2.200907/kangaroo-0.99.2.200907-ubuntu.tar.gz",target:"_blank",rel:"noopener noreferrer"}},[t._v("Ubuntu"),a("OutboundLink")],1)]),t._v(" "),a("td",[a("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo//v0.99.2.200907/kangaroo-0.99.2.200907-macos.tar.gz",target:"_blank",rel:"noopener noreferrer"}},[t._v("MacOS"),a("OutboundLink")],1)])]),t._v(" "),a("tr",[a("td",[t._v("哈希及签名"),a("br"),t._v("(Injdk.cn)")]),t._v(" "),a("td",[a("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo//v0.99.2.200907/kangaroo-0.99.2.200907.sha256sum",target:"_blank",rel:"noopener noreferrer"}},[t._v("SHA256SUM"),a("OutboundLink")],1)]),t._v(" "),a("td",[a("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo//v0.99.2.200907/kangaroo-0.99.2.200907.sha256sum.asc",target:"_blank",rel:"noopener noreferrer"}},[t._v("SHA256SUM.GPG"),a("OutboundLink")],1)]),t._v(" "),a("td")]),t._v(" "),a("tr",[a("td",[t._v("-----------------")]),t._v(" "),a("td",[t._v("-----------------")]),t._v(" "),a("td",[t._v("-----------------")]),t._v(" "),a("td",[t._v("-----------------")])]),t._v(" "),a("tr",[a("td",[t._v("安装程序"),a("br"),t._v("(Github.com)")]),t._v(" "),a("td",[a("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.99.2.200907/kangaroo-0.99.2.200907-AMD64.exe",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows"),a("OutboundLink")],1)]),t._v(" "),a("td",[a("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.99.2.200907/kangaroo-0.99.2.200907-1-x86_64.pkg.tar.xz",target:"_blank",rel:"noopener noreferrer"}},[t._v("Arch"),a("OutboundLink")],1)]),t._v(" "),a("td",[a("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.99.2.200907/kangaroo-0.99.2.200907-macos.dmg",target:"_blank",rel:"noopener noreferrer"}},[t._v("MacOS"),a("OutboundLink")],1)])]),t._v(" "),a("tr",[a("td",[t._v("安装包"),a("br"),t._v("(Github.com)")]),t._v(" "),a("td",[a("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.99.2.200907/kangaroo-0.99.2.200907-AMD64.7z",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows"),a("OutboundLink")],1)]),t._v(" "),a("td",[a("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.99.2.200907/kangaroo-0.99.2.200907-arch.tar.gz",target:"_blank",rel:"noopener noreferrer"}},[t._v("Arch"),a("OutboundLink")],1),t._v(" "),a("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.99.2.200907/kangaroo-0.99.2.200907-ubuntu.tar.gz",target:"_blank",rel:"noopener noreferrer"}},[t._v("Ubuntu"),a("OutboundLink")],1)]),t._v(" "),a("td",[a("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.99.2.200907/kangaroo-0.99.2.200907-macos.tar.gz",target:"_blank",rel:"noopener noreferrer"}},[t._v("MacOS"),a("OutboundLink")],1)])]),t._v(" "),a("tr",[a("td",[t._v("哈希及签名"),a("br"),t._v("(Github.com)")]),t._v(" "),a("td",[a("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.99.2.200907/kangaroo-0.99.2.200907.sha256sum",target:"_blank",rel:"noopener noreferrer"}},[t._v("SHA256SUM"),a("OutboundLink")],1)]),t._v(" "),a("td",[a("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.99.2.200907/kangaroo-0.99.2.200907.sha256sum.asc",target:"_blank",rel:"noopener noreferrer"}},[t._v("SHA256SUM.GPG"),a("OutboundLink")],1)]),t._v(" "),a("td")]),t._v(" "),a("tr",[a("td",[t._v("-----------------")]),t._v(" "),a("td",[t._v("-----------------")]),t._v(" "),a("td",[t._v("-----------------")]),t._v(" "),a("td",[t._v("-----------------")])]),t._v(" "),a("tr",[a("td",[t._v("安装程序"),a("br"),t._v("(Gitee.com)")]),t._v(" "),a("td",[a("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/471659/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows"),a("OutboundLink")],1)]),t._v(" "),a("td",[a("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/471654/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("Arch"),a("OutboundLink")],1)]),t._v(" "),a("td",[a("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/471664/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("MacOS"),a("OutboundLink")],1)])]),t._v(" "),a("tr",[a("td",[t._v("安装包"),a("br"),t._v("(Gitee.com)")]),t._v(" "),a("td",[a("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/471663/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows"),a("OutboundLink")],1)]),t._v(" "),a("td",[a("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/471651/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("Arch"),a("OutboundLink")],1),t._v(" "),a("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/471652/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("Ubuntu"),a("OutboundLink")],1)]),t._v(" "),a("td",[a("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/471666/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("MacOS"),a("OutboundLink")],1)])]),t._v(" "),a("tr",[a("td",[t._v("哈希及签名"),a("br"),t._v("(Gitee.com)")]),t._v(" "),a("td",[a("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/471660/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("SHA256SUM"),a("OutboundLink")],1)]),t._v(" "),a("td",[a("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/471662/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("SHA256SUM.GPG"),a("OutboundLink")],1)]),t._v(" "),a("td")])])]),t._v(" "),a("h2",{attrs:{id:"分享给朋友们"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#分享给朋友们"}},[t._v("#")]),t._v(" 分享给朋友们")]),t._v(" "),a("social-share",{attrs:{networks:["wechat","qq","weibo","douban","facebook","twitter","telegram","line","skype","linkedin"]}})],1)}),[],!1,null,null,null);r.default=o.exports}}]); \ No newline at end of file diff --git a/assets/js/187.d71c9204.js b/assets/js/187.d71c9204.js new file mode 100644 index 000000000..decb0a295 --- /dev/null +++ b/assets/js/187.d71c9204.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[187],{779:function(t,r,a){"use strict";a.r(r);var o=a(13),e=Object(o.a)({},(function(){var t=this,r=t.$createElement,a=t._self._c||r;return a("ContentSlotsDistributor",{attrs:{"slot-key":t.$parent.slotKey}},[a("h1",{attrs:{id:"袋鼠数据库工具-v0-99-3-beta"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#袋鼠数据库工具-v0-99-3-beta"}},[t._v("#")]),t._v(" 袋鼠数据库工具 v0.99.3 (Beta)")]),t._v(" "),a("h2",{attrs:{id:"新特性或修复的缺陷列表"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#新特性或修复的缺陷列表"}},[t._v("#")]),t._v(" 新特性或修复的缺陷列表")]),t._v(" "),a("ol",[a("li",[t._v("重构了底层容器和服务模块")]),t._v(" "),a("li",[t._v("改善了查看数据表和SQL查询性能")]),t._v(" "),a("li",[t._v("更新了数据表格工具栏按钮图标")]),t._v(" "),a("li",[t._v("修复: 无法打开 MariaDB 数据库")])]),t._v(" "),a("div",[a("script2",{attrs:{type:"text/javascript",async:"true",src:"https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"}}),t._v(" "),a("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),t._v(" "),a("script2",{attrs:{type:"text/javascript"}},[t._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),t._v(" "),a("h2",{attrs:{id:"安装程序和便携安装包"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#安装程序和便携安装包"}},[t._v("#")]),t._v(" 安装程序和便携安装包 "),a("Badge",{attrs:{text:"链接已失效",type:"warning"}})],1),t._v(" "),a("p",[t._v("强烈建议您使用 sha256sum 和 GnuPG 工具来校验您从网络上下载的包文件的SHA256哈希值及其GPG签名,确保您的包文件100%正确无篡改。")]),t._v(" "),a("table",[a("thead",[a("tr",[a("th",[t._v("安装包")]),t._v(" "),a("th",[t._v("Windows(64 bit)")]),t._v(" "),a("th",[t._v("Linux(64 bit)")]),t._v(" "),a("th",[t._v("MacOS(64 bit)")])])]),t._v(" "),a("tbody",[a("tr",[a("td",[t._v("安装程序"),a("br"),t._v("(Injdk.cn)")]),t._v(" "),a("td",[a("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo//v0.99.3.200921/kangaroo-0.99.3.200921-AMD64.exe",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows"),a("OutboundLink")],1)]),t._v(" "),a("td",[a("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo//v0.99.3.200921/kangaroo-0.99.3.200921-1-x86_64.pkg.tar.xz",target:"_blank",rel:"noopener noreferrer"}},[t._v("Arch"),a("OutboundLink")],1)]),t._v(" "),a("td",[a("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo//v0.99.3.200921/kangaroo-0.99.3.200921-macos.dmg",target:"_blank",rel:"noopener noreferrer"}},[t._v("MacOS"),a("OutboundLink")],1)])]),t._v(" "),a("tr",[a("td",[t._v("安装包"),a("br"),t._v("(Injdk.cn)")]),t._v(" "),a("td",[a("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo//v0.99.3.200921/kangaroo-0.99.3.200921-AMD64.7z",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows"),a("OutboundLink")],1)]),t._v(" "),a("td",[a("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo//v0.99.3.200921/kangaroo-0.99.3.200921-arch.tar.gz",target:"_blank",rel:"noopener noreferrer"}},[t._v("Arch"),a("OutboundLink")],1),t._v(" "),a("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo//v0.99.3.200921/kangaroo-0.99.3.200921-ubuntu.tar.gz",target:"_blank",rel:"noopener noreferrer"}},[t._v("Ubuntu"),a("OutboundLink")],1)]),t._v(" "),a("td",[a("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo//v0.99.3.200921/kangaroo-0.99.3.200921-macos.tar.gz",target:"_blank",rel:"noopener noreferrer"}},[t._v("MacOS"),a("OutboundLink")],1)])]),t._v(" "),a("tr",[a("td",[t._v("哈希及签名"),a("br"),t._v("(Injdk.cn)")]),t._v(" "),a("td",[a("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo//v0.99.3.200921/kangaroo-0.99.3.200921.sha256sum",target:"_blank",rel:"noopener noreferrer"}},[t._v("SHA256SUM"),a("OutboundLink")],1)]),t._v(" "),a("td",[a("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo//v0.99.3.200921/kangaroo-0.99.3.200921.sha256sum.asc",target:"_blank",rel:"noopener noreferrer"}},[t._v("SHA256SUM.GPG"),a("OutboundLink")],1)]),t._v(" "),a("td")]),t._v(" "),a("tr",[a("td",[t._v("-----------------")]),t._v(" "),a("td",[t._v("-----------------")]),t._v(" "),a("td",[t._v("-----------------")]),t._v(" "),a("td",[t._v("-----------------")])]),t._v(" "),a("tr",[a("td",[t._v("安装程序"),a("br"),t._v("(Github.com)")]),t._v(" "),a("td",[a("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.99.3.200921/kangaroo-0.99.3.200921-AMD64.exe",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows"),a("OutboundLink")],1)]),t._v(" "),a("td",[a("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.99.3.200921/kangaroo-0.99.3.200921-1-x86_64.pkg.tar.xz",target:"_blank",rel:"noopener noreferrer"}},[t._v("Arch"),a("OutboundLink")],1)]),t._v(" "),a("td",[a("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.99.3.200921/kangaroo-0.99.3.200921-macos.dmg",target:"_blank",rel:"noopener noreferrer"}},[t._v("MacOS"),a("OutboundLink")],1)])]),t._v(" "),a("tr",[a("td",[t._v("安装包"),a("br"),t._v("(Github.com)")]),t._v(" "),a("td",[a("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.99.3.200921/kangaroo-0.99.3.200921-AMD64.7z",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows"),a("OutboundLink")],1)]),t._v(" "),a("td",[a("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.99.3.200921/kangaroo-0.99.3.200921-arch.tar.gz",target:"_blank",rel:"noopener noreferrer"}},[t._v("Arch"),a("OutboundLink")],1),t._v(" "),a("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.99.3.200921/kangaroo-0.99.3.200921-ubuntu.tar.gz",target:"_blank",rel:"noopener noreferrer"}},[t._v("Ubuntu"),a("OutboundLink")],1)]),t._v(" "),a("td",[a("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.99.3.200921/kangaroo-0.99.3.200921-macos.tar.gz",target:"_blank",rel:"noopener noreferrer"}},[t._v("MacOS"),a("OutboundLink")],1)])]),t._v(" "),a("tr",[a("td",[t._v("哈希及签名"),a("br"),t._v("(Github.com)")]),t._v(" "),a("td",[a("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.99.3.200921/kangaroo-0.99.3.200921.sha256sum",target:"_blank",rel:"noopener noreferrer"}},[t._v("SHA256SUM"),a("OutboundLink")],1)]),t._v(" "),a("td",[a("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.99.3.200921/kangaroo-0.99.3.200921.sha256sum.asc",target:"_blank",rel:"noopener noreferrer"}},[t._v("SHA256SUM.GPG"),a("OutboundLink")],1)]),t._v(" "),a("td")]),t._v(" "),a("tr",[a("td",[t._v("-----------------")]),t._v(" "),a("td",[t._v("-----------------")]),t._v(" "),a("td",[t._v("-----------------")]),t._v(" "),a("td",[t._v("-----------------")])]),t._v(" "),a("tr",[a("td",[t._v("安装程序"),a("br"),t._v("(Gitee.com)")]),t._v(" "),a("td",[a("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/481984/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows"),a("OutboundLink")],1)]),t._v(" "),a("td",[a("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/481732/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("Arch"),a("OutboundLink")],1)]),t._v(" "),a("td",[a("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/481728/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("MacOS"),a("OutboundLink")],1)])]),t._v(" "),a("tr",[a("td",[t._v("安装包"),a("br"),t._v("(Gitee.com)")]),t._v(" "),a("td",[a("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/481980/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows"),a("OutboundLink")],1)]),t._v(" "),a("td",[a("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/481731/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("Arch"),a("OutboundLink")],1),t._v(" "),a("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/481730/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("Ubuntu"),a("OutboundLink")],1)]),t._v(" "),a("td",[a("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/481727/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("MacOS"),a("OutboundLink")],1)])]),t._v(" "),a("tr",[a("td",[t._v("哈希及签名"),a("br"),t._v("(Gitee.com)")]),t._v(" "),a("td",[a("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/481916/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("SHA256SUM"),a("OutboundLink")],1)]),t._v(" "),a("td",[a("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/481917/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("SHA256SUM.GPG"),a("OutboundLink")],1)]),t._v(" "),a("td")])])]),t._v(" "),a("h2",{attrs:{id:"分享给朋友们"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#分享给朋友们"}},[t._v("#")]),t._v(" 分享给朋友们")]),t._v(" "),a("social-share",{attrs:{networks:["wechat","qq","weibo","douban","facebook","twitter","telegram","line","skype","linkedin"]}})],1)}),[],!1,null,null,null);r.default=e.exports}}]); \ No newline at end of file diff --git a/assets/js/188.c396d9e8.js b/assets/js/188.c396d9e8.js new file mode 100644 index 000000000..b5afee7cf --- /dev/null +++ b/assets/js/188.c396d9e8.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[188],{780:function(a,r,t){"use strict";t.r(r);var o=t(13),e=Object(o.a)({},(function(){var a=this,r=a.$createElement,t=a._self._c||r;return t("ContentSlotsDistributor",{attrs:{"slot-key":a.$parent.slotKey}},[t("h1",{attrs:{id:"袋鼠数据库工具-v1-0-5-beta"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#袋鼠数据库工具-v1-0-5-beta"}},[a._v("#")]),a._v(" 袋鼠数据库工具 v1.0.5 (Beta)")]),a._v(" "),t("h2",{attrs:{id:"新特性或修复的缺陷列表"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#新特性或修复的缺陷列表"}},[a._v("#")]),a._v(" 新特性或修复的缺陷列表")]),a._v(" "),t("ol",[t("li",[a._v("实现单元格值上下文菜单")]),a._v(" "),t("li",[a._v("改进数据库空值显示和编辑支持")]),a._v(" "),t("li",[a._v("改进单元格数据文本视图,支持编码检测和转换")]),a._v(" "),t("li",[a._v("改善中国大陆用户可访问性:显示版本更新列表")]),a._v(" "),t("li",[a._v("提升 MySQL/MariaDB 连接稳定性")]),a._v(" "),t("li",[a._v("修复: 切换单元格数据查看视图错误")]),a._v(" "),t("li",[a._v("修复: 复制数据列长短名错误")])]),a._v(" "),t("div",[t("script2",{attrs:{type:"text/javascript",async:"true",src:"https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"}}),a._v(" "),t("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),a._v(" "),t("script2",{attrs:{type:"text/javascript"}},[a._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),a._v(" "),t("h2",{attrs:{id:"安装程序和便携安装包"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#安装程序和便携安装包"}},[a._v("#")]),a._v(" 安装程序和便携安装包 "),t("Badge",{attrs:{text:"链接已失效",type:"warning"}})],1),a._v(" "),t("p",[a._v("强烈建议您使用 sha256sum 和 GnuPG 工具来校验您从网络上下载的包文件的SHA256哈希值及其GPG签名,确保您的包文件100%正确无篡改。")]),a._v(" "),t("table",[t("thead",[t("tr",[t("th",[a._v("安装包")]),a._v(" "),t("th",[a._v("Windows(64 bit)")]),a._v(" "),t("th",[a._v("Linux(64 bit)")]),a._v(" "),t("th",[a._v("MacOS(64 bit)")])])]),a._v(" "),t("tbody",[t("tr",[t("td",[a._v("安装程序"),t("br"),a._v("(Injdk.cn)")]),a._v(" "),t("td",[t("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.0.5.201019/kangaroo-1.0.5.201019-AMD64.exe",target:"_blank",rel:"noopener noreferrer"}},[a._v("Windows"),t("OutboundLink")],1)]),a._v(" "),t("td",[t("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.0.5.201019/kangaroo-1.0.5.201019-1-x86_64.pkg.tar.xz",target:"_blank",rel:"noopener noreferrer"}},[a._v("Arch"),t("OutboundLink")],1)]),a._v(" "),t("td",[t("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.0.5.201019/kangaroo-1.0.5.201019-macos.dmg",target:"_blank",rel:"noopener noreferrer"}},[a._v("MacOS"),t("OutboundLink")],1)])]),a._v(" "),t("tr",[t("td",[a._v("安装包"),t("br"),a._v("(Injdk.cn)")]),a._v(" "),t("td",[t("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.0.5.201019/kangaroo-1.0.5.201019-AMD64.7z",target:"_blank",rel:"noopener noreferrer"}},[a._v("Windows"),t("OutboundLink")],1)]),a._v(" "),t("td",[t("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.0.5.201019/kangaroo-1.0.5.201019-arch.tar.gz",target:"_blank",rel:"noopener noreferrer"}},[a._v("Arch"),t("OutboundLink")],1),a._v(" "),t("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.0.5.201019/kangaroo-1.0.5.201019-ubuntu.tar.gz",target:"_blank",rel:"noopener noreferrer"}},[a._v("Ubuntu"),t("OutboundLink")],1)]),a._v(" "),t("td",[t("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.0.5.201019/kangaroo-1.0.5.201019-macos.tar.gz",target:"_blank",rel:"noopener noreferrer"}},[a._v("MacOS"),t("OutboundLink")],1)])]),a._v(" "),t("tr",[t("td",[a._v("哈希及签名"),t("br"),a._v("(Injdk.cn)")]),a._v(" "),t("td",[t("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.0.5.201019/kangaroo-1.0.5.201019.sha256sum",target:"_blank",rel:"noopener noreferrer"}},[a._v("SHA256SUM"),t("OutboundLink")],1)]),a._v(" "),t("td",[t("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.0.5.201019/kangaroo-1.0.5.201019.sha256sum.asc",target:"_blank",rel:"noopener noreferrer"}},[a._v("SHA256SUM.GPG"),t("OutboundLink")],1)]),a._v(" "),t("td")]),a._v(" "),t("tr",[t("td",[a._v("-----------------")]),a._v(" "),t("td",[a._v("-----------------")]),a._v(" "),t("td",[a._v("-----------------")]),a._v(" "),t("td",[a._v("-----------------")])]),a._v(" "),t("tr",[t("td",[a._v("安装程序"),t("br"),a._v("(Github.com)")]),a._v(" "),t("td",[t("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.0.5.201019/kangaroo-1.0.5.201019-AMD64.exe",target:"_blank",rel:"noopener noreferrer"}},[a._v("Windows"),t("OutboundLink")],1)]),a._v(" "),t("td",[t("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.0.5.201019/kangaroo-1.0.5.201019-1-x86_64.pkg.tar.xz",target:"_blank",rel:"noopener noreferrer"}},[a._v("Arch"),t("OutboundLink")],1)]),a._v(" "),t("td",[t("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.0.5.201019/kangaroo-1.0.5.201019-macos.dmg",target:"_blank",rel:"noopener noreferrer"}},[a._v("MacOS"),t("OutboundLink")],1)])]),a._v(" "),t("tr",[t("td",[a._v("安装包"),t("br"),a._v("(Github.com)")]),a._v(" "),t("td",[t("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.0.5.201019/kangaroo-1.0.5.201019-AMD64.7z",target:"_blank",rel:"noopener noreferrer"}},[a._v("Windows"),t("OutboundLink")],1)]),a._v(" "),t("td",[t("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.0.5.201019/kangaroo-1.0.5.201019-arch.tar.gz",target:"_blank",rel:"noopener noreferrer"}},[a._v("Arch"),t("OutboundLink")],1),a._v(" "),t("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.0.5.201019/kangaroo-1.0.5.201019-ubuntu.tar.gz",target:"_blank",rel:"noopener noreferrer"}},[a._v("Ubuntu"),t("OutboundLink")],1)]),a._v(" "),t("td",[t("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.0.5.201019/kangaroo-1.0.5.201019-macos.tar.gz",target:"_blank",rel:"noopener noreferrer"}},[a._v("MacOS"),t("OutboundLink")],1)])]),a._v(" "),t("tr",[t("td",[a._v("哈希及签名"),t("br"),a._v("(Github.com)")]),a._v(" "),t("td",[t("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.0.5.201019/kangaroo-1.0.5.201019.sha256sum",target:"_blank",rel:"noopener noreferrer"}},[a._v("SHA256SUM"),t("OutboundLink")],1)]),a._v(" "),t("td",[t("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.0.5.201019/kangaroo-1.0.5.201019.sha256sum.asc",target:"_blank",rel:"noopener noreferrer"}},[a._v("SHA256SUM.GPG"),t("OutboundLink")],1)]),a._v(" "),t("td")])])]),a._v(" "),t("h2",{attrs:{id:"分享给朋友们"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#分享给朋友们"}},[a._v("#")]),a._v(" 分享给朋友们")]),a._v(" "),t("social-share",{attrs:{networks:["wechat","qq","weibo","douban","facebook","twitter","telegram","line","skype","linkedin"]}})],1)}),[],!1,null,null,null);r.default=e.exports}}]); \ No newline at end of file diff --git a/assets/js/189.9ac1cee6.js b/assets/js/189.9ac1cee6.js new file mode 100644 index 000000000..4ead3bc1a --- /dev/null +++ b/assets/js/189.9ac1cee6.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[189],{781:function(a,t,r){"use strict";r.r(t);var o=r(13),e=Object(o.a)({},(function(){var a=this,t=a.$createElement,r=a._self._c||t;return r("ContentSlotsDistributor",{attrs:{"slot-key":a.$parent.slotKey}},[r("h1",{attrs:{id:"袋鼠数据库工具-v1-0-6-beta"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#袋鼠数据库工具-v1-0-6-beta"}},[a._v("#")]),a._v(" 袋鼠数据库工具 v1.0.6 (Beta)")]),a._v(" "),r("h2",{attrs:{id:"新特性或修复的缺陷列表"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#新特性或修复的缺陷列表"}},[a._v("#")]),a._v(" 新特性或修复的缺陷列表")]),a._v(" "),r("ol",[r("li",[a._v("更新域名为 www.datatable.online")])]),a._v(" "),r("div",[r("script2",{attrs:{type:"text/javascript",async:"true",src:"https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"}}),a._v(" "),r("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),a._v(" "),r("script2",{attrs:{type:"text/javascript"}},[a._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),a._v(" "),r("h2",{attrs:{id:"安装程序和便携安装包"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#安装程序和便携安装包"}},[a._v("#")]),a._v(" 安装程序和便携安装包 "),r("Badge",{attrs:{text:"仅支持 Windows",type:"warning"}})],1),a._v(" "),r("p",[a._v("强烈建议您使用 sha256sum 和 GnuPG 工具来校验您从网络上下载的包文件的SHA256哈希值及其GPG签名,确保您的包文件100%正确无篡改。")]),a._v(" "),r("table",[r("thead",[r("tr",[r("th",[a._v("安装包")]),a._v(" "),r("th",[a._v("Windows(64 bit)")]),a._v(" "),r("th",[a._v("Linux(64 bit)")]),a._v(" "),r("th",[a._v("MacOS(64 bit)")])])]),a._v(" "),r("tbody",[r("tr",[r("td",[a._v("安装程序"),r("br"),a._v("(Injdk.cn)")]),a._v(" "),r("td",[r("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.0.6.201109/kangaroo-1.0.6.201109-AMD64.exe",target:"_blank",rel:"noopener noreferrer"}},[a._v("Windows"),r("OutboundLink")],1)]),a._v(" "),r("td",[r("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.0.6.201109/kangaroo-1.0.6.201109-1-x86_64.pkg.tar.xz",target:"_blank",rel:"noopener noreferrer"}},[a._v("Arch"),r("OutboundLink")],1)]),a._v(" "),r("td",[r("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.0.6.201109/kangaroo-1.0.6.201109-macos.dmg",target:"_blank",rel:"noopener noreferrer"}},[a._v("MacOS"),r("OutboundLink")],1)])]),a._v(" "),r("tr",[r("td",[a._v("安装包"),r("br"),a._v("(Injdk.cn)")]),a._v(" "),r("td",[r("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.0.6.201109/kangaroo-1.0.6.201109-AMD64.7z",target:"_blank",rel:"noopener noreferrer"}},[a._v("Windows"),r("OutboundLink")],1)]),a._v(" "),r("td",[r("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.0.6.201109/kangaroo-1.0.6.201109-arch.tar.gz",target:"_blank",rel:"noopener noreferrer"}},[a._v("Arch"),r("OutboundLink")],1),a._v(" "),r("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.0.6.201109/kangaroo-1.0.6.201109-ubuntu.tar.gz",target:"_blank",rel:"noopener noreferrer"}},[a._v("Ubuntu"),r("OutboundLink")],1)]),a._v(" "),r("td",[r("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.0.6.201109/kangaroo-1.0.6.201109-macos.tar.gz",target:"_blank",rel:"noopener noreferrer"}},[a._v("MacOS"),r("OutboundLink")],1)])]),a._v(" "),r("tr",[r("td",[a._v("哈希及签名"),r("br"),a._v("(Injdk.cn)")]),a._v(" "),r("td",[r("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.0.6.201109/kangaroo-1.0.6.201109.sha256sum",target:"_blank",rel:"noopener noreferrer"}},[a._v("SHA256SUM"),r("OutboundLink")],1)]),a._v(" "),r("td",[r("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.0.6.201109/kangaroo-1.0.6.201109.sha256sum.asc",target:"_blank",rel:"noopener noreferrer"}},[a._v("SHA256SUM.GPG"),r("OutboundLink")],1)]),a._v(" "),r("td")]),a._v(" "),r("tr",[r("td",[a._v("-----------------")]),a._v(" "),r("td",[a._v("-----------------")]),a._v(" "),r("td",[a._v("-----------------")]),a._v(" "),r("td",[a._v("-----------------")])]),a._v(" "),r("tr",[r("td",[a._v("安装程序"),r("br"),a._v("(Github.com)")]),a._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.0.6.201109/kangaroo-1.0.6.201109-AMD64.exe",target:"_blank",rel:"noopener noreferrer"}},[a._v("Windows"),r("OutboundLink")],1)]),a._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.0.6.201109/kangaroo-1.0.6.201109-1-x86_64.pkg.tar.xz",target:"_blank",rel:"noopener noreferrer"}},[a._v("Arch"),r("OutboundLink")],1)]),a._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.0.6.201109/kangaroo-1.0.6.201109-macos.dmg",target:"_blank",rel:"noopener noreferrer"}},[a._v("MacOS"),r("OutboundLink")],1)])]),a._v(" "),r("tr",[r("td",[a._v("安装包"),r("br"),a._v("(Github.com)")]),a._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.0.6.201109/kangaroo-1.0.6.201109-AMD64.7z",target:"_blank",rel:"noopener noreferrer"}},[a._v("Windows"),r("OutboundLink")],1)]),a._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.0.6.201109/kangaroo-1.0.6.201109-arch.tar.gz",target:"_blank",rel:"noopener noreferrer"}},[a._v("Arch"),r("OutboundLink")],1),a._v(" "),r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.0.6.201109/kangaroo-1.0.6.201109-ubuntu.tar.gz",target:"_blank",rel:"noopener noreferrer"}},[a._v("Ubuntu"),r("OutboundLink")],1)]),a._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.0.6.201109/kangaroo-1.0.6.201109-macos.tar.gz",target:"_blank",rel:"noopener noreferrer"}},[a._v("MacOS"),r("OutboundLink")],1)])]),a._v(" "),r("tr",[r("td",[a._v("哈希及签名"),r("br"),a._v("(Github.com)")]),a._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.0.6.201109/kangaroo-1.0.6.201109.sha256sum",target:"_blank",rel:"noopener noreferrer"}},[a._v("SHA256SUM"),r("OutboundLink")],1)]),a._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.0.6.201109/kangaroo-1.0.6.201109.sha256sum.asc",target:"_blank",rel:"noopener noreferrer"}},[a._v("SHA256SUM.GPG"),r("OutboundLink")],1)]),a._v(" "),r("td")])])]),a._v(" "),r("h2",{attrs:{id:"分享给朋友们"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#分享给朋友们"}},[a._v("#")]),a._v(" 分享给朋友们")]),a._v(" "),r("social-share",{attrs:{networks:["wechat","qq","weibo","douban","facebook","twitter","telegram","line","skype","linkedin"]}})],1)}),[],!1,null,null,null);t.default=e.exports}}]); \ No newline at end of file diff --git a/assets/js/19.c8af9214.js b/assets/js/19.c8af9214.js new file mode 100644 index 000000000..285d21a6a --- /dev/null +++ b/assets/js/19.c8af9214.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[19],{563:function(t,a,s){t.exports=s.p+"assets/img/installer-windows-portable.126dcdef.png"},728:function(t,a,s){"use strict";s.r(a);var r=s(13),i=Object(r.a)({},(function(){var t=this,a=t.$createElement,r=t._self._c||a;return r("ContentSlotsDistributor",{attrs:{"slot-key":t.$parent.slotKey}},[r("h1",{attrs:{id:"windows-平台安装"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#windows-平台安装"}},[t._v("#")]),t._v(" Windows 平台安装")]),t._v(" "),r("h2",{attrs:{id:"通过官网下载安装"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#通过官网下载安装"}},[t._v("#")]),t._v(" 通过官网下载安装")]),t._v(" "),r("div",{staticClass:"custom-block tip"},[r("p",{staticClass:"custom-block-title"},[t._v("提示")]),t._v(" "),r("p",[t._v("推荐安装方式,支持 Windows 7 / Windows 10 以上版本(x64)")])]),t._v(" "),r("h3",{attrs:{id:"从官网下载软件包"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#从官网下载软件包"}},[t._v("#")]),t._v(" 从官网下载软件包")]),t._v(" "),r("p",[t._v("点击链接下载最新版的袋鼠数据库工具 "),r("a",{attrs:{href:"../download"}},[t._v("下载")])]),t._v(" "),r("h3",{attrs:{id:"安装袋鼠数据库工具"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#安装袋鼠数据库工具"}},[t._v("#")]),t._v(" 安装袋鼠数据库工具")]),t._v(" "),r("p",[t._v("Windows 版提供了两种安装方式:安装程序 和 手工安装,您可以根据您的需要选择安装。")]),t._v(" "),r("h4",{attrs:{id:"安装程序安装"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#安装程序安装"}},[t._v("#")]),t._v(" 安装程序安装")]),t._v(" "),r("ol",[r("li",[t._v("双击安装程序启动安装,根据安装指导完成安装即可,使用默认设置安装方式即可;")]),t._v(" "),r("li",[t._v("检查开始菜单中是否存在袋鼠数据库工具图标")])]),t._v(" "),r("p",[t._v("如果您想要 袋鼠 更具便携性,例如想要安装和运行在 USB 设备上,您需要在安装程序里勾选安装组件 "),r("strong",[t._v("Profile in app directory")]),t._v(" ,如下图所示:\n"),r("img",{attrs:{src:s(563),alt:"Make Kangaroo portable"}})]),t._v(" "),r("h4",{attrs:{id:"压缩包手工安装"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#压缩包手工安装"}},[t._v("#")]),t._v(" 压缩包手工安装")]),t._v(" "),r("ol",[r("li",[t._v("创建存放袋鼠数据库工具的最终安装目录, 例如: C:\\Program Files\\Kangaroo\\")]),t._v(" "),r("li",[t._v("解压袋鼠数据库工具便携式压缩包到该目录中 (7-Zip 7z.exe)")]),t._v(" "),r("li",[t._v("右键拖动 袋鼠数据库工具 执行文件到桌面创建快捷键 (bin\\kangaroo.exe).")]),t._v(" "),r("li",[t._v("双击快捷键启动工具")])]),t._v(" "),r("h2",{attrs:{id:"通过-winget-软件仓库安装"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#通过-winget-软件仓库安装"}},[t._v("#")]),t._v(" 通过 WinGet 软件仓库安装")]),t._v(" "),r("div",{staticClass:"custom-block warning"},[r("p",{staticClass:"custom-block-title"},[t._v("注意")]),t._v(" "),r("p",[t._v("这个方法只支持 Windows 10 以上版本")])]),t._v(" "),r("p",[t._v("下载并安装 WinGet, 然后执行命令完成安装")]),t._v(" "),r("div",{staticClass:"language-cmd extra-class"},[r("pre",{pre:!0,attrs:{class:"language-text"}},[r("code",[t._v("winget install Taozuhong.Kangaroo\n")])])]),r("h2",{attrs:{id:"通过微软公司软件市场安装"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#通过微软公司软件市场安装"}},[t._v("#")]),t._v(" 通过微软公司软件市场安装")]),t._v(" "),r("div",{staticClass:"custom-block warning"},[r("p",{staticClass:"custom-block-title"},[t._v("注意")]),t._v(" "),r("p",[t._v("这个方法只支持 Windows 10 以上版本")])]),t._v(" "),r("p",[t._v("暂未开放支持,请耐心等候")]),t._v(" "),r("Vssue",{attrs:{"issue-id":4,title:t.$title}})],1)}),[],!1,null,null,null);a.default=i.exports}}]); \ No newline at end of file diff --git a/assets/js/190.bd148791.js b/assets/js/190.bd148791.js new file mode 100644 index 000000000..2929112da --- /dev/null +++ b/assets/js/190.bd148791.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[190],{782:function(t,r,a){"use strict";a.r(r);var e=a(13),o=Object(e.a)({},(function(){var t=this,r=t.$createElement,a=t._self._c||r;return a("ContentSlotsDistributor",{attrs:{"slot-key":t.$parent.slotKey}},[a("h1",{attrs:{id:"袋鼠数据库工具-v1-10-1-beta"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#袋鼠数据库工具-v1-10-1-beta"}},[t._v("#")]),t._v(" 袋鼠数据库工具 v1.10.1 (Beta)")]),t._v(" "),a("h2",{attrs:{id:"新特性或修复的缺陷列表"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#新特性或修复的缺陷列表"}},[t._v("#")]),t._v(" 新特性或修复的缺陷列表")]),t._v(" "),a("ol",[a("li",[t._v("新增可视化查询设计器对话框")]),t._v(" "),a("li",[t._v("新增值选择与编辑对话框")]),t._v(" "),a("li",[t._v("数据表格上下文菜单增加图标")]),t._v(" "),a("li",[t._v("增加单元值算法复制功能")]),t._v(" "),a("li",[t._v("增加单元值算法更新功能")]),t._v(" "),a("li",[t._v("改进连接对话框命名与保存机制")]),t._v(" "),a("li",[t._v("改进工具栏按钮布局")]),t._v(" "),a("li",[t._v("改进浮点类型支持")]),t._v(" "),a("li",[t._v("更新中文语言支持")]),t._v(" "),a("li",[t._v("修复: Text 类型无法生成正确的SQL(PostgreSQL)")]),t._v(" "),a("li",[t._v("修复: 设计器勾选框控件无响应")]),t._v(" "),a("li",[t._v("修复: 连接服务器时崩溃(MySQL/PostgreSQL)")]),t._v(" "),a("li",[t._v("修复: 无法拉取视图源代码(PostgreSQL)")]),t._v(" "),a("li",[t._v("修复: MacOS 无法切换为中文")]),t._v(" "),a("li",[t._v("修复: 相同单元格值时生成无效的SQL")])]),t._v(" "),a("div",[a("script2",{attrs:{type:"text/javascript",async:"true",src:"https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"}}),t._v(" "),a("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),t._v(" "),a("script2",{attrs:{type:"text/javascript"}},[t._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),t._v(" "),a("h2",{attrs:{id:"安装程序和便携安装包"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#安装程序和便携安装包"}},[t._v("#")]),t._v(" 安装程序和便携安装包 "),a("Badge",{attrs:{text:"链接已失效",type:"warning"}})],1),t._v(" "),a("p",[t._v("强烈建议您使用 "),a("code",[t._v("sha256sum")]),t._v(" 工具来校验您从网络上下载的包文件的 SHA256 哈希值是否与官方一致,确保您的包文件100%正确无篡改。")]),t._v(" "),a("table",[a("thead",[a("tr",[a("th",[t._v("安装包")]),t._v(" "),a("th",[t._v("Windows")]),t._v(" "),a("th",[t._v("Linux")]),t._v(" "),a("th",[t._v("MacOS")]),t._v(" "),a("th",[t._v("iOS")]),t._v(" "),a("th",[t._v("Android")])])]),t._v(" "),a("tbody",[a("tr",[a("td",[t._v("安装程序"),a("br"),t._v("(Injdk.cn)")]),t._v(" "),a("td",[a("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.10.1.210731/kangaroo-1.10.1.210731-AMD64.exe",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows"),a("OutboundLink")],1)]),t._v(" "),a("td",[a("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.10.1.210731/kangaroo-1.10.1.210731-1-x86_64.pkg.tar.xz",target:"_blank",rel:"noopener noreferrer"}},[t._v("Arch"),a("OutboundLink")],1)]),t._v(" "),a("td",[a("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.10.1.210731/kangaroo-1.10.1.210731-macos.dmg",target:"_blank",rel:"noopener noreferrer"}},[t._v("MacOS"),a("OutboundLink")],1)]),t._v(" "),a("td"),t._v(" "),a("td")]),t._v(" "),a("tr",[a("td",[t._v("安装包"),a("br"),t._v("(Injdk.cn)")]),t._v(" "),a("td",[a("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.10.1.210731/kangaroo-1.10.1.210731-AMD64.7z",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows"),a("OutboundLink")],1)]),t._v(" "),a("td",[a("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.10.1.210731/kangaroo-1.10.1.210731-portable-x86_64.tar.gz",target:"_blank",rel:"noopener noreferrer"}},[t._v("Portable"),a("OutboundLink")],1),t._v(" "),a("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.10.1.210731/kangaroo-1.10.1.210731-arch.tar.gz",target:"_blank",rel:"noopener noreferrer"}},[t._v("Arch"),a("OutboundLink")],1)]),t._v(" "),a("td",[a("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.10.1.210731/kangaroo-1.10.1.210731-macos.tar.gz",target:"_blank",rel:"noopener noreferrer"}},[t._v("MacOS"),a("OutboundLink")],1)]),t._v(" "),a("td"),t._v(" "),a("td")]),t._v(" "),a("tr",[a("td",[t._v("哈希及签名"),a("br"),t._v("(Injdk.cn)")]),t._v(" "),a("td",[a("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.10.1.210731/kangaroo-1.10.1.210731.sha256sum",target:"_blank",rel:"noopener noreferrer"}},[t._v("SHA256SUM"),a("OutboundLink")],1)]),t._v(" "),a("td"),t._v(" "),a("td"),t._v(" "),a("td"),t._v(" "),a("td")]),t._v(" "),a("tr",[a("td",[t._v("-----------------")]),t._v(" "),a("td",[t._v("-----------------")]),t._v(" "),a("td",[t._v("-----------------")]),t._v(" "),a("td",[t._v("-----------------")]),t._v(" "),a("td"),t._v(" "),a("td")]),t._v(" "),a("tr",[a("td",[t._v("安装程序"),a("br"),t._v("(Github.com)")]),t._v(" "),a("td",[a("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.10.1.210731/kangaroo-1.10.1.210731-AMD64.exe",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows"),a("OutboundLink")],1)]),t._v(" "),a("td",[a("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.10.1.210731/kangaroo-1.10.1.210731-1-x86_64.pkg.tar.xz",target:"_blank",rel:"noopener noreferrer"}},[t._v("Arch"),a("OutboundLink")],1)]),t._v(" "),a("td",[a("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.10.1.210731/kangaroo-1.10.1.210731-macos.dmg",target:"_blank",rel:"noopener noreferrer"}},[t._v("MacOS"),a("OutboundLink")],1)]),t._v(" "),a("td"),t._v(" "),a("td")]),t._v(" "),a("tr",[a("td",[t._v("安装包"),a("br"),t._v("(Github.com)")]),t._v(" "),a("td",[a("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.10.1.210731/kangaroo-1.10.1.210731-AMD64.7z",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows"),a("OutboundLink")],1)]),t._v(" "),a("td",[a("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.10.1.210731/kangaroo-1.10.1.210731-portable-x86_64.tar.gz",target:"_blank",rel:"noopener noreferrer"}},[t._v("Portable"),a("OutboundLink")],1),t._v(" "),a("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.10.1.210731/kangaroo-1.10.1.210731-arch.tar.gz",target:"_blank",rel:"noopener noreferrer"}},[t._v("Arch"),a("OutboundLink")],1)]),t._v(" "),a("td",[a("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.10.1.210731/kangaroo-1.10.1.210731-macos.tar.gz",target:"_blank",rel:"noopener noreferrer"}},[t._v("MacOS"),a("OutboundLink")],1)]),t._v(" "),a("td"),t._v(" "),a("td")]),t._v(" "),a("tr",[a("td",[t._v("哈希及签名"),a("br"),t._v("(Github.com)")]),t._v(" "),a("td",[a("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.10.1.210731/kangaroo-1.10.1.210731.sha256sum",target:"_blank",rel:"noopener noreferrer"}},[t._v("SHA256SUM"),a("OutboundLink")],1)]),t._v(" "),a("td"),t._v(" "),a("td"),t._v(" "),a("td"),t._v(" "),a("td")])])]),t._v(" "),a("h2",{attrs:{id:"分享给朋友们"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#分享给朋友们"}},[t._v("#")]),t._v(" 分享给朋友们")]),t._v(" "),a("social-share",{attrs:{networks:["wechat","qq","weibo","douban","facebook","twitter","telegram","line","skype","linkedin"]}})],1)}),[],!1,null,null,null);r.default=o.exports}}]); \ No newline at end of file diff --git a/assets/js/191.ce540545.js b/assets/js/191.ce540545.js new file mode 100644 index 000000000..ce0117207 --- /dev/null +++ b/assets/js/191.ce540545.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[191],{783:function(t,a,r){"use strict";r.r(a);var e=r(13),o=Object(e.a)({},(function(){var t=this,a=t.$createElement,r=t._self._c||a;return r("ContentSlotsDistributor",{attrs:{"slot-key":t.$parent.slotKey}},[r("h1",{attrs:{id:"袋鼠数据库工具-v1-10-2-beta"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#袋鼠数据库工具-v1-10-2-beta"}},[t._v("#")]),t._v(" 袋鼠数据库工具 v1.10.2 (Beta)")]),t._v(" "),r("h2",{attrs:{id:"新特性或修复的缺陷列表"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#新特性或修复的缺陷列表"}},[t._v("#")]),t._v(" 新特性或修复的缺陷列表")]),t._v(" "),r("ol",[r("li",[t._v("删除版本过期时间")]),t._v(" "),r("li",[t._v("Windows: 依赖库升级到最新版")])]),t._v(" "),r("div",[r("script2",{attrs:{type:"text/javascript",async:"true",src:"https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"}}),t._v(" "),r("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),t._v(" "),r("script2",{attrs:{type:"text/javascript"}},[t._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),t._v(" "),r("h2",{attrs:{id:"安装程序和便携安装包"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#安装程序和便携安装包"}},[t._v("#")]),t._v(" 安装程序和便携安装包")]),t._v(" "),r("p",[t._v("强烈建议您使用 "),r("code",[t._v("sha256sum")]),t._v(" 工具来校验您从网络上下载的包文件的 SHA256 哈希值是否与官方一致,确保您的包文件100%正确无篡改。")]),t._v(" "),r("table",[r("thead",[r("tr",[r("th",[t._v("安装包")]),t._v(" "),r("th",[t._v("Windows")]),t._v(" "),r("th",[t._v("Linux")]),t._v(" "),r("th",[t._v("MacOS")]),t._v(" "),r("th",[t._v("iOS")]),t._v(" "),r("th",[t._v("Android")])])]),t._v(" "),r("tbody",[r("tr",[r("td",[t._v("安装程序"),r("br"),t._v("(Injdk.cn)")]),t._v(" "),r("td",[r("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.10.2.220701/kangaroo-1.10.2.220701-AMD64.exe",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows"),r("OutboundLink")],1)]),t._v(" "),r("td",[r("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.10.2.220701/kangaroo-1.10.2.220701-1-x86_64.pkg.tar.zst",target:"_blank",rel:"noopener noreferrer"}},[t._v("Arch"),r("OutboundLink")],1)]),t._v(" "),r("td",[t._v("[MacOS]")]),t._v(" "),r("td"),t._v(" "),r("td")]),t._v(" "),r("tr",[r("td",[t._v("安装包"),r("br"),t._v("(Injdk.cn)")]),t._v(" "),r("td",[r("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.10.2.220701/kangaroo-1.10.2.220701-AMD64.7z",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows"),r("OutboundLink")],1)]),t._v(" "),r("td",[r("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.10.2.220701/kangaroo-1.10.2.220701-arch.tar.gz",target:"_blank",rel:"noopener noreferrer"}},[t._v("Arch"),r("OutboundLink")],1)]),t._v(" "),r("td",[t._v("[MacOS]")]),t._v(" "),r("td"),t._v(" "),r("td")]),t._v(" "),r("tr",[r("td",[t._v("哈希及签名"),r("br"),t._v("(Injdk.cn)")]),t._v(" "),r("td",[r("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.10.2.220701/kangaroo-1.10.2.220701.sha256sum",target:"_blank",rel:"noopener noreferrer"}},[t._v("SHA256SUM"),r("OutboundLink")],1)]),t._v(" "),r("td"),t._v(" "),r("td"),t._v(" "),r("td"),t._v(" "),r("td")]),t._v(" "),r("tr",[r("td",[t._v("-----------------")]),t._v(" "),r("td",[t._v("-----------------")]),t._v(" "),r("td",[t._v("-----------------")]),t._v(" "),r("td",[t._v("-----------------")]),t._v(" "),r("td"),t._v(" "),r("td")]),t._v(" "),r("tr",[r("td",[t._v("安装程序"),r("br"),t._v("(Github.com)")]),t._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.10.2.220701/kangaroo-1.10.2.220701-AMD64.exe",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows"),r("OutboundLink")],1)]),t._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.10.2.220701/kangaroo-1.10.2.220701-1-x86_64.pkg.tar.zst",target:"_blank",rel:"noopener noreferrer"}},[t._v("Arch"),r("OutboundLink")],1)]),t._v(" "),r("td",[t._v("[MacOS]")]),t._v(" "),r("td"),t._v(" "),r("td")]),t._v(" "),r("tr",[r("td",[t._v("安装包"),r("br"),t._v("(Github.com)")]),t._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.10.2.220701/kangaroo-1.10.2.220701-AMD64.7z",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows"),r("OutboundLink")],1)]),t._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.10.2.220701/kangaroo-1.10.2.220701-arch.tar.gz",target:"_blank",rel:"noopener noreferrer"}},[t._v("Arch"),r("OutboundLink")],1)]),t._v(" "),r("td",[t._v("[MacOS]")]),t._v(" "),r("td"),t._v(" "),r("td")]),t._v(" "),r("tr",[r("td",[t._v("哈希及签名"),r("br"),t._v("(Github.com)")]),t._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.10.2.220701/kangaroo-1.10.2.220701.sha256sum",target:"_blank",rel:"noopener noreferrer"}},[t._v("SHA256SUM"),r("OutboundLink")],1)]),t._v(" "),r("td"),t._v(" "),r("td"),t._v(" "),r("td"),t._v(" "),r("td")])])]),t._v(" "),r("h2",{attrs:{id:"分享给朋友们"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#分享给朋友们"}},[t._v("#")]),t._v(" 分享给朋友们")]),t._v(" "),r("social-share",{attrs:{networks:["wechat","qq","weibo","douban","facebook","twitter","telegram","line","skype","linkedin"]}})],1)}),[],!1,null,null,null);a.default=o.exports}}]); \ No newline at end of file diff --git a/assets/js/192.e101fb0e.js b/assets/js/192.e101fb0e.js new file mode 100644 index 000000000..6f6e365be --- /dev/null +++ b/assets/js/192.e101fb0e.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[192],{784:function(t,a,v){"use strict";v.r(a);var e=v(13),_=Object(e.a)({},(function(){var t=this,a=t.$createElement,v=t._self._c||a;return v("ContentSlotsDistributor",{attrs:{"slot-key":t.$parent.slotKey}},[v("h1",{attrs:{id:"袋鼠数据库工具-v1-10-3-beta"}},[v("a",{staticClass:"header-anchor",attrs:{href:"#袋鼠数据库工具-v1-10-3-beta"}},[t._v("#")]),t._v(" 袋鼠数据库工具 v1.10.3 (Beta)")]),t._v(" "),v("h2",{attrs:{id:"新特性或修复的缺陷列表"}},[v("a",{staticClass:"header-anchor",attrs:{href:"#新特性或修复的缺陷列表"}},[t._v("#")]),t._v(" 新特性或修复的缺陷列表")]),t._v(" "),v("ul",[v("li",[t._v("Windows: 依赖库升级到最新版")]),t._v(" "),v("li",[t._v("Fixed: 中文支持问题")])]),t._v(" "),v("div",[v("script2",{attrs:{type:"text/javascript",async:"true",src:"https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"}}),t._v(" "),v("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),t._v(" "),v("script2",{attrs:{type:"text/javascript"}},[t._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),t._v(" "),v("h2",{attrs:{id:"安装程序和便携安装包"}},[v("a",{staticClass:"header-anchor",attrs:{href:"#安装程序和便携安装包"}},[t._v("#")]),t._v(" 安装程序和便携安装包")]),t._v(" "),v("p",[t._v("Windows 用户可通过 winget 工具直接安装袋鼠:"),v("code",[t._v("winget install Taozuhong.Kangaroo")]),t._v(",否则需要自行下载并安装它。")]),t._v(" "),v("h3",{attrs:{id:"windows-平台"}},[v("a",{staticClass:"header-anchor",attrs:{href:"#windows-平台"}},[t._v("#")]),t._v(" Windows 平台")]),t._v(" "),v("table",[v("thead",[v("tr",[v("th",[t._v("Architect")]),t._v(" "),v("th",[t._v("All")]),t._v(" "),v("th",[t._v("SQLite")]),t._v(" "),v("th",[t._v("MariaDB")]),t._v(" "),v("th",[t._v("MySQL")]),t._v(" "),v("th",[t._v("PostgreSQL")])])]),t._v(" "),v("tbody",[v("tr",[v("td",[t._v("x86-64")]),t._v(" "),v("td",[v("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.10.3.230508/kangaroo-1.10.3.230508-AMD64.exe",target:"_blank",rel:"noopener noreferrer"}},[t._v("Github"),v("OutboundLink")],1),t._v(" "),v("br"),t._v(" "),v("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/releases/download/v1.10.3.230508/kangaroo-1.10.3.230508-AMD64.exe",target:"_blank",rel:"noopener noreferrer"}},[t._v("GitEE"),v("OutboundLink")],1),t._v(" "),v("br"),t._v(" "),v("a",{attrs:{href:"https://kangaroo.awaysoft.com/downloads/v1.10.3.230508/kangaroo-1.10.3.230508-AMD64.exe",target:"_blank",rel:"noopener noreferrer"}},[t._v("Server 3"),v("OutboundLink")],1),t._v(" "),v("br"),t._v(" "),v("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.10.3.230508/kangaroo-1.10.3.230508-AMD64.exe",target:"_blank",rel:"noopener noreferrer"}},[t._v("Server 4"),v("OutboundLink")],1)]),t._v(" "),v("td"),t._v(" "),v("td"),t._v(" "),v("td"),t._v(" "),v("td")]),t._v(" "),v("tr",[v("td",[t._v("ARM64")]),t._v(" "),v("td"),t._v(" "),v("td"),t._v(" "),v("td"),t._v(" "),v("td"),t._v(" "),v("td")]),t._v(" "),v("tr",[v("td",[t._v("RISCV64")]),t._v(" "),v("td"),t._v(" "),v("td"),t._v(" "),v("td"),t._v(" "),v("td"),t._v(" "),v("td")])])]),t._v(" "),v("h3",{attrs:{id:"macos-平台"}},[v("a",{staticClass:"header-anchor",attrs:{href:"#macos-平台"}},[t._v("#")]),t._v(" macOS 平台")]),t._v(" "),v("table",[v("thead",[v("tr",[v("th",[t._v("Architect")]),t._v(" "),v("th",[t._v("All")]),t._v(" "),v("th",[t._v("SQLite")]),t._v(" "),v("th",[t._v("MariaDB")]),t._v(" "),v("th",[t._v("MySQL")]),t._v(" "),v("th",[t._v("PostgreSQL")])])]),t._v(" "),v("tbody",[v("tr",[v("td",[t._v("ARM64")]),t._v(" "),v("td"),t._v(" "),v("td"),t._v(" "),v("td"),t._v(" "),v("td"),t._v(" "),v("td")]),t._v(" "),v("tr",[v("td",[t._v("x86-64")]),t._v(" "),v("td"),t._v(" "),v("td"),t._v(" "),v("td"),t._v(" "),v("td"),t._v(" "),v("td")]),t._v(" "),v("tr",[v("td",[t._v("RISCV64")]),t._v(" "),v("td"),t._v(" "),v("td"),t._v(" "),v("td"),t._v(" "),v("td"),t._v(" "),v("td")])])]),t._v(" "),v("h3",{attrs:{id:"linux-平台"}},[v("a",{staticClass:"header-anchor",attrs:{href:"#linux-平台"}},[t._v("#")]),t._v(" Linux 平台")]),t._v(" "),v("table",[v("thead",[v("tr",[v("th",[t._v("Architect")]),t._v(" "),v("th",[t._v("All")]),t._v(" "),v("th",[t._v("SQLite")]),t._v(" "),v("th",[t._v("MariaDB")]),t._v(" "),v("th",[t._v("MySQL")]),t._v(" "),v("th",[t._v("PostgreSQL")])])]),t._v(" "),v("tbody",[v("tr",[v("td",[t._v("x86-64")]),t._v(" "),v("td"),t._v(" "),v("td"),t._v(" "),v("td"),t._v(" "),v("td"),t._v(" "),v("td")]),t._v(" "),v("tr",[v("td",[t._v("ARM64")]),t._v(" "),v("td"),t._v(" "),v("td"),t._v(" "),v("td"),t._v(" "),v("td"),t._v(" "),v("td")]),t._v(" "),v("tr",[v("td",[t._v("RISCV64")]),t._v(" "),v("td"),t._v(" "),v("td"),t._v(" "),v("td"),t._v(" "),v("td"),t._v(" "),v("td")])])]),t._v(" "),v("div",[v("script2",{attrs:{type:"text/javascript",async:"true",src:"https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"}}),t._v(" "),v("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),t._v(" "),v("script2",{attrs:{type:"text/javascript"}},[t._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),t._v(" "),v("h2",{attrs:{id:"sha256sum"}},[v("a",{staticClass:"header-anchor",attrs:{href:"#sha256sum"}},[t._v("#")]),t._v(" SHA256SUM")]),t._v(" "),v("p",[t._v("强烈建议您使用 "),v("code",[t._v("sha256sum")]),t._v("、"),v("code",[t._v("7-Zip")]),t._v(" 等工具,校验您下载的包文件 SHA256 哈希值是否与官方一致,确保您的包文件100%正确无篡改。")]),t._v(" "),v("table",[v("thead",[v("tr",[v("th",[t._v("sha256sum 校验码")]),t._v(" "),v("th",[t._v("袋鼠安装包文件名")])])]),t._v(" "),v("tbody",[v("tr",[v("td",[t._v("d908e5c64c5d4034e8a783961fabc5db2e8f0ea9e00e38668b474214c6286a7c")]),t._v(" "),v("td",[t._v("kangaroo-1.10.3.230508-AMD64.exe")])]),t._v(" "),v("tr",[v("td",[t._v("8a8a5bfa3199b3c4b9e52fb063457e10b1c6e29dd50e9fb34ae390fae42f1bb2")]),t._v(" "),v("td",[t._v("kangaroo-1.10.3.230508-AMD64.7z")])])])]),t._v(" "),v("h2",{attrs:{id:"分享给朋友们"}},[v("a",{staticClass:"header-anchor",attrs:{href:"#分享给朋友们"}},[t._v("#")]),t._v(" 分享给朋友们")]),t._v(" "),v("social-share",{attrs:{networks:["wechat","qq","weibo","douban","facebook","twitter","telegram","line","skype","linkedin"]}})],1)}),[],!1,null,null,null);a.default=_.exports}}]); \ No newline at end of file diff --git a/assets/js/193.6e9ca482.js b/assets/js/193.6e9ca482.js new file mode 100644 index 000000000..3f2d995ce --- /dev/null +++ b/assets/js/193.6e9ca482.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[193],{785:function(r,a,t){"use strict";t.r(a);var o=t(13),e=Object(o.a)({},(function(){var r=this,a=r.$createElement,t=r._self._c||a;return t("ContentSlotsDistributor",{attrs:{"slot-key":r.$parent.slotKey}},[t("h1",{attrs:{id:"袋鼠数据库工具-v1-3-1-dev"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#袋鼠数据库工具-v1-3-1-dev"}},[r._v("#")]),r._v(" 袋鼠数据库工具 v1.3.1 (Dev)")]),r._v(" "),t("h2",{attrs:{id:"新特性或修复的缺陷列表"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#新特性或修复的缺陷列表"}},[r._v("#")]),r._v(" 新特性或修复的缺陷列表")]),r._v(" "),t("ol",[t("li",[r._v("实现十六进制编辑器支持 (已完成)")]),r._v(" "),t("li",[r._v("增加数据图表支持 (前期开发中)")]),r._v(" "),t("li",[r._v("增加数据库连接页新样式 (前期开发中)")])]),r._v(" "),t("div",[t("script2",{attrs:{type:"text/javascript",async:"true",src:"https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"}}),r._v(" "),t("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),r._v(" "),t("script2",{attrs:{type:"text/javascript"}},[r._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),r._v(" "),t("h2",{attrs:{id:"安装程序和便携安装包"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#安装程序和便携安装包"}},[r._v("#")]),r._v(" 安装程序和便携安装包 "),t("Badge",{attrs:{text:"链接已失效",type:"warning"}})],1),r._v(" "),t("p",[r._v("强烈建议您使用 sha256sum 和 GnuPG 工具来校验您从网络上下载的包文件的SHA256哈希值及其GPG签名,确保您的包文件100%正确无篡改。")]),r._v(" "),t("table",[t("thead",[t("tr",[t("th",[r._v("安装包")]),r._v(" "),t("th",[r._v("Windows(64 bit)")]),r._v(" "),t("th",[r._v("Linux(64 bit)")]),r._v(" "),t("th",[r._v("MacOS(64 bit)")])])]),r._v(" "),t("tbody",[t("tr",[t("td",[r._v("安装程序"),t("br"),r._v("(Injdk.cn)")]),r._v(" "),t("td",[t("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.3.1.201102/kangaroo-1.3.1.201102-AMD64.exe",target:"_blank",rel:"noopener noreferrer"}},[r._v("Windows"),t("OutboundLink")],1)]),r._v(" "),t("td",[t("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.3.1.201102/kangaroo-1.3.1.201102-1-x86_64.pkg.tar.xz",target:"_blank",rel:"noopener noreferrer"}},[r._v("Arch"),t("OutboundLink")],1)]),r._v(" "),t("td",[t("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.3.1.201102/kangaroo-1.3.1.201102-macos.dmg",target:"_blank",rel:"noopener noreferrer"}},[r._v("MacOS"),t("OutboundLink")],1)])]),r._v(" "),t("tr",[t("td",[r._v("安装包"),t("br"),r._v("(Injdk.cn)")]),r._v(" "),t("td",[t("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.3.1.201102/kangaroo-1.3.1.201102-AMD64.7z",target:"_blank",rel:"noopener noreferrer"}},[r._v("Windows"),t("OutboundLink")],1)]),r._v(" "),t("td",[t("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.3.1.201102/kangaroo-1.3.1.201102-arch.tar.gz",target:"_blank",rel:"noopener noreferrer"}},[r._v("Arch"),t("OutboundLink")],1),r._v(" "),t("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.3.1.201102/kangaroo-1.3.1.201102-ubuntu.tar.gz",target:"_blank",rel:"noopener noreferrer"}},[r._v("Ubuntu"),t("OutboundLink")],1)]),r._v(" "),t("td",[t("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.3.1.201102/kangaroo-1.3.1.201102-macos.tar.gz",target:"_blank",rel:"noopener noreferrer"}},[r._v("MacOS"),t("OutboundLink")],1)])]),r._v(" "),t("tr",[t("td",[r._v("哈希及签名"),t("br"),r._v("(Injdk.cn)")]),r._v(" "),t("td",[t("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.3.1.201102/kangaroo-1.3.1.201102.sha256sum",target:"_blank",rel:"noopener noreferrer"}},[r._v("SHA256SUM"),t("OutboundLink")],1)]),r._v(" "),t("td",[t("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.3.1.201102/kangaroo-1.3.1.201102.sha256sum.asc",target:"_blank",rel:"noopener noreferrer"}},[r._v("SHA256SUM.GPG"),t("OutboundLink")],1)]),r._v(" "),t("td")]),r._v(" "),t("tr",[t("td",[r._v("-----------------")]),r._v(" "),t("td",[r._v("-----------------")]),r._v(" "),t("td",[r._v("-----------------")]),r._v(" "),t("td",[r._v("-----------------")])]),r._v(" "),t("tr",[t("td",[r._v("安装程序"),t("br"),r._v("(Github.com)")]),r._v(" "),t("td",[t("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.3.1.201102/kangaroo-1.3.1.201102-AMD64.exe",target:"_blank",rel:"noopener noreferrer"}},[r._v("Windows"),t("OutboundLink")],1)]),r._v(" "),t("td",[t("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.3.1.201102/kangaroo-1.3.1.201102-1-x86_64.pkg.tar.xz",target:"_blank",rel:"noopener noreferrer"}},[r._v("Arch"),t("OutboundLink")],1)]),r._v(" "),t("td",[t("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.3.1.201102/kangaroo-1.3.1.201102-macos.dmg",target:"_blank",rel:"noopener noreferrer"}},[r._v("MacOS"),t("OutboundLink")],1)])]),r._v(" "),t("tr",[t("td",[r._v("安装包"),t("br"),r._v("(Github.com)")]),r._v(" "),t("td",[t("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.3.1.201102/kangaroo-1.3.1.201102-AMD64.7z",target:"_blank",rel:"noopener noreferrer"}},[r._v("Windows"),t("OutboundLink")],1)]),r._v(" "),t("td",[t("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.3.1.201102/kangaroo-1.3.1.201102-arch.tar.gz",target:"_blank",rel:"noopener noreferrer"}},[r._v("Arch"),t("OutboundLink")],1),r._v(" "),t("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.3.1.201102/kangaroo-1.3.1.201102-ubuntu.tar.gz",target:"_blank",rel:"noopener noreferrer"}},[r._v("Ubuntu"),t("OutboundLink")],1)]),r._v(" "),t("td",[t("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.3.1.201102/kangaroo-1.3.1.201102-macos.tar.gz",target:"_blank",rel:"noopener noreferrer"}},[r._v("MacOS"),t("OutboundLink")],1)])]),r._v(" "),t("tr",[t("td",[r._v("哈希及签名"),t("br"),r._v("(Github.com)")]),r._v(" "),t("td",[t("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.3.1.201102/kangaroo-1.3.1.201102.sha256sum",target:"_blank",rel:"noopener noreferrer"}},[r._v("SHA256SUM"),t("OutboundLink")],1)]),r._v(" "),t("td",[t("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.3.1.201102/kangaroo-1.3.1.201102.sha256sum.asc",target:"_blank",rel:"noopener noreferrer"}},[r._v("SHA256SUM.GPG"),t("OutboundLink")],1)]),r._v(" "),t("td")])])]),r._v(" "),t("h2",{attrs:{id:"分享给朋友们"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#分享给朋友们"}},[r._v("#")]),r._v(" 分享给朋友们")]),r._v(" "),t("social-share",{attrs:{networks:["wechat","qq","weibo","douban","facebook","twitter","telegram","line","skype","linkedin"]}})],1)}),[],!1,null,null,null);a.default=e.exports}}]); \ No newline at end of file diff --git a/assets/js/194.e16c2571.js b/assets/js/194.e16c2571.js new file mode 100644 index 000000000..462c83991 --- /dev/null +++ b/assets/js/194.e16c2571.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[194],{786:function(r,a,t){"use strict";t.r(a);var o=t(13),e=Object(o.a)({},(function(){var r=this,a=r.$createElement,t=r._self._c||a;return t("ContentSlotsDistributor",{attrs:{"slot-key":r.$parent.slotKey}},[t("h1",{attrs:{id:"袋鼠数据库工具-v1-5-1-dev"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#袋鼠数据库工具-v1-5-1-dev"}},[r._v("#")]),r._v(" 袋鼠数据库工具 v1.5.1 (Dev)")]),r._v(" "),t("h2",{attrs:{id:"新特性或修复的缺陷列表"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#新特性或修复的缺陷列表"}},[r._v("#")]),r._v(" 新特性或修复的缺陷列表")]),r._v(" "),t("ol",[t("li",[r._v("实现十六进制编辑器支持 (已完成)")]),r._v(" "),t("li",[r._v("实现工作空间页样式支持 (已完成)")]),r._v(" "),t("li",[r._v("增加数据图表支持 (前期开发中)")]),r._v(" "),t("li",[r._v("数据库模型化支持 (前期开发中)")])]),r._v(" "),t("div",[t("script2",{attrs:{type:"text/javascript",async:"true",src:"https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"}}),r._v(" "),t("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),r._v(" "),t("script2",{attrs:{type:"text/javascript"}},[r._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),r._v(" "),t("h2",{attrs:{id:"安装程序和便携安装包"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#安装程序和便携安装包"}},[r._v("#")]),r._v(" 安装程序和便携安装包 "),t("Badge",{attrs:{text:"链接已失效",type:"warning"}})],1),r._v(" "),t("p",[r._v("强烈建议您使用 sha256sum 和 GnuPG 工具来校验您从网络上下载的包文件的SHA256哈希值及其GPG签名,确保您的包文件100%正确无篡改。")]),r._v(" "),t("table",[t("thead",[t("tr",[t("th",[r._v("安装包")]),r._v(" "),t("th",[r._v("Windows(64 bit)")]),r._v(" "),t("th",[r._v("Linux(64 bit)")]),r._v(" "),t("th",[r._v("MacOS(64 bit)")])])]),r._v(" "),t("tbody",[t("tr",[t("td",[r._v("安装程序"),t("br"),r._v("(Injdk.cn)")]),r._v(" "),t("td",[t("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.5.1.201231/kangaroo-1.5.1.201231-AMD64.exe",target:"_blank",rel:"noopener noreferrer"}},[r._v("Windows"),t("OutboundLink")],1)]),r._v(" "),t("td",[t("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.5.1.201231/kangaroo-1.5.1.201231-1-x86_64.pkg.tar.xz",target:"_blank",rel:"noopener noreferrer"}},[r._v("Arch"),t("OutboundLink")],1)]),r._v(" "),t("td",[t("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.5.1.201231/kangaroo-1.5.1.201231-macos.dmg",target:"_blank",rel:"noopener noreferrer"}},[r._v("MacOS"),t("OutboundLink")],1)])]),r._v(" "),t("tr",[t("td",[r._v("安装包"),t("br"),r._v("(Injdk.cn)")]),r._v(" "),t("td",[t("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.5.1.201231/kangaroo-1.5.1.201231-AMD64.7z",target:"_blank",rel:"noopener noreferrer"}},[r._v("Windows"),t("OutboundLink")],1)]),r._v(" "),t("td",[t("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.5.1.201231/kangaroo-1.5.1.201231-arch.tar.gz",target:"_blank",rel:"noopener noreferrer"}},[r._v("Arch"),t("OutboundLink")],1),r._v(" "),t("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.5.1.201231/kangaroo-1.5.1.201231-ubuntu.tar.gz",target:"_blank",rel:"noopener noreferrer"}},[r._v("Ubuntu"),t("OutboundLink")],1)]),r._v(" "),t("td",[t("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.5.1.201231/kangaroo-1.5.1.201231-macos.tar.gz",target:"_blank",rel:"noopener noreferrer"}},[r._v("MacOS"),t("OutboundLink")],1)])]),r._v(" "),t("tr",[t("td",[r._v("哈希及签名"),t("br"),r._v("(Injdk.cn)")]),r._v(" "),t("td",[t("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.5.1.201231/kangaroo-1.5.1.201231.sha256sum",target:"_blank",rel:"noopener noreferrer"}},[r._v("SHA256SUM"),t("OutboundLink")],1)]),r._v(" "),t("td",[t("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.5.1.201231/kangaroo-1.5.1.201231.sha256sum.asc",target:"_blank",rel:"noopener noreferrer"}},[r._v("SHA256SUM.GPG"),t("OutboundLink")],1)]),r._v(" "),t("td")]),r._v(" "),t("tr",[t("td",[r._v("-----------------")]),r._v(" "),t("td",[r._v("-----------------")]),r._v(" "),t("td",[r._v("-----------------")]),r._v(" "),t("td",[r._v("-----------------")])]),r._v(" "),t("tr",[t("td",[r._v("安装程序"),t("br"),r._v("(Github.com)")]),r._v(" "),t("td",[t("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.5.1.201231/kangaroo-1.5.1.201231-AMD64.exe",target:"_blank",rel:"noopener noreferrer"}},[r._v("Windows"),t("OutboundLink")],1)]),r._v(" "),t("td",[t("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.5.1.201231/kangaroo-1.5.1.201231-1-x86_64.pkg.tar.xz",target:"_blank",rel:"noopener noreferrer"}},[r._v("Arch"),t("OutboundLink")],1)]),r._v(" "),t("td",[t("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.5.1.201231/kangaroo-1.5.1.201231-macos.dmg",target:"_blank",rel:"noopener noreferrer"}},[r._v("MacOS"),t("OutboundLink")],1)])]),r._v(" "),t("tr",[t("td",[r._v("安装包"),t("br"),r._v("(Github.com)")]),r._v(" "),t("td",[t("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.5.1.201231/kangaroo-1.5.1.201231-AMD64.7z",target:"_blank",rel:"noopener noreferrer"}},[r._v("Windows"),t("OutboundLink")],1)]),r._v(" "),t("td",[t("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.5.1.201231/kangaroo-1.5.1.201231-arch.tar.gz",target:"_blank",rel:"noopener noreferrer"}},[r._v("Arch"),t("OutboundLink")],1),r._v(" "),t("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.5.1.201231/kangaroo-1.5.1.201231-ubuntu.tar.gz",target:"_blank",rel:"noopener noreferrer"}},[r._v("Ubuntu"),t("OutboundLink")],1)]),r._v(" "),t("td",[t("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.5.1.201231/kangaroo-1.5.1.201231-macos.tar.gz",target:"_blank",rel:"noopener noreferrer"}},[r._v("MacOS"),t("OutboundLink")],1)])]),r._v(" "),t("tr",[t("td",[r._v("哈希及签名"),t("br"),r._v("(Github.com)")]),r._v(" "),t("td",[t("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.5.1.201231/kangaroo-1.5.1.201231.sha256sum",target:"_blank",rel:"noopener noreferrer"}},[r._v("SHA256SUM"),t("OutboundLink")],1)]),r._v(" "),t("td",[t("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.5.1.201231/kangaroo-1.5.1.201231.sha256sum.asc",target:"_blank",rel:"noopener noreferrer"}},[r._v("SHA256SUM.GPG"),t("OutboundLink")],1)]),r._v(" "),t("td")])])]),r._v(" "),t("h2",{attrs:{id:"分享给朋友们"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#分享给朋友们"}},[r._v("#")]),r._v(" 分享给朋友们")]),r._v(" "),t("social-share",{attrs:{networks:["wechat","qq","weibo","douban","facebook","twitter","telegram","line","skype","linkedin"]}})],1)}),[],!1,null,null,null);a.default=e.exports}}]); \ No newline at end of file diff --git a/assets/js/195.96226c64.js b/assets/js/195.96226c64.js new file mode 100644 index 000000000..4082611c2 --- /dev/null +++ b/assets/js/195.96226c64.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[195],{787:function(t,a,r){"use strict";r.r(a);var e=r(13),o=Object(e.a)({},(function(){var t=this,a=t.$createElement,r=t._self._c||a;return r("ContentSlotsDistributor",{attrs:{"slot-key":t.$parent.slotKey}},[r("h1",{attrs:{id:"袋鼠数据库工具-v1-6-1-dev"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#袋鼠数据库工具-v1-6-1-dev"}},[t._v("#")]),t._v(" 袋鼠数据库工具 v1.6.1 (Dev)")]),t._v(" "),r("h2",{attrs:{id:"新特性或修复的缺陷列表"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#新特性或修复的缺陷列表"}},[t._v("#")]),t._v(" 新特性或修复的缺陷列表")]),t._v(" "),r("ol",[r("li",[t._v("实现十六进制编辑器支持 (已完成)")]),t._v(" "),r("li",[t._v("实现工作空间页样式支持 (已完成)")]),t._v(" "),r("li",[t._v("增加可独立查看日志支持 (已完成)")]),t._v(" "),r("li",[t._v("增加界面快捷键定制支持 (已完成)")]),t._v(" "),r("li",[t._v("增加数据图表支持 (前期开发中)")]),t._v(" "),r("li",[t._v("数据库模型化支持 (前期开发中)")]),t._v(" "),r("li",[t._v("支持拖放SQLite数据库到连接首页自动创建连接 #76")])]),t._v(" "),r("div",[r("script2",{attrs:{type:"text/javascript",async:"true",src:"https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"}}),t._v(" "),r("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),t._v(" "),r("script2",{attrs:{type:"text/javascript"}},[t._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),t._v(" "),r("h2",{attrs:{id:"安装程序和便携安装包"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#安装程序和便携安装包"}},[t._v("#")]),t._v(" 安装程序和便携安装包 "),r("Badge",{attrs:{text:"链接已失效",type:"warning"}})],1),t._v(" "),r("p",[t._v("强烈建议您使用 sha256sum 和 GnuPG 工具来校验您从网络上下载的包文件的SHA256哈希值及其GPG签名,确保您的包文件100%正确无篡改。")]),t._v(" "),r("table",[r("thead",[r("tr",[r("th",[t._v("安装包")]),t._v(" "),r("th",[t._v("Windows(64 bit)")]),t._v(" "),r("th",[t._v("Linux(64 bit)")]),t._v(" "),r("th",[t._v("MacOS(64 bit)")])])]),t._v(" "),r("tbody",[r("tr",[r("td",[t._v("安装程序"),r("br"),t._v("(Injdk.cn)")]),t._v(" "),r("td",[r("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.6.1.210131/kangaroo-1.6.1.210131-AMD64.exe",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows"),r("OutboundLink")],1)]),t._v(" "),r("td",[r("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.6.1.210131/kangaroo-1.6.1.210131-1-x86_64.pkg.tar.xz",target:"_blank",rel:"noopener noreferrer"}},[t._v("Arch"),r("OutboundLink")],1)]),t._v(" "),r("td",[t._v("[MacOS]")])]),t._v(" "),r("tr",[r("td",[t._v("安装包"),r("br"),t._v("(Injdk.cn)")]),t._v(" "),r("td",[r("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.6.1.210131/kangaroo-1.6.1.210131-AMD64.7z",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows"),r("OutboundLink")],1)]),t._v(" "),r("td",[r("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.6.1.210131/kangaroo-1.6.1.210131-arch.tar.gz",target:"_blank",rel:"noopener noreferrer"}},[t._v("Arch"),r("OutboundLink")],1),t._v(" [Ubuntu]")]),t._v(" "),r("td",[t._v("[MacOS]")])]),t._v(" "),r("tr",[r("td",[t._v("哈希及签名"),r("br"),t._v("(Injdk.cn)")]),t._v(" "),r("td",[r("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.6.1.210131/kangaroo-1.6.1.210131.sha256sum",target:"_blank",rel:"noopener noreferrer"}},[t._v("SHA256SUM"),r("OutboundLink")],1)]),t._v(" "),r("td",[r("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.6.1.210131/kangaroo-1.6.1.210131.sha256sum.asc",target:"_blank",rel:"noopener noreferrer"}},[t._v("SHA256SUM.GPG"),r("OutboundLink")],1)]),t._v(" "),r("td")]),t._v(" "),r("tr",[r("td",[t._v("-----------------")]),t._v(" "),r("td",[t._v("-----------------")]),t._v(" "),r("td",[t._v("-----------------")]),t._v(" "),r("td",[t._v("-----------------")])]),t._v(" "),r("tr",[r("td",[t._v("安装程序"),r("br"),t._v("(Github.com)")]),t._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.6.1.210131/kangaroo-1.6.1.210131-AMD64.exe",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows"),r("OutboundLink")],1)]),t._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.6.1.210131/kangaroo-1.6.1.210131-1-x86_64.pkg.tar.xz",target:"_blank",rel:"noopener noreferrer"}},[t._v("Arch"),r("OutboundLink")],1)]),t._v(" "),r("td",[t._v("[MacOS]")])]),t._v(" "),r("tr",[r("td",[t._v("安装包"),r("br"),t._v("(Github.com)")]),t._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.6.1.210131/kangaroo-1.6.1.210131-AMD64.7z",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows"),r("OutboundLink")],1)]),t._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.6.1.210131/kangaroo-1.6.1.210131-arch.tar.gz",target:"_blank",rel:"noopener noreferrer"}},[t._v("Arch"),r("OutboundLink")],1),t._v(" [Ubuntu]")]),t._v(" "),r("td",[t._v("[MacOS]")])]),t._v(" "),r("tr",[r("td",[t._v("哈希及签名"),r("br"),t._v("(Github.com)")]),t._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.6.1.210131/kangaroo-1.6.1.210131.sha256sum",target:"_blank",rel:"noopener noreferrer"}},[t._v("SHA256SUM"),r("OutboundLink")],1)]),t._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.6.1.210131/kangaroo-1.6.1.210131.sha256sum.asc",target:"_blank",rel:"noopener noreferrer"}},[t._v("SHA256SUM.GPG"),r("OutboundLink")],1)]),t._v(" "),r("td")])])]),t._v(" "),r("h2",{attrs:{id:"分享给朋友们"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#分享给朋友们"}},[t._v("#")]),t._v(" 分享给朋友们")]),t._v(" "),r("social-share",{attrs:{networks:["wechat","qq","weibo","douban","facebook","twitter","telegram","line","skype","linkedin"]}})],1)}),[],!1,null,null,null);a.default=o.exports}}]); \ No newline at end of file diff --git a/assets/js/196.0838147a.js b/assets/js/196.0838147a.js new file mode 100644 index 000000000..243dd47d1 --- /dev/null +++ b/assets/js/196.0838147a.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[196],{788:function(a,r,t){"use strict";t.r(r);var e=t(13),o=Object(e.a)({},(function(){var a=this,r=a.$createElement,t=a._self._c||r;return t("ContentSlotsDistributor",{attrs:{"slot-key":a.$parent.slotKey}},[t("h1",{attrs:{id:"袋鼠数据库工具-v1-7-1-dev"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#袋鼠数据库工具-v1-7-1-dev"}},[a._v("#")]),a._v(" 袋鼠数据库工具 v1.7.1 (Dev)")]),a._v(" "),t("h2",{attrs:{id:"新特性或修复的缺陷列表"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#新特性或修复的缺陷列表"}},[a._v("#")]),a._v(" 新特性或修复的缺陷列表")]),a._v(" "),t("ol",[t("li",[a._v("实现十六进制编辑器支持 (已完成)")]),a._v(" "),t("li",[a._v("实现工作空间页样式支持 (已完成)")]),a._v(" "),t("li",[a._v("增加可独立查看日志支持 (已完成)")]),a._v(" "),t("li",[a._v("增加界面快捷键定制支持 (已完成)")]),a._v(" "),t("li",[a._v("增加数据图表支持 (前期开发中)")]),a._v(" "),t("li",[a._v("数据库模型化支持 (前期开发中)\n"),t("ul",[t("li",[a._v("支持模型文件加载和保存功能")]),a._v(" "),t("li",[a._v("支持模型节点复制与粘贴功能")]),a._v(" "),t("li",[a._v("支持模型节点多选功能")])])]),a._v(" "),t("li",[a._v("支持拖放 SQLite 数据库到连接首页并自动打开 #76")]),a._v(" "),t("li",[a._v("重构应用首页,方便用户操作")]),a._v(" "),t("li",[a._v("支持复制数据为 LUA 表结构")]),a._v(" "),t("li",[a._v("改进对象导航树操作体验")]),a._v(" "),t("li",[a._v("支持保存和恢复工作空间界面布局功能,缓存正在编辑的内容")]),a._v(" "),t("li",[a._v("增加更多语言支持")]),a._v(" "),t("li",[a._v("改进日志支持(日志消息中增加数据库名和连接名)")]),a._v(" "),t("li",[a._v("增加SQL脚本文件监测支持")]),a._v(" "),t("li",[a._v("重构数据表视图支持显示特性工具栏")]),a._v(" "),t("li",[a._v("打开连接时默认展示全部数据表")]),a._v(" "),t("li",[a._v("重构对象树视图改进对象树显示效果")]),a._v(" "),t("li",[a._v("增加快捷键对话框,支持查找和配置快捷键")]),a._v(" "),t("li",[a._v("改进标题栏样式支持,支持颜色和图片背景快捷配置")]),a._v(" "),t("li",[a._v("增加弹出桌面气泡消息支持")]),a._v(" "),t("li",[a._v("增加关闭页面确认对话框支持")]),a._v(" "),t("li",[a._v("重构数据表、设计器、模型页工具栏控件,支持图标和图标文字两种显示方式")]),a._v(" "),t("li",[a._v("修复: Access denied: you need the SUPER privilege(s) for this operation")]),a._v(" "),t("li",[a._v("修复: 删除对象后同步关闭其打开的视图")]),a._v(" "),t("li",[a._v("修复: 重命名对象后同步更新打开的视图")]),a._v(" "),t("li",[a._v("修复:苹果系统无法获得系统名称的错误")])]),a._v(" "),t("div",[t("script2",{attrs:{type:"text/javascript",async:"true",src:"https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"}}),a._v(" "),t("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),a._v(" "),t("script2",{attrs:{type:"text/javascript"}},[a._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),a._v(" "),t("h2",{attrs:{id:"安装程序和便携安装包"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#安装程序和便携安装包"}},[a._v("#")]),a._v(" 安装程序和便携安装包 "),t("Badge",{attrs:{text:"链接已失效",type:"warning"}})],1),a._v(" "),t("p",[a._v("强烈建议您使用 sha256sum 和 GnuPG 工具来校验您从网络上下载的包文件的SHA256哈希值及其GPG签名,确保您的包文件100%正确无篡改。")]),a._v(" "),t("table",[t("thead",[t("tr",[t("th",[a._v("安装包")]),a._v(" "),t("th",[a._v("Windows(64 bit)")]),a._v(" "),t("th",[a._v("Linux(64 bit)")]),a._v(" "),t("th",[a._v("MacOS(64 bit)")])])]),a._v(" "),t("tbody",[t("tr",[t("td",[a._v("安装程序"),t("br"),a._v("(Injdk.cn)")]),a._v(" "),t("td",[t("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.7.1.210331/kangaroo-1.7.1.210331-AMD64.exe",target:"_blank",rel:"noopener noreferrer"}},[a._v("Windows"),t("OutboundLink")],1)]),a._v(" "),t("td",[t("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.7.1.210331/Kangaroo-1.7.1.210331-x86_64.AppImage",target:"_blank",rel:"noopener noreferrer"}},[a._v("AppImage"),t("OutboundLink")],1),a._v(" "),t("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.7.1.210331/kangaroo-1.7.1.210331-1-x86_64.pkg.tar.xz",target:"_blank",rel:"noopener noreferrer"}},[a._v("Arch"),t("OutboundLink")],1)]),a._v(" "),t("td",[t("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/kangaroo/releases/download/v1.7.1.210331/kangaroo-1.7.1.210331-macos.dmg",target:"_blank",rel:"noopener noreferrer"}},[a._v("MacOS"),t("OutboundLink")],1)])]),a._v(" "),t("tr",[t("td",[a._v("安装包"),t("br"),a._v("(Injdk.cn)")]),a._v(" "),t("td",[t("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.7.1.210331/kangaroo-1.7.1.210331-AMD64.7z",target:"_blank",rel:"noopener noreferrer"}},[a._v("Windows"),t("OutboundLink")],1)]),a._v(" "),t("td",[t("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.7.1.210331/kangaroo-1.7.1.210331-portable-x86_64.tar.gz",target:"_blank",rel:"noopener noreferrer"}},[a._v("Portable"),t("OutboundLink")],1),a._v(" "),t("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.7.1.210331/kangaroo-1.7.1.210331-arch.tar.gz",target:"_blank",rel:"noopener noreferrer"}},[a._v("Arch"),t("OutboundLink")],1)]),a._v(" "),t("td",[t("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/kangaroo/releases/download/v1.7.1.210331/kangaroo-1.7.1.210331-macos.tar.gz",target:"_blank",rel:"noopener noreferrer"}},[a._v("MacOS"),t("OutboundLink")],1)])]),a._v(" "),t("tr",[t("td",[a._v("哈希及签名"),t("br"),a._v("(Injdk.cn)")]),a._v(" "),t("td",[t("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.7.1.210331/kangaroo-1.7.1.210331.sha256sum",target:"_blank",rel:"noopener noreferrer"}},[a._v("SHA256SUM"),t("OutboundLink")],1)]),a._v(" "),t("td",[t("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.7.1.210331/kangaroo-1.7.1.210331.sha256sum.asc",target:"_blank",rel:"noopener noreferrer"}},[a._v("SHA256SUM.GPG"),t("OutboundLink")],1)]),a._v(" "),t("td")]),a._v(" "),t("tr",[t("td",[a._v("-----------------")]),a._v(" "),t("td",[a._v("-----------------")]),a._v(" "),t("td",[a._v("-----------------")]),a._v(" "),t("td",[a._v("-----------------")])]),a._v(" "),t("tr",[t("td",[a._v("安装程序"),t("br"),a._v("(Github.com)")]),a._v(" "),t("td",[t("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.7.1.210331/kangaroo-1.7.1.210331-AMD64.exe",target:"_blank",rel:"noopener noreferrer"}},[a._v("Windows"),t("OutboundLink")],1)]),a._v(" "),t("td",[t("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.7.1.210331/Kangaroo-1.7.1.210331-x86_64.AppImage",target:"_blank",rel:"noopener noreferrer"}},[a._v("AppImage"),t("OutboundLink")],1),a._v(" "),t("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.7.1.210331/kangaroo-1.7.1.210331-1-x86_64.pkg.tar.xz",target:"_blank",rel:"noopener noreferrer"}},[a._v("Arch"),t("OutboundLink")],1)]),a._v(" "),t("td",[t("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.7.1.210331/kangaroo-1.7.1.210331-macos.dmg",target:"_blank",rel:"noopener noreferrer"}},[a._v("MacOS"),t("OutboundLink")],1)])]),a._v(" "),t("tr",[t("td",[a._v("安装包"),t("br"),a._v("(Github.com)")]),a._v(" "),t("td",[t("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.7.1.210331/kangaroo-1.7.1.210331-AMD64.7z",target:"_blank",rel:"noopener noreferrer"}},[a._v("Windows"),t("OutboundLink")],1)]),a._v(" "),t("td",[t("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.7.1.210331/kangaroo-1.7.1.210331-portable-x86_64.tar.gz",target:"_blank",rel:"noopener noreferrer"}},[a._v("Portable"),t("OutboundLink")],1),a._v(" "),t("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.7.1.210331/kangaroo-1.7.1.210331-arch.tar.gz",target:"_blank",rel:"noopener noreferrer"}},[a._v("Arch"),t("OutboundLink")],1)]),a._v(" "),t("td",[t("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.7.1.210331/kangaroo-1.7.1.210331-macos.tar.gz",target:"_blank",rel:"noopener noreferrer"}},[a._v("MacOS"),t("OutboundLink")],1)])]),a._v(" "),t("tr",[t("td",[a._v("哈希及签名"),t("br"),a._v("(Github.com)")]),a._v(" "),t("td",[t("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.7.1.210331/kangaroo-1.7.1.210331.sha256sum",target:"_blank",rel:"noopener noreferrer"}},[a._v("SHA256SUM"),t("OutboundLink")],1)]),a._v(" "),t("td",[t("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.7.1.210331/kangaroo-1.7.1.210331.sha256sum.asc",target:"_blank",rel:"noopener noreferrer"}},[a._v("SHA256SUM.GPG"),t("OutboundLink")],1)]),a._v(" "),t("td")])])]),a._v(" "),t("h2",{attrs:{id:"分享给朋友们"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#分享给朋友们"}},[a._v("#")]),a._v(" 分享给朋友们")]),a._v(" "),t("social-share",{attrs:{networks:["wechat","qq","weibo","douban","facebook","twitter","telegram","line","skype","linkedin"]}})],1)}),[],!1,null,null,null);r.default=o.exports}}]); \ No newline at end of file diff --git a/assets/js/197.21518676.js b/assets/js/197.21518676.js new file mode 100644 index 000000000..4a3af3760 --- /dev/null +++ b/assets/js/197.21518676.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[197],{789:function(t,r,a){"use strict";a.r(r);var e=a(13),o=Object(e.a)({},(function(){var t=this,r=t.$createElement,a=t._self._c||r;return a("ContentSlotsDistributor",{attrs:{"slot-key":t.$parent.slotKey}},[a("h1",{attrs:{id:"袋鼠数据库工具-v1-8-1-dev"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#袋鼠数据库工具-v1-8-1-dev"}},[t._v("#")]),t._v(" 袋鼠数据库工具 v1.8.1 (Dev)")]),t._v(" "),a("h2",{attrs:{id:"新特性或修复的缺陷列表"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#新特性或修复的缺陷列表"}},[t._v("#")]),t._v(" 新特性或修复的缺陷列表")]),t._v(" "),a("ol",[a("li",[t._v("改进工具栏支持(默认显示文本和大图标)")]),t._v(" "),a("li",[t._v("改进查询视图标题,支持编号")]),t._v(" "),a("li",[t._v("仅支持同一对象视图的唯一实例;")]),t._v(" "),a("li",[t._v("更新工具分类")]),t._v(" "),a("li",[t._v("模型视图工具栏添加从数据库导入、导出按钮")]),t._v(" "),a("li",[t._v("模型视图支持从数据库导入对象")]),t._v(" "),a("li",[t._v("模型视图支持表和视图节点数据保存和加载")]),t._v(" "),a("li",[t._v("模型视图增加修改及关闭提醒")]),t._v(" "),a("li",[t._v("增加数据库实体选择对话框")]),t._v(" "),a("li",[t._v("改进模型绘制效果(表/视图/图形)")]),t._v(" "),a("li",[t._v("修复: 数据表视图自定义查询页无法显示字段的问题")]),t._v(" "),a("li",[t._v("修复:苹果版本增加插件目录变量定义(支持插件加载)")]),t._v(" "),a("li",[t._v("修复:打开模型文件时模型不可见")])]),t._v(" "),a("div",[a("script2",{attrs:{type:"text/javascript",async:"true",src:"https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"}}),t._v(" "),a("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),t._v(" "),a("script2",{attrs:{type:"text/javascript"}},[t._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),t._v(" "),a("h2",{attrs:{id:"安装程序和便携安装包"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#安装程序和便携安装包"}},[t._v("#")]),t._v(" 安装程序和便携安装包 "),a("Badge",{attrs:{text:"链接已失效",type:"warning"}})],1),t._v(" "),a("p",[t._v("强烈建议您使用 "),a("code",[t._v("sha256sum")]),t._v(" 工具来校验您从网络上下载的包文件的 SHA256 哈希值是否与官方一致,确保您的包文件100%正确无篡改。")]),t._v(" "),a("table",[a("thead",[a("tr",[a("th",[t._v("安装包")]),t._v(" "),a("th",[t._v("Windows(64 bit)")]),t._v(" "),a("th",[t._v("Linux(64 bit)")]),t._v(" "),a("th",[t._v("MacOS(64 bit)")])])]),t._v(" "),a("tbody",[a("tr",[a("td",[t._v("安装程序"),a("br"),t._v("(Injdk.cn)")]),t._v(" "),a("td",[a("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.8.1.210430/kangaroo-1.8.1.210430-AMD64.exe",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows"),a("OutboundLink")],1)]),t._v(" "),a("td",[a("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.8.1.210430/kangaroo-1.8.1.210430-1-x86_64.pkg.tar.xz",target:"_blank",rel:"noopener noreferrer"}},[t._v("Arch"),a("OutboundLink")],1)]),t._v(" "),a("td",[a("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.8.1.210430/kangaroo-1.8.1.210430-macos.dmg",target:"_blank",rel:"noopener noreferrer"}},[t._v("MacOS"),a("OutboundLink")],1)])]),t._v(" "),a("tr",[a("td",[t._v("安装包"),a("br"),t._v("(Injdk.cn)")]),t._v(" "),a("td",[a("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.8.1.210430/kangaroo-1.8.1.210430-AMD64.7z",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows"),a("OutboundLink")],1)]),t._v(" "),a("td",[a("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.8.1.210430/kangaroo-1.8.1.210430-portable-x86_64.tar.gz",target:"_blank",rel:"noopener noreferrer"}},[t._v("Portable"),a("OutboundLink")],1),t._v(" "),a("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.8.1.210430/kangaroo-1.8.1.210430-arch.tar.gz",target:"_blank",rel:"noopener noreferrer"}},[t._v("Arch"),a("OutboundLink")],1)]),t._v(" "),a("td",[a("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.8.1.210430/kangaroo-1.8.1.210430-macos.tar.gz",target:"_blank",rel:"noopener noreferrer"}},[t._v("MacOS"),a("OutboundLink")],1)])]),t._v(" "),a("tr",[a("td",[t._v("哈希及签名"),a("br"),t._v("(Injdk.cn)")]),t._v(" "),a("td",[a("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.8.1.210430/kangaroo-1.8.1.210430.sha256sum",target:"_blank",rel:"noopener noreferrer"}},[t._v("SHA256SUM"),a("OutboundLink")],1)]),t._v(" "),a("td"),t._v(" "),a("td")]),t._v(" "),a("tr",[a("td",[t._v("-----------------")]),t._v(" "),a("td",[t._v("-----------------")]),t._v(" "),a("td",[t._v("-----------------")]),t._v(" "),a("td",[t._v("-----------------")])]),t._v(" "),a("tr",[a("td",[t._v("安装程序"),a("br"),t._v("(Github.com)")]),t._v(" "),a("td",[a("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.8.1.210430/kangaroo-1.8.1.210430-AMD64.exe",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows"),a("OutboundLink")],1)]),t._v(" "),a("td",[a("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.8.1.210430/kangaroo-1.8.1.210430-1-x86_64.pkg.tar.xz",target:"_blank",rel:"noopener noreferrer"}},[t._v("Arch"),a("OutboundLink")],1)]),t._v(" "),a("td",[a("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.8.1.210430/kangaroo-1.8.1.210430-macos.dmg",target:"_blank",rel:"noopener noreferrer"}},[t._v("MacOS"),a("OutboundLink")],1)])]),t._v(" "),a("tr",[a("td",[t._v("安装包"),a("br"),t._v("(Github.com)")]),t._v(" "),a("td",[a("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.8.1.210430/kangaroo-1.8.1.210430-AMD64.7z",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows"),a("OutboundLink")],1)]),t._v(" "),a("td",[a("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.8.1.210430/kangaroo-1.8.1.210430-portable-x86_64.tar.gz",target:"_blank",rel:"noopener noreferrer"}},[t._v("Portable"),a("OutboundLink")],1),t._v(" "),a("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.8.1.210430/kangaroo-1.8.1.210430-arch.tar.gz",target:"_blank",rel:"noopener noreferrer"}},[t._v("Arch"),a("OutboundLink")],1)]),t._v(" "),a("td",[a("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.8.1.210430/kangaroo-1.8.1.210430-macos.tar.gz",target:"_blank",rel:"noopener noreferrer"}},[t._v("MacOS"),a("OutboundLink")],1)])]),t._v(" "),a("tr",[a("td",[t._v("哈希及签名"),a("br"),t._v("(Github.com)")]),t._v(" "),a("td",[a("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.8.1.210430/kangaroo-1.8.1.210430.sha256sum",target:"_blank",rel:"noopener noreferrer"}},[t._v("SHA256SUM"),a("OutboundLink")],1)]),t._v(" "),a("td"),t._v(" "),a("td")])])]),t._v(" "),a("h2",{attrs:{id:"分享给朋友们"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#分享给朋友们"}},[t._v("#")]),t._v(" 分享给朋友们")]),t._v(" "),a("social-share",{attrs:{networks:["wechat","qq","weibo","douban","facebook","twitter","telegram","line","skype","linkedin"]}})],1)}),[],!1,null,null,null);r.default=o.exports}}]); \ No newline at end of file diff --git a/assets/js/198.7a41af97.js b/assets/js/198.7a41af97.js new file mode 100644 index 000000000..a023db78b --- /dev/null +++ b/assets/js/198.7a41af97.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[198],{790:function(a,r,t){"use strict";t.r(r);var e=t(13),o=Object(e.a)({},(function(){var a=this,r=a.$createElement,t=a._self._c||r;return t("ContentSlotsDistributor",{attrs:{"slot-key":a.$parent.slotKey}},[t("h1",{attrs:{id:"袋鼠数据库工具-v1-9-1-dev"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#袋鼠数据库工具-v1-9-1-dev"}},[a._v("#")]),a._v(" 袋鼠数据库工具 v1.9.1 (Dev)")]),a._v(" "),t("h2",{attrs:{id:"新特性或修复的缺陷列表"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#新特性或修复的缺陷列表"}},[a._v("#")]),a._v(" 新特性或修复的缺陷列表")]),a._v(" "),t("ol",[t("li",[a._v("新增数据视图设计器")]),a._v(" "),t("li",[a._v("新增工具栏控件(兼容GTK4)")]),a._v(" "),t("li",[a._v("升级底层库: libgda 6.0.1")]),a._v(" "),t("li",[a._v("改进 MySQL/MariaDB 连接稳定性")]),a._v(" "),t("li",[a._v("重构数据库仓库上下文菜单")]),a._v(" "),t("li",[a._v("SQLite: 实现重命名支持")]),a._v(" "),t("li",[a._v("MySQL/MariaDB: 实现重命名功能")]),a._v(" "),t("li",[a._v("实现数据视图 新建/设计/源码/重命名/转存/复制名称")]),a._v(" "),t("li",[a._v("重构查询视图工具栏")]),a._v(" "),t("li",[a._v("更新中文语言支持(zh-CN/zh-TW/zh-SG/zh-HK)")]),a._v(" "),t("li",[a._v("数据网格添加列重排支持")]),a._v(" "),t("li",[a._v("改进 日期时间/时间戳 类型显示")]),a._v(" "),t("li",[a._v("新增几何坐标类型支持")]),a._v(" "),t("li",[a._v("新增大型文本类型支持")]),a._v(" "),t("li",[a._v("改进 Windows 和 MacOS 平台安装包")]),a._v(" "),t("li",[a._v("修复: 数据库仓库目录树展开图标无响应")]),a._v(" "),t("li",[a._v("修复: MySQL/MariaDB NULL/空字符串显示问题")]),a._v(" "),t("li",[a._v("修复: 模型中无法显示数据视图字段问题")]),a._v(" "),t("li",[a._v("修复: 模型中导入对象时无法自动扩充视图")]),a._v(" "),t("li",[a._v("修复: 无法加载索引条目(MySQL)")]),a._v(" "),t("li",[a._v("修复:无法编辑布尔类型数据")]),a._v(" "),t("li",[a._v("修复:加载智能提示数据时的告警消息")])]),a._v(" "),t("div",[t("script2",{attrs:{type:"text/javascript",async:"true",src:"https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"}}),a._v(" "),t("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),a._v(" "),t("script2",{attrs:{type:"text/javascript"}},[a._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),a._v(" "),t("h2",{attrs:{id:"安装程序和便携安装包"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#安装程序和便携安装包"}},[a._v("#")]),a._v(" 安装程序和便携安装包 "),t("Badge",{attrs:{text:"链接已失效",type:"warning"}})],1),a._v(" "),t("p",[a._v("强烈建议您使用 "),t("code",[a._v("sha256sum")]),a._v(" 工具来校验您从网络上下载的包文件的 SHA256 哈希值是否与官方一致,确保您的包文件100%正确无篡改。")]),a._v(" "),t("table",[t("thead",[t("tr",[t("th",[a._v("安装包")]),a._v(" "),t("th",[a._v("Windows(64 bit)")]),a._v(" "),t("th",[a._v("Linux(64 bit)")]),a._v(" "),t("th",[a._v("MacOS(64 bit)")])])]),a._v(" "),t("tbody",[t("tr",[t("td",[a._v("安装程序"),t("br"),a._v("(Injdk.cn)")]),a._v(" "),t("td",[t("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.9.1.210531/kangaroo-1.9.2.210603-AMD64.exe",target:"_blank",rel:"noopener noreferrer"}},[a._v("Windows"),t("OutboundLink")],1)]),a._v(" "),t("td",[t("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.9.1.210531/kangaroo-1.9.1.210531-1-x86_64.pkg.tar.xz",target:"_blank",rel:"noopener noreferrer"}},[a._v("Arch"),t("OutboundLink")],1)]),a._v(" "),t("td",[t("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.9.1.210531/kangaroo-1.9.1.210531-macos.dmg",target:"_blank",rel:"noopener noreferrer"}},[a._v("MacOS"),t("OutboundLink")],1)])]),a._v(" "),t("tr",[t("td",[a._v("安装包"),t("br"),a._v("(Injdk.cn)")]),a._v(" "),t("td",[t("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.9.1.210531/kangaroo-1.9.2.210603-AMD64.7z",target:"_blank",rel:"noopener noreferrer"}},[a._v("Windows"),t("OutboundLink")],1)]),a._v(" "),t("td",[t("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.9.1.210531/kangaroo-1.9.1.210531-portable-x86_64.tar.gz",target:"_blank",rel:"noopener noreferrer"}},[a._v("Portable"),t("OutboundLink")],1),a._v(" "),t("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.9.1.210531/kangaroo-1.9.1.210531-arch.tar.gz",target:"_blank",rel:"noopener noreferrer"}},[a._v("Arch"),t("OutboundLink")],1)]),a._v(" "),t("td",[t("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.9.1.210531/kangaroo-1.9.1.210531-macos.tar.gz",target:"_blank",rel:"noopener noreferrer"}},[a._v("MacOS"),t("OutboundLink")],1)])]),a._v(" "),t("tr",[t("td",[a._v("哈希及签名"),t("br"),a._v("(Injdk.cn)")]),a._v(" "),t("td",[t("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.9.1.210531/kangaroo-1.9.1.210531.sha256sum",target:"_blank",rel:"noopener noreferrer"}},[a._v("SHA256SUM"),t("OutboundLink")],1)]),a._v(" "),t("td"),a._v(" "),t("td")]),a._v(" "),t("tr",[t("td",[a._v("-----------------")]),a._v(" "),t("td",[a._v("-----------------")]),a._v(" "),t("td",[a._v("-----------------")]),a._v(" "),t("td",[a._v("-----------------")])]),a._v(" "),t("tr",[t("td",[a._v("安装程序"),t("br"),a._v("(Github.com)")]),a._v(" "),t("td",[t("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.9.1.210531/kangaroo-1.9.2.210603-AMD64.exe",target:"_blank",rel:"noopener noreferrer"}},[a._v("Windows"),t("OutboundLink")],1)]),a._v(" "),t("td",[t("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.9.1.210531/kangaroo-1.9.1.210531-1-x86_64.pkg.tar.xz",target:"_blank",rel:"noopener noreferrer"}},[a._v("Arch"),t("OutboundLink")],1)]),a._v(" "),t("td",[t("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.9.1.210531/kangaroo-1.9.1.210531-macos.dmg",target:"_blank",rel:"noopener noreferrer"}},[a._v("MacOS"),t("OutboundLink")],1)])]),a._v(" "),t("tr",[t("td",[a._v("安装包"),t("br"),a._v("(Github.com)")]),a._v(" "),t("td",[t("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.9.1.210531/kangaroo-1.9.2.210603-AMD64.7z",target:"_blank",rel:"noopener noreferrer"}},[a._v("Windows"),t("OutboundLink")],1)]),a._v(" "),t("td",[t("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.9.1.210531/kangaroo-1.9.1.210531-portable-x86_64.tar.gz",target:"_blank",rel:"noopener noreferrer"}},[a._v("Portable"),t("OutboundLink")],1),a._v(" "),t("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.9.1.210531/kangaroo-1.9.1.210531-arch.tar.gz",target:"_blank",rel:"noopener noreferrer"}},[a._v("Arch"),t("OutboundLink")],1)]),a._v(" "),t("td",[t("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.9.1.210531/kangaroo-1.9.1.210531-macos.tar.gz",target:"_blank",rel:"noopener noreferrer"}},[a._v("MacOS"),t("OutboundLink")],1)])]),a._v(" "),t("tr",[t("td",[a._v("哈希及签名"),t("br"),a._v("(Github.com)")]),a._v(" "),t("td",[t("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.9.1.210531/kangaroo-1.9.1.210531.sha256sum",target:"_blank",rel:"noopener noreferrer"}},[a._v("SHA256SUM"),t("OutboundLink")],1)]),a._v(" "),t("td"),a._v(" "),t("td")])])]),a._v(" "),t("h2",{attrs:{id:"分享给朋友们"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#分享给朋友们"}},[a._v("#")]),a._v(" 分享给朋友们")]),a._v(" "),t("social-share",{attrs:{networks:["wechat","qq","weibo","douban","facebook","twitter","telegram","line","skype","linkedin"]}})],1)}),[],!1,null,null,null);r.default=o.exports}}]); \ No newline at end of file diff --git a/assets/js/199.dd7e769b.js b/assets/js/199.dd7e769b.js new file mode 100644 index 000000000..7724e14ee --- /dev/null +++ b/assets/js/199.dd7e769b.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[199],{791:function(t,a,r){"use strict";r.r(a);var v=r(13),_=Object(v.a)({},(function(){var t=this,a=t.$createElement,r=t._self._c||a;return r("ContentSlotsDistributor",{attrs:{"slot-key":t.$parent.slotKey}},[r("h1",{attrs:{id:"袋鼠数据库工具-v1-90-1-dev"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#袋鼠数据库工具-v1-90-1-dev"}},[t._v("#")]),t._v(" 袋鼠数据库工具 v1.90.1 (Dev)")]),t._v(" "),r("p",[t._v("这是一个技术预览版,仅供体验和了解新特性使用,请勿在生产环境中使用它。")]),t._v(" "),r("h2",{attrs:{id:"新特性或修复的缺陷列表"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#新特性或修复的缺陷列表"}},[t._v("#")]),t._v(" 新特性或修复的缺陷列表")]),t._v(" "),r("ol",[r("li",[t._v("升级核心界面库为 GTK4 (GTK3 -> GTK4 4.5)")]),t._v(" "),r("li",[t._v("升级组件界面库为 GTK4 (libhandy -> libadwaita 1.0 beta)")]),t._v(" "),r("li",[t._v("升级编辑器组件为 GtkSoureceView5 (4 -> 5)")]),t._v(" "),r("li",[t._v("合并系统配置对话框和快捷键对话框")]),t._v(" "),r("li",[t._v("编辑器视图添加文档概览图边栏")]),t._v(" "),r("li",[t._v("编辑器视图支持选择配色方案")]),t._v(" "),r("li",[t._v("添加开发模式支持")]),t._v(" "),r("li",[t._v("MySQL: 增加用户和权限管理支持")]),t._v(" "),r("li",[t._v("MariaDB: 增加用户和权限管理支持")]),t._v(" "),r("li",[t._v("PostgreSQL: 增加用户和权限管理支持")])]),t._v(" "),r("div",[r("script2",{attrs:{type:"text/javascript",async:"true",src:"https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"}}),t._v(" "),r("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),t._v(" "),r("script2",{attrs:{type:"text/javascript"}},[t._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),t._v(" "),r("h2",{attrs:{id:"安装程序和便携安装包"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#安装程序和便携安装包"}},[t._v("#")]),t._v(" 安装程序和便携安装包 "),r("Badge",{attrs:{text:"链接已失效",type:"warning"}})],1),t._v(" "),r("p",[t._v("强烈建议您使用 "),r("code",[t._v("sha256sum")]),t._v(" 工具来校验您从网络上下载的包文件的 SHA256 哈希值是否与官方一致,确保您的包文件100%正确无篡改。")]),t._v(" "),r("table",[r("thead",[r("tr",[r("th",[t._v("安装包")]),t._v(" "),r("th",[t._v("Windows")]),t._v(" "),r("th",[t._v("Linux")]),t._v(" "),r("th",[t._v("MacOS")]),t._v(" "),r("th",[t._v("iOS")]),t._v(" "),r("th",[t._v("Android")])])]),t._v(" "),r("tbody",[r("tr",[r("td",[t._v("安装程序"),r("br"),t._v("(Injdk.cn)")]),t._v(" "),r("td",[r("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.90.1.211231/kangaroo-1.90.1.211231-AMD64.exe",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows"),r("OutboundLink")],1)]),t._v(" "),r("td",[t._v("[Arch]")]),t._v(" "),r("td",[t._v("[MacOS]")]),t._v(" "),r("td"),t._v(" "),r("td")]),t._v(" "),r("tr",[r("td",[t._v("安装包"),r("br"),t._v("(Injdk.cn)")]),t._v(" "),r("td",[r("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.90.1.211231/kangaroo-1.90.1.211231-AMD64.7z",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows"),r("OutboundLink")],1)]),t._v(" "),r("td",[t._v("[Arch]")]),t._v(" "),r("td",[t._v("[MacOS]")]),t._v(" "),r("td"),t._v(" "),r("td")]),t._v(" "),r("tr",[r("td",[t._v("哈希及签名"),r("br"),t._v("(Injdk.cn)")]),t._v(" "),r("td",[r("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.90.1.211231/kangaroo-1.90.1.211231.sha256sum",target:"_blank",rel:"noopener noreferrer"}},[t._v("SHA256SUM"),r("OutboundLink")],1)]),t._v(" "),r("td"),t._v(" "),r("td"),t._v(" "),r("td"),t._v(" "),r("td")]),t._v(" "),r("tr",[r("td",[t._v("-----------------")]),t._v(" "),r("td",[t._v("-----------------")]),t._v(" "),r("td",[t._v("-----------------")]),t._v(" "),r("td",[t._v("-----------------")]),t._v(" "),r("td"),t._v(" "),r("td")]),t._v(" "),r("tr",[r("td",[t._v("安装程序"),r("br"),t._v("(Github.com)")]),t._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.90.1.211231/kangaroo-1.90.1.211231-AMD64.exe",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows"),r("OutboundLink")],1)]),t._v(" "),r("td",[t._v("[Arch]")]),t._v(" "),r("td",[t._v("[MacOS]")]),t._v(" "),r("td"),t._v(" "),r("td")]),t._v(" "),r("tr",[r("td",[t._v("安装包"),r("br"),t._v("(Github.com)")]),t._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.90.1.211231/kangaroo-1.90.1.211231-AMD64.7z",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows"),r("OutboundLink")],1)]),t._v(" "),r("td",[t._v("[Arch]")]),t._v(" "),r("td",[t._v("[MacOS]")]),t._v(" "),r("td"),t._v(" "),r("td")]),t._v(" "),r("tr",[r("td",[t._v("哈希及签名"),r("br"),t._v("(Github.com)")]),t._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.90.1.211231/kangaroo-1.90.1.211231.sha256sum",target:"_blank",rel:"noopener noreferrer"}},[t._v("SHA256SUM"),r("OutboundLink")],1)]),t._v(" "),r("td"),t._v(" "),r("td"),t._v(" "),r("td"),t._v(" "),r("td")])])]),t._v(" "),r("h2",{attrs:{id:"分享给朋友们"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#分享给朋友们"}},[t._v("#")]),t._v(" 分享给朋友们")]),t._v(" "),r("social-share",{attrs:{networks:["wechat","qq","weibo","douban","facebook","twitter","telegram","line","skype","linkedin"]}})],1)}),[],!1,null,null,null);a.default=_.exports}}]); \ No newline at end of file diff --git a/assets/js/20.13f7ca94.js b/assets/js/20.13f7ca94.js new file mode 100644 index 000000000..352d3e1c3 --- /dev/null +++ b/assets/js/20.13f7ca94.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[20],{581:function(t,e,s){t.exports=s.p+"assets/img/kangaroo-sqlite-create.d9ad1aba.png"},735:function(t,e,s){"use strict";s.r(e);var a=s(13),i=Object(a.a)({},(function(){var t=this,e=t.$createElement,a=t._self._c||e;return a("ContentSlotsDistributor",{attrs:{"slot-key":t.$parent.slotKey}},[a("h1",{attrs:{id:"sqlite-特色功能"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#sqlite-特色功能"}},[t._v("#")]),t._v(" SQLite 特色功能")]),t._v(" "),a("h2",{attrs:{id:"快速建立数据库连接"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#快速建立数据库连接"}},[t._v("#")]),t._v(" 快速建立数据库连接")]),t._v(" "),a("p",[t._v("把已经存在的 SQLite 数据库文件拖放到连接首页,即可一步到位创建数据库连接")]),t._v(" "),a("h2",{attrs:{id:"如何创建-sqlite-数据库"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#如何创建-sqlite-数据库"}},[t._v("#")]),t._v(" 如何创建 SQLite 数据库")]),t._v(" "),a("p",[t._v("袋鼠 支持两种方式创建 SQLite 数据库文件:")]),t._v(" "),a("ol",[a("li",[a("p",[t._v("在文件目录中新建一个空文件并将扩展名改为 SQLite 文件扩展名(.db/.sqlite),然后拖放到连接首页即可创建数据库连接;")])]),t._v(" "),a("li",[a("p",[t._v("点击新建数据库连接,在弹出的对话框中选择 SQLite 数据库类型,然后点击左边的图标新建数据库,即可完成创建数据库文件;\n"),a("img",{attrs:{src:s(581),alt:"创建SQLite数据库"}})])])]),t._v(" "),a("Vssue",{attrs:{"issue-id":11,title:t.$title}})],1)}),[],!1,null,null,null);e.default=i.exports}}]); \ No newline at end of file diff --git a/assets/js/200.a66e5182.js b/assets/js/200.a66e5182.js new file mode 100644 index 000000000..9b3afcd67 --- /dev/null +++ b/assets/js/200.a66e5182.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[200],{792:function(t,a,r){"use strict";r.r(a);var e=r(13),v=Object(e.a)({},(function(){var t=this,a=t.$createElement,r=t._self._c||a;return r("ContentSlotsDistributor",{attrs:{"slot-key":t.$parent.slotKey}},[r("h1",{attrs:{id:"袋鼠数据库工具-v1-91-1-dev"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#袋鼠数据库工具-v1-91-1-dev"}},[t._v("#")]),t._v(" 袋鼠数据库工具 v1.91.1 (Dev)")]),t._v(" "),r("p",[t._v("这是一个技术预览版,系统稳定性已获得全面提升,可供体验和了解新特性使用,请谨慎生产环境使用。")]),t._v(" "),r("h2",{attrs:{id:"新特性或修复的缺陷列表"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#新特性或修复的缺陷列表"}},[t._v("#")]),t._v(" 新特性或修复的缺陷列表")]),t._v(" "),r("ol",[r("li",[t._v("重构主界面")]),t._v(" "),r("li",[t._v("重构导入导出界面")]),t._v(" "),r("li",[t._v("重构智能提示")]),t._v(" "),r("li",[t._v("重构工具栏")]),t._v(" "),r("li",[t._v("重构可视化SQL构建器")]),t._v(" "),r("li",[t._v("重构过期消息通知功能")]),t._v(" "),r("li",[t._v("改进标题栏皮肤支持")]),t._v(" "),r("li",[t._v("改进对话框样式")]),t._v(" "),r("li",[t._v("拆分设置文件为界面配置文件和用户连接配置文件")]),t._v(" "),r("li",[t._v("移动智能提示文件到用户文档目录")]),t._v(" "),r("li",[t._v("更新中文语言翻译(zh-CN/zh-TW/zh-SG/zh-HK)")]),t._v(" "),r("li",[t._v("修复: 无法打开链接")]),t._v(" "),r("li",[t._v("修复: 生成无效插入SQL(user_name -> user__name)")]),t._v(" "),r("li",[t._v("修复: 模型视图点击崩溃")]),t._v(" "),r("li",[t._v("修复: DSV 格式额外列")]),t._v(" "),r("li",[t._v("修复: 可伸缩图片尺寸问题")]),t._v(" "),r("li",[t._v("修复: 修复控制台警告消息")])]),t._v(" "),r("h2",{attrs:{id:"已知崩溃问题"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#已知崩溃问题"}},[t._v("#")]),t._v(" 已知崩溃问题")]),t._v(" "),r("ol",[r("li",[t._v("PostgreSQL: OID 字段类型字段会导致崩溃(libgda).")])]),t._v(" "),r("div",[r("script2",{attrs:{type:"text/javascript",async:"true",src:"https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"}}),t._v(" "),r("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),t._v(" "),r("script2",{attrs:{type:"text/javascript"}},[t._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),t._v(" "),r("h2",{attrs:{id:"安装程序和便携安装包"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#安装程序和便携安装包"}},[t._v("#")]),t._v(" 安装程序和便携安装包 "),r("Badge",{attrs:{text:"链接已失效",type:"warning"}})],1),t._v(" "),r("p",[t._v("强烈建议您使用 "),r("code",[t._v("sha256sum")]),t._v(" 工具来校验您从网络上下载的包文件的 SHA256 哈希值是否与官方一致,确保您的包文件100%正确无篡改。")]),t._v(" "),r("table",[r("thead",[r("tr",[r("th",[t._v("安装包")]),t._v(" "),r("th",[t._v("Windows")]),t._v(" "),r("th",[t._v("Linux")]),t._v(" "),r("th",[t._v("MacOS")]),t._v(" "),r("th",[t._v("iOS")]),t._v(" "),r("th",[t._v("Android")])])]),t._v(" "),r("tbody",[r("tr",[r("td",[t._v("安装程序"),r("br"),t._v("(Injdk.cn)")]),t._v(" "),r("td",[r("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.91.1.220128/kangaroo-1.91.1.220128-AMD64.exe",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows"),r("OutboundLink")],1)]),t._v(" "),r("td",[r("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.91.1.220128/kangaroo-1.91.1.220128-1-x86_64.pkg.tar.zst",target:"_blank",rel:"noopener noreferrer"}},[t._v("Arch"),r("OutboundLink")],1)]),t._v(" "),r("td",[t._v("[MacOS]")]),t._v(" "),r("td"),t._v(" "),r("td")]),t._v(" "),r("tr",[r("td",[t._v("安装包"),r("br"),t._v("(Injdk.cn)")]),t._v(" "),r("td",[r("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.91.1.220128/kangaroo-1.91.1.220128-AMD64.7z",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows"),r("OutboundLink")],1)]),t._v(" "),r("td",[r("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.91.1.220128/kangaroo-1.91.1.220128-arch.tar.gz",target:"_blank",rel:"noopener noreferrer"}},[t._v("Arch"),r("OutboundLink")],1)]),t._v(" "),r("td",[t._v("[MacOS]")]),t._v(" "),r("td"),t._v(" "),r("td")]),t._v(" "),r("tr",[r("td",[t._v("哈希及签名"),r("br"),t._v("(Injdk.cn)")]),t._v(" "),r("td",[r("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.91.1.220128/kangaroo-1.91.1.220128.sha256sum",target:"_blank",rel:"noopener noreferrer"}},[t._v("SHA256SUM"),r("OutboundLink")],1)]),t._v(" "),r("td"),t._v(" "),r("td"),t._v(" "),r("td"),t._v(" "),r("td")]),t._v(" "),r("tr",[r("td",[t._v("-----------------")]),t._v(" "),r("td",[t._v("-----------------")]),t._v(" "),r("td",[t._v("-----------------")]),t._v(" "),r("td",[t._v("-----------------")]),t._v(" "),r("td"),t._v(" "),r("td")]),t._v(" "),r("tr",[r("td",[t._v("安装程序"),r("br"),t._v("(Github.com)")]),t._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.91.1.220128/kangaroo-1.91.1.220128-AMD64.exe",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows"),r("OutboundLink")],1)]),t._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.91.1.220128/kangaroo-1.91.1.220128-1-x86_64.pkg.tar.zst",target:"_blank",rel:"noopener noreferrer"}},[t._v("Arch"),r("OutboundLink")],1)]),t._v(" "),r("td",[t._v("[MacOS]")]),t._v(" "),r("td"),t._v(" "),r("td")]),t._v(" "),r("tr",[r("td",[t._v("安装包"),r("br"),t._v("(Github.com)")]),t._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.91.1.220128/kangaroo-1.91.1.220128-AMD64.7z",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows"),r("OutboundLink")],1)]),t._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.91.1.220128/kangaroo-1.91.1.220128-arch.tar.gz",target:"_blank",rel:"noopener noreferrer"}},[t._v("Arch"),r("OutboundLink")],1)]),t._v(" "),r("td",[t._v("[MacOS]")]),t._v(" "),r("td"),t._v(" "),r("td")]),t._v(" "),r("tr",[r("td",[t._v("哈希及签名"),r("br"),t._v("(Github.com)")]),t._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.91.1.220128/kangaroo-1.91.1.220128.sha256sum",target:"_blank",rel:"noopener noreferrer"}},[t._v("SHA256SUM"),r("OutboundLink")],1)]),t._v(" "),r("td"),t._v(" "),r("td"),t._v(" "),r("td"),t._v(" "),r("td")])])]),t._v(" "),r("h2",{attrs:{id:"分享给朋友们"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#分享给朋友们"}},[t._v("#")]),t._v(" 分享给朋友们")]),t._v(" "),r("social-share",{attrs:{networks:["wechat","qq","weibo","douban","facebook","twitter","telegram","line","skype","linkedin"]}})],1)}),[],!1,null,null,null);a.default=v.exports}}]); \ No newline at end of file diff --git a/assets/js/201.7dda5f6d.js b/assets/js/201.7dda5f6d.js new file mode 100644 index 000000000..c53b32e15 --- /dev/null +++ b/assets/js/201.7dda5f6d.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[201],{793:function(t,a,r){"use strict";r.r(a);var e=r(13),o=Object(e.a)({},(function(){var t=this,a=t.$createElement,r=t._self._c||a;return r("ContentSlotsDistributor",{attrs:{"slot-key":t.$parent.slotKey}},[r("h1",{attrs:{id:"袋鼠数据库工具-v1-92-1-dev"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#袋鼠数据库工具-v1-92-1-dev"}},[t._v("#")]),t._v(" 袋鼠数据库工具 v1.92.1 (Dev)")]),t._v(" "),r("p",[t._v("这是一个技术预览版,供用户测试和体验新特性,请谨慎生产环境使用。")]),t._v(" "),r("h2",{attrs:{id:"新特性或修复的缺陷列表"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#新特性或修复的缺陷列表"}},[t._v("#")]),t._v(" 新特性或修复的缺陷列表")]),t._v(" "),r("ol",[r("li",[t._v("增加对象浏览器视图(表格化 + 图表化)")]),t._v(" "),r("li",[t._v("对象浏览器添加搜索和排序支持")]),t._v(" "),r("li",[t._v("SQLite: 加载对象数据")]),t._v(" "),r("li",[t._v("MariaDB: 加载对象数据")]),t._v(" "),r("li",[t._v("MySQL: 加载对象数据")]),t._v(" "),r("li",[t._v("PostgreSQL: 加载对象数据")]),t._v(" "),r("li",[t._v("对象浏览器添加对象上下文菜单")]),t._v(" "),r("li",[t._v("实现表和视图的上下文菜单")]),t._v(" "),r("li",[t._v("重构工作空间工具栏")]),t._v(" "),r("li",[t._v("更新数据库对象图标")]),t._v(" "),r("li",[t._v("更新中文语言支持")])]),t._v(" "),r("div",[r("script2",{attrs:{type:"text/javascript",async:"true",src:"https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"}}),t._v(" "),r("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),t._v(" "),r("script2",{attrs:{type:"text/javascript"}},[t._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),t._v(" "),r("h2",{attrs:{id:"安装程序和便携安装包"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#安装程序和便携安装包"}},[t._v("#")]),t._v(" 安装程序和便携安装包 "),r("Badge",{attrs:{text:"链接已失效",type:"warning"}})],1),t._v(" "),r("p",[t._v("强烈建议您使用 "),r("code",[t._v("sha256sum")]),t._v(" 工具来校验您从网络上下载的包文件的 SHA256 哈希值是否与官方一致,确保您的包文件100%正确无篡改。")]),t._v(" "),r("table",[r("thead",[r("tr",[r("th",[t._v("安装包")]),t._v(" "),r("th",[t._v("Windows")]),t._v(" "),r("th",[t._v("Linux")]),t._v(" "),r("th",[t._v("MacOS")]),t._v(" "),r("th",[t._v("iOS")]),t._v(" "),r("th",[t._v("Android")])])]),t._v(" "),r("tbody",[r("tr",[r("td",[t._v("安装程序"),r("br"),t._v("(Injdk.cn)")]),t._v(" "),r("td",[r("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.92.1.220228/kangaroo-1.92.1.220228-AMD64.exe",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows"),r("OutboundLink")],1)]),t._v(" "),r("td",[r("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.92.1.220228/kangaroo-1.92.1.220228-1-x86_64.pkg.tar.zst",target:"_blank",rel:"noopener noreferrer"}},[t._v("Arch"),r("OutboundLink")],1)]),t._v(" "),r("td",[t._v("[MacOS]")]),t._v(" "),r("td"),t._v(" "),r("td")]),t._v(" "),r("tr",[r("td",[t._v("安装包"),r("br"),t._v("(Injdk.cn)")]),t._v(" "),r("td",[r("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.92.1.220228/kangaroo-1.92.1.220228-AMD64.7z",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows"),r("OutboundLink")],1)]),t._v(" "),r("td",[r("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.92.1.220228/kangaroo-1.92.1.220228-arch.tar.gz",target:"_blank",rel:"noopener noreferrer"}},[t._v("Arch"),r("OutboundLink")],1)]),t._v(" "),r("td",[t._v("[MacOS]")]),t._v(" "),r("td"),t._v(" "),r("td")]),t._v(" "),r("tr",[r("td",[t._v("哈希及签名"),r("br"),t._v("(Injdk.cn)")]),t._v(" "),r("td",[r("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.92.1.220228/kangaroo-1.92.1.220228.sha256sum",target:"_blank",rel:"noopener noreferrer"}},[t._v("SHA256SUM"),r("OutboundLink")],1)]),t._v(" "),r("td"),t._v(" "),r("td"),t._v(" "),r("td"),t._v(" "),r("td")]),t._v(" "),r("tr",[r("td",[t._v("-----------------")]),t._v(" "),r("td",[t._v("-----------------")]),t._v(" "),r("td",[t._v("-----------------")]),t._v(" "),r("td",[t._v("-----------------")]),t._v(" "),r("td"),t._v(" "),r("td")]),t._v(" "),r("tr",[r("td",[t._v("安装程序"),r("br"),t._v("(Github.com)")]),t._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.92.1.220228/kangaroo-1.92.1.220228-AMD64.exe",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows"),r("OutboundLink")],1)]),t._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.92.1.220228/kangaroo-1.92.1.220228-1-x86_64.pkg.tar.zst",target:"_blank",rel:"noopener noreferrer"}},[t._v("Arch"),r("OutboundLink")],1)]),t._v(" "),r("td",[t._v("[MacOS]")]),t._v(" "),r("td"),t._v(" "),r("td")]),t._v(" "),r("tr",[r("td",[t._v("安装包"),r("br"),t._v("(Github.com)")]),t._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.92.1.220228/kangaroo-1.92.1.220228-AMD64.7z",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows"),r("OutboundLink")],1)]),t._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.92.1.220228/kangaroo-1.92.1.220228-arch.tar.gz",target:"_blank",rel:"noopener noreferrer"}},[t._v("Arch"),r("OutboundLink")],1)]),t._v(" "),r("td",[t._v("[MacOS]")]),t._v(" "),r("td"),t._v(" "),r("td")]),t._v(" "),r("tr",[r("td",[t._v("哈希及签名"),r("br"),t._v("(Github.com)")]),t._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.92.1.220228/kangaroo-1.92.1.220228.sha256sum",target:"_blank",rel:"noopener noreferrer"}},[t._v("SHA256SUM"),r("OutboundLink")],1)]),t._v(" "),r("td"),t._v(" "),r("td"),t._v(" "),r("td"),t._v(" "),r("td")])])]),t._v(" "),r("h2",{attrs:{id:"分享给朋友们"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#分享给朋友们"}},[t._v("#")]),t._v(" 分享给朋友们")]),t._v(" "),r("social-share",{attrs:{networks:["wechat","qq","weibo","douban","facebook","twitter","telegram","line","skype","linkedin"]}})],1)}),[],!1,null,null,null);a.default=o.exports}}]); \ No newline at end of file diff --git a/assets/js/202.ca9120d8.js b/assets/js/202.ca9120d8.js new file mode 100644 index 000000000..2e5a8db0d --- /dev/null +++ b/assets/js/202.ca9120d8.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[202],{794:function(t,a,r){"use strict";r.r(a);var v=r(13),_=Object(v.a)({},(function(){var t=this,a=t.$createElement,r=t._self._c||a;return r("ContentSlotsDistributor",{attrs:{"slot-key":t.$parent.slotKey}},[r("h1",{attrs:{id:"袋鼠数据库工具-v1-93-1-dev"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#袋鼠数据库工具-v1-93-1-dev"}},[t._v("#")]),t._v(" 袋鼠数据库工具 v1.93.1 (Dev)")]),t._v(" "),r("p",[t._v("这是一个技术预览版,供用户测试和体验新特性,请谨慎生产环境使用。")]),t._v(" "),r("h2",{attrs:{id:"新特性或修复的缺陷列表"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#新特性或修复的缺陷列表"}},[t._v("#")]),t._v(" 新特性或修复的缺陷列表")]),t._v(" "),r("ul",[r("li",[t._v("SQLite: 增加索引设计器支持")]),t._v(" "),r("li",[t._v("SQLite: 增加触发器设计支持")]),t._v(" "),r("li",[t._v("SQLite: 重构视图设计器并改进设计支持")]),t._v(" "),r("li",[t._v("MySQL: 对象浏览视图增加索引对象支持")]),t._v(" "),r("li",[t._v("MySQL: 对象浏览视图增加触发器对象支持")]),t._v(" "),r("li",[t._v("MySQL: 增加索引设计器支持")]),t._v(" "),r("li",[t._v("MySQL: 增加触发器设计支持")]),t._v(" "),r("li",[t._v("MySQL: 重构视图设计器并改进设计支持")]),t._v(" "),r("li",[t._v("MariaDB: 对象浏览视图增加索引对象支持")]),t._v(" "),r("li",[t._v("MariaDB: 对象浏览视图增加触发器对象支持")]),t._v(" "),r("li",[t._v("MariaDB: 增加索引设计器支持")]),t._v(" "),r("li",[t._v("MariaDB: 增加触发器设计支持")]),t._v(" "),r("li",[t._v("MariaDB: 重构视图设计器并改进设计支持")]),t._v(" "),r("li",[t._v("PostgreSQL: 增加索引设计器支持")]),t._v(" "),r("li",[t._v("PostgreSQL: 增加触发器设计支持")]),t._v(" "),r("li",[t._v("PostgreSQL: 重构视图设计器并改进设计支持")]),t._v(" "),r("li",[t._v("增加连接详情页")]),t._v(" "),r("li",[t._v("更新数据库仓库对象树图标")]),t._v(" "),r("li",[t._v("更新中文语言支持")]),t._v(" "),r("li",[t._v("重构起始页,增加连接详情页")]),t._v(" "),r("li",[t._v("重构数据库仓库视图")]),t._v(" "),r("li",[t._v("修复: 视图设计器恢复问题")]),t._v(" "),r("li",[t._v("修复: 工作空间工具栏菜单加载问题")]),t._v(" "),r("li",[t._v("修复: 下拉列表控件活动id为空时崩溃问题")]),t._v(" "),r("li",[t._v("修复: 编辑器有选中文本时输入错误问题")]),t._v(" "),r("li",[t._v("修复: 无法加载 MySQL/MariaDB 视图信息")]),t._v(" "),r("li",[t._v("修复: PostgreSQL连接的数据库名为空时崩溃")])]),t._v(" "),r("div",[r("script2",{attrs:{type:"text/javascript",async:"true",src:"https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"}}),t._v(" "),r("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),t._v(" "),r("script2",{attrs:{type:"text/javascript"}},[t._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),t._v(" "),r("h2",{attrs:{id:"安装程序和便携安装包"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#安装程序和便携安装包"}},[t._v("#")]),t._v(" 安装程序和便携安装包 "),r("Badge",{attrs:{text:"链接已失效",type:"warning"}})],1),t._v(" "),r("p",[t._v("强烈建议您使用 "),r("code",[t._v("sha256sum")]),t._v(" 工具来校验您从网络上下载的包文件的 SHA256 哈希值是否与官方一致,确保您的包文件100%正确无篡改。")]),t._v(" "),r("table",[r("thead",[r("tr",[r("th",[t._v("安装包")]),t._v(" "),r("th",[t._v("Windows")]),t._v(" "),r("th",[t._v("Linux")]),t._v(" "),r("th",[t._v("MacOS")]),t._v(" "),r("th",[t._v("iOS")]),t._v(" "),r("th",[t._v("Android")])])]),t._v(" "),r("tbody",[r("tr",[r("td",[t._v("安装程序"),r("br"),t._v("(Injdk.cn)")]),t._v(" "),r("td",[r("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.93.1.220401/kangaroo-1.93.1.220401-AMD64.exe",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows"),r("OutboundLink")],1)]),t._v(" "),r("td",[r("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.93.1.220401/kangaroo-1.93.1.220401-1-x86_64.pkg.tar.zst",target:"_blank",rel:"noopener noreferrer"}},[t._v("Arch"),r("OutboundLink")],1)]),t._v(" "),r("td",[t._v("[MacOS]")]),t._v(" "),r("td"),t._v(" "),r("td")]),t._v(" "),r("tr",[r("td",[t._v("安装包"),r("br"),t._v("(Injdk.cn)")]),t._v(" "),r("td",[r("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.93.1.220401/kangaroo-1.93.1.220401-AMD64.7z",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows"),r("OutboundLink")],1)]),t._v(" "),r("td",[r("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.93.1.220401/kangaroo-1.93.1.220401-arch.tar.gz",target:"_blank",rel:"noopener noreferrer"}},[t._v("Arch"),r("OutboundLink")],1)]),t._v(" "),r("td",[t._v("[MacOS]")]),t._v(" "),r("td"),t._v(" "),r("td")]),t._v(" "),r("tr",[r("td",[t._v("哈希及签名"),r("br"),t._v("(Injdk.cn)")]),t._v(" "),r("td",[r("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.93.1.220401/kangaroo-1.93.1.220401.sha256sum",target:"_blank",rel:"noopener noreferrer"}},[t._v("SHA256SUM"),r("OutboundLink")],1)]),t._v(" "),r("td"),t._v(" "),r("td"),t._v(" "),r("td"),t._v(" "),r("td")]),t._v(" "),r("tr",[r("td",[t._v("-----------------")]),t._v(" "),r("td",[t._v("-----------------")]),t._v(" "),r("td",[t._v("-----------------")]),t._v(" "),r("td",[t._v("-----------------")]),t._v(" "),r("td"),t._v(" "),r("td")]),t._v(" "),r("tr",[r("td",[t._v("安装程序"),r("br"),t._v("(Github.com)")]),t._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.93.1.220401/kangaroo-1.93.1.220401-AMD64.exe",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows"),r("OutboundLink")],1)]),t._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.93.1.220401/kangaroo-1.93.1.220401-1-x86_64.pkg.tar.zst",target:"_blank",rel:"noopener noreferrer"}},[t._v("Arch"),r("OutboundLink")],1)]),t._v(" "),r("td",[t._v("[MacOS]")]),t._v(" "),r("td"),t._v(" "),r("td")]),t._v(" "),r("tr",[r("td",[t._v("安装包"),r("br"),t._v("(Github.com)")]),t._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.93.1.220401/kangaroo-1.93.1.220401-AMD64.7z",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows"),r("OutboundLink")],1)]),t._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.93.1.220401/kangaroo-1.93.1.220401-arch.tar.gz",target:"_blank",rel:"noopener noreferrer"}},[t._v("Arch"),r("OutboundLink")],1)]),t._v(" "),r("td",[t._v("[MacOS]")]),t._v(" "),r("td"),t._v(" "),r("td")]),t._v(" "),r("tr",[r("td",[t._v("哈希及签名"),r("br"),t._v("(Github.com)")]),t._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.93.1.220401/kangaroo-1.93.1.220401.sha256sum",target:"_blank",rel:"noopener noreferrer"}},[t._v("SHA256SUM"),r("OutboundLink")],1)]),t._v(" "),r("td"),t._v(" "),r("td"),t._v(" "),r("td"),t._v(" "),r("td")])])]),t._v(" "),r("h2",{attrs:{id:"分享给朋友们"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#分享给朋友们"}},[t._v("#")]),t._v(" 分享给朋友们")]),t._v(" "),r("social-share",{attrs:{networks:["wechat","qq","weibo","douban","facebook","twitter","telegram","line","skype","linkedin"]}})],1)}),[],!1,null,null,null);a.default=_.exports}}]); \ No newline at end of file diff --git a/assets/js/203.53cc5098.js b/assets/js/203.53cc5098.js new file mode 100644 index 000000000..0cfac0734 --- /dev/null +++ b/assets/js/203.53cc5098.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[203],{795:function(t,a,r){"use strict";r.r(a);var e=r(13),v=Object(e.a)({},(function(){var t=this,a=t.$createElement,r=t._self._c||a;return r("ContentSlotsDistributor",{attrs:{"slot-key":t.$parent.slotKey}},[r("h1",{attrs:{id:"袋鼠数据库工具-v1-94-1-dev"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#袋鼠数据库工具-v1-94-1-dev"}},[t._v("#")]),t._v(" 袋鼠数据库工具 v1.94.1 (Dev)")]),t._v(" "),r("p",[t._v("这是一个技术预览版,供用户测试和体验新特性,请谨慎生产环境使用。")]),t._v(" "),r("h2",{attrs:{id:"新特性或修复的缺陷列表"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#新特性或修复的缺陷列表"}},[t._v("#")]),t._v(" 新特性或修复的缺陷列表")]),t._v(" "),r("ul",[r("li",[t._v("MySQL: 增加函数设计器")]),t._v(" "),r("li",[t._v("MySQL: 增加存储过程设计器")]),t._v(" "),r("li",[t._v("MySQL: 增加用户设计器")]),t._v(" "),r("li",[t._v("MariaDB: 增加函数设计器")]),t._v(" "),r("li",[t._v("MariaDB: 增加存储过程设计器")]),t._v(" "),r("li",[t._v("MariaDB: 增加用户设计器")]),t._v(" "),r("li",[t._v("PostgreSQL: 增加函数设计器")]),t._v(" "),r("li",[t._v("PostgreSQL: 增加存储过程设计器")]),t._v(" "),r("li",[t._v("PostgreSQL: 增加用户设计器")]),t._v(" "),r("li",[t._v("对话框增加运行时版本支持")]),t._v(" "),r("li",[t._v("更新中文语言支持")]),t._v(" "),r("li",[t._v("修复: 工作空间打开问题")]),t._v(" "),r("li",[t._v("修复: 自动缓存文件保存问题")])]),t._v(" "),r("h2",{attrs:{id:"已知问题"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#已知问题"}},[t._v("#")]),t._v(" 已知问题")]),t._v(" "),r("ul",[r("li",[t._v("MySQL: 执行函数和存储过程后会出现无法执行当前SQL的提示(libgda).")]),t._v(" "),r("li",[t._v("MariaDB: 执行函数和存储过程后会出现无法执行当前SQL的提示(libgda).")])]),t._v(" "),r("div",[r("script2",{attrs:{type:"text/javascript",async:"true",src:"https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"}}),t._v(" "),r("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),t._v(" "),r("script2",{attrs:{type:"text/javascript"}},[t._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),t._v(" "),r("h2",{attrs:{id:"安装程序和便携安装包"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#安装程序和便携安装包"}},[t._v("#")]),t._v(" 安装程序和便携安装包 "),r("Badge",{attrs:{text:"链接已失效",type:"warning"}})],1),t._v(" "),r("p",[t._v("强烈建议您使用 "),r("code",[t._v("sha256sum")]),t._v(" 工具来校验您从网络上下载的包文件的 SHA256 哈希值是否与官方一致,确保您的包文件100%正确无篡改。")]),t._v(" "),r("table",[r("thead",[r("tr",[r("th",[t._v("安装包")]),t._v(" "),r("th",[t._v("Windows")]),t._v(" "),r("th",[t._v("Linux")]),t._v(" "),r("th",[t._v("MacOS")]),t._v(" "),r("th",[t._v("iOS")]),t._v(" "),r("th",[t._v("Android")])])]),t._v(" "),r("tbody",[r("tr",[r("td",[t._v("安装程序"),r("br"),t._v("(Injdk.cn)")]),t._v(" "),r("td",[r("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.94.1.220501/kangaroo-1.94.1.220501-AMD64.exe",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows"),r("OutboundLink")],1)]),t._v(" "),r("td",[r("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.94.1.220501/kangaroo-1.94.1.220501-1-x86_64.pkg.tar.zst",target:"_blank",rel:"noopener noreferrer"}},[t._v("Arch"),r("OutboundLink")],1)]),t._v(" "),r("td",[t._v("[MacOS]")]),t._v(" "),r("td"),t._v(" "),r("td")]),t._v(" "),r("tr",[r("td",[t._v("安装包"),r("br"),t._v("(Injdk.cn)")]),t._v(" "),r("td",[r("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.94.1.220501/kangaroo-1.94.1.220501-AMD64.7z",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows"),r("OutboundLink")],1)]),t._v(" "),r("td",[r("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.94.1.220501/kangaroo-1.94.1.220501-arch.tar.gz",target:"_blank",rel:"noopener noreferrer"}},[t._v("Arch"),r("OutboundLink")],1)]),t._v(" "),r("td",[t._v("[MacOS]")]),t._v(" "),r("td"),t._v(" "),r("td")]),t._v(" "),r("tr",[r("td",[t._v("哈希及签名"),r("br"),t._v("(Injdk.cn)")]),t._v(" "),r("td",[r("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.94.1.220501/kangaroo-1.94.1.220501.sha256sum",target:"_blank",rel:"noopener noreferrer"}},[t._v("SHA256SUM"),r("OutboundLink")],1)]),t._v(" "),r("td"),t._v(" "),r("td"),t._v(" "),r("td"),t._v(" "),r("td")]),t._v(" "),r("tr",[r("td",[t._v("-----------------")]),t._v(" "),r("td",[t._v("-----------------")]),t._v(" "),r("td",[t._v("-----------------")]),t._v(" "),r("td",[t._v("-----------------")]),t._v(" "),r("td"),t._v(" "),r("td")]),t._v(" "),r("tr",[r("td",[t._v("安装程序"),r("br"),t._v("(Github.com)")]),t._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.94.1.220501/kangaroo-1.94.1.220501-AMD64.exe",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows"),r("OutboundLink")],1)]),t._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.94.1.220501/kangaroo-1.94.1.220501-1-x86_64.pkg.tar.zst",target:"_blank",rel:"noopener noreferrer"}},[t._v("Arch"),r("OutboundLink")],1)]),t._v(" "),r("td",[t._v("[MacOS]")]),t._v(" "),r("td"),t._v(" "),r("td")]),t._v(" "),r("tr",[r("td",[t._v("安装包"),r("br"),t._v("(Github.com)")]),t._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.94.1.220501/kangaroo-1.94.1.220501-AMD64.7z",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows"),r("OutboundLink")],1)]),t._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.94.1.220501/kangaroo-1.94.1.220501-arch.tar.gz",target:"_blank",rel:"noopener noreferrer"}},[t._v("Arch"),r("OutboundLink")],1)]),t._v(" "),r("td",[t._v("[MacOS]")]),t._v(" "),r("td"),t._v(" "),r("td")]),t._v(" "),r("tr",[r("td",[t._v("哈希及签名"),r("br"),t._v("(Github.com)")]),t._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.94.1.220501/kangaroo-1.94.1.220501.sha256sum",target:"_blank",rel:"noopener noreferrer"}},[t._v("SHA256SUM"),r("OutboundLink")],1)]),t._v(" "),r("td"),t._v(" "),r("td"),t._v(" "),r("td"),t._v(" "),r("td")])])]),t._v(" "),r("h2",{attrs:{id:"分享给朋友们"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#分享给朋友们"}},[t._v("#")]),t._v(" 分享给朋友们")]),t._v(" "),r("social-share",{attrs:{networks:["wechat","qq","weibo","douban","facebook","twitter","telegram","line","skype","linkedin"]}})],1)}),[],!1,null,null,null);a.default=v.exports}}]); \ No newline at end of file diff --git a/assets/js/204.3411cde1.js b/assets/js/204.3411cde1.js new file mode 100644 index 000000000..b141a4b52 --- /dev/null +++ b/assets/js/204.3411cde1.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[204],{796:function(t,a,r){"use strict";r.r(a);var e=r(13),v=Object(e.a)({},(function(){var t=this,a=t.$createElement,r=t._self._c||a;return r("ContentSlotsDistributor",{attrs:{"slot-key":t.$parent.slotKey}},[r("h1",{attrs:{id:"袋鼠数据库工具-v1-95-1-dev"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#袋鼠数据库工具-v1-95-1-dev"}},[t._v("#")]),t._v(" 袋鼠数据库工具 v1.95.1 (Dev)")]),t._v(" "),r("p",[t._v("这是一个技术预览版,供用户测试和体验新特性,因功能特性已趋近达成目标,整体质量日趋成熟,故推荐所有用户使用;生产环境使用仍需谨慎评估。")]),t._v(" "),r("h2",{attrs:{id:"新特性或修复的缺陷列表"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#新特性或修复的缺陷列表"}},[t._v("#")]),t._v(" 新特性或修复的缺陷列表")]),t._v(" "),r("ul",[r("li",[t._v("MySQL: 增加角色设计器")]),t._v(" "),r("li",[t._v("MySQL: 增加架构设计器")]),t._v(" "),r("li",[t._v("MySQL: 增加数据库设计器")]),t._v(" "),r("li",[t._v("MariaDB: 增加角色设计器")]),t._v(" "),r("li",[t._v("MariaDB: 增加架构设计器")]),t._v(" "),r("li",[t._v("MariaDB: 增加数据库设计器")]),t._v(" "),r("li",[t._v("PostgreSQL: 增加角色设计器")]),t._v(" "),r("li",[t._v("PostgreSQL: 增加架构设计器")]),t._v(" "),r("li",[t._v("PostgreSQL: 增加数据库设计器")]),t._v(" "),r("li",[t._v("更新对象浏览视图:支持架构和数据库对象")]),t._v(" "),r("li",[t._v("重构对象树上下文菜单")]),t._v(" "),r("li",[t._v("动态绑定页签图标和标题为对象浏览器标题和图标")]),t._v(" "),r("li",[t._v("更新中文语言支持")])]),t._v(" "),r("h2",{attrs:{id:"已知问题"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#已知问题"}},[t._v("#")]),t._v(" 已知问题")]),t._v(" "),r("ul",[r("li",[t._v("MySQL: 执行函数和存储过程后会出现无法执行当前SQL的提示(libgda).")]),t._v(" "),r("li",[t._v("MariaDB: 执行函数和存储过程后会出现无法执行当前SQL的提示(libgda).")])]),t._v(" "),r("div",[r("script2",{attrs:{type:"text/javascript",async:"true",src:"https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"}}),t._v(" "),r("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),t._v(" "),r("script2",{attrs:{type:"text/javascript"}},[t._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),t._v(" "),r("h2",{attrs:{id:"安装程序和便携安装包"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#安装程序和便携安装包"}},[t._v("#")]),t._v(" 安装程序和便携安装包 "),r("Badge",{attrs:{text:"链接已失效",type:"warning"}})],1),t._v(" "),r("p",[t._v("强烈建议您使用 "),r("code",[t._v("sha256sum")]),t._v(" 工具来校验您从网络上下载的包文件的 SHA256 哈希值是否与官方一致,确保您的包文件100%正确无篡改。")]),t._v(" "),r("table",[r("thead",[r("tr",[r("th",[t._v("安装包")]),t._v(" "),r("th",[t._v("Windows")]),t._v(" "),r("th",[t._v("Linux")]),t._v(" "),r("th",[t._v("MacOS")]),t._v(" "),r("th",[t._v("iOS")]),t._v(" "),r("th",[t._v("Android")])])]),t._v(" "),r("tbody",[r("tr",[r("td",[t._v("安装程序"),r("br"),t._v("(Injdk.cn)")]),t._v(" "),r("td",[r("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.95.1.220601/kangaroo-1.95.1.220601-AMD64.exe",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows"),r("OutboundLink")],1)]),t._v(" "),r("td",[r("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.95.1.220601/kangaroo-1.95.1.220601-1-x86_64.pkg.tar.zst",target:"_blank",rel:"noopener noreferrer"}},[t._v("Arch"),r("OutboundLink")],1)]),t._v(" "),r("td",[t._v("[MacOS]")]),t._v(" "),r("td"),t._v(" "),r("td")]),t._v(" "),r("tr",[r("td",[t._v("安装包"),r("br"),t._v("(Injdk.cn)")]),t._v(" "),r("td",[r("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.95.1.220601/kangaroo-1.95.1.220601-AMD64.7z",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows"),r("OutboundLink")],1)]),t._v(" "),r("td",[r("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.95.1.220601/kangaroo-1.95.1.220601-arch.tar.gz",target:"_blank",rel:"noopener noreferrer"}},[t._v("Arch"),r("OutboundLink")],1)]),t._v(" "),r("td",[t._v("[MacOS]")]),t._v(" "),r("td"),t._v(" "),r("td")]),t._v(" "),r("tr",[r("td",[t._v("哈希及签名"),r("br"),t._v("(Injdk.cn)")]),t._v(" "),r("td",[r("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.95.1.220601/kangaroo-1.95.1.220601.sha256sum",target:"_blank",rel:"noopener noreferrer"}},[t._v("SHA256SUM"),r("OutboundLink")],1)]),t._v(" "),r("td"),t._v(" "),r("td"),t._v(" "),r("td"),t._v(" "),r("td")]),t._v(" "),r("tr",[r("td",[t._v("-----------------")]),t._v(" "),r("td",[t._v("-----------------")]),t._v(" "),r("td",[t._v("-----------------")]),t._v(" "),r("td",[t._v("-----------------")]),t._v(" "),r("td"),t._v(" "),r("td")]),t._v(" "),r("tr",[r("td",[t._v("安装程序"),r("br"),t._v("(Github.com)")]),t._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.95.1.220601/kangaroo-1.95.1.220601-AMD64.exe",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows"),r("OutboundLink")],1)]),t._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.95.1.220601/kangaroo-1.95.1.220601-1-x86_64.pkg.tar.zst",target:"_blank",rel:"noopener noreferrer"}},[t._v("Arch"),r("OutboundLink")],1)]),t._v(" "),r("td",[t._v("[MacOS]")]),t._v(" "),r("td"),t._v(" "),r("td")]),t._v(" "),r("tr",[r("td",[t._v("安装包"),r("br"),t._v("(Github.com)")]),t._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.95.1.220601/kangaroo-1.95.1.220601-AMD64.7z",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows"),r("OutboundLink")],1)]),t._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.95.1.220601/kangaroo-1.95.1.220601-arch.tar.gz",target:"_blank",rel:"noopener noreferrer"}},[t._v("Arch"),r("OutboundLink")],1)]),t._v(" "),r("td",[t._v("[MacOS]")]),t._v(" "),r("td"),t._v(" "),r("td")]),t._v(" "),r("tr",[r("td",[t._v("哈希及签名"),r("br"),t._v("(Github.com)")]),t._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.95.1.220601/kangaroo-1.95.1.220601.sha256sum",target:"_blank",rel:"noopener noreferrer"}},[t._v("SHA256SUM"),r("OutboundLink")],1)]),t._v(" "),r("td"),t._v(" "),r("td"),t._v(" "),r("td"),t._v(" "),r("td")])])]),t._v(" "),r("h2",{attrs:{id:"分享给朋友们"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#分享给朋友们"}},[t._v("#")]),t._v(" 分享给朋友们")]),t._v(" "),r("social-share",{attrs:{networks:["wechat","qq","weibo","douban","facebook","twitter","telegram","line","skype","linkedin"]}})],1)}),[],!1,null,null,null);a.default=v.exports}}]); \ No newline at end of file diff --git a/assets/js/205.dc3374c4.js b/assets/js/205.dc3374c4.js new file mode 100644 index 000000000..fe160e753 --- /dev/null +++ b/assets/js/205.dc3374c4.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[205],{798:function(t,a,r){"use strict";r.r(a);var e=r(13),o=Object(e.a)({},(function(){var t=this,a=t.$createElement,r=t._self._c||a;return r("ContentSlotsDistributor",{attrs:{"slot-key":t.$parent.slotKey}},[r("h1",{attrs:{id:"袋鼠数据库工具-v1-96-1-dev"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#袋鼠数据库工具-v1-96-1-dev"}},[t._v("#")]),t._v(" 袋鼠数据库工具 v1.96.1 (Dev)")]),t._v(" "),r("p",[t._v("这是一个技术预览版,供用户测试和体验新特性,因功能特性已趋近达成目标,整体质量日趋成熟,故推荐所有用户使用;生产环境使用仍需谨慎评估。")]),t._v(" "),r("h2",{attrs:{id:"新特性或修复的缺陷列表"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#新特性或修复的缺陷列表"}},[t._v("#")]),t._v(" 新特性或修复的缺陷列表")]),t._v(" "),r("ul",[r("li",[t._v("用 ODBC 替换 libgda")]),t._v(" "),r("li",[t._v("添加了通用数据库支持")]),t._v(" "),r("li",[t._v("更新中文语言支持")])]),t._v(" "),r("div",[r("script2",{attrs:{type:"text/javascript",async:"true",src:"https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"}}),t._v(" "),r("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),t._v(" "),r("script2",{attrs:{type:"text/javascript"}},[t._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),t._v(" "),r("h2",{attrs:{id:"安装程序和便携安装包"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#安装程序和便携安装包"}},[t._v("#")]),t._v(" 安装程序和便携安装包 "),r("Badge",{attrs:{text:"链接已失效",type:"warning"}})],1),t._v(" "),r("p",[t._v("强烈建议您使用 "),r("code",[t._v("sha256sum")]),t._v(" 工具来校验您从网络上下载的包文件的 SHA256 哈希值是否与官方一致,确保您的包文件100%正确无篡改。")]),t._v(" "),r("table",[r("thead",[r("tr",[r("th",[t._v("安装包")]),t._v(" "),r("th",[t._v("Windows")]),t._v(" "),r("th",[t._v("Linux")]),t._v(" "),r("th",[t._v("MacOS")]),t._v(" "),r("th",[t._v("iOS")]),t._v(" "),r("th",[t._v("Android")])])]),t._v(" "),r("tbody",[r("tr",[r("td",[t._v("安装程序"),r("br"),t._v("(Injdk.cn)")]),t._v(" "),r("td",[r("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.96.1.220701/kangaroo-1.96.1.220701-AMD64.exe",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows"),r("OutboundLink")],1)]),t._v(" "),r("td",[r("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.96.1.220701/kangaroo-1.96.1.220701-1-x86_64.pkg.tar.zst",target:"_blank",rel:"noopener noreferrer"}},[t._v("Arch"),r("OutboundLink")],1)]),t._v(" "),r("td",[t._v("[MacOS]")]),t._v(" "),r("td"),t._v(" "),r("td")]),t._v(" "),r("tr",[r("td",[t._v("安装包"),r("br"),t._v("(Injdk.cn)")]),t._v(" "),r("td",[r("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.96.1.220701/kangaroo-1.96.1.220701-AMD64.7z",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows"),r("OutboundLink")],1)]),t._v(" "),r("td",[r("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.96.1.220701/kangaroo-1.96.1.220701-arch.tar.gz",target:"_blank",rel:"noopener noreferrer"}},[t._v("Arch"),r("OutboundLink")],1)]),t._v(" "),r("td",[t._v("[MacOS]")]),t._v(" "),r("td"),t._v(" "),r("td")]),t._v(" "),r("tr",[r("td",[t._v("哈希及签名"),r("br"),t._v("(Injdk.cn)")]),t._v(" "),r("td",[r("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.96.1.220701/kangaroo-1.96.1.220701.sha256sum",target:"_blank",rel:"noopener noreferrer"}},[t._v("SHA256SUM"),r("OutboundLink")],1)]),t._v(" "),r("td"),t._v(" "),r("td"),t._v(" "),r("td"),t._v(" "),r("td")]),t._v(" "),r("tr",[r("td",[t._v("-----------------")]),t._v(" "),r("td",[t._v("-----------------")]),t._v(" "),r("td",[t._v("-----------------")]),t._v(" "),r("td",[t._v("-----------------")]),t._v(" "),r("td"),t._v(" "),r("td")]),t._v(" "),r("tr",[r("td",[t._v("安装程序"),r("br"),t._v("(Github.com)")]),t._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.96.1.220701/kangaroo-1.96.1.220701-AMD64.exe",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows"),r("OutboundLink")],1)]),t._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.96.1.220701/kangaroo-1.96.1.220701-1-x86_64.pkg.tar.zst",target:"_blank",rel:"noopener noreferrer"}},[t._v("Arch"),r("OutboundLink")],1)]),t._v(" "),r("td",[t._v("[MacOS]")]),t._v(" "),r("td"),t._v(" "),r("td")]),t._v(" "),r("tr",[r("td",[t._v("安装包"),r("br"),t._v("(Github.com)")]),t._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.96.1.220701/kangaroo-1.96.1.220701-AMD64.7z",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows"),r("OutboundLink")],1)]),t._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.96.1.220701/kangaroo-1.96.1.220701-arch.tar.gz",target:"_blank",rel:"noopener noreferrer"}},[t._v("Arch"),r("OutboundLink")],1)]),t._v(" "),r("td",[t._v("[MacOS]")]),t._v(" "),r("td"),t._v(" "),r("td")]),t._v(" "),r("tr",[r("td",[t._v("哈希及签名"),r("br"),t._v("(Github.com)")]),t._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.96.1.220701/kangaroo-1.96.1.220701.sha256sum",target:"_blank",rel:"noopener noreferrer"}},[t._v("SHA256SUM"),r("OutboundLink")],1)]),t._v(" "),r("td"),t._v(" "),r("td"),t._v(" "),r("td"),t._v(" "),r("td")])])]),t._v(" "),r("h2",{attrs:{id:"分享给朋友们"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#分享给朋友们"}},[t._v("#")]),t._v(" 分享给朋友们")]),t._v(" "),r("social-share",{attrs:{networks:["wechat","qq","weibo","douban","facebook","twitter","telegram","line","skype","linkedin"]}})],1)}),[],!1,null,null,null);a.default=o.exports}}]); \ No newline at end of file diff --git a/assets/js/206.b4bb287a.js b/assets/js/206.b4bb287a.js new file mode 100644 index 000000000..7e123ed43 --- /dev/null +++ b/assets/js/206.b4bb287a.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[206],{799:function(t,a,r){"use strict";r.r(a);var e=r(13),o=Object(e.a)({},(function(){var t=this,a=t.$createElement,r=t._self._c||a;return r("ContentSlotsDistributor",{attrs:{"slot-key":t.$parent.slotKey}},[r("h1",{attrs:{id:"袋鼠数据库工具-v1-97-1-dev"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#袋鼠数据库工具-v1-97-1-dev"}},[t._v("#")]),t._v(" 袋鼠数据库工具 v1.97.1 (Dev)")]),t._v(" "),r("p",[t._v("这是一个技术预览版,供用户测试和体验新特性,因功能特性已趋近达成目标,整体质量日趋成熟,故推荐所有用户使用;生产环境使用仍需谨慎评估。")]),t._v(" "),r("h2",{attrs:{id:"新特性或修复的缺陷列表"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#新特性或修复的缺陷列表"}},[t._v("#")]),t._v(" 新特性或修复的缺陷列表")]),t._v(" "),r("ul",[r("li",[t._v("更新 Windows 打包脚本,修复依赖库缺失问题")]),t._v(" "),r("li",[t._v("更新 ArchLinux 打包脚本,修复依赖库缺失问题")]),t._v(" "),r("li",[t._v("升级关闭确认对话框")]),t._v(" "),r("li",[t._v("重构网格组件(GtkColumnView)")]),t._v(" "),r("li",[t._v("Windows 安装脚本增加 ODBC 驱动支持")]),t._v(" "),r("li",[t._v("改进 Windows 安装包本地化支持")]),t._v(" "),r("li",[t._v("改进对象浏览视图的排序支持")]),t._v(" "),r("li",[t._v("完善内容视图查询构建器")]),t._v(" "),r("li",[t._v("改进 SQL 构建器")]),t._v(" "),r("li",[t._v("改进 DBNull 支持")]),t._v(" "),r("li",[t._v("更新中文语言支持")]),t._v(" "),r("li",[t._v("修复 ODBC 连接相关问题")])]),t._v(" "),r("div",[r("script2",{attrs:{type:"text/javascript",async:"true",src:"https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"}}),t._v(" "),r("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),t._v(" "),r("script2",{attrs:{type:"text/javascript"}},[t._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),t._v(" "),r("h2",{attrs:{id:"安装程序和便携安装包"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#安装程序和便携安装包"}},[t._v("#")]),t._v(" 安装程序和便携安装包 "),r("Badge",{attrs:{text:"链接已失效",type:"warning"}})],1),t._v(" "),r("p",[t._v("强烈建议您使用 "),r("code",[t._v("sha256sum")]),t._v(" 工具来校验您从网络上下载的包文件的 SHA256 哈希值是否与官方一致,确保您的包文件100%正确无篡改。")]),t._v(" "),r("table",[r("thead",[r("tr",[r("th",[t._v("安装包")]),t._v(" "),r("th",[t._v("Windows")]),t._v(" "),r("th",[t._v("Linux")]),t._v(" "),r("th",[t._v("MacOS")]),t._v(" "),r("th",[t._v("iOS")]),t._v(" "),r("th",[t._v("Android")])])]),t._v(" "),r("tbody",[r("tr",[r("td",[t._v("安装程序"),r("br"),t._v("(Injdk.cn)")]),t._v(" "),r("td",[r("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.97.1.220731/kangaroo-1.97.1.220731-AMD64.exe",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows"),r("OutboundLink")],1)]),t._v(" "),r("td",[r("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.97.1.220731/kangaroo-1.97.1.220731-1-x86_64.pkg.tar.zst",target:"_blank",rel:"noopener noreferrer"}},[t._v("Arch"),r("OutboundLink")],1)]),t._v(" "),r("td",[t._v("[MacOS]")]),t._v(" "),r("td"),t._v(" "),r("td")]),t._v(" "),r("tr",[r("td",[t._v("安装包"),r("br"),t._v("(Injdk.cn)")]),t._v(" "),r("td",[r("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.97.1.220731/kangaroo-1.97.1.220731-AMD64.7z",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows"),r("OutboundLink")],1)]),t._v(" "),r("td",[r("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.97.1.220731/kangaroo-1.97.1.220731-arch.tar.gz",target:"_blank",rel:"noopener noreferrer"}},[t._v("Arch"),r("OutboundLink")],1)]),t._v(" "),r("td",[t._v("[MacOS]")]),t._v(" "),r("td"),t._v(" "),r("td")]),t._v(" "),r("tr",[r("td",[t._v("哈希及签名"),r("br"),t._v("(Injdk.cn)")]),t._v(" "),r("td",[r("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.97.1.220731/kangaroo-1.97.1.220731.sha256sum",target:"_blank",rel:"noopener noreferrer"}},[t._v("SHA256SUM"),r("OutboundLink")],1)]),t._v(" "),r("td"),t._v(" "),r("td"),t._v(" "),r("td"),t._v(" "),r("td")]),t._v(" "),r("tr",[r("td",[t._v("-----------------")]),t._v(" "),r("td",[t._v("-----------------")]),t._v(" "),r("td",[t._v("-----------------")]),t._v(" "),r("td",[t._v("-----------------")]),t._v(" "),r("td"),t._v(" "),r("td")]),t._v(" "),r("tr",[r("td",[t._v("安装程序"),r("br"),t._v("(Github.com)")]),t._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.97.1.220731/kangaroo-1.97.1.220731-AMD64.exe",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows"),r("OutboundLink")],1)]),t._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.97.1.220731/kangaroo-1.97.1.220731-1-x86_64.pkg.tar.zst",target:"_blank",rel:"noopener noreferrer"}},[t._v("Arch"),r("OutboundLink")],1)]),t._v(" "),r("td",[t._v("[MacOS]")]),t._v(" "),r("td"),t._v(" "),r("td")]),t._v(" "),r("tr",[r("td",[t._v("安装包"),r("br"),t._v("(Github.com)")]),t._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.97.1.220731/kangaroo-1.97.1.220731-AMD64.7z",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows"),r("OutboundLink")],1)]),t._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.97.1.220731/kangaroo-1.97.1.220731-arch.tar.gz",target:"_blank",rel:"noopener noreferrer"}},[t._v("Arch"),r("OutboundLink")],1)]),t._v(" "),r("td",[t._v("[MacOS]")]),t._v(" "),r("td"),t._v(" "),r("td")]),t._v(" "),r("tr",[r("td",[t._v("哈希及签名"),r("br"),t._v("(Github.com)")]),t._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.97.1.220731/kangaroo-1.97.1.220731.sha256sum",target:"_blank",rel:"noopener noreferrer"}},[t._v("SHA256SUM"),r("OutboundLink")],1)]),t._v(" "),r("td"),t._v(" "),r("td"),t._v(" "),r("td"),t._v(" "),r("td")])])]),t._v(" "),r("h2",{attrs:{id:"分享给朋友们"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#分享给朋友们"}},[t._v("#")]),t._v(" 分享给朋友们")]),t._v(" "),r("social-share",{attrs:{networks:["wechat","qq","weibo","douban","facebook","twitter","telegram","line","skype","linkedin"]}})],1)}),[],!1,null,null,null);a.default=o.exports}}]); \ No newline at end of file diff --git a/assets/js/207.c3925123.js b/assets/js/207.c3925123.js new file mode 100644 index 000000000..818f3326d --- /dev/null +++ b/assets/js/207.c3925123.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[207],{797:function(a,t,r){"use strict";r.r(t);var e=r(13),o=Object(e.a)({},(function(){var a=this,t=a.$createElement,r=a._self._c||t;return r("ContentSlotsDistributor",{attrs:{"slot-key":a.$parent.slotKey}},[r("h1",{attrs:{id:"袋鼠数据库工具-v1-98-1-dev"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#袋鼠数据库工具-v1-98-1-dev"}},[a._v("#")]),a._v(" 袋鼠数据库工具 v1.98.1 (Dev)")]),a._v(" "),r("p",[a._v("这是一个技术预览版,供用户测试和体验新特性,因功能特性已趋近达成目标,整体质量日趋成熟,故推荐所有用户使用;生产环境使用仍需谨慎评估。")]),a._v(" "),r("h2",{attrs:{id:"新特性或修复的缺陷列表"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#新特性或修复的缺陷列表"}},[a._v("#")]),a._v(" 新特性或修复的缺陷列表")]),a._v(" "),r("ul",[r("li",[a._v("数据网格增加当前单元格样式支持")]),a._v(" "),r("li",[a._v("SQLite: 重构表设计器")]),a._v(" "),r("li",[a._v("MySQL: 重构表设计器")]),a._v(" "),r("li",[a._v("PostgreSQL: 重构表设计器")]),a._v(" "),r("li",[a._v("规范化字段的长度/精度/小数位支持")]),a._v(" "),r("li",[a._v("更新中文语言支持(zh-CN/zh-TW/zh-SG/zh-HK)")]),a._v(" "),r("li",[a._v("修复:ODBC CHAR/WCHAR 类型读取问题")]),a._v(" "),r("li",[a._v("修复:连接对话框丢失驱动问题")]),a._v(" "),r("li",[a._v("修复:修复起始页拖放建立连接问题")]),a._v(" "),r("li",[a._v("修复:MySQL/MariaDB 乱码问题")])]),a._v(" "),r("div",[r("script2",{attrs:{type:"text/javascript",async:"true",src:"https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"}}),a._v(" "),r("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),a._v(" "),r("script2",{attrs:{type:"text/javascript"}},[a._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),a._v(" "),r("h2",{attrs:{id:"安装程序和便携安装包"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#安装程序和便携安装包"}},[a._v("#")]),a._v(" 安装程序和便携安装包 "),r("Badge",{attrs:{text:"链接已失效",type:"warning"}})],1),a._v(" "),r("p",[a._v("Windows 用户可通过 winget 工具直接安装袋鼠:"),r("code",[a._v("winget install Taozuhong.Kangaroo")]),a._v(",否则需要自行下载并安装它。")]),a._v(" "),r("table",[r("thead",[r("tr",[r("th",[a._v("安装包")]),a._v(" "),r("th",[a._v("Windows")]),a._v(" "),r("th",[a._v("Linux")]),a._v(" "),r("th",[a._v("MacOS")]),a._v(" "),r("th",[a._v("iOS")]),a._v(" "),r("th",[a._v("Android")])])]),a._v(" "),r("tbody",[r("tr",[r("td",[a._v("安装程序"),r("br"),a._v("(Cloud@China)")]),a._v(" "),r("td",[r("a",{attrs:{href:"https://kangaroo.awaysoft.com/downloads/v1.98.1.220904/kangaroo-1.98.1.220904-AMD64.exe",target:"_blank",rel:"noopener noreferrer"}},[a._v("Server 1"),r("OutboundLink")],1),a._v(" "),r("br"),a._v(" "),r("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.98.1.220904/kangaroo-1.98.1.220904-AMD64.exe",target:"_blank",rel:"noopener noreferrer"}},[a._v("Server 2"),r("OutboundLink")],1)]),a._v(" "),r("td",[r("a",{attrs:{href:"https://kangaroo.awaysoft.com/downloads/v1.98.1.220904/kangaroo-1.98.1.220904-1-x86_64.pkg.tar.zst",target:"_blank",rel:"noopener noreferrer"}},[a._v("Server 1"),r("OutboundLink")],1),a._v(" "),r("br"),a._v(" "),r("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.98.1.220904/kangaroo-1.98.1.220904-1-x86_64.pkg.tar.zst",target:"_blank",rel:"noopener noreferrer"}},[a._v("Server 2"),r("OutboundLink")],1)]),a._v(" "),r("td",[a._v("[MacOS]")]),a._v(" "),r("td"),a._v(" "),r("td")]),a._v(" "),r("tr",[r("td",[a._v("安装包"),r("br"),a._v("(Cloud@China)")]),a._v(" "),r("td",[r("a",{attrs:{href:"https://kangaroo.awaysoft.com/downloads/v1.98.1.220904/kangaroo-1.98.1.220904-AMD64.7z",target:"_blank",rel:"noopener noreferrer"}},[a._v("Server 1"),r("OutboundLink")],1),a._v(" "),r("br"),a._v(" "),r("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.98.1.220904/kangaroo-1.98.1.220904-AMD64.7z",target:"_blank",rel:"noopener noreferrer"}},[a._v("Server 2"),r("OutboundLink")],1)]),a._v(" "),r("td",[r("a",{attrs:{href:"https://kangaroo.awaysoft.com/downloads/v1.98.1.220904/kangaroo-1.98.1.220904-arch.tar.gz",target:"_blank",rel:"noopener noreferrer"}},[a._v("Server 1"),r("OutboundLink")],1),a._v(" "),r("br"),a._v(" "),r("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.98.1.220904/kangaroo-1.98.1.220904-arch.tar.gz",target:"_blank",rel:"noopener noreferrer"}},[a._v("Server 2"),r("OutboundLink")],1)]),a._v(" "),r("td",[a._v("[MacOS]")]),a._v(" "),r("td"),a._v(" "),r("td")]),a._v(" "),r("tr",[r("td",[a._v("-----------------")]),a._v(" "),r("td",[a._v("-----------------")]),a._v(" "),r("td",[a._v("-----------------")]),a._v(" "),r("td",[a._v("-----------------")]),a._v(" "),r("td"),a._v(" "),r("td")]),a._v(" "),r("tr",[r("td",[a._v("安装程序"),r("br"),a._v("(Github.com)")]),a._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.98.1.220904/kangaroo-1.98.1.220904-AMD64.exe",target:"_blank",rel:"noopener noreferrer"}},[a._v("Windows"),r("OutboundLink")],1)]),a._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.98.1.220904/kangaroo-1.98.1.220904-1-x86_64.pkg.tar.zst",target:"_blank",rel:"noopener noreferrer"}},[a._v("Arch"),r("OutboundLink")],1)]),a._v(" "),r("td",[a._v("[MacOS]")]),a._v(" "),r("td"),a._v(" "),r("td")]),a._v(" "),r("tr",[r("td",[a._v("安装包"),r("br"),a._v("(Github.com)")]),a._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.98.1.220904/kangaroo-1.98.1.220904-AMD64.7z",target:"_blank",rel:"noopener noreferrer"}},[a._v("Windows"),r("OutboundLink")],1)]),a._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.98.1.220904/kangaroo-1.98.1.220904-arch.tar.gz",target:"_blank",rel:"noopener noreferrer"}},[a._v("Arch"),r("OutboundLink")],1)]),a._v(" "),r("td",[a._v("[MacOS]")]),a._v(" "),r("td"),a._v(" "),r("td")])])]),a._v(" "),r("div",[r("script2",{attrs:{type:"text/javascript",async:"true",src:"https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"}}),a._v(" "),r("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),a._v(" "),r("script2",{attrs:{type:"text/javascript"}},[a._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),a._v(" "),r("h2",{attrs:{id:"sha256sum"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#sha256sum"}},[a._v("#")]),a._v(" SHA256SUM")]),a._v(" "),r("p",[a._v("强烈建议您使用 "),r("code",[a._v("sha256sum")]),a._v("、"),r("code",[a._v("7-Zip")]),a._v(" 等工具,校验您下载的包文件 SHA256 哈希值是否与官方一致,确保您的包文件100%正确无篡改。")]),a._v(" "),r("table",[r("thead",[r("tr",[r("th",[a._v("sha256sum 校验码")]),a._v(" "),r("th",[a._v("袋鼠安装包文件名")])])]),a._v(" "),r("tbody",[r("tr",[r("td",[a._v("b9ae08ebdfc3f2fb3d96f2bc7d8c4a36d41201b933960d581a178c3002793c1f")]),a._v(" "),r("td",[a._v("kangaroo-1.98.1.220904-1-x86_64.pkg.tar.zst")])]),a._v(" "),r("tr",[r("td",[a._v("2eb866162f4f5d9f1a30d76a4986a82d4c68218a055528ce58b812b4cb6e8ab6")]),a._v(" "),r("td",[a._v("kangaroo-1.98.1.220904-AMD64.7z")])]),a._v(" "),r("tr",[r("td",[a._v("af96328d31e351eeb46c67a2bae644fbffd995525bc348952f8e853ba21ef46a")]),a._v(" "),r("td",[a._v("kangaroo-1.98.1.220904-AMD64.exe")])]),a._v(" "),r("tr",[r("td",[a._v("c1b07a5d500c125ec838a0e7859be6c649ea99883eab6d9953d3422276e67eaf")]),a._v(" "),r("td",[a._v("kangaroo-1.98.1.220904-arch.tar.gz")])])])]),a._v(" "),r("h2",{attrs:{id:"分享给朋友们"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#分享给朋友们"}},[a._v("#")]),a._v(" 分享给朋友们")]),a._v(" "),r("social-share",{attrs:{networks:["wechat","qq","weibo","douban","facebook","twitter","telegram","line","skype","linkedin"]}})],1)}),[],!1,null,null,null);t.default=o.exports}}]); \ No newline at end of file diff --git a/assets/js/208.5783a320.js b/assets/js/208.5783a320.js new file mode 100644 index 000000000..fdf0780cf --- /dev/null +++ b/assets/js/208.5783a320.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[208],{800:function(t,a,r){"use strict";r.r(a);var e=r(13),o=Object(e.a)({},(function(){var t=this,a=t.$createElement,r=t._self._c||a;return r("ContentSlotsDistributor",{attrs:{"slot-key":t.$parent.slotKey}},[r("h1",{attrs:{id:"袋鼠数据库工具-v1-99-1-dev"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#袋鼠数据库工具-v1-99-1-dev"}},[t._v("#")]),t._v(" 袋鼠数据库工具 v1.99.1 (Dev)")]),t._v(" "),r("p",[t._v("这是一个技术预览版,供用户测试和体验新特性,因功能特性已趋近达成目标,整体质量日趋成熟,故推荐所有用户使用;生产环境使用仍需谨慎评估。")]),t._v(" "),r("h2",{attrs:{id:"新特性或修复的缺陷列表"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#新特性或修复的缺陷列表"}},[t._v("#")]),t._v(" 新特性或修复的缺陷列表")]),t._v(" "),r("ul",[r("li",[t._v("更新依赖库到新版本")]),t._v(" "),r("li",[t._v("规范化数据模型和元模型")]),t._v(" "),r("li",[t._v("重构并测试文档对话框")]),t._v(" "),r("li",[t._v("重构导出功能页面")]),t._v(" "),r("li",[t._v("重构导入功能页面")]),t._v(" "),r("li",[t._v("重构连接对话框")]),t._v(" "),r("li",[t._v("添加附加数据库对话框")]),t._v(" "),r("li",[t._v("添加通用数据库支持")]),t._v(" "),r("li",[t._v("添加 ODBC 帮助入口")]),t._v(" "),r("li",[t._v("添加对象搜索支持")]),t._v(" "),r("li",[t._v("更新 Windows 和 Arch Linux 的打包与安装脚本")]),t._v(" "),r("li",[t._v("SQLite: 附加和卸载数据库")]),t._v(" "),r("li",[t._v("SQLite: 加载扩展支持")]),t._v(" "),r("li",[t._v("改进新连接创建方式")]),t._v(" "),r("li",[t._v("更新中文语言支持(zh-CN/zh-TW/zh-SG/zh-HK)")]),t._v(" "),r("li",[t._v("修复:快捷键加载和保存问题")])]),t._v(" "),r("div",[r("script2",{attrs:{type:"text/javascript",async:"true",src:"https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"}}),t._v(" "),r("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),t._v(" "),r("script2",{attrs:{type:"text/javascript"}},[t._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),t._v(" "),r("h2",{attrs:{id:"安装程序和便携安装包"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#安装程序和便携安装包"}},[t._v("#")]),t._v(" 安装程序和便携安装包 "),r("Badge",{attrs:{text:"链接已失效",type:"warning"}})],1),t._v(" "),r("p",[t._v("Windows 用户可通过 winget 工具直接安装袋鼠:"),r("code",[t._v("winget install Taozuhong.Kangaroo")]),t._v(",否则需要自行下载并安装它。")]),t._v(" "),r("table",[r("thead",[r("tr",[r("th",[t._v("安装包")]),t._v(" "),r("th",[t._v("Windows")]),t._v(" "),r("th",[t._v("Linux")]),t._v(" "),r("th",[t._v("MacOS")]),t._v(" "),r("th",[t._v("iOS")]),t._v(" "),r("th",[t._v("Android")])])]),t._v(" "),r("tbody",[r("tr",[r("td",[t._v("安装程序"),r("br"),t._v("(Cloud@China)")]),t._v(" "),r("td",[r("a",{attrs:{href:"https://kangaroo.awaysoft.com/downloads/v1.99.1.221001/kangaroo-1.99.1.221001-AMD64.exe",target:"_blank",rel:"noopener noreferrer"}},[t._v("Server 1"),r("OutboundLink")],1),t._v(" "),r("br"),t._v(" "),r("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.99.1.221001/kangaroo-1.99.1.221001-AMD64.exe",target:"_blank",rel:"noopener noreferrer"}},[t._v("Server 2"),r("OutboundLink")],1)]),t._v(" "),r("td",[r("a",{attrs:{href:"https://kangaroo.awaysoft.com/downloads/v1.99.1.221001/kangaroo-1.99.1.221001-1-x86_64.pkg.tar.zst",target:"_blank",rel:"noopener noreferrer"}},[t._v("Server 1"),r("OutboundLink")],1),t._v(" "),r("br"),t._v(" "),r("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.99.1.221001/kangaroo-1.99.1.221001-1-x86_64.pkg.tar.zst",target:"_blank",rel:"noopener noreferrer"}},[t._v("Server 2"),r("OutboundLink")],1)]),t._v(" "),r("td",[t._v("[MacOS]")]),t._v(" "),r("td"),t._v(" "),r("td")]),t._v(" "),r("tr",[r("td",[t._v("安装包"),r("br"),t._v("(Cloud@China)")]),t._v(" "),r("td",[r("a",{attrs:{href:"https://kangaroo.awaysoft.com/downloads/v1.99.1.221001/kangaroo-1.99.1.221001-AMD64.7z",target:"_blank",rel:"noopener noreferrer"}},[t._v("Server 1"),r("OutboundLink")],1),t._v(" "),r("br"),t._v(" "),r("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.99.1.221001/kangaroo-1.99.1.221001-AMD64.7z",target:"_blank",rel:"noopener noreferrer"}},[t._v("Server 2"),r("OutboundLink")],1)]),t._v(" "),r("td",[r("a",{attrs:{href:"https://kangaroo.awaysoft.com/downloads/v1.99.1.221001/kangaroo-1.99.1.221001-arch.tar.gz",target:"_blank",rel:"noopener noreferrer"}},[t._v("Server 1"),r("OutboundLink")],1),t._v(" "),r("br"),t._v(" "),r("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.99.1.221001/kangaroo-1.99.1.221001-arch.tar.gz",target:"_blank",rel:"noopener noreferrer"}},[t._v("Server 2"),r("OutboundLink")],1)]),t._v(" "),r("td",[t._v("[MacOS]")]),t._v(" "),r("td"),t._v(" "),r("td")]),t._v(" "),r("tr",[r("td",[t._v("-----------------")]),t._v(" "),r("td",[t._v("-----------------")]),t._v(" "),r("td",[t._v("-----------------")]),t._v(" "),r("td",[t._v("-----------------")]),t._v(" "),r("td"),t._v(" "),r("td")]),t._v(" "),r("tr",[r("td",[t._v("安装程序"),r("br"),t._v("(Github.com)")]),t._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.99.1.221001/kangaroo-1.99.1.221001-AMD64.exe",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows"),r("OutboundLink")],1)]),t._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.99.1.221001/kangaroo-1.99.1.221001-1-x86_64.pkg.tar.zst",target:"_blank",rel:"noopener noreferrer"}},[t._v("Arch"),r("OutboundLink")],1)]),t._v(" "),r("td",[t._v("[MacOS]")]),t._v(" "),r("td"),t._v(" "),r("td")]),t._v(" "),r("tr",[r("td",[t._v("安装包"),r("br"),t._v("(Github.com)")]),t._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.99.1.221001/kangaroo-1.99.1.221001-AMD64.7z",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows"),r("OutboundLink")],1)]),t._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.99.1.221001/kangaroo-1.99.1.221001-arch.tar.gz",target:"_blank",rel:"noopener noreferrer"}},[t._v("Arch"),r("OutboundLink")],1)]),t._v(" "),r("td",[t._v("[MacOS]")]),t._v(" "),r("td"),t._v(" "),r("td")])])]),t._v(" "),r("div",[r("script2",{attrs:{type:"text/javascript",async:"true",src:"https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"}}),t._v(" "),r("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),t._v(" "),r("script2",{attrs:{type:"text/javascript"}},[t._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),t._v(" "),r("h2",{attrs:{id:"sha256sum"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#sha256sum"}},[t._v("#")]),t._v(" SHA256SUM")]),t._v(" "),r("p",[t._v("强烈建议您使用 "),r("code",[t._v("sha256sum")]),t._v("、"),r("code",[t._v("7-Zip")]),t._v(" 等工具,校验您下载的包文件 SHA256 哈希值是否与官方一致,确保您的包文件100%正确无篡改。")]),t._v(" "),r("table",[r("thead",[r("tr",[r("th",[t._v("sha256sum 校验码")]),t._v(" "),r("th",[t._v("袋鼠安装包文件名")])])]),t._v(" "),r("tbody",[r("tr",[r("td",[t._v("d2a49deb6803af0909f2c34aa4bd4c058fd9229bd35162127fc6f7a63423e61f")]),t._v(" "),r("td",[t._v("kangaroo-1.99.1.221001-1-x86_64.pkg.tar.zst")])]),t._v(" "),r("tr",[r("td",[t._v("1d59c87696fae3218d78e4012f7f188de8a25c73acd2e7d6e87041048e412761")]),t._v(" "),r("td",[t._v("kangaroo-1.99.1.221001-AMD64.7z")])]),t._v(" "),r("tr",[r("td",[t._v("98b0ba13c7da75f3132d1cff66dd32969b15d8800e6a24ded3e4a34a126842e9")]),t._v(" "),r("td",[t._v("kangaroo-1.99.1.221001-AMD64.exe")])]),t._v(" "),r("tr",[r("td",[t._v("d4b50aeb4b4e35b4e72d8247b8050a5dc9d7d3e088bc4dd9e83af28982e3a6e6")]),t._v(" "),r("td",[t._v("kangaroo-1.99.1.221001-arch.tar.gz")])])])]),t._v(" "),r("h2",{attrs:{id:"分享给朋友们"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#分享给朋友们"}},[t._v("#")]),t._v(" 分享给朋友们")]),t._v(" "),r("social-share",{attrs:{networks:["wechat","qq","weibo","douban","facebook","twitter","telegram","line","skype","linkedin"]}})],1)}),[],!1,null,null,null);a.default=o.exports}}]); \ No newline at end of file diff --git a/assets/js/209.3b7b006f.js b/assets/js/209.3b7b006f.js new file mode 100644 index 000000000..f5c56ec28 --- /dev/null +++ b/assets/js/209.3b7b006f.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[209],{801:function(t,a,r){"use strict";r.r(a);var e=r(13),o=Object(e.a)({},(function(){var t=this,a=t.$createElement,r=t._self._c||a;return r("ContentSlotsDistributor",{attrs:{"slot-key":t.$parent.slotKey}},[r("h1",{attrs:{id:"袋鼠数据库工具-v2-0-0-beta"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#袋鼠数据库工具-v2-0-0-beta"}},[t._v("#")]),t._v(" 袋鼠数据库工具 v2.0.0 (Beta)")]),t._v(" "),r("p",[t._v("这是一个稳定版本,功能成熟度和稳定性无限趋近版本目标,推荐所有用户使用。")]),t._v(" "),r("h2",{attrs:{id:"新特性或修复的缺陷列表"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#新特性或修复的缺陷列表"}},[t._v("#")]),t._v(" 新特性或修复的缺陷列表")]),t._v(" "),r("ul",[r("li",[t._v("重构 导入数据页面(列映射页/数据预览页)")]),t._v(" "),r("li",[t._v("重构 列选择对话窗口")]),t._v(" "),r("li",[t._v("重构 SQLite 索引列窗口")]),t._v(" "),r("li",[t._v("重构 PostgreSQL 列编辑窗口")]),t._v(" "),r("li",[t._v("重构 MySQL 列编辑窗口")]),t._v(" "),r("li",[t._v("重构 类型值编辑器窗口(Enum/set)")]),t._v(" "),r("li",[t._v("重构 文档生成窗口")]),t._v(" "),r("li",[t._v("重构 数据网格事件和上下文")]),t._v(" "),r("li",[t._v("替换系统图标为符号化图标")]),t._v(" "),r("li",[t._v("实现表单视图编辑和保存功能")]),t._v(" "),r("li",[t._v("实现表格视图编辑和保存功能")]),t._v(" "),r("li",[t._v("实现表单视图数据行导航功能")]),t._v(" "),r("li",[t._v("实现Binary/BLOB 导入导出和保存功能")]),t._v(" "),r("li",[t._v("改进 SQLite 架构支持")]),t._v(" "),r("li",[t._v("更新中文语言支持(zh-CN/zh-TW/zh-SG/zh-HK)")]),t._v(" "),r("li",[t._v("修复: 数值类型丢失小数位问题")]),t._v(" "),r("li",[t._v("修复: 工具图标尺寸设置问题")]),t._v(" "),r("li",[t._v("修复: 对象浏览器网格问题")]),t._v(" "),r("li",[t._v("修复: 导入数据失败问题")]),t._v(" "),r("li",[t._v("修复: 索引加载崩溃问题")]),t._v(" "),r("li",[t._v("修复: 对象树节点切换问题")]),t._v(" "),r("li",[t._v("修复: SQLite 函数编辑问题")]),t._v(" "),r("li",[t._v("修复: 应用控制台告警消息")]),t._v(" "),r("li",[t._v("修复: 编译器控制台告警消息")]),t._v(" "),r("li",[t._v("修复: 上下文菜单导出操作问题")])]),t._v(" "),r("div",[r("script2",{attrs:{type:"text/javascript",async:"true",src:"https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"}}),t._v(" "),r("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),t._v(" "),r("script2",{attrs:{type:"text/javascript"}},[t._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),t._v(" "),r("h2",{attrs:{id:"安装程序和便携安装包"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#安装程序和便携安装包"}},[t._v("#")]),t._v(" 安装程序和便携安装包 "),r("Badge",{attrs:{text:"链接已失效",type:"warning"}})],1),t._v(" "),r("p",[t._v("Windows 用户可通过 winget 工具直接安装袋鼠:"),r("code",[t._v("winget install Taozuhong.Kangaroo")]),t._v(",否则需要自行下载并安装它。")]),t._v(" "),r("table",[r("thead",[r("tr",[r("th",[t._v("安装包")]),t._v(" "),r("th",[t._v("Windows")]),t._v(" "),r("th",[t._v("Linux")]),t._v(" "),r("th",[t._v("MacOS")]),t._v(" "),r("th",[t._v("iOS")]),t._v(" "),r("th",[t._v("Android")])])]),t._v(" "),r("tbody",[r("tr",[r("td",[t._v("安装程序"),r("br"),t._v("(Cloud@China)")]),t._v(" "),r("td",[r("a",{attrs:{href:"https://kangaroo.awaysoft.com/downloads/v2.0.0.221101/kangaroo-2.0.0.221101-AMD64.exe",target:"_blank",rel:"noopener noreferrer"}},[t._v("Server 1"),r("OutboundLink")],1),t._v(" "),r("br"),t._v(" "),r("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v2.0.0.221101/kangaroo-2.0.0.221101-AMD64.exe",target:"_blank",rel:"noopener noreferrer"}},[t._v("Server 2"),r("OutboundLink")],1)]),t._v(" "),r("td",[r("a",{attrs:{href:"https://kangaroo.awaysoft.com/downloads/v2.0.0.221101/kangaroo-2.0.0.221101-1-x86_64.pkg.tar.zst",target:"_blank",rel:"noopener noreferrer"}},[t._v("Server 1"),r("OutboundLink")],1),t._v(" "),r("br"),t._v(" "),r("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v2.0.0.221101/kangaroo-2.0.0.221101-1-x86_64.pkg.tar.zst",target:"_blank",rel:"noopener noreferrer"}},[t._v("Server 2"),r("OutboundLink")],1)]),t._v(" "),r("td",[t._v("[MacOS]")]),t._v(" "),r("td"),t._v(" "),r("td")]),t._v(" "),r("tr",[r("td",[t._v("安装包"),r("br"),t._v("(Cloud@China)")]),t._v(" "),r("td",[r("a",{attrs:{href:"https://kangaroo.awaysoft.com/downloads/v2.0.0.221101/kangaroo-2.0.0.221101-AMD64.7z",target:"_blank",rel:"noopener noreferrer"}},[t._v("Server 1"),r("OutboundLink")],1),t._v(" "),r("br"),t._v(" "),r("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v2.0.0.221101/kangaroo-2.0.0.221101-AMD64.7z",target:"_blank",rel:"noopener noreferrer"}},[t._v("Server 2"),r("OutboundLink")],1)]),t._v(" "),r("td",[r("a",{attrs:{href:"https://kangaroo.awaysoft.com/downloads/v2.0.0.221101/kangaroo-2.0.0.221101-arch.tar.gz",target:"_blank",rel:"noopener noreferrer"}},[t._v("Server 1"),r("OutboundLink")],1),t._v(" "),r("br"),t._v(" "),r("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v2.0.0.221101/kangaroo-2.0.0.221101-arch.tar.gz",target:"_blank",rel:"noopener noreferrer"}},[t._v("Server 2"),r("OutboundLink")],1)]),t._v(" "),r("td",[t._v("[MacOS]")]),t._v(" "),r("td"),t._v(" "),r("td")]),t._v(" "),r("tr",[r("td",[t._v("-----------------")]),t._v(" "),r("td",[t._v("-----------------")]),t._v(" "),r("td",[t._v("-----------------")]),t._v(" "),r("td",[t._v("-----------------")]),t._v(" "),r("td"),t._v(" "),r("td")]),t._v(" "),r("tr",[r("td",[t._v("安装程序"),r("br"),t._v("(Github.com)")]),t._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v2.0.0.221101/kangaroo-2.0.0.221101-AMD64.exe",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows"),r("OutboundLink")],1)]),t._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v2.0.0.221101/kangaroo-2.0.0.221101-1-x86_64.pkg.tar.zst",target:"_blank",rel:"noopener noreferrer"}},[t._v("Arch"),r("OutboundLink")],1)]),t._v(" "),r("td",[t._v("[MacOS]")]),t._v(" "),r("td"),t._v(" "),r("td")]),t._v(" "),r("tr",[r("td",[t._v("安装包"),r("br"),t._v("(Github.com)")]),t._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v2.0.0.221101/kangaroo-2.0.0.221101-AMD64.7z",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows"),r("OutboundLink")],1)]),t._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v2.0.0.221101/kangaroo-2.0.0.221101-arch.tar.gz",target:"_blank",rel:"noopener noreferrer"}},[t._v("Arch"),r("OutboundLink")],1)]),t._v(" "),r("td",[t._v("[MacOS]")]),t._v(" "),r("td"),t._v(" "),r("td")])])]),t._v(" "),r("div",[r("script2",{attrs:{type:"text/javascript",async:"true",src:"https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"}}),t._v(" "),r("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),t._v(" "),r("script2",{attrs:{type:"text/javascript"}},[t._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),t._v(" "),r("h2",{attrs:{id:"sha256sum"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#sha256sum"}},[t._v("#")]),t._v(" SHA256SUM")]),t._v(" "),r("p",[t._v("强烈建议您使用 "),r("code",[t._v("sha256sum")]),t._v("、"),r("code",[t._v("7-Zip")]),t._v(" 等工具,校验您下载的包文件 SHA256 哈希值是否与官方一致,确保您的包文件100%正确无篡改。")]),t._v(" "),r("table",[r("thead",[r("tr",[r("th",[t._v("sha256sum 校验码")]),t._v(" "),r("th",[t._v("袋鼠安装包文件名")])])]),t._v(" "),r("tbody",[r("tr",[r("td",[t._v("5d2eb07a8f05cccc1c07886c56b3b2de9752f6e6efcf0ced62f8d97a02fc7117")]),t._v(" "),r("td",[t._v("kangaroo-2.0.0.221101-AMD64.exe")])]),t._v(" "),r("tr",[r("td",[t._v("3f6fd583a70396563ce63d4416482f1f4b752e55259c8fcf95c281fa479338e5")]),t._v(" "),r("td",[t._v("kangaroo-2.0.0.221101-AMD64.7z")])]),t._v(" "),r("tr",[r("td",[t._v("8f133c6b4a512de64a94d7cfe87184dd91e84d71965ede03076dadef3da4e785")]),t._v(" "),r("td",[t._v("kangaroo-2.0.0.221101-1-x86_64.pkg.tar.zst")])]),t._v(" "),r("tr",[r("td",[t._v("08c705cb664ac6aeb1b8238520f1c8f9219e6639561c8b7d109cfb5f17f62ed5")]),t._v(" "),r("td",[t._v("kangaroo-2.0.0.221101-arch.tar.gz")])])])]),t._v(" "),r("h2",{attrs:{id:"分享给朋友们"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#分享给朋友们"}},[t._v("#")]),t._v(" 分享给朋友们")]),t._v(" "),r("social-share",{attrs:{networks:["wechat","qq","weibo","douban","facebook","twitter","telegram","line","skype","linkedin"]}})],1)}),[],!1,null,null,null);a.default=o.exports}}]); \ No newline at end of file diff --git a/assets/js/21.1737dca5.js b/assets/js/21.1737dca5.js new file mode 100644 index 000000000..527193e7d --- /dev/null +++ b/assets/js/21.1737dca5.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[21],{597:function(t,e,s){"use strict";s.r(e);var n=["There's nothing here.","How did we get here?","That's a Four-Oh-Four.","Looks like we've got some broken links."],o={methods:{getMsg:function(){return n[Math.floor(Math.random()*n.length)]}}},i=s(13),h=Object(i.a)(o,(function(){var t=this.$createElement,e=this._self._c||t;return e("div",{staticClass:"theme-container"},[e("div",{staticClass:"theme-default-content"},[e("h1",[this._v("404")]),this._v(" "),e("blockquote",[this._v(this._s(this.getMsg()))]),this._v(" "),e("RouterLink",{attrs:{to:"/"}},[this._v("\n Take me home.\n ")])],1)])}),[],!1,null,null,null);e.default=h.exports}}]); \ No newline at end of file diff --git a/assets/js/210.9721da8b.js b/assets/js/210.9721da8b.js new file mode 100644 index 000000000..84dc8c2c3 --- /dev/null +++ b/assets/js/210.9721da8b.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[210],{802:function(a,r,t){"use strict";t.r(r);var e=t(13),o=Object(e.a)({},(function(){var a=this,r=a.$createElement,t=a._self._c||r;return t("ContentSlotsDistributor",{attrs:{"slot-key":a.$parent.slotKey}},[t("h1",{attrs:{id:"袋鼠数据库工具-v2-1-1-beta"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#袋鼠数据库工具-v2-1-1-beta"}},[a._v("#")]),a._v(" 袋鼠数据库工具 v2.1.1 (Beta)")]),a._v(" "),t("p",[a._v("这是一个稳定版本,功能成熟度和稳定性无限趋近版本目标,推荐所有用户使用。")]),a._v(" "),t("h2",{attrs:{id:"新特性或修复的缺陷列表"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#新特性或修复的缺陷列表"}},[a._v("#")]),a._v(" 新特性或修复的缺陷列表")]),a._v(" "),t("ul",[t("li",[a._v("添加动态生成二维码支持")]),a._v(" "),t("li",[a._v("添加 debian 安装包支持")]),a._v(" "),t("li",[a._v("实现表设计器 克隆 菜单")]),a._v(" "),t("li",[a._v("实现表设计器 复制/粘贴 菜单")]),a._v(" "),t("li",[a._v("添加表设计器 剪切 菜单")]),a._v(" "),t("li",[a._v("添加 SQL "),t("code",[a._v("EXPLAIN")]),a._v(" 语句支持(带格式)")]),a._v(" "),t("li",[a._v("添加 SQL "),t("code",[a._v("ANALYZE")]),a._v(" 语句支持")]),a._v(" "),t("li",[a._v("重构 SQL 格式化和紧缩化功能")]),a._v(" "),t("li",[a._v("改进编辑器 后退重做 功能支持")]),a._v(" "),t("li",[a._v("更新 Linux 平台安装包脚本")]),a._v(" "),t("li",[a._v("更新中文语言支持(zh-CN/zh-TW/zh-SG/zh-HK)")]),a._v(" "),t("li",[a._v("修复: 关闭查询结果页时崩溃问题")]),a._v(" "),t("li",[a._v("修复: SSH 提示标签文字")])]),a._v(" "),t("div",[t("script2",{attrs:{type:"text/javascript",async:"true",src:"https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"}}),a._v(" "),t("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),a._v(" "),t("script2",{attrs:{type:"text/javascript"}},[a._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),a._v(" "),t("h2",{attrs:{id:"安装程序和便携安装包"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#安装程序和便携安装包"}},[a._v("#")]),a._v(" 安装程序和便携安装包 "),t("Badge",{attrs:{text:"链接已失效",type:"warning"}})],1),a._v(" "),t("p",[a._v("Windows 用户可通过 winget 工具直接安装袋鼠:"),t("code",[a._v("winget install Taozuhong.Kangaroo")]),a._v(",否则需要自行下载并安装它。")]),a._v(" "),t("h3",{attrs:{id:"windows-平台"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#windows-平台"}},[a._v("#")]),a._v(" Windows 平台")]),a._v(" "),t("table",[t("thead",[t("tr",[t("th",[a._v("平台")]),a._v(" "),t("th",[a._v("CPU 架构")]),a._v(" "),t("th",[a._v("安装程序")]),a._v(" "),t("th",[a._v("便携包")])])]),a._v(" "),t("tbody",[t("tr",[t("td",[a._v("Windows")]),a._v(" "),t("td",[a._v("x86-64")]),a._v(" "),t("td",[t("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v2.1.1.221201/kangaroo-2.1.1.221201-x86_64.exe",target:"_blank",rel:"noopener noreferrer"}},[a._v("Github"),t("OutboundLink")],1),a._v(" "),t("br"),a._v(" "),t("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/releases/download/v2.1.1.221201/kangaroo-2.1.1.221201-x86_64.exe",target:"_blank",rel:"noopener noreferrer"}},[a._v("GitEE"),t("OutboundLink")],1),a._v(" "),t("br"),a._v(" "),t("a",{attrs:{href:"https://kangaroo.awaysoft.com/downloads/v2.1.1.221201/kangaroo-2.1.1.221201-x86_64.exe",target:"_blank",rel:"noopener noreferrer"}},[a._v("Server 3"),t("OutboundLink")],1),a._v(" "),t("br"),a._v(" "),t("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v2.1.1.221201/kangaroo-2.1.1.221201-x86_64.exe",target:"_blank",rel:"noopener noreferrer"}},[a._v("Server 4"),t("OutboundLink")],1)]),a._v(" "),t("td",[t("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v2.1.1.221201/kangaroo-2.1.1.221201-x86_64.zip",target:"_blank",rel:"noopener noreferrer"}},[a._v("Github"),t("OutboundLink")],1),a._v(" "),t("br"),a._v(" "),t("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/releases/download/v2.1.1.221201/kangaroo-2.1.1.221201-x86_64.zip",target:"_blank",rel:"noopener noreferrer"}},[a._v("GitEE"),t("OutboundLink")],1),a._v(" "),t("br"),t("a",{attrs:{href:"https://kangaroo.awaysoft.com/downloads/v2.1.1.221201/kangaroo-2.1.1.221201-x86_64.zip",target:"_blank",rel:"noopener noreferrer"}},[a._v("Server 3"),t("OutboundLink")],1),a._v(" "),t("br"),a._v(" "),t("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v2.1.1.221201/kangaroo-2.1.1.221201-x86_64.zip",target:"_blank",rel:"noopener noreferrer"}},[a._v("Server 4"),t("OutboundLink")],1)])]),a._v(" "),t("tr",[t("td",[a._v("Wine / ...")]),a._v(" "),t("td",[a._v("x86-64")]),a._v(" "),t("td",[t("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v2.1.1.221201/kangaroo-2.1.1.221201-x86_64.exe",target:"_blank",rel:"noopener noreferrer"}},[a._v("Github"),t("OutboundLink")],1),a._v(" "),t("br"),a._v(" "),t("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/releases/download/v2.1.1.221201/kangaroo-2.1.1.221201-x86_64.exe",target:"_blank",rel:"noopener noreferrer"}},[a._v("GitEE"),t("OutboundLink")],1),a._v(" "),t("br"),a._v(" "),t("a",{attrs:{href:"https://kangaroo.awaysoft.com/downloads/v2.1.1.221201/kangaroo-2.1.1.221201-x86_64.exe",target:"_blank",rel:"noopener noreferrer"}},[a._v("Server 3"),t("OutboundLink")],1),a._v(" "),t("br"),a._v(" "),t("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v2.1.1.221201/kangaroo-2.1.1.221201-x86_64.exe",target:"_blank",rel:"noopener noreferrer"}},[a._v("Server 4"),t("OutboundLink")],1)]),a._v(" "),t("td",[t("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v2.1.1.221201/kangaroo-2.1.1.221201-x86_64.zip",target:"_blank",rel:"noopener noreferrer"}},[a._v("Github"),t("OutboundLink")],1),a._v(" "),t("br"),a._v(" "),t("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/releases/download/v2.1.1.221201/kangaroo-2.1.1.221201-x86_64.zip",target:"_blank",rel:"noopener noreferrer"}},[a._v("GitEE"),t("OutboundLink")],1),a._v(" "),t("br"),t("a",{attrs:{href:"https://kangaroo.awaysoft.com/downloads/v2.1.1.221201/kangaroo-2.1.1.221201-x86_64.zip",target:"_blank",rel:"noopener noreferrer"}},[a._v("Server 3"),t("OutboundLink")],1),a._v(" "),t("br"),a._v(" "),t("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v2.1.1.221201/kangaroo-2.1.1.221201-x86_64.zip",target:"_blank",rel:"noopener noreferrer"}},[a._v("Server 4"),t("OutboundLink")],1)])])])]),a._v(" "),t("h3",{attrs:{id:"macos-平台"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#macos-平台"}},[a._v("#")]),a._v(" macOS 平台")]),a._v(" "),t("table",[t("thead",[t("tr",[t("th",[a._v("平台")]),a._v(" "),t("th",[a._v("CPU 架构")]),a._v(" "),t("th",[a._v("安装程序")]),a._v(" "),t("th",[a._v("便携包")])])]),a._v(" "),t("tbody",[t("tr",[t("td",[a._v("macOS")]),a._v(" "),t("td",[a._v("ARM64")]),a._v(" "),t("td",[a._v("Coming soon")]),a._v(" "),t("td",[a._v("Coming soon")])])])]),a._v(" "),t("h3",{attrs:{id:"linux-平台"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#linux-平台"}},[a._v("#")]),a._v(" Linux 平台")]),a._v(" "),t("table",[t("thead",[t("tr",[t("th",[a._v("发行版")]),a._v(" "),t("th",[a._v("CPU 架构")]),a._v(" "),t("th",[a._v("安装程序")]),a._v(" "),t("th",[a._v("便携包")])])]),a._v(" "),t("tbody",[t("tr",[t("td",[a._v("Arch Linux")]),a._v(" "),t("td",[a._v("x86-64")]),a._v(" "),t("td",[t("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v2.1.1.221201/kangaroo-2.1.1.221201-1-x86_64.pkg.tar.zst",target:"_blank",rel:"noopener noreferrer"}},[a._v("Github"),t("OutboundLink")],1),a._v(" "),t("br"),a._v(" "),t("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/releases/download/v2.1.1.221201/kangaroo-2.1.1.221201-1-x86_64.pkg.tar.zst",target:"_blank",rel:"noopener noreferrer"}},[a._v("GitEE"),t("OutboundLink")],1),a._v(" "),t("br"),t("a",{attrs:{href:"https://kangaroo.awaysoft.com/downloads/v2.1.1.221201/kangaroo-2.1.1.221201-1-x86_64.pkg.tar.zst",target:"_blank",rel:"noopener noreferrer"}},[a._v("Server 3"),t("OutboundLink")],1),a._v(" "),t("br"),a._v(" "),t("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v2.1.1.221201/kangaroo-2.1.1.221201-1-x86_64.pkg.tar.zst",target:"_blank",rel:"noopener noreferrer"}},[a._v("Server 4"),t("OutboundLink")],1)]),a._v(" "),t("td",[t("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v2.1.1.221201/kangaroo-2.1.1.221201-x86_64.tar.zst",target:"_blank",rel:"noopener noreferrer"}},[a._v("Github"),t("OutboundLink")],1),a._v(" "),t("br"),a._v(" "),t("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/releases/download/v2.1.1.221201/kangaroo-2.1.1.221201-x86_64.tar.zst",target:"_blank",rel:"noopener noreferrer"}},[a._v("GitEE"),t("OutboundLink")],1),a._v(" "),t("br"),t("a",{attrs:{href:"https://kangaroo.awaysoft.com/downloads/v2.1.1.221201/kangaroo-2.1.1.221201-x86_64.tar.zst",target:"_blank",rel:"noopener noreferrer"}},[a._v("Server 3"),t("OutboundLink")],1),a._v(" "),t("br"),a._v(" "),t("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v2.1.1.221201/kangaroo-2.1.1.221201-x86_64.tar.zst",target:"_blank",rel:"noopener noreferrer"}},[a._v("Server 4"),t("OutboundLink")],1)])]),a._v(" "),t("tr",[t("td",[a._v("Debian")]),a._v(" "),t("td",[a._v("x86-64")]),a._v(" "),t("td",[t("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v2.1.1.221201/kangaroo-2.1.1.221201-x86_64.deb",target:"_blank",rel:"noopener noreferrer"}},[a._v("Github"),t("OutboundLink")],1),a._v(" "),t("br"),t("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/releases/download/v2.1.1.221201/kangaroo-2.1.1.221201-x86_64.deb",target:"_blank",rel:"noopener noreferrer"}},[a._v("Gitee"),t("OutboundLink")],1),a._v(" "),t("br"),t("a",{attrs:{href:"https://kangaroo.awaysoft.com/downloads/v2.1.1.221201/kangaroo-2.1.1.221201-x86_64.deb",target:"_blank",rel:"noopener noreferrer"}},[a._v("Server 3"),t("OutboundLink")],1),a._v(" "),t("br"),t("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v2.1.1.221201/kangaroo-2.1.1.221201-x86_64.deb",target:"_blank",rel:"noopener noreferrer"}},[a._v("Server 4"),t("OutboundLink")],1)]),a._v(" "),t("td",[t("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v2.1.1.221201/kangaroo-2.1.1.221201-x86_64.tar.zst",target:"_blank",rel:"noopener noreferrer"}},[a._v("Github"),t("OutboundLink")],1),a._v(" "),t("br"),t("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/releases/download/v2.1.1.221201/kangaroo-2.1.1.221201-x86_64.tar.zst",target:"_blank",rel:"noopener noreferrer"}},[a._v("GitEE"),t("OutboundLink")],1),a._v(" "),t("br"),t("a",{attrs:{href:"https://kangaroo.awaysoft.com/downloads/v2.1.1.221201/kangaroo-2.1.1.221201-x86_64.tar.zst",target:"_blank",rel:"noopener noreferrer"}},[a._v("Server 3"),t("OutboundLink")],1),a._v(" "),t("br"),t("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v2.1.1.221201/kangaroo-2.1.1.221201-x86_64.tar.zst",target:"_blank",rel:"noopener noreferrer"}},[a._v("Server 4"),t("OutboundLink")],1)])])])]),a._v(" "),t("div",[t("script2",{attrs:{type:"text/javascript",async:"true",src:"https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"}}),a._v(" "),t("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),a._v(" "),t("script2",{attrs:{type:"text/javascript"}},[a._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),a._v(" "),t("h2",{attrs:{id:"sha256sum"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#sha256sum"}},[a._v("#")]),a._v(" SHA256SUM")]),a._v(" "),t("p",[a._v("强烈建议您使用 "),t("code",[a._v("sha256sum")]),a._v("、"),t("code",[a._v("7-Zip")]),a._v(" 等工具,校验您下载的包文件 SHA256 哈希值是否与官方一致,确保您的包文件100%正确无篡改。")]),a._v(" "),t("table",[t("thead",[t("tr",[t("th",[a._v("sha256sum 校验码")]),a._v(" "),t("th",[a._v("袋鼠安装包文件名")])])]),a._v(" "),t("tbody",[t("tr",[t("td",[a._v("6de2d62f013661ae17736b4dae785ee717157d11a6004b3c951e181f64d296ae")]),a._v(" "),t("td",[a._v("kangaroo-2.1.1.221201-x86_64.exe")])]),a._v(" "),t("tr",[t("td",[a._v("962097751fe1201aa45a8a7a2968bdf1b0618108558e450efc0cc60959bc234f")]),a._v(" "),t("td",[a._v("kangaroo-2.1.1.221201-x86_64.deb")])]),a._v(" "),t("tr",[t("td",[a._v("178d70c391f94fc74e845c3929840ec10fbc13113d3ceab3fced80cbcd8e303d")]),a._v(" "),t("td",[a._v("kangaroo-2.1.1.221201-1-x86_64.pkg.tar.zst")])]),a._v(" "),t("tr",[t("td",[a._v("9d1727380136502aa070b2c5101381ba0f1ebd2bc3cfae2445654afc87ff5b10")]),a._v(" "),t("td",[a._v("kangaroo-2.1.1.221201-x86_64.tar.zst")])]),a._v(" "),t("tr",[t("td",[a._v("462ec4f64b54c80d29ae9d3b51d29db355b23aa6df395e2e2d9c5c8cf1f55ced")]),a._v(" "),t("td",[a._v("kangaroo-2.1.1.221201-x86_64.zip")])])])]),a._v(" "),t("h2",{attrs:{id:"分享给朋友们"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#分享给朋友们"}},[a._v("#")]),a._v(" 分享给朋友们")]),a._v(" "),t("social-share",{attrs:{networks:["wechat","qq","weibo","douban","facebook","twitter","telegram","line","skype","linkedin"]}})],1)}),[],!1,null,null,null);r.default=o.exports}}]); \ No newline at end of file diff --git a/assets/js/211.58ffed9e.js b/assets/js/211.58ffed9e.js new file mode 100644 index 000000000..bbe5c4e5c --- /dev/null +++ b/assets/js/211.58ffed9e.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[211],{803:function(a,r,t){"use strict";t.r(r);var e=t(13),o=Object(e.a)({},(function(){var a=this,r=a.$createElement,t=a._self._c||r;return t("ContentSlotsDistributor",{attrs:{"slot-key":a.$parent.slotKey}},[t("h1",{attrs:{id:"袋鼠数据库工具-v2-2-1-beta"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#袋鼠数据库工具-v2-2-1-beta"}},[a._v("#")]),a._v(" 袋鼠数据库工具 v2.2.1 (Beta)")]),a._v(" "),t("p",[a._v("这是一个稳定版本,功能成熟度和稳定性无限趋近版本目标,推荐所有用户使用。")]),a._v(" "),t("h2",{attrs:{id:"新特性或修复的缺陷列表"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#新特性或修复的缺陷列表"}},[a._v("#")]),a._v(" 新特性或修复的缺陷列表")]),a._v(" "),t("ul",[t("li",[a._v("增加 SQL 执行对话框")]),a._v(" "),t("li",[a._v("增加 导出并转换对话框")]),a._v(" "),t("li",[a._v("增加查询耗时显示")]),a._v(" "),t("li",[a._v("SQLite: 修复索引字段加载问题")]),a._v(" "),t("li",[a._v("SQLite: 修复备份数据表名字问题")]),a._v(" "),t("li",[a._v("MariaDB: 修复加载架构对象范围问题")]),a._v(" "),t("li",[a._v("MySQL: 修复加载架构对象范围问题")]),a._v(" "),t("li",[a._v("PostgreSQL: 修复 v15 用户属性问题")]),a._v(" "),t("li",[a._v("更新智能提示候选项图标")]),a._v(" "),t("li",[a._v("更新中文语言支持(zh-CN/zh-TW/zh-SG/zh-HK)")]),a._v(" "),t("li",[a._v("更新 Windows 安装程序以默认选择驱动程序")]),a._v(" "),t("li",[a._v("更新 GTK 库: v4.9.2")])]),a._v(" "),t("div",[t("script2",{attrs:{type:"text/javascript",async:"true",src:"https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"}}),a._v(" "),t("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),a._v(" "),t("script2",{attrs:{type:"text/javascript"}},[a._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),a._v(" "),t("h2",{attrs:{id:"安装程序和便携安装包"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#安装程序和便携安装包"}},[a._v("#")]),a._v(" 安装程序和便携安装包 "),t("Badge",{attrs:{text:"链接已失效",type:"warning"}})],1),a._v(" "),t("p",[a._v("Windows 用户可通过 winget 工具直接安装袋鼠:"),t("code",[a._v("winget install Taozuhong.Kangaroo")]),a._v(",否则需要自行下载并安装它。")]),a._v(" "),t("h3",{attrs:{id:"windows-平台"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#windows-平台"}},[a._v("#")]),a._v(" Windows 平台")]),a._v(" "),t("table",[t("thead",[t("tr",[t("th",[a._v("平台")]),a._v(" "),t("th",[a._v("CPU 架构")]),a._v(" "),t("th",[a._v("安装程序")]),a._v(" "),t("th",[a._v("便携包")])])]),a._v(" "),t("tbody",[t("tr",[t("td",[a._v("Windows")]),a._v(" "),t("td",[a._v("x86-64")]),a._v(" "),t("td",[t("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v2.2.1.230101/kangaroo-2.2.1.230101-x86_64.exe",target:"_blank",rel:"noopener noreferrer"}},[a._v("Github"),t("OutboundLink")],1),a._v(" "),t("br"),a._v(" "),t("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/releases/download/v2.2.1.230101/kangaroo-2.2.1.230101-x86_64.exe",target:"_blank",rel:"noopener noreferrer"}},[a._v("GitEE"),t("OutboundLink")],1),a._v(" "),t("br"),a._v(" "),t("a",{attrs:{href:"https://kangaroo.awaysoft.com/downloads/v2.2.1.230101/kangaroo-2.2.1.230101-x86_64.exe",target:"_blank",rel:"noopener noreferrer"}},[a._v("Server 3"),t("OutboundLink")],1),a._v(" "),t("br"),a._v(" "),t("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v2.2.1.230101/kangaroo-2.2.1.230101-x86_64.exe",target:"_blank",rel:"noopener noreferrer"}},[a._v("Server 4"),t("OutboundLink")],1)]),a._v(" "),t("td",[t("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v2.2.1.230101/kangaroo-2.2.1.230101-x86_64.zip",target:"_blank",rel:"noopener noreferrer"}},[a._v("Github"),t("OutboundLink")],1),a._v(" "),t("br"),a._v(" "),t("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/releases/download/v2.2.1.230101/kangaroo-2.2.1.230101-x86_64.zip",target:"_blank",rel:"noopener noreferrer"}},[a._v("GitEE"),t("OutboundLink")],1),a._v(" "),t("br"),t("a",{attrs:{href:"https://kangaroo.awaysoft.com/downloads/v2.2.1.230101/kangaroo-2.2.1.230101-x86_64.zip",target:"_blank",rel:"noopener noreferrer"}},[a._v("Server 3"),t("OutboundLink")],1),a._v(" "),t("br"),a._v(" "),t("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v2.2.1.230101/kangaroo-2.2.1.230101-x86_64.zip",target:"_blank",rel:"noopener noreferrer"}},[a._v("Server 4"),t("OutboundLink")],1)])]),a._v(" "),t("tr",[t("td",[a._v("Wine / ...")]),a._v(" "),t("td",[a._v("x86-64")]),a._v(" "),t("td",[t("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v2.2.1.230101/kangaroo-2.2.1.230101-x86_64.exe",target:"_blank",rel:"noopener noreferrer"}},[a._v("Github"),t("OutboundLink")],1),a._v(" "),t("br"),a._v(" "),t("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/releases/download/v2.2.1.230101/kangaroo-2.2.1.230101-x86_64.exe",target:"_blank",rel:"noopener noreferrer"}},[a._v("GitEE"),t("OutboundLink")],1),a._v(" "),t("br"),a._v(" "),t("a",{attrs:{href:"https://kangaroo.awaysoft.com/downloads/v2.2.1.230101/kangaroo-2.2.1.230101-x86_64.exe",target:"_blank",rel:"noopener noreferrer"}},[a._v("Server 3"),t("OutboundLink")],1),a._v(" "),t("br"),a._v(" "),t("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v2.2.1.230101/kangaroo-2.2.1.230101-x86_64.exe",target:"_blank",rel:"noopener noreferrer"}},[a._v("Server 4"),t("OutboundLink")],1)]),a._v(" "),t("td",[t("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v2.2.1.230101/kangaroo-2.2.1.230101-x86_64.zip",target:"_blank",rel:"noopener noreferrer"}},[a._v("Github"),t("OutboundLink")],1),a._v(" "),t("br"),a._v(" "),t("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/releases/download/v2.2.1.230101/kangaroo-2.2.1.230101-x86_64.zip",target:"_blank",rel:"noopener noreferrer"}},[a._v("GitEE"),t("OutboundLink")],1),a._v(" "),t("br"),t("a",{attrs:{href:"https://kangaroo.awaysoft.com/downloads/v2.2.1.230101/kangaroo-2.2.1.230101-x86_64.zip",target:"_blank",rel:"noopener noreferrer"}},[a._v("Server 3"),t("OutboundLink")],1),a._v(" "),t("br"),a._v(" "),t("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v2.2.1.230101/kangaroo-2.2.1.230101-x86_64.zip",target:"_blank",rel:"noopener noreferrer"}},[a._v("Server 4"),t("OutboundLink")],1)])])])]),a._v(" "),t("h3",{attrs:{id:"macos-平台"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#macos-平台"}},[a._v("#")]),a._v(" macOS 平台")]),a._v(" "),t("table",[t("thead",[t("tr",[t("th",[a._v("平台")]),a._v(" "),t("th",[a._v("CPU 架构")]),a._v(" "),t("th",[a._v("安装程序")]),a._v(" "),t("th",[a._v("便携包")])])]),a._v(" "),t("tbody",[t("tr",[t("td",[a._v("macOS")]),a._v(" "),t("td",[a._v("ARM64")]),a._v(" "),t("td",[a._v("Coming soon")]),a._v(" "),t("td",[a._v("Coming soon")])])])]),a._v(" "),t("h3",{attrs:{id:"linux-平台"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#linux-平台"}},[a._v("#")]),a._v(" Linux 平台")]),a._v(" "),t("table",[t("thead",[t("tr",[t("th",[a._v("发行版")]),a._v(" "),t("th",[a._v("CPU 架构")]),a._v(" "),t("th",[a._v("安装程序")]),a._v(" "),t("th",[a._v("便携包")])])]),a._v(" "),t("tbody",[t("tr",[t("td",[a._v("Arch Linux")]),a._v(" "),t("td",[a._v("x86-64")]),a._v(" "),t("td",[t("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v2.2.1.230101/kangaroo-2.2.1.230101-1-x86_64.pkg.tar.zst",target:"_blank",rel:"noopener noreferrer"}},[a._v("Github"),t("OutboundLink")],1),a._v(" "),t("br"),a._v(" "),t("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/releases/download/v2.2.1.230101/kangaroo-2.2.1.230101-1-x86_64.pkg.tar.zst",target:"_blank",rel:"noopener noreferrer"}},[a._v("GitEE"),t("OutboundLink")],1),a._v(" "),t("br"),t("a",{attrs:{href:"https://kangaroo.awaysoft.com/downloads/v2.2.1.230101/kangaroo-2.2.1.230101-1-x86_64.pkg.tar.zst",target:"_blank",rel:"noopener noreferrer"}},[a._v("Server 3"),t("OutboundLink")],1),a._v(" "),t("br"),a._v(" "),t("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v2.2.1.230101/kangaroo-2.2.1.230101-1-x86_64.pkg.tar.zst",target:"_blank",rel:"noopener noreferrer"}},[a._v("Server 4"),t("OutboundLink")],1)]),a._v(" "),t("td",[t("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v2.2.1.230101/kangaroo-2.2.1.230101-x86_64.tar.zst",target:"_blank",rel:"noopener noreferrer"}},[a._v("Github"),t("OutboundLink")],1),a._v(" "),t("br"),a._v(" "),t("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/releases/download/v2.2.1.230101/kangaroo-2.2.1.230101-x86_64.tar.zst",target:"_blank",rel:"noopener noreferrer"}},[a._v("GitEE"),t("OutboundLink")],1),a._v(" "),t("br"),t("a",{attrs:{href:"https://kangaroo.awaysoft.com/downloads/v2.2.1.230101/kangaroo-2.2.1.230101-x86_64.tar.zst",target:"_blank",rel:"noopener noreferrer"}},[a._v("Server 3"),t("OutboundLink")],1),a._v(" "),t("br"),a._v(" "),t("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v2.2.1.230101/kangaroo-2.2.1.230101-x86_64.tar.zst",target:"_blank",rel:"noopener noreferrer"}},[a._v("Server 4"),t("OutboundLink")],1)])]),a._v(" "),t("tr",[t("td",[a._v("Debian")]),a._v(" "),t("td",[a._v("x86-64")]),a._v(" "),t("td",[t("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v2.2.1.230101/kangaroo-2.2.1.230101-x86_64.deb",target:"_blank",rel:"noopener noreferrer"}},[a._v("Github"),t("OutboundLink")],1),a._v(" "),t("br"),t("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/releases/download/v2.2.1.230101/kangaroo-2.2.1.230101-x86_64.deb",target:"_blank",rel:"noopener noreferrer"}},[a._v("Gitee"),t("OutboundLink")],1),a._v(" "),t("br"),t("a",{attrs:{href:"https://kangaroo.awaysoft.com/downloads/v2.2.1.230101/kangaroo-2.2.1.230101-x86_64.deb",target:"_blank",rel:"noopener noreferrer"}},[a._v("Server 3"),t("OutboundLink")],1),a._v(" "),t("br"),t("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v2.2.1.230101/kangaroo-2.2.1.230101-x86_64.deb",target:"_blank",rel:"noopener noreferrer"}},[a._v("Server 4"),t("OutboundLink")],1)]),a._v(" "),t("td",[t("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v2.2.1.230101/kangaroo-2.2.1.230101-x86_64.tar.zst",target:"_blank",rel:"noopener noreferrer"}},[a._v("Github"),t("OutboundLink")],1),a._v(" "),t("br"),t("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/releases/download/v2.2.1.230101/kangaroo-2.2.1.230101-x86_64.tar.zst",target:"_blank",rel:"noopener noreferrer"}},[a._v("GitEE"),t("OutboundLink")],1),a._v(" "),t("br"),t("a",{attrs:{href:"https://kangaroo.awaysoft.com/downloads/v2.2.1.230101/kangaroo-2.2.1.230101-x86_64.tar.zst",target:"_blank",rel:"noopener noreferrer"}},[a._v("Server 3"),t("OutboundLink")],1),a._v(" "),t("br"),t("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v2.2.1.230101/kangaroo-2.2.1.230101-x86_64.tar.zst",target:"_blank",rel:"noopener noreferrer"}},[a._v("Server 4"),t("OutboundLink")],1)])])])]),a._v(" "),t("div",[t("script2",{attrs:{type:"text/javascript",async:"true",src:"https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"}}),a._v(" "),t("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),a._v(" "),t("script2",{attrs:{type:"text/javascript"}},[a._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),a._v(" "),t("h2",{attrs:{id:"sha256sum"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#sha256sum"}},[a._v("#")]),a._v(" SHA256SUM")]),a._v(" "),t("p",[a._v("强烈建议您使用 "),t("code",[a._v("sha256sum")]),a._v("、"),t("code",[a._v("7-Zip")]),a._v(" 等工具,校验您下载的包文件 SHA256 哈希值是否与官方一致,确保您的包文件100%正确无篡改。")]),a._v(" "),t("table",[t("thead",[t("tr",[t("th",[a._v("sha256sum 校验码")]),a._v(" "),t("th",[a._v("袋鼠安装包文件名")])])]),a._v(" "),t("tbody",[t("tr",[t("td",[a._v("f8f1c499457740ae5ae105fc8f44de891c1372acd14e02fb3d9cd243322eef62")]),a._v(" "),t("td",[a._v("kangaroo-2.2.1.230101-x86_64.exe")])]),a._v(" "),t("tr",[t("td",[a._v("b40b165ac2ac6e9cce1710b5af004768e5957b06ff9fad81d2bfe7643ea12168")]),a._v(" "),t("td",[a._v("kangaroo-2.2.1.230101-x86_64.deb")])]),a._v(" "),t("tr",[t("td",[a._v("ac5798dbb2a680df9ea72e337fa839fc009bca60efc71c0baf7decddad3ae68a")]),a._v(" "),t("td",[a._v("kangaroo-2.2.1.230101-1-x86_64.pkg.tar.zst")])]),a._v(" "),t("tr",[t("td",[a._v("21e9c511d51b20673b43d245af0ec95928113f7479284854c7422bd463f26992")]),a._v(" "),t("td",[a._v("kangaroo-2.2.1.230101-x86_64.tar.zst")])]),a._v(" "),t("tr",[t("td",[a._v("50631a8ecdca13d55a3a53c882934f5068f2bf6c87601f39cd94dd50fd98a2d8")]),a._v(" "),t("td",[a._v("kangaroo-2.2.1.230101-x86_64.zip")])])])]),a._v(" "),t("h2",{attrs:{id:"分享给朋友们"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#分享给朋友们"}},[a._v("#")]),a._v(" 分享给朋友们")]),a._v(" "),t("social-share",{attrs:{networks:["wechat","qq","weibo","douban","facebook","twitter","telegram","line","skype","linkedin"]}})],1)}),[],!1,null,null,null);r.default=o.exports}}]); \ No newline at end of file diff --git a/assets/js/212.043c835a.js b/assets/js/212.043c835a.js new file mode 100644 index 000000000..8ea82d906 --- /dev/null +++ b/assets/js/212.043c835a.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[212],{804:function(r,a,t){"use strict";t.r(a);var e=t(13),o=Object(e.a)({},(function(){var r=this,a=r.$createElement,t=r._self._c||a;return t("ContentSlotsDistributor",{attrs:{"slot-key":r.$parent.slotKey}},[t("h1",{attrs:{id:"袋鼠数据库工具-v2-3-1-beta"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#袋鼠数据库工具-v2-3-1-beta"}},[r._v("#")]),r._v(" 袋鼠数据库工具 v2.3.1 (Beta)")]),r._v(" "),t("p",[r._v("这是一个稳定版本,功能成熟度和稳定性无限趋近版本目标,推荐所有用户使用。")]),r._v(" "),t("h2",{attrs:{id:"新特性或修复的缺陷列表"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#新特性或修复的缺陷列表"}},[r._v("#")]),r._v(" 新特性或修复的缺陷列表")]),r._v(" "),t("ul",[t("li",[r._v("增加用户查询文件面板")]),r._v(" "),t("li",[r._v("增加用户模型文件面板")]),r._v(" "),t("li",[r._v("更新工具栏样式")]),r._v(" "),t("li",[r._v("连接空间支持分割视图 (垂直或水平)")]),r._v(" "),t("li",[r._v("连接空间增加 状态栏控件")]),r._v(" "),t("li",[r._v("连接空间增加 语言切换 支持")]),r._v(" "),t("li",[r._v("连接空间增加 换行符 支持")]),r._v(" "),t("li",[r._v("连接空间增加 文件编码 支持")]),r._v(" "),t("li",[r._v("连接空间增加 自动换行 支持")]),r._v(" "),t("li",[r._v("连接空间增加 缩进设置 支持")]),r._v(" "),t("li",[r._v("连接空间增加 位置信息 支持")]),r._v(" "),t("li",[r._v("连接空间增加 面板切换 支持")]),r._v(" "),t("li",[r._v("连接空间增加 工作页消息 支持")]),r._v(" "),t("li",[r._v("更新关于窗口(增加系统信息)")]),r._v(" "),t("li",[r._v("更新 RPM 包安装脚本")]),r._v(" "),t("li",[r._v("更新中文语言支持(zh-CN/zh-TW/zh-SG/zh-HK)")]),r._v(" "),t("li",[r._v("移除主菜单之视图子菜单")])]),r._v(" "),t("div",[t("script2",{attrs:{type:"text/javascript",async:"true",src:"https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"}}),r._v(" "),t("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),r._v(" "),t("script2",{attrs:{type:"text/javascript"}},[r._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),r._v(" "),t("h2",{attrs:{id:"安装程序和便携安装包"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#安装程序和便携安装包"}},[r._v("#")]),r._v(" 安装程序和便携安装包 "),t("Badge",{attrs:{text:"链接已失效",type:"warning"}})],1),r._v(" "),t("p",[r._v("Windows 用户可通过 winget 工具直接安装袋鼠:"),t("code",[r._v("winget install Taozuhong.Kangaroo")]),r._v(",否则需要自行下载并安装它。")]),r._v(" "),t("h3",{attrs:{id:"windows-平台"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#windows-平台"}},[r._v("#")]),r._v(" Windows 平台")]),r._v(" "),t("table",[t("thead",[t("tr",[t("th",[r._v("平台")]),r._v(" "),t("th",[r._v("CPU 架构")]),r._v(" "),t("th",[r._v("安装程序")]),r._v(" "),t("th",[r._v("便携包")])])]),r._v(" "),t("tbody",[t("tr",[t("td",[r._v("Windows")]),r._v(" "),t("td",[r._v("x86-64")]),r._v(" "),t("td",[t("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v2.3.1.230201/kangaroo-2.3.1.230201-x86_64.exe",target:"_blank",rel:"noopener noreferrer"}},[r._v("Github"),t("OutboundLink")],1),r._v(" "),t("br"),r._v(" "),t("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/releases/download/v2.3.1.230201/kangaroo-2.3.1.230201-x86_64.exe",target:"_blank",rel:"noopener noreferrer"}},[r._v("GitEE"),t("OutboundLink")],1),r._v(" "),t("br"),r._v(" "),t("a",{attrs:{href:"https://kangaroo.awaysoft.com/downloads/v2.3.1.230201/kangaroo-2.3.1.230201-x86_64.exe",target:"_blank",rel:"noopener noreferrer"}},[r._v("Server 3"),t("OutboundLink")],1),r._v(" "),t("br"),r._v(" "),t("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v2.3.1.230201/kangaroo-2.3.1.230201-x86_64.exe",target:"_blank",rel:"noopener noreferrer"}},[r._v("Server 4"),t("OutboundLink")],1)]),r._v(" "),t("td",[t("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v2.3.1.230201/kangaroo-2.3.1.230201-x86_64.zip",target:"_blank",rel:"noopener noreferrer"}},[r._v("Github"),t("OutboundLink")],1),r._v(" "),t("br"),r._v(" "),t("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/releases/download/v2.3.1.230201/kangaroo-2.3.1.230201-x86_64.zip",target:"_blank",rel:"noopener noreferrer"}},[r._v("GitEE"),t("OutboundLink")],1),r._v(" "),t("br"),t("a",{attrs:{href:"https://kangaroo.awaysoft.com/downloads/v2.3.1.230201/kangaroo-2.3.1.230201-x86_64.zip",target:"_blank",rel:"noopener noreferrer"}},[r._v("Server 3"),t("OutboundLink")],1),r._v(" "),t("br"),r._v(" "),t("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v2.3.1.230201/kangaroo-2.3.1.230201-x86_64.zip",target:"_blank",rel:"noopener noreferrer"}},[r._v("Server 4"),t("OutboundLink")],1)])]),r._v(" "),t("tr",[t("td",[r._v("Wine / ...")]),r._v(" "),t("td",[r._v("x86-64")]),r._v(" "),t("td",[t("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v2.3.1.230201/kangaroo-2.3.1.230201-x86_64.exe",target:"_blank",rel:"noopener noreferrer"}},[r._v("Github"),t("OutboundLink")],1),r._v(" "),t("br"),r._v(" "),t("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/releases/download/v2.3.1.230201/kangaroo-2.3.1.230201-x86_64.exe",target:"_blank",rel:"noopener noreferrer"}},[r._v("GitEE"),t("OutboundLink")],1),r._v(" "),t("br"),r._v(" "),t("a",{attrs:{href:"https://kangaroo.awaysoft.com/downloads/v2.3.1.230201/kangaroo-2.3.1.230201-x86_64.exe",target:"_blank",rel:"noopener noreferrer"}},[r._v("Server 3"),t("OutboundLink")],1),r._v(" "),t("br"),r._v(" "),t("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v2.3.1.230201/kangaroo-2.3.1.230201-x86_64.exe",target:"_blank",rel:"noopener noreferrer"}},[r._v("Server 4"),t("OutboundLink")],1)]),r._v(" "),t("td",[t("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v2.3.1.230201/kangaroo-2.3.1.230201-x86_64.zip",target:"_blank",rel:"noopener noreferrer"}},[r._v("Github"),t("OutboundLink")],1),r._v(" "),t("br"),r._v(" "),t("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/releases/download/v2.3.1.230201/kangaroo-2.3.1.230201-x86_64.zip",target:"_blank",rel:"noopener noreferrer"}},[r._v("GitEE"),t("OutboundLink")],1),r._v(" "),t("br"),t("a",{attrs:{href:"https://kangaroo.awaysoft.com/downloads/v2.3.1.230201/kangaroo-2.3.1.230201-x86_64.zip",target:"_blank",rel:"noopener noreferrer"}},[r._v("Server 3"),t("OutboundLink")],1),r._v(" "),t("br"),r._v(" "),t("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v2.3.1.230201/kangaroo-2.3.1.230201-x86_64.zip",target:"_blank",rel:"noopener noreferrer"}},[r._v("Server 4"),t("OutboundLink")],1)])])])]),r._v(" "),t("h3",{attrs:{id:"macos-平台"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#macos-平台"}},[r._v("#")]),r._v(" macOS 平台")]),r._v(" "),t("table",[t("thead",[t("tr",[t("th",[r._v("平台")]),r._v(" "),t("th",[r._v("CPU 架构")]),r._v(" "),t("th",[r._v("安装程序")]),r._v(" "),t("th",[r._v("便携包")])])]),r._v(" "),t("tbody",[t("tr",[t("td",[r._v("macOS")]),r._v(" "),t("td",[r._v("ARM64")]),r._v(" "),t("td",[r._v("Coming soon")]),r._v(" "),t("td",[r._v("Coming soon")])])])]),r._v(" "),t("h3",{attrs:{id:"linux-平台"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#linux-平台"}},[r._v("#")]),r._v(" Linux 平台")]),r._v(" "),t("p",[r._v("这个版本使用未发布的依赖库版本,鉴于依赖库版本未发布原因,不建议 Linux 普通用户使用。"),t("br"),r._v("\n专业用户需要自行拉取代码并编译、安装,才能让袋鼠正常使用,相关依赖库为:"),t("br"),r._v("\nGTK4 >= 4.10 "),t("br"),r._v("\nlibpanel >= 1.2.0")]),r._v(" "),t("table",[t("thead",[t("tr",[t("th",[r._v("发行版")]),r._v(" "),t("th",[r._v("CPU 架构")]),r._v(" "),t("th",[r._v("安装程序")]),r._v(" "),t("th",[r._v("便携包")])])]),r._v(" "),t("tbody",[t("tr",[t("td",[r._v("Arch Linux")]),r._v(" "),t("td",[r._v("x86-64")]),r._v(" "),t("td",[t("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v2.3.1.230201/kangaroo-2.3.1.230201-1-x86_64.pkg.tar.zst",target:"_blank",rel:"noopener noreferrer"}},[r._v("Github"),t("OutboundLink")],1),r._v(" "),t("br"),r._v(" "),t("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/releases/download/v2.3.1.230201/kangaroo-2.3.1.230201-1-x86_64.pkg.tar.zst",target:"_blank",rel:"noopener noreferrer"}},[r._v("GitEE"),t("OutboundLink")],1),r._v(" "),t("br"),t("a",{attrs:{href:"https://kangaroo.awaysoft.com/downloads/v2.3.1.230201/kangaroo-2.3.1.230201-1-x86_64.pkg.tar.zst",target:"_blank",rel:"noopener noreferrer"}},[r._v("Server 3"),t("OutboundLink")],1),r._v(" "),t("br"),r._v(" "),t("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v2.3.1.230201/kangaroo-2.3.1.230201-1-x86_64.pkg.tar.zst",target:"_blank",rel:"noopener noreferrer"}},[r._v("Server 4"),t("OutboundLink")],1)]),r._v(" "),t("td",[t("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v2.3.1.230201/kangaroo-2.3.1.230201-x86_64.tar.zst",target:"_blank",rel:"noopener noreferrer"}},[r._v("Github"),t("OutboundLink")],1),r._v(" "),t("br"),r._v(" "),t("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/releases/download/v2.3.1.230201/kangaroo-2.3.1.230201-x86_64.tar.zst",target:"_blank",rel:"noopener noreferrer"}},[r._v("GitEE"),t("OutboundLink")],1),r._v(" "),t("br"),t("a",{attrs:{href:"https://kangaroo.awaysoft.com/downloads/v2.3.1.230201/kangaroo-2.3.1.230201-x86_64.tar.zst",target:"_blank",rel:"noopener noreferrer"}},[r._v("Server 3"),t("OutboundLink")],1),r._v(" "),t("br"),r._v(" "),t("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v2.3.1.230201/kangaroo-2.3.1.230201-x86_64.tar.zst",target:"_blank",rel:"noopener noreferrer"}},[r._v("Server 4"),t("OutboundLink")],1)])]),r._v(" "),t("tr",[t("td",[r._v("Debian")]),r._v(" "),t("td",[r._v("x86-64")]),r._v(" "),t("td",[t("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v2.3.1.230201/kangaroo-2.3.1.230201-x86_64.deb",target:"_blank",rel:"noopener noreferrer"}},[r._v("Github"),t("OutboundLink")],1),r._v(" "),t("br"),t("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/releases/download/v2.3.1.230201/kangaroo-2.3.1.230201-x86_64.deb",target:"_blank",rel:"noopener noreferrer"}},[r._v("Gitee"),t("OutboundLink")],1),r._v(" "),t("br"),t("a",{attrs:{href:"https://kangaroo.awaysoft.com/downloads/v2.3.1.230201/kangaroo-2.3.1.230201-x86_64.deb",target:"_blank",rel:"noopener noreferrer"}},[r._v("Server 3"),t("OutboundLink")],1),r._v(" "),t("br"),t("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v2.3.1.230201/kangaroo-2.3.1.230201-x86_64.deb",target:"_blank",rel:"noopener noreferrer"}},[r._v("Server 4"),t("OutboundLink")],1)]),r._v(" "),t("td",[t("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v2.3.1.230201/kangaroo-2.3.1.230201-x86_64.tar.zst",target:"_blank",rel:"noopener noreferrer"}},[r._v("Github"),t("OutboundLink")],1),r._v(" "),t("br"),t("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/releases/download/v2.3.1.230201/kangaroo-2.3.1.230201-x86_64.tar.zst",target:"_blank",rel:"noopener noreferrer"}},[r._v("GitEE"),t("OutboundLink")],1),r._v(" "),t("br"),t("a",{attrs:{href:"https://kangaroo.awaysoft.com/downloads/v2.3.1.230201/kangaroo-2.3.1.230201-x86_64.tar.zst",target:"_blank",rel:"noopener noreferrer"}},[r._v("Server 3"),t("OutboundLink")],1),r._v(" "),t("br"),t("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v2.3.1.230201/kangaroo-2.3.1.230201-x86_64.tar.zst",target:"_blank",rel:"noopener noreferrer"}},[r._v("Server 4"),t("OutboundLink")],1)])])])]),r._v(" "),t("div",[t("script2",{attrs:{type:"text/javascript",async:"true",src:"https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"}}),r._v(" "),t("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),r._v(" "),t("script2",{attrs:{type:"text/javascript"}},[r._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),r._v(" "),t("h2",{attrs:{id:"sha256sum"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#sha256sum"}},[r._v("#")]),r._v(" SHA256SUM")]),r._v(" "),t("p",[r._v("强烈建议您使用 "),t("code",[r._v("sha256sum")]),r._v("、"),t("code",[r._v("7-Zip")]),r._v(" 等工具,校验您下载的包文件 SHA256 哈希值是否与官方一致,确保您的包文件100%正确无篡改。")]),r._v(" "),t("table",[t("thead",[t("tr",[t("th",[r._v("sha256sum 校验码")]),r._v(" "),t("th",[r._v("袋鼠安装包文件名")])])]),r._v(" "),t("tbody",[t("tr",[t("td",[r._v("80ceec4732a66fe112111941438c8461674671493548cb3a97d34a4cfb53fb65")]),r._v(" "),t("td",[r._v("kangaroo-2.3.1.230201-x86_64.exe")])]),r._v(" "),t("tr",[t("td",[r._v("fb8d8e1d3b9b5783888ca076ccb693e2de588a14355ccaf8e2eb507d2862f5f6")]),r._v(" "),t("td",[r._v("kangaroo-2.3.1.230201-x86_64.deb")])]),r._v(" "),t("tr",[t("td",[r._v("63feed9980b379490b6c8f70ae29fc157426c9cb153f2365fd47e9ae52be86b6")]),r._v(" "),t("td",[r._v("kangaroo-2.3.1.230201-1-x86_64.pkg.tar.zst")])]),r._v(" "),t("tr",[t("td",[r._v("69fc68ccf672ccacb180010e88de3e31ff43581138f782acee6d322d20342616")]),r._v(" "),t("td",[r._v("kangaroo-2.3.1.230201-x86_64.tar.zst")])]),r._v(" "),t("tr",[t("td",[r._v("31e99493b8f78204b372ad5935eee0f3740dc2123ecebd4f7e1946eac0cc584d")]),r._v(" "),t("td",[r._v("kangaroo-2.3.1.230201-x86_64.zip")])])])]),r._v(" "),t("h2",{attrs:{id:"分享给朋友们"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#分享给朋友们"}},[r._v("#")]),r._v(" 分享给朋友们")]),r._v(" "),t("social-share",{attrs:{networks:["wechat","qq","weibo","douban","facebook","twitter","telegram","line","skype","linkedin"]}})],1)}),[],!1,null,null,null);a.default=o.exports}}]); \ No newline at end of file diff --git a/assets/js/213.cc772839.js b/assets/js/213.cc772839.js new file mode 100644 index 000000000..101ca20c3 --- /dev/null +++ b/assets/js/213.cc772839.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[213],{805:function(a,r,t){"use strict";t.r(r);var e=t(13),o=Object(e.a)({},(function(){var a=this,r=a.$createElement,t=a._self._c||r;return t("ContentSlotsDistributor",{attrs:{"slot-key":a.$parent.slotKey}},[t("h1",{attrs:{id:"袋鼠数据库工具-v2-3-2-beta"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#袋鼠数据库工具-v2-3-2-beta"}},[a._v("#")]),a._v(" 袋鼠数据库工具 v2.3.2 (Beta)")]),a._v(" "),t("p",[a._v("这是一个稳定版本,功能成熟度和稳定性无限趋近版本目标,推荐所有用户使用。")]),a._v(" "),t("h2",{attrs:{id:"新特性或修复的缺陷列表"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#新特性或修复的缺陷列表"}},[a._v("#")]),a._v(" 新特性或修复的缺陷列表")]),a._v(" "),t("ul",[t("li",[a._v("MySQL: 增加执行器菜单入口")]),a._v(" "),t("li",[a._v("MariaDB: 增加执行器菜单入口")]),a._v(" "),t("li",[a._v("PostgreSQL: 增加执行器菜单入口")]),a._v(" "),t("li",[a._v("更新 DataGrid 常规样式背景色")]),a._v(" "),t("li",[a._v("更新中文语言支持(zh-CN/zh-TW/zh-SG/zh-HK)")]),a._v(" "),t("li",[a._v("修复: 未知字段 SCHEMA_COMMENT (< MariaDB 10.5)")]),a._v(" "),t("li",[a._v("修复: 执行器文件对话框问题")]),a._v(" "),t("li",[a._v("修复: 智能提示小写输入时无法响应问题")]),a._v(" "),t("li",[a._v("修复: 网格相关的崩溃问题")])]),a._v(" "),t("div",[t("script2",{attrs:{type:"text/javascript",async:"true",src:"https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"}}),a._v(" "),t("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),a._v(" "),t("script2",{attrs:{type:"text/javascript"}},[a._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),a._v(" "),t("h2",{attrs:{id:"安装程序和便携安装包"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#安装程序和便携安装包"}},[a._v("#")]),a._v(" 安装程序和便携安装包")]),a._v(" "),t("p",[a._v("Windows 用户可通过 winget 工具直接安装袋鼠:"),t("code",[a._v("winget install Taozuhong.Kangaroo")]),a._v(",否则需要自行下载并安装它。")]),a._v(" "),t("h3",{attrs:{id:"windows-平台"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#windows-平台"}},[a._v("#")]),a._v(" Windows 平台")]),a._v(" "),t("table",[t("thead",[t("tr",[t("th",[a._v("平台")]),a._v(" "),t("th",[a._v("CPU 架构")]),a._v(" "),t("th",[a._v("安装程序")]),a._v(" "),t("th",[a._v("便携包")])])]),a._v(" "),t("tbody",[t("tr",[t("td",[a._v("Windows")]),a._v(" "),t("td",[a._v("x86-64")]),a._v(" "),t("td",[t("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v2.3.2.230301/kangaroo-2.3.2.230306-x86_64.exe",target:"_blank",rel:"noopener noreferrer"}},[a._v("Github"),t("OutboundLink")],1),a._v(" "),t("br"),a._v(" "),t("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/releases/download/v2.3.2.230301/kangaroo-2.3.2.230306-x86_64.exe",target:"_blank",rel:"noopener noreferrer"}},[a._v("GitEE"),t("OutboundLink")],1),a._v(" "),t("br"),a._v(" "),t("a",{attrs:{href:"https://kangaroo.awaysoft.com/downloads/v2.3.2.230301/kangaroo-2.3.2.230306-x86_64.exe",target:"_blank",rel:"noopener noreferrer"}},[a._v("Server 3"),t("OutboundLink")],1),a._v(" "),t("br"),a._v(" "),t("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v2.3.2.230301/kangaroo-2.3.2.230306-x86_64.exe",target:"_blank",rel:"noopener noreferrer"}},[a._v("Server 4"),t("OutboundLink")],1)]),a._v(" "),t("td",[t("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v2.3.2.230301/kangaroo-2.3.2.230306-x86_64.zip",target:"_blank",rel:"noopener noreferrer"}},[a._v("Github"),t("OutboundLink")],1),a._v(" "),t("br"),a._v(" "),t("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/releases/download/v2.3.2.230301/kangaroo-2.3.2.230306-x86_64.zip",target:"_blank",rel:"noopener noreferrer"}},[a._v("GitEE"),t("OutboundLink")],1),a._v(" "),t("br"),t("a",{attrs:{href:"https://kangaroo.awaysoft.com/downloads/v2.3.2.230301/kangaroo-2.3.2.230306-x86_64.zip",target:"_blank",rel:"noopener noreferrer"}},[a._v("Server 3"),t("OutboundLink")],1),a._v(" "),t("br"),a._v(" "),t("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v2.3.2.230301/kangaroo-2.3.2.230306-x86_64.zip",target:"_blank",rel:"noopener noreferrer"}},[a._v("Server 4"),t("OutboundLink")],1)])]),a._v(" "),t("tr",[t("td",[a._v("Wine / ...")]),a._v(" "),t("td",[a._v("x86-64")]),a._v(" "),t("td",[t("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v2.3.2.230301/kangaroo-2.3.2.230306-x86_64.exe",target:"_blank",rel:"noopener noreferrer"}},[a._v("Github"),t("OutboundLink")],1),a._v(" "),t("br"),a._v(" "),t("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/releases/download/v2.3.2.230301/kangaroo-2.3.2.230306-x86_64.exe",target:"_blank",rel:"noopener noreferrer"}},[a._v("GitEE"),t("OutboundLink")],1),a._v(" "),t("br"),a._v(" "),t("a",{attrs:{href:"https://kangaroo.awaysoft.com/downloads/v2.3.2.230301/kangaroo-2.3.2.230306-x86_64.exe",target:"_blank",rel:"noopener noreferrer"}},[a._v("Server 3"),t("OutboundLink")],1),a._v(" "),t("br"),a._v(" "),t("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v2.3.2.230301/kangaroo-2.3.2.230306-x86_64.exe",target:"_blank",rel:"noopener noreferrer"}},[a._v("Server 4"),t("OutboundLink")],1)]),a._v(" "),t("td",[t("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v2.3.2.230301/kangaroo-2.3.2.230306-x86_64.zip",target:"_blank",rel:"noopener noreferrer"}},[a._v("Github"),t("OutboundLink")],1),a._v(" "),t("br"),a._v(" "),t("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/releases/download/v2.3.2.230301/kangaroo-2.3.2.230306-x86_64.zip",target:"_blank",rel:"noopener noreferrer"}},[a._v("GitEE"),t("OutboundLink")],1),a._v(" "),t("br"),t("a",{attrs:{href:"https://kangaroo.awaysoft.com/downloads/v2.3.2.230301/kangaroo-2.3.2.230306-x86_64.zip",target:"_blank",rel:"noopener noreferrer"}},[a._v("Server 3"),t("OutboundLink")],1),a._v(" "),t("br"),a._v(" "),t("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v2.3.2.230301/kangaroo-2.3.2.230306-x86_64.zip",target:"_blank",rel:"noopener noreferrer"}},[a._v("Server 4"),t("OutboundLink")],1)])])])]),a._v(" "),t("h3",{attrs:{id:"macos-平台"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#macos-平台"}},[a._v("#")]),a._v(" macOS 平台")]),a._v(" "),t("table",[t("thead",[t("tr",[t("th",[a._v("平台")]),a._v(" "),t("th",[a._v("CPU 架构")]),a._v(" "),t("th",[a._v("安装程序")]),a._v(" "),t("th",[a._v("便携包")])])]),a._v(" "),t("tbody",[t("tr",[t("td",[a._v("macOS")]),a._v(" "),t("td",[a._v("ARM64")]),a._v(" "),t("td",[a._v("Coming soon")]),a._v(" "),t("td",[a._v("Coming soon")])])])]),a._v(" "),t("h3",{attrs:{id:"linux-平台"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#linux-平台"}},[a._v("#")]),a._v(" Linux 平台")]),a._v(" "),t("p",[a._v("这个版本使用未发布的依赖库版本,鉴于依赖库版本未发布原因,不建议 Linux 普通用户使用。"),t("br"),a._v("\n专业用户需要自行拉取代码并编译、安装,才能让袋鼠正常使用,相关依赖库为:"),t("br"),a._v("\nGTK4 >= 4.10 "),t("br"),a._v("\nlibpanel >= 1.2.0")]),a._v(" "),t("table",[t("thead",[t("tr",[t("th",[a._v("发行版")]),a._v(" "),t("th",[a._v("CPU 架构")]),a._v(" "),t("th",[a._v("安装程序")]),a._v(" "),t("th",[a._v("便携包")])])]),a._v(" "),t("tbody",[t("tr",[t("td",[a._v("Arch Linux")]),a._v(" "),t("td",[a._v("x86-64")]),a._v(" "),t("td",[t("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v2.3.2.230301/kangaroo-2.3.2.230301-1-x86_64.pkg.tar.zst",target:"_blank",rel:"noopener noreferrer"}},[a._v("Github"),t("OutboundLink")],1),a._v(" "),t("br"),a._v(" "),t("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/releases/download/v2.3.2.230301/kangaroo-2.3.2.230301-1-x86_64.pkg.tar.zst",target:"_blank",rel:"noopener noreferrer"}},[a._v("GitEE"),t("OutboundLink")],1),a._v(" "),t("br"),t("a",{attrs:{href:"https://kangaroo.awaysoft.com/downloads/v2.3.2.230301/kangaroo-2.3.2.230301-1-x86_64.pkg.tar.zst",target:"_blank",rel:"noopener noreferrer"}},[a._v("Server 3"),t("OutboundLink")],1),a._v(" "),t("br"),a._v(" "),t("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v2.3.2.230301/kangaroo-2.3.2.230301-1-x86_64.pkg.tar.zst",target:"_blank",rel:"noopener noreferrer"}},[a._v("Server 4"),t("OutboundLink")],1)]),a._v(" "),t("td",[t("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v2.3.2.230301/kangaroo-2.3.2.230301-x86_64.tar.zst",target:"_blank",rel:"noopener noreferrer"}},[a._v("Github"),t("OutboundLink")],1),a._v(" "),t("br"),a._v(" "),t("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/releases/download/v2.3.2.230301/kangaroo-2.3.2.230301-x86_64.tar.zst",target:"_blank",rel:"noopener noreferrer"}},[a._v("GitEE"),t("OutboundLink")],1),a._v(" "),t("br"),t("a",{attrs:{href:"https://kangaroo.awaysoft.com/downloads/v2.3.2.230301/kangaroo-2.3.2.230301-x86_64.tar.zst",target:"_blank",rel:"noopener noreferrer"}},[a._v("Server 3"),t("OutboundLink")],1),a._v(" "),t("br"),a._v(" "),t("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v2.3.2.230301/kangaroo-2.3.2.230301-x86_64.tar.zst",target:"_blank",rel:"noopener noreferrer"}},[a._v("Server 4"),t("OutboundLink")],1)])]),a._v(" "),t("tr",[t("td",[a._v("Debian")]),a._v(" "),t("td",[a._v("x86-64")]),a._v(" "),t("td",[t("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v2.3.2.230301/kangaroo-2.3.2.230301-x86_64.deb",target:"_blank",rel:"noopener noreferrer"}},[a._v("Github"),t("OutboundLink")],1),a._v(" "),t("br"),t("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/releases/download/v2.3.2.230301/kangaroo-2.3.2.230301-x86_64.deb",target:"_blank",rel:"noopener noreferrer"}},[a._v("Gitee"),t("OutboundLink")],1),a._v(" "),t("br"),t("a",{attrs:{href:"https://kangaroo.awaysoft.com/downloads/v2.3.2.230301/kangaroo-2.3.2.230301-x86_64.deb",target:"_blank",rel:"noopener noreferrer"}},[a._v("Server 3"),t("OutboundLink")],1),a._v(" "),t("br"),t("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v2.3.2.230301/kangaroo-2.3.2.230301-x86_64.deb",target:"_blank",rel:"noopener noreferrer"}},[a._v("Server 4"),t("OutboundLink")],1)]),a._v(" "),t("td",[t("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v2.3.2.230301/kangaroo-2.3.2.230301-x86_64.tar.zst",target:"_blank",rel:"noopener noreferrer"}},[a._v("Github"),t("OutboundLink")],1),a._v(" "),t("br"),t("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/releases/download/v2.3.2.230301/kangaroo-2.3.2.230301-x86_64.tar.zst",target:"_blank",rel:"noopener noreferrer"}},[a._v("GitEE"),t("OutboundLink")],1),a._v(" "),t("br"),t("a",{attrs:{href:"https://kangaroo.awaysoft.com/downloads/v2.3.2.230301/kangaroo-2.3.2.230301-x86_64.tar.zst",target:"_blank",rel:"noopener noreferrer"}},[a._v("Server 3"),t("OutboundLink")],1),a._v(" "),t("br"),t("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v2.3.2.230301/kangaroo-2.3.2.230301-x86_64.tar.zst",target:"_blank",rel:"noopener noreferrer"}},[a._v("Server 4"),t("OutboundLink")],1)])])])]),a._v(" "),t("div",[t("script2",{attrs:{type:"text/javascript",async:"true",src:"https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"}}),a._v(" "),t("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),a._v(" "),t("script2",{attrs:{type:"text/javascript"}},[a._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),a._v(" "),t("h2",{attrs:{id:"sha256sum"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#sha256sum"}},[a._v("#")]),a._v(" SHA256SUM")]),a._v(" "),t("p",[a._v("强烈建议您使用 "),t("code",[a._v("sha256sum")]),a._v("、"),t("code",[a._v("7-Zip")]),a._v(" 等工具,校验您下载的包文件 SHA256 哈希值是否与官方一致,确保您的包文件100%正确无篡改。")]),a._v(" "),t("table",[t("thead",[t("tr",[t("th",[a._v("sha256sum 校验码")]),a._v(" "),t("th",[a._v("袋鼠安装包文件名")])])]),a._v(" "),t("tbody",[t("tr",[t("td",[a._v("9f6a2368a75e7a0825dfef99bcd7a2b284a9cd6399276242ef39a1048df1700b")]),a._v(" "),t("td",[a._v("kangaroo-2.3.2.230306-x86_64.exe")])]),a._v(" "),t("tr",[t("td",[a._v("cb7f78ca9c271e456f387acfe383b2670093cc8f09dba3e0aa7281527858817e")]),a._v(" "),t("td",[a._v("kangaroo-2.3.2.230301-x86_64.deb")])]),a._v(" "),t("tr",[t("td",[a._v("66d6c00c67a71179121e780b2e986144ae5e5ed129d9c65ba4f341911813b4e1")]),a._v(" "),t("td",[a._v("kangaroo-2.3.2.230301-1-x86_64.pkg.tar.zst")])]),a._v(" "),t("tr",[t("td",[a._v("cd039507f4a8e514f342e35535a7e344c1baafadace4635b6d357eed03f1e689")]),a._v(" "),t("td",[a._v("kangaroo-2.3.2.230301-x86_64.tar.zst")])]),a._v(" "),t("tr",[t("td",[a._v("38b5c52a6e7b04ed958482bdb33782aef4456be6412e6ce5a24d89901f22b856")]),a._v(" "),t("td",[a._v("kangaroo-2.3.2.230306-x86_64.zip")])])])]),a._v(" "),t("h2",{attrs:{id:"分享给朋友们"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#分享给朋友们"}},[a._v("#")]),a._v(" 分享给朋友们")]),a._v(" "),t("social-share",{attrs:{networks:["wechat","qq","weibo","douban","facebook","twitter","telegram","line","skype","linkedin"]}})],1)}),[],!1,null,null,null);r.default=o.exports}}]); \ No newline at end of file diff --git a/assets/js/214.923afd56.js b/assets/js/214.923afd56.js new file mode 100644 index 000000000..01618f1e0 --- /dev/null +++ b/assets/js/214.923afd56.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[214],{806:function(t,a,e){"use strict";e.r(a);var r=e(13),o=Object(r.a)({},(function(){var t=this,a=t.$createElement,e=t._self._c||a;return e("ContentSlotsDistributor",{attrs:{"slot-key":t.$parent.slotKey}},[e("h1",{attrs:{id:"袋鼠数据库工具-v2-99-1-beta"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#袋鼠数据库工具-v2-99-1-beta"}},[t._v("#")]),t._v(" 袋鼠数据库工具 v2.99.1 (Beta)")]),t._v(" "),e("p",[t._v("这是一个稳定版本,功能成熟度和稳定性无限趋近版本目标,推荐所有用户使用。")]),t._v(" "),e("div",{staticClass:"custom-block danger"},[e("p",{staticClass:"custom-block-title"},[t._v("重要提示")]),t._v(" "),e("p",[t._v("版本中标注有 "),e("Badge",{attrs:{text:"Dev"}}),t._v(" "),e("Badge",{attrs:{text:"Beta"}}),t._v(" 字样的可以免费使用,其它版本需要付费。")],1)]),t._v(" "),e("h2",{attrs:{id:"新特性或修复的缺陷列表"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#新特性或修复的缺陷列表"}},[t._v("#")]),t._v(" 新特性或修复的缺陷列表")]),t._v(" "),e("ul",[e("li",[t._v("SQLite: 添加数据库直接访问支持")]),t._v(" "),e("li",[t._v("MySQL: 添加数据库直接访问支持")]),t._v(" "),e("li",[t._v("MariaDB: 添加数据库直接访问支持")]),t._v(" "),e("li",[t._v("PostgreSQL: 添加数据库直接访问支持")]),t._v(" "),e("li",[t._v("改善了浮点数显示支持(默认展示5位小数位)")]),t._v(" "),e("li",[t._v("改进了连接建立方式(无需选择驱动)")]),t._v(" "),e("li",[t._v("更新中文语言支持(zh-CN/zh-TW/zh-SG/zh-HK)")])]),t._v(" "),e("div",[e("script2",{attrs:{type:"text/javascript",async:"true",src:"https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"}}),t._v(" "),e("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),t._v(" "),e("script2",{attrs:{type:"text/javascript"}},[t._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),t._v(" "),e("h2",{attrs:{id:"安装程序和便携安装包"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#安装程序和便携安装包"}},[t._v("#")]),t._v(" 安装程序和便携安装包 "),e("Badge",{attrs:{text:"链接已失效",type:"warning"}})],1),t._v(" "),e("p",[t._v("Windows 用户可通过 winget 工具直接安装袋鼠:"),e("code",[t._v("winget install Taozuhong.Kangaroo")]),t._v(",否则需要自行下载并安装它。")]),t._v(" "),e("h3",{attrs:{id:"windows-平台"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#windows-平台"}},[t._v("#")]),t._v(" Windows 平台")]),t._v(" "),e("table",[e("thead",[e("tr",[e("th",[t._v("Architect")]),t._v(" "),e("th",[t._v("All")]),t._v(" "),e("th",[t._v("SQLite")]),t._v(" "),e("th",[t._v("MariaDB")]),t._v(" "),e("th",[t._v("MySQL")]),t._v(" "),e("th",[t._v("PostgreSQL")])])]),t._v(" "),e("tbody",[e("tr",[e("td",[t._v("x86-64")]),t._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v2.99.1.230331/kangaroo-max-2.99.1.230331-x86_64.exe",target:"_blank",rel:"noopener noreferrer"}},[t._v("Github"),e("OutboundLink")],1),t._v(" "),e("br"),t._v(" "),e("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/releases/download/v2.99.1.230331/kangaroo-max-2.99.1.230331-x86_64.exe",target:"_blank",rel:"noopener noreferrer"}},[t._v("GitEE"),e("OutboundLink")],1),t._v(" "),e("br"),t._v(" "),e("a",{attrs:{href:"https://kangaroo.awaysoft.com/downloads/v2.99.1.230331/kangaroo-max-2.99.1.230331-x86_64.exe",target:"_blank",rel:"noopener noreferrer"}},[t._v("Server 3"),e("OutboundLink")],1),t._v(" "),e("br"),t._v(" "),e("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v2.99.1.230331/kangaroo-max-2.99.1.230331-x86_64.exe",target:"_blank",rel:"noopener noreferrer"}},[t._v("Server 4"),e("OutboundLink")],1)]),t._v(" "),e("td",[e("a",{attrs:{href:"https://kangaroo.awaysoft.com/downloads/v2.99.1.230331/kangaroo-sqlite-2.99.1.230331-x86_64.exe",target:"_blank",rel:"noopener noreferrer"}},[t._v("Server 3"),e("OutboundLink")],1),t._v(" "),e("br"),t._v(" "),e("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v2.99.1.230331/kangaroo-sqlite-2.99.1.230331-x86_64.exe",target:"_blank",rel:"noopener noreferrer"}},[t._v("Server 4"),e("OutboundLink")],1)]),t._v(" "),e("td",[e("a",{attrs:{href:"https://kangaroo.awaysoft.com/downloads/v2.99.1.230331/kangaroo-mariadb-2.99.1.230331-x86_64.exe",target:"_blank",rel:"noopener noreferrer"}},[t._v("Server 3"),e("OutboundLink")],1),t._v(" "),e("br"),t._v(" "),e("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v2.99.1.230331/kangaroo-mariadb-2.99.1.230331-x86_64.exe",target:"_blank",rel:"noopener noreferrer"}},[t._v("Server 4"),e("OutboundLink")],1)]),t._v(" "),e("td",[e("a",{attrs:{href:"https://kangaroo.awaysoft.com/downloads/v2.99.1.230331/kangaroo-mysql-2.99.1.230331-x86_64.exe",target:"_blank",rel:"noopener noreferrer"}},[t._v("Server 3"),e("OutboundLink")],1),t._v(" "),e("br"),t._v(" "),e("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v2.99.1.230331/kangaroo-mysql-2.99.1.230331-x86_64.exe",target:"_blank",rel:"noopener noreferrer"}},[t._v("Server 4"),e("OutboundLink")],1)]),t._v(" "),e("td",[e("a",{attrs:{href:"https://kangaroo.awaysoft.com/downloads/v2.99.1.230331/kangaroo-postgresql-2.99.1.230331-x86_64.exe",target:"_blank",rel:"noopener noreferrer"}},[t._v("Server 3"),e("OutboundLink")],1),t._v(" "),e("br"),t._v(" "),e("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v2.99.1.230331/kangaroo-postgresql-2.99.1.230331-x86_64.exe",target:"_blank",rel:"noopener noreferrer"}},[t._v("Server 4"),e("OutboundLink")],1)])]),t._v(" "),e("tr",[e("td",[t._v("ARM64")]),t._v(" "),e("td"),t._v(" "),e("td"),t._v(" "),e("td"),t._v(" "),e("td"),t._v(" "),e("td")]),t._v(" "),e("tr",[e("td",[t._v("RISCV64")]),t._v(" "),e("td"),t._v(" "),e("td"),t._v(" "),e("td"),t._v(" "),e("td"),t._v(" "),e("td")])])]),t._v(" "),e("h3",{attrs:{id:"macos-平台"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#macos-平台"}},[t._v("#")]),t._v(" macOS 平台")]),t._v(" "),e("table",[e("thead",[e("tr",[e("th",[t._v("Architect")]),t._v(" "),e("th",[t._v("All")]),t._v(" "),e("th",[t._v("SQLite")]),t._v(" "),e("th",[t._v("MariaDB")]),t._v(" "),e("th",[t._v("MySQL")]),t._v(" "),e("th",[t._v("PostgreSQL")])])]),t._v(" "),e("tbody",[e("tr",[e("td",[t._v("ARM64")]),t._v(" "),e("td"),t._v(" "),e("td"),t._v(" "),e("td"),t._v(" "),e("td"),t._v(" "),e("td")]),t._v(" "),e("tr",[e("td",[t._v("x86-64")]),t._v(" "),e("td"),t._v(" "),e("td"),t._v(" "),e("td"),t._v(" "),e("td"),t._v(" "),e("td")]),t._v(" "),e("tr",[e("td",[t._v("RISCV64")]),t._v(" "),e("td"),t._v(" "),e("td"),t._v(" "),e("td"),t._v(" "),e("td"),t._v(" "),e("td")])])]),t._v(" "),e("h3",{attrs:{id:"linux-平台"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#linux-平台"}},[t._v("#")]),t._v(" Linux 平台")]),t._v(" "),e("p",[t._v("这个版本使用未发布的依赖库版本,鉴于依赖库版本未发布原因,不建议 Linux 普通用户使用。"),e("br"),t._v("\n专业用户需要自行拉取代码并编译、安装,才能让袋鼠正常使用,相关依赖库为:"),e("br"),t._v("\nGTK4 >= 4.10 "),e("br"),t._v("\nlibpanel >= 1.2.0")]),t._v(" "),e("table",[e("thead",[e("tr",[e("th",[t._v("Architect")]),t._v(" "),e("th",[t._v("All")]),t._v(" "),e("th",[t._v("SQLite")]),t._v(" "),e("th",[t._v("MariaDB")]),t._v(" "),e("th",[t._v("MySQL")]),t._v(" "),e("th",[t._v("PostgreSQL")])])]),t._v(" "),e("tbody",[e("tr",[e("td",[t._v("x86-64")]),t._v(" "),e("td",[t._v("Arch Linux"),e("br"),e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v2.99.1.230331/kangaroo-max-2.99.1.230331-1-x86_64.pkg.tar.zst",target:"_blank",rel:"noopener noreferrer"}},[t._v("Github"),e("OutboundLink")],1),t._v(" "),e("br"),t._v(" "),e("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/releases/download/v2.99.1.230331/kangaroo-max-2.99.1.230331-1-x86_64.pkg.tar.zst",target:"_blank",rel:"noopener noreferrer"}},[t._v("GitEE"),e("OutboundLink")],1),t._v(" "),e("br"),e("a",{attrs:{href:"https://kangaroo.awaysoft.com/downloads/v2.99.1.230331/kangaroo-max-2.99.1.230331-1-x86_64.pkg.tar.zst",target:"_blank",rel:"noopener noreferrer"}},[t._v("Server 3"),e("OutboundLink")],1),t._v(" "),e("br"),t._v(" "),e("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v2.99.1.230331/kangaroo-max-2.99.1.230331-1-x86_64.pkg.tar.zst",target:"_blank",rel:"noopener noreferrer"}},[t._v("Server 4"),e("OutboundLink")],1),e("br"),e("br"),t._v(" Debian"),e("br"),t._v(" "),e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v2.99.1.230331/kangaroo-max-2.99.1.230331-x86_64.deb",target:"_blank",rel:"noopener noreferrer"}},[t._v("Github"),e("OutboundLink")],1),t._v(" "),e("br"),e("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/releases/download/v2.99.1.230331/kangaroo-max-2.99.1.230331-x86_64.deb",target:"_blank",rel:"noopener noreferrer"}},[t._v("Gitee"),e("OutboundLink")],1),t._v(" "),e("br"),e("a",{attrs:{href:"https://kangaroo.awaysoft.com/downloads/v2.99.1.230331/kangaroo-max-2.99.1.230331-x86_64.deb",target:"_blank",rel:"noopener noreferrer"}},[t._v("Server 3"),e("OutboundLink")],1),t._v(" "),e("br"),e("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v2.99.1.230331/kangaroo-max-2.99.1.230331-x86_64.deb",target:"_blank",rel:"noopener noreferrer"}},[t._v("Server 4"),e("OutboundLink")],1)]),t._v(" "),e("td"),t._v(" "),e("td"),t._v(" "),e("td"),t._v(" "),e("td")]),t._v(" "),e("tr",[e("td",[t._v("ARM64")]),t._v(" "),e("td"),t._v(" "),e("td"),t._v(" "),e("td"),t._v(" "),e("td"),t._v(" "),e("td")]),t._v(" "),e("tr",[e("td",[t._v("RISCV64")]),t._v(" "),e("td"),t._v(" "),e("td"),t._v(" "),e("td"),t._v(" "),e("td"),t._v(" "),e("td")])])]),t._v(" "),e("div",[e("script2",{attrs:{type:"text/javascript",async:"true",src:"https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"}}),t._v(" "),e("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),t._v(" "),e("script2",{attrs:{type:"text/javascript"}},[t._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),t._v(" "),e("h2",{attrs:{id:"sha256sum"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#sha256sum"}},[t._v("#")]),t._v(" SHA256SUM")]),t._v(" "),e("p",[t._v("强烈建议您使用 "),e("code",[t._v("sha256sum")]),t._v("、"),e("code",[t._v("7-Zip")]),t._v(" 等工具,校验您下载的包文件 SHA256 哈希值是否与官方一致,确保您的包文件100%正确无篡改。")]),t._v(" "),e("table",[e("thead",[e("tr",[e("th",[t._v("sha256sum 校验码")]),t._v(" "),e("th",[t._v("袋鼠安装包文件名")])])]),t._v(" "),e("tbody",[e("tr",[e("td",[t._v("7fd73a026a9eca11b6769d8b6beafd34b63334a4ec76b13d2f3f38a2d1f5db32")]),t._v(" "),e("td",[t._v("kangaroo-max-2.99.1.230331-x86_64.exe")])]),t._v(" "),e("tr",[e("td",[t._v("5819560a44db6362570c5450e2c0a3625b7239fd37a037e759b450e51cc5f297")]),t._v(" "),e("td",[t._v("kangaroo-max-2.99.1.230331-x86_64.deb")])]),t._v(" "),e("tr",[e("td",[t._v("b7e67a536e59e621fdde52781fdc99d8834da5ce4b3f06803f5ea50d4a35a960")]),t._v(" "),e("td",[t._v("kangaroo-max-2.99.1.230331-1-x86_64.pkg.tar.zst")])]),t._v(" "),e("tr",[e("td",[t._v("b132143cc3df47fc42a2de0c8aa5a20bdc7b8673ad4095b39d09fd1f583d0f3a")]),t._v(" "),e("td",[t._v("kangaroo-mariadb-2.99.1.230331-x86_64.exe")])]),t._v(" "),e("tr",[e("td",[t._v("f9f92846076b2c78a369d11beaabb796896f16029251be2bc31891dcfe3f2091")]),t._v(" "),e("td",[t._v("kangaroo-mysql-2.99.1.230331-x86_64.exe")])]),t._v(" "),e("tr",[e("td",[t._v("2914978bce2d85de81763f7fce32f532d9fbb03b9e209867e438c62355fd6f51")]),t._v(" "),e("td",[t._v("kangaroo-postgresql-2.99.1.230331-x86_64.exe")])]),t._v(" "),e("tr",[e("td",[t._v("de71c55462a52ca05b1f132c720f8dbfbd5f373a586b32041e2a6d96e1b45af3")]),t._v(" "),e("td",[t._v("kangaroo-sqlite-2.99.1.230331-x86_64.exe")])]),t._v(" "),e("tr",[e("td",[t._v("2f4aec27314c1e9bfbf1eca13d7586b9fbe2a378e289ee25a1a1a7edd2c1cc81")]),t._v(" "),e("td",[t._v("kangaroo-max-2.99.1.230331-x86_64.7z")])]),t._v(" "),e("tr",[e("td",[t._v("b20df8610802e904e7eee58d30c4bd77e86292dde90d2c270a37c5a0e75ab616")]),t._v(" "),e("td",[t._v("kangaroo-max-2.99.1.230331-x86_64.tar.zst")])])])]),t._v(" "),e("h2",{attrs:{id:"分享给朋友们"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#分享给朋友们"}},[t._v("#")]),t._v(" 分享给朋友们")]),t._v(" "),e("social-share",{attrs:{networks:["wechat","qq","weibo","douban","facebook","twitter","telegram","line","skype","linkedin"]}})],1)}),[],!1,null,null,null);a.default=o.exports}}]); \ No newline at end of file diff --git a/assets/js/215.0e9eaf45.js b/assets/js/215.0e9eaf45.js new file mode 100644 index 000000000..bb7b93b82 --- /dev/null +++ b/assets/js/215.0e9eaf45.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[215],{807:function(t,a,r){"use strict";r.r(a);var e=r(13),o=Object(e.a)({},(function(){var t=this,a=t.$createElement,r=t._self._c||a;return r("ContentSlotsDistributor",{attrs:{"slot-key":t.$parent.slotKey}},[r("h1",{attrs:{id:"袋鼠数据库工具-v2-99-2-beta"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#袋鼠数据库工具-v2-99-2-beta"}},[t._v("#")]),t._v(" 袋鼠数据库工具 v2.99.2 (Beta)")]),t._v(" "),r("p",[t._v("这是一个稳定版本,功能成熟度和稳定性无限趋近版本目标,推荐所有用户使用。")]),t._v(" "),r("div",{staticClass:"custom-block danger"},[r("p",{staticClass:"custom-block-title"},[t._v("重要提示")]),t._v(" "),r("p",[t._v("版本中标注有 "),r("Badge",{attrs:{text:"Dev"}}),t._v(" "),r("Badge",{attrs:{text:"Beta"}}),t._v(" 字样的可以免费使用,其它版本需要付费。")],1)]),t._v(" "),r("h2",{attrs:{id:"新特性或修复的缺陷列表"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#新特性或修复的缺陷列表"}},[t._v("#")]),t._v(" 新特性或修复的缺陷列表")]),t._v(" "),r("ul",[r("li",[t._v("添加沙盒运行支持 (仅限 Windows)")]),t._v(" "),r("li",[t._v("GTK4 升级为 4.10.3")]),t._v(" "),r("li",[t._v("libadwaita 升级为 1.3.1")]),t._v(" "),r("li",[t._v("修复: 对话框无法关闭")])]),t._v(" "),r("div",[r("script2",{attrs:{type:"text/javascript",async:"true",src:"https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"}}),t._v(" "),r("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),t._v(" "),r("script2",{attrs:{type:"text/javascript"}},[t._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),t._v(" "),r("h2",{attrs:{id:"安装程序和便携安装包"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#安装程序和便携安装包"}},[t._v("#")]),t._v(" 安装程序和便携安装包 "),r("Badge",{attrs:{text:"链接已失效",type:"warning"}})],1),t._v(" "),r("p",[t._v("Windows 用户可通过 winget 工具直接安装袋鼠:"),r("code",[t._v("winget install Taozuhong.Kangaroo")]),t._v(",否则需要自行下载并安装它。")]),t._v(" "),r("h3",{attrs:{id:"windows-平台"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#windows-平台"}},[t._v("#")]),t._v(" Windows 平台")]),t._v(" "),r("table",[r("thead",[r("tr",[r("th",[t._v("Architect")]),t._v(" "),r("th",[t._v("All")]),t._v(" "),r("th",[t._v("SQLite")]),t._v(" "),r("th",[t._v("MariaDB")]),t._v(" "),r("th",[t._v("MySQL")]),t._v(" "),r("th",[t._v("PostgreSQL")])])]),t._v(" "),r("tbody",[r("tr",[r("td",[t._v("x86-64")]),t._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v2.99.2.230428/kangaroo-max-2.99.2.230430-x86_64.exe",target:"_blank",rel:"noopener noreferrer"}},[t._v("Github"),r("OutboundLink")],1),t._v(" "),r("br"),t._v(" "),r("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/releases/download/v2.99.2.230428/kangaroo-max-2.99.2.230430-x86_64.exe",target:"_blank",rel:"noopener noreferrer"}},[t._v("GitEE"),r("OutboundLink")],1),t._v(" "),r("br"),t._v(" "),r("a",{attrs:{href:"https://kangaroo.awaysoft.com/downloads/v2.99.2.230428/kangaroo-max-2.99.2.230430-x86_64.exe",target:"_blank",rel:"noopener noreferrer"}},[t._v("Server 3"),r("OutboundLink")],1),t._v(" "),r("br"),t._v(" "),r("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v2.99.2.230428/kangaroo-max-2.99.2.230430-x86_64.exe",target:"_blank",rel:"noopener noreferrer"}},[t._v("Server 4"),r("OutboundLink")],1)]),t._v(" "),r("td",[r("a",{attrs:{href:"https://kangaroo.awaysoft.com/downloads/v2.99.2.230428/kangaroo-sqlite-2.99.2.230430-x86_64.exe",target:"_blank",rel:"noopener noreferrer"}},[t._v("Server 3"),r("OutboundLink")],1),t._v(" "),r("br"),t._v(" "),r("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v2.99.2.230428/kangaroo-sqlite-2.99.2.230430-x86_64.exe",target:"_blank",rel:"noopener noreferrer"}},[t._v("Server 4"),r("OutboundLink")],1)]),t._v(" "),r("td",[r("a",{attrs:{href:"https://kangaroo.awaysoft.com/downloads/v2.99.2.230428/kangaroo-mariadb-2.99.2.230430-x86_64.exe",target:"_blank",rel:"noopener noreferrer"}},[t._v("Server 3"),r("OutboundLink")],1),t._v(" "),r("br"),t._v(" "),r("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v2.99.2.230428/kangaroo-mariadb-2.99.2.230430-x86_64.exe",target:"_blank",rel:"noopener noreferrer"}},[t._v("Server 4"),r("OutboundLink")],1)]),t._v(" "),r("td",[r("a",{attrs:{href:"https://kangaroo.awaysoft.com/downloads/v2.99.2.230428/kangaroo-mysql-2.99.2.230430-x86_64.exe",target:"_blank",rel:"noopener noreferrer"}},[t._v("Server 3"),r("OutboundLink")],1),t._v(" "),r("br"),t._v(" "),r("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v2.99.2.230428/kangaroo-mysql-2.99.2.230430-x86_64.exe",target:"_blank",rel:"noopener noreferrer"}},[t._v("Server 4"),r("OutboundLink")],1)]),t._v(" "),r("td",[r("a",{attrs:{href:"https://kangaroo.awaysoft.com/downloads/v2.99.2.230428/kangaroo-postgresql-2.99.2.230430-x86_64.exe",target:"_blank",rel:"noopener noreferrer"}},[t._v("Server 3"),r("OutboundLink")],1),t._v(" "),r("br"),t._v(" "),r("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v2.99.2.230428/kangaroo-postgresql-2.99.2.230430-x86_64.exe",target:"_blank",rel:"noopener noreferrer"}},[t._v("Server 4"),r("OutboundLink")],1)])]),t._v(" "),r("tr",[r("td",[t._v("ARM64")]),t._v(" "),r("td"),t._v(" "),r("td"),t._v(" "),r("td"),t._v(" "),r("td"),t._v(" "),r("td")]),t._v(" "),r("tr",[r("td",[t._v("RISCV64")]),t._v(" "),r("td"),t._v(" "),r("td"),t._v(" "),r("td"),t._v(" "),r("td"),t._v(" "),r("td")])])]),t._v(" "),r("h3",{attrs:{id:"macos-平台"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#macos-平台"}},[t._v("#")]),t._v(" macOS 平台")]),t._v(" "),r("table",[r("thead",[r("tr",[r("th",[t._v("Architect")]),t._v(" "),r("th",[t._v("All")]),t._v(" "),r("th",[t._v("SQLite")]),t._v(" "),r("th",[t._v("MariaDB")]),t._v(" "),r("th",[t._v("MySQL")]),t._v(" "),r("th",[t._v("PostgreSQL")])])]),t._v(" "),r("tbody",[r("tr",[r("td",[t._v("ARM64")]),t._v(" "),r("td"),t._v(" "),r("td"),t._v(" "),r("td"),t._v(" "),r("td"),t._v(" "),r("td")]),t._v(" "),r("tr",[r("td",[t._v("x86-64")]),t._v(" "),r("td"),t._v(" "),r("td"),t._v(" "),r("td"),t._v(" "),r("td"),t._v(" "),r("td")]),t._v(" "),r("tr",[r("td",[t._v("RISCV64")]),t._v(" "),r("td"),t._v(" "),r("td"),t._v(" "),r("td"),t._v(" "),r("td"),t._v(" "),r("td")])])]),t._v(" "),r("h3",{attrs:{id:"linux-平台"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#linux-平台"}},[t._v("#")]),t._v(" Linux 平台")]),t._v(" "),r("p",[t._v("这个版本使用未发布的依赖库版本,鉴于依赖库版本未发布原因,不建议 Linux 普通用户使用。"),r("br"),t._v("\n专业用户需要自行拉取代码并编译、安装,才能让袋鼠正常使用,相关依赖库为:"),r("br"),t._v("\nGTK4 >= 4.10 "),r("br"),t._v("\nlibpanel >= 1.2.0")]),t._v(" "),r("table",[r("thead",[r("tr",[r("th",[t._v("Architect")]),t._v(" "),r("th",[t._v("All")]),t._v(" "),r("th",[t._v("SQLite")]),t._v(" "),r("th",[t._v("MariaDB")]),t._v(" "),r("th",[t._v("MySQL")]),t._v(" "),r("th",[t._v("PostgreSQL")])])]),t._v(" "),r("tbody",[r("tr",[r("td",[t._v("x86-64")]),t._v(" "),r("td",[t._v("Arch Linux"),r("br"),r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v2.99.2.230428/kangaroo-max-2.99.2.230430-1-x86_64.pkg.tar.zst",target:"_blank",rel:"noopener noreferrer"}},[t._v("Github"),r("OutboundLink")],1),t._v(" "),r("br"),t._v(" "),r("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/releases/download/v2.99.2.230428/kangaroo-max-2.99.2.230430-1-x86_64.pkg.tar.zst",target:"_blank",rel:"noopener noreferrer"}},[t._v("GitEE"),r("OutboundLink")],1),t._v(" "),r("br"),r("a",{attrs:{href:"https://kangaroo.awaysoft.com/downloads/v2.99.2.230428/kangaroo-max-2.99.2.230430-1-x86_64.pkg.tar.zst",target:"_blank",rel:"noopener noreferrer"}},[t._v("Server 3"),r("OutboundLink")],1),t._v(" "),r("br"),t._v(" "),r("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v2.99.2.230428/kangaroo-max-2.99.2.230430-1-x86_64.pkg.tar.zst",target:"_blank",rel:"noopener noreferrer"}},[t._v("Server 4"),r("OutboundLink")],1),r("br"),r("br"),t._v(" Debian"),r("br"),t._v(" "),r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v2.99.2.230428/kangaroo-max-2.99.2.230430-x86_64.deb",target:"_blank",rel:"noopener noreferrer"}},[t._v("Github"),r("OutboundLink")],1),t._v(" "),r("br"),r("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/releases/download/v2.99.2.230428/kangaroo-max-2.99.2.230430-x86_64.deb",target:"_blank",rel:"noopener noreferrer"}},[t._v("Gitee"),r("OutboundLink")],1),t._v(" "),r("br"),r("a",{attrs:{href:"https://kangaroo.awaysoft.com/downloads/v2.99.2.230428/kangaroo-max-2.99.2.230430-x86_64.deb",target:"_blank",rel:"noopener noreferrer"}},[t._v("Server 3"),r("OutboundLink")],1),t._v(" "),r("br"),r("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v2.99.2.230428/kangaroo-max-2.99.2.230430-x86_64.deb",target:"_blank",rel:"noopener noreferrer"}},[t._v("Server 4"),r("OutboundLink")],1)]),t._v(" "),r("td"),t._v(" "),r("td"),t._v(" "),r("td"),t._v(" "),r("td")]),t._v(" "),r("tr",[r("td",[t._v("ARM64")]),t._v(" "),r("td"),t._v(" "),r("td"),t._v(" "),r("td"),t._v(" "),r("td"),t._v(" "),r("td")]),t._v(" "),r("tr",[r("td",[t._v("RISCV64")]),t._v(" "),r("td"),t._v(" "),r("td"),t._v(" "),r("td"),t._v(" "),r("td"),t._v(" "),r("td")])])]),t._v(" "),r("div",[r("script2",{attrs:{type:"text/javascript",async:"true",src:"https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"}}),t._v(" "),r("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),t._v(" "),r("script2",{attrs:{type:"text/javascript"}},[t._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),t._v(" "),r("h2",{attrs:{id:"sha256sum"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#sha256sum"}},[t._v("#")]),t._v(" SHA256SUM")]),t._v(" "),r("p",[t._v("强烈建议您使用 "),r("code",[t._v("sha256sum")]),t._v("、"),r("code",[t._v("7-Zip")]),t._v(" 等工具,校验您下载的包文件 SHA256 哈希值是否与官方一致,确保您的包文件100%正确无篡改。")]),t._v(" "),r("table",[r("thead",[r("tr",[r("th",[t._v("sha256sum 校验码")]),t._v(" "),r("th",[t._v("袋鼠安装包文件名")])])]),t._v(" "),r("tbody",[r("tr",[r("td",[t._v("b0ee5d8609c39373f0def0d2f0750a5e7476a7aaa4949c0198a9f6f8b2288494")]),t._v(" "),r("td",[t._v("kangaroo-max-2.99.2.230430-x86_64.exe")])]),t._v(" "),r("tr",[r("td",[t._v("a465ab79b11e9de74d67d63430b19031fe891572054f9dc46f75394afd8def22")]),t._v(" "),r("td",[t._v("kangaroo-max-2.99.2.230430-x86_64.deb")])]),t._v(" "),r("tr",[r("td",[t._v("1c3a6ac30c621fcedc440e5b54c65e590e28789722418226134ae1ca34e165a6")]),t._v(" "),r("td",[t._v("kangaroo-max-2.99.2.230430-1-x86_64.pkg.tar.zst")])]),t._v(" "),r("tr",[r("td",[t._v("091b05c71336a5da65f514fe339d5c597daf60ad758b033b36ae2296bb17196f")]),t._v(" "),r("td",[t._v("kangaroo-mariadb-2.99.2.230430-x86_64.exe")])]),t._v(" "),r("tr",[r("td",[t._v("443be9bf9d9ebf91f99ae1015b913aed91a532a298bdc52a388f14dad2ecb690")]),t._v(" "),r("td",[t._v("kangaroo-mysql-2.99.2.230430-x86_64.exe")])]),t._v(" "),r("tr",[r("td",[t._v("1b1032ea99e59b6e3d5221266d2d7a8fd3b46c15557bf288deb9095dae3aab86")]),t._v(" "),r("td",[t._v("kangaroo-postgresql-2.99.2.230430-x86_64.exe")])]),t._v(" "),r("tr",[r("td",[t._v("c6ab40206da2ed64191766259008a22ae4481171b1ebb2df54c76fa243c8919f")]),t._v(" "),r("td",[t._v("kangaroo-sqlite-2.99.2.230430-x86_64.exe")])]),t._v(" "),r("tr",[r("td",[t._v("d2c82b2919d27b63968b14336fa536305086cffa0cae3e27cf04064aa385f0c3")]),t._v(" "),r("td",[t._v("kangaroo-max-2.99.2.230430-x86_64.7z")])]),t._v(" "),r("tr",[r("td",[t._v("df3509ba7e1ba53723b698282f348701a711463dc2a44eb9257c863df8916433")]),t._v(" "),r("td",[t._v("kangaroo-max-2.99.2.230430-x86_64.tar.zst")])])])]),t._v(" "),r("h2",{attrs:{id:"分享给朋友们"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#分享给朋友们"}},[t._v("#")]),t._v(" 分享给朋友们")]),t._v(" "),r("social-share",{attrs:{networks:["wechat","qq","weibo","douban","facebook","twitter","telegram","line","skype","linkedin"]}})],1)}),[],!1,null,null,null);a.default=o.exports}}]); \ No newline at end of file diff --git a/assets/js/216.b3642cfb.js b/assets/js/216.b3642cfb.js new file mode 100644 index 000000000..c5d04c271 --- /dev/null +++ b/assets/js/216.b3642cfb.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[216],{808:function(a,t,r){"use strict";r.r(t);var e=r(13),o=Object(e.a)({},(function(){var a=this,t=a.$createElement,r=a._self._c||t;return r("ContentSlotsDistributor",{attrs:{"slot-key":a.$parent.slotKey}},[r("h1",{attrs:{id:"袋鼠数据库工具-v2-99-3-beta"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#袋鼠数据库工具-v2-99-3-beta"}},[a._v("#")]),a._v(" 袋鼠数据库工具 v2.99.3 (Beta)")]),a._v(" "),r("p",[a._v("这是一个稳定版本,功能成熟度和稳定性无限趋近版本目标,推荐所有用户使用。")]),a._v(" "),r("div",{staticClass:"custom-block danger"},[r("p",{staticClass:"custom-block-title"},[a._v("重要提示")]),a._v(" "),r("p",[a._v("版本中标注有 "),r("Badge",{attrs:{text:"Dev"}}),a._v(" "),r("Badge",{attrs:{text:"Beta"}}),a._v(" 字样的可以免费使用,其它版本需要付费。")],1)]),a._v(" "),r("h2",{attrs:{id:"新特性或修复的缺陷列表"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#新特性或修复的缺陷列表"}},[a._v("#")]),a._v(" 新特性或修复的缺陷列表")]),a._v(" "),r("ul",[r("li",[a._v("Windows: GTK4 升级为 4.11.2")]),a._v(" "),r("li",[a._v("MySQL: 修复 TINYTEXT/TEXT/MEDIUMTEXT/LONGTEXT 显示问题")]),a._v(" "),r("li",[a._v("MariaDB: 修复 TINYTEXT/TEXT/MEDIUMTEXT/LONGTEXT 显示问题")])]),a._v(" "),r("div",[r("script2",{attrs:{type:"text/javascript",async:"true",src:"https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"}}),a._v(" "),r("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),a._v(" "),r("script2",{attrs:{type:"text/javascript"}},[a._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),a._v(" "),r("h2",{attrs:{id:"安装程序和便携安装包"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#安装程序和便携安装包"}},[a._v("#")]),a._v(" 安装程序和便携安装包 "),r("Badge",{attrs:{text:"链接已失效",type:"warning"}})],1),a._v(" "),r("p",[a._v("Windows 用户可通过 winget 工具直接安装袋鼠:"),r("code",[a._v("winget install Taozuhong.Kangaroo")]),a._v(",否则需要自行下载并安装它。")]),a._v(" "),r("h3",{attrs:{id:"windows-平台"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#windows-平台"}},[a._v("#")]),a._v(" Windows 平台")]),a._v(" "),r("table",[r("thead",[r("tr",[r("th",[a._v("Architect")]),a._v(" "),r("th",[a._v("All")]),a._v(" "),r("th",[a._v("SQLite")]),a._v(" "),r("th",[a._v("MariaDB")]),a._v(" "),r("th",[a._v("MySQL")]),a._v(" "),r("th",[a._v("PostgreSQL")])])]),a._v(" "),r("tbody",[r("tr",[r("td",[a._v("x86-64")]),a._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v2.99.3.230602/kangaroo-max-2.99.3.230602-x86_64.exe",target:"_blank",rel:"noopener noreferrer"}},[a._v("Github"),r("OutboundLink")],1),a._v(" "),r("br"),a._v(" "),r("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/releases/download/v2.99.3.230602/kangaroo-max-2.99.3.230602-x86_64.exe",target:"_blank",rel:"noopener noreferrer"}},[a._v("GitEE"),r("OutboundLink")],1),a._v(" "),r("br"),a._v(" "),r("a",{attrs:{href:"https://kangaroo.awaysoft.com/downloads/v2.99.3.230602/kangaroo-max-2.99.3.230602-x86_64.exe",target:"_blank",rel:"noopener noreferrer"}},[a._v("Server 3"),r("OutboundLink")],1),a._v(" "),r("br"),a._v(" "),r("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v2.99.3.230602/kangaroo-max-2.99.3.230602-x86_64.exe",target:"_blank",rel:"noopener noreferrer"}},[a._v("Server 4"),r("OutboundLink")],1)]),a._v(" "),r("td",[r("a",{attrs:{href:"https://kangaroo.awaysoft.com/downloads/v2.99.3.230602/kangaroo-sqlite-2.99.3.230602-x86_64.exe",target:"_blank",rel:"noopener noreferrer"}},[a._v("Server 3"),r("OutboundLink")],1),a._v(" "),r("br"),a._v(" "),r("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v2.99.3.230602/kangaroo-sqlite-2.99.3.230602-x86_64.exe",target:"_blank",rel:"noopener noreferrer"}},[a._v("Server 4"),r("OutboundLink")],1)]),a._v(" "),r("td",[r("a",{attrs:{href:"https://kangaroo.awaysoft.com/downloads/v2.99.3.230602/kangaroo-mariadb-2.99.3.230602-x86_64.exe",target:"_blank",rel:"noopener noreferrer"}},[a._v("Server 3"),r("OutboundLink")],1),a._v(" "),r("br"),a._v(" "),r("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v2.99.3.230602/kangaroo-mariadb-2.99.3.230602-x86_64.exe",target:"_blank",rel:"noopener noreferrer"}},[a._v("Server 4"),r("OutboundLink")],1)]),a._v(" "),r("td",[r("a",{attrs:{href:"https://kangaroo.awaysoft.com/downloads/v2.99.3.230602/kangaroo-mysql-2.99.3.230602-x86_64.exe",target:"_blank",rel:"noopener noreferrer"}},[a._v("Server 3"),r("OutboundLink")],1),a._v(" "),r("br"),a._v(" "),r("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v2.99.3.230602/kangaroo-mysql-2.99.3.230602-x86_64.exe",target:"_blank",rel:"noopener noreferrer"}},[a._v("Server 4"),r("OutboundLink")],1)]),a._v(" "),r("td",[r("a",{attrs:{href:"https://kangaroo.awaysoft.com/downloads/v2.99.3.230602/kangaroo-postgresql-2.99.3.230602-x86_64.exe",target:"_blank",rel:"noopener noreferrer"}},[a._v("Server 3"),r("OutboundLink")],1),a._v(" "),r("br"),a._v(" "),r("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v2.99.3.230602/kangaroo-postgresql-2.99.3.230602-x86_64.exe",target:"_blank",rel:"noopener noreferrer"}},[a._v("Server 4"),r("OutboundLink")],1)])]),a._v(" "),r("tr",[r("td",[a._v("ARM64")]),a._v(" "),r("td"),a._v(" "),r("td"),a._v(" "),r("td"),a._v(" "),r("td"),a._v(" "),r("td")]),a._v(" "),r("tr",[r("td",[a._v("RISCV64")]),a._v(" "),r("td"),a._v(" "),r("td"),a._v(" "),r("td"),a._v(" "),r("td"),a._v(" "),r("td")])])]),a._v(" "),r("h3",{attrs:{id:"macos-平台"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#macos-平台"}},[a._v("#")]),a._v(" macOS 平台")]),a._v(" "),r("table",[r("thead",[r("tr",[r("th",[a._v("Architect")]),a._v(" "),r("th",[a._v("All")]),a._v(" "),r("th",[a._v("SQLite")]),a._v(" "),r("th",[a._v("MariaDB")]),a._v(" "),r("th",[a._v("MySQL")]),a._v(" "),r("th",[a._v("PostgreSQL")])])]),a._v(" "),r("tbody",[r("tr",[r("td",[a._v("ARM64")]),a._v(" "),r("td"),a._v(" "),r("td"),a._v(" "),r("td"),a._v(" "),r("td"),a._v(" "),r("td")]),a._v(" "),r("tr",[r("td",[a._v("x86-64")]),a._v(" "),r("td"),a._v(" "),r("td"),a._v(" "),r("td"),a._v(" "),r("td"),a._v(" "),r("td")]),a._v(" "),r("tr",[r("td",[a._v("RISCV64")]),a._v(" "),r("td"),a._v(" "),r("td"),a._v(" "),r("td"),a._v(" "),r("td"),a._v(" "),r("td")])])]),a._v(" "),r("h3",{attrs:{id:"linux-平台"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#linux-平台"}},[a._v("#")]),a._v(" Linux 平台")]),a._v(" "),r("p",[a._v("这个版本使用未发布的依赖库版本,鉴于依赖库版本未发布原因,不建议 Linux 普通用户使用。"),r("br"),a._v("\n专业用户需要自行拉取代码并编译、安装,才能让袋鼠正常使用,相关依赖库为:"),r("br"),a._v("\nGTK4 >= 4.10 "),r("br"),a._v("\nlibpanel >= 1.2.0")]),a._v(" "),r("table",[r("thead",[r("tr",[r("th",[a._v("Architect")]),a._v(" "),r("th",[a._v("All")]),a._v(" "),r("th",[a._v("SQLite")]),a._v(" "),r("th",[a._v("MariaDB")]),a._v(" "),r("th",[a._v("MySQL")]),a._v(" "),r("th",[a._v("PostgreSQL")])])]),a._v(" "),r("tbody",[r("tr",[r("td",[a._v("x86-64")]),a._v(" "),r("td",[a._v("Arch Linux"),r("br"),r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v2.99.3.230602/kangaroo-max-2.99.3.230602-1-x86_64.pkg.tar.zst",target:"_blank",rel:"noopener noreferrer"}},[a._v("Github"),r("OutboundLink")],1),a._v(" "),r("br"),a._v(" "),r("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/releases/download/v2.99.3.230602/kangaroo-max-2.99.3.230602-1-x86_64.pkg.tar.zst",target:"_blank",rel:"noopener noreferrer"}},[a._v("GitEE"),r("OutboundLink")],1),a._v(" "),r("br"),r("a",{attrs:{href:"https://kangaroo.awaysoft.com/downloads/v2.99.3.230602/kangaroo-max-2.99.3.230602-1-x86_64.pkg.tar.zst",target:"_blank",rel:"noopener noreferrer"}},[a._v("Server 3"),r("OutboundLink")],1),a._v(" "),r("br"),a._v(" "),r("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v2.99.3.230602/kangaroo-max-2.99.3.230602-1-x86_64.pkg.tar.zst",target:"_blank",rel:"noopener noreferrer"}},[a._v("Server 4"),r("OutboundLink")],1),r("br"),r("br"),a._v(" Debian"),r("br"),a._v(" "),r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v2.99.3.230602/kangaroo-max-2.99.3.230602-x86_64.deb",target:"_blank",rel:"noopener noreferrer"}},[a._v("Github"),r("OutboundLink")],1),a._v(" "),r("br"),r("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/releases/download/v2.99.3.230602/kangaroo-max-2.99.3.230602-x86_64.deb",target:"_blank",rel:"noopener noreferrer"}},[a._v("Gitee"),r("OutboundLink")],1),a._v(" "),r("br"),r("a",{attrs:{href:"https://kangaroo.awaysoft.com/downloads/v2.99.3.230602/kangaroo-max-2.99.3.230602-x86_64.deb",target:"_blank",rel:"noopener noreferrer"}},[a._v("Server 3"),r("OutboundLink")],1),a._v(" "),r("br"),r("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v2.99.3.230602/kangaroo-max-2.99.3.230602-x86_64.deb",target:"_blank",rel:"noopener noreferrer"}},[a._v("Server 4"),r("OutboundLink")],1)]),a._v(" "),r("td"),a._v(" "),r("td"),a._v(" "),r("td"),a._v(" "),r("td")]),a._v(" "),r("tr",[r("td",[a._v("ARM64")]),a._v(" "),r("td"),a._v(" "),r("td"),a._v(" "),r("td"),a._v(" "),r("td"),a._v(" "),r("td")]),a._v(" "),r("tr",[r("td",[a._v("RISCV64")]),a._v(" "),r("td"),a._v(" "),r("td"),a._v(" "),r("td"),a._v(" "),r("td"),a._v(" "),r("td")])])]),a._v(" "),r("div",[r("script2",{attrs:{type:"text/javascript",async:"true",src:"https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"}}),a._v(" "),r("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),a._v(" "),r("script2",{attrs:{type:"text/javascript"}},[a._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),a._v(" "),r("h2",{attrs:{id:"sha256sum"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#sha256sum"}},[a._v("#")]),a._v(" SHA256SUM")]),a._v(" "),r("p",[a._v("强烈建议您使用 "),r("code",[a._v("sha256sum")]),a._v("、"),r("code",[a._v("7-Zip")]),a._v(" 等工具,校验您下载的包文件 SHA256 哈希值是否与官方一致,确保您的包文件100%正确无篡改。")]),a._v(" "),r("table",[r("thead",[r("tr",[r("th",[a._v("sha256sum 校验码")]),a._v(" "),r("th",[a._v("袋鼠安装包文件名")])])]),a._v(" "),r("tbody",[r("tr",[r("td",[a._v("1a2be887170dbfb4147ff10fe1201d6c8594b86e929d8b612d17abe656cbb640")]),a._v(" "),r("td",[a._v("kangaroo-max-2.99.3.230602-x86_64.exe")])]),a._v(" "),r("tr",[r("td",[a._v("d84aa6c93dd01ec65a5f63f3a2cb8260537d3ee824ea7424d1801631bd112f5a")]),a._v(" "),r("td",[a._v("kangaroo-max-2.99.3.230602-x86_64.deb")])]),a._v(" "),r("tr",[r("td",[a._v("7da7ed12dc99a38b68d691cbff59d13a511ba62eb221dc53ee79385a69d2f2fd")]),a._v(" "),r("td",[a._v("kangaroo-max-2.99.3.230602-1-x86_64.pkg.tar.zst")])]),a._v(" "),r("tr",[r("td",[a._v("9f19f79b27f9ba6aa7a0fea680f9a917cf31a961e90365ffe7a974ee85e62510")]),a._v(" "),r("td",[a._v("kangaroo-mariadb-2.99.3.230602-x86_64.exe")])]),a._v(" "),r("tr",[r("td",[a._v("15e8e61266842eafe01d9568ff0dfab5ef3f4da69c8f529f926ae786d0731386")]),a._v(" "),r("td",[a._v("kangaroo-mysql-2.99.3.230602-x86_64.exe")])]),a._v(" "),r("tr",[r("td",[a._v("fd50c9cbf035653864bafab3a34164649094e82dadf91a6cb2de331c8283ebfb")]),a._v(" "),r("td",[a._v("kangaroo-postgresql-2.99.3.230602-x86_64.exe")])]),a._v(" "),r("tr",[r("td",[a._v("631e23f70427415bb862ad0a445f29c599096c0dfad208583ebaea1059a02075")]),a._v(" "),r("td",[a._v("kangaroo-sqlite-2.99.3.230602-x86_64.exe")])]),a._v(" "),r("tr",[r("td",[a._v("ab6fefc8d064421cfd7d506a28ddd4e8a4363723ccf7a9b211894f455f39474f")]),a._v(" "),r("td",[a._v("kangaroo-max-2.99.3.230602-x86_64.7z")])]),a._v(" "),r("tr",[r("td",[a._v("12ac32a1a5d15ac71add144412b0f8a441a68a517afc17a2995d4d12b53e4f63")]),a._v(" "),r("td",[a._v("kangaroo-max-2.99.3.230602-x86_64.tar.zst")])])])]),a._v(" "),r("h2",{attrs:{id:"分享给朋友们"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#分享给朋友们"}},[a._v("#")]),a._v(" 分享给朋友们")]),a._v(" "),r("social-share",{attrs:{networks:["wechat","qq","weibo","douban","facebook","twitter","telegram","line","skype","linkedin"]}})],1)}),[],!1,null,null,null);t.default=o.exports}}]); \ No newline at end of file diff --git a/assets/js/217.0300ba49.js b/assets/js/217.0300ba49.js new file mode 100644 index 000000000..fb1797bd5 --- /dev/null +++ b/assets/js/217.0300ba49.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[217],{809:function(t,a,r){"use strict";r.r(a);var e=r(13),o=Object(e.a)({},(function(){var t=this,a=t.$createElement,r=t._self._c||a;return r("ContentSlotsDistributor",{attrs:{"slot-key":t.$parent.slotKey}},[r("h1",{attrs:{id:"袋鼠数据库工具-v3-90-1-beta"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#袋鼠数据库工具-v3-90-1-beta"}},[t._v("#")]),t._v(" 袋鼠数据库工具 v3.90.1 (Beta)")]),t._v(" "),r("p",[t._v("这是一个稳定版本,功能成熟度和稳定性无限趋近版本目标,推荐所有用户使用。")]),t._v(" "),r("div",{staticClass:"custom-block danger"},[r("p",{staticClass:"custom-block-title"},[t._v("重要提示")]),t._v(" "),r("p",[t._v("版本中标注有 "),r("Badge",{attrs:{text:"Dev"}}),t._v(" "),r("Badge",{attrs:{text:"Beta"}}),t._v(" 字样的可以免费使用,其它版本需要付费。")],1)]),t._v(" "),r("h2",{attrs:{id:"新特性或修复的缺陷列表"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#新特性或修复的缺陷列表"}},[t._v("#")]),t._v(" 新特性或修复的缺陷列表")]),t._v(" "),r("ul",[r("li",[t._v("增加数据库传输/结构同步/数据同步界面")]),t._v(" "),r("li",[t._v("实现数据库传输业务逻辑")]),t._v(" "),r("li",[t._v("实现数据库结构同步业务逻辑")]),t._v(" "),r("li",[t._v("SQLite: 加密扩展支持(SQLCipher)")]),t._v(" "),r("li",[t._v("MySQL: 改进 TEXT/BLOB 类型支持")]),t._v(" "),r("li",[t._v("MariaDB: 改进 TEXT/BLOB 类型支持")]),t._v(" "),r("li",[t._v("对话框窗口居中支持")]),t._v(" "),r("li",[t._v("增加多语言切换支持")]),t._v(" "),r("li",[t._v("优化配置对话框性能")]),t._v(" "),r("li",[t._v("更新中文语言支持")]),t._v(" "),r("li",[t._v("修复 MySQL/MariaDB 字段标记问题")])]),t._v(" "),r("div",[r("script2",{attrs:{type:"text/javascript",async:"true",src:"https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"}}),t._v(" "),r("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),t._v(" "),r("script2",{attrs:{type:"text/javascript"}},[t._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),t._v(" "),r("h2",{attrs:{id:"安装程序和便携安装包"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#安装程序和便携安装包"}},[t._v("#")]),t._v(" 安装程序和便携安装包 "),r("Badge",{attrs:{text:"链接已失效",type:"warning"}})],1),t._v(" "),r("p",[t._v("Windows 用户可通过 winget 工具直接安装袋鼠:"),r("code",[t._v("winget install Taozuhong.Kangaroo")]),t._v(",否则需要自行下载并安装它。")]),t._v(" "),r("h3",{attrs:{id:"windows-平台"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#windows-平台"}},[t._v("#")]),t._v(" Windows 平台")]),t._v(" "),r("table",[r("thead",[r("tr",[r("th",[t._v("Architect")]),t._v(" "),r("th",[t._v("All")]),t._v(" "),r("th",[t._v("SQLite")]),t._v(" "),r("th",[t._v("MariaDB")]),t._v(" "),r("th",[t._v("MySQL")]),t._v(" "),r("th",[t._v("PostgreSQL")])])]),t._v(" "),r("tbody",[r("tr",[r("td",[t._v("x86-64")]),t._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v3.90.1.230701/kangaroo-max-3.90.1.230703-x86_64.exe",target:"_blank",rel:"noopener noreferrer"}},[t._v("Github"),r("OutboundLink")],1),t._v(" "),r("br"),t._v(" "),r("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/releases/download/v3.90.1.230701/kangaroo-max-3.90.1.230703-x86_64.exe",target:"_blank",rel:"noopener noreferrer"}},[t._v("GitEE"),r("OutboundLink")],1),t._v(" "),r("br"),t._v(" "),r("a",{attrs:{href:"https://kangaroo.awaysoft.com/downloads/v3.90.1.230703/kangaroo-max-3.90.1.230703-x86_64.exe",target:"_blank",rel:"noopener noreferrer"}},[t._v("Server 3"),r("OutboundLink")],1),t._v(" "),r("br"),t._v(" "),r("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v3.90.1.230703/kangaroo-max-3.90.1.230703-x86_64.exe",target:"_blank",rel:"noopener noreferrer"}},[t._v("Server 4"),r("OutboundLink")],1)]),t._v(" "),r("td",[r("a",{attrs:{href:"https://kangaroo.awaysoft.com/downloads/v3.90.1.230703/kangaroo-sqlite-3.90.1.230703-x86_64.exe",target:"_blank",rel:"noopener noreferrer"}},[t._v("Server 3"),r("OutboundLink")],1),t._v(" "),r("br"),t._v(" "),r("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v3.90.1.230703/kangaroo-sqlite-3.90.1.230703-x86_64.exe",target:"_blank",rel:"noopener noreferrer"}},[t._v("Server 4"),r("OutboundLink")],1)]),t._v(" "),r("td",[r("a",{attrs:{href:"https://kangaroo.awaysoft.com/downloads/v3.90.1.230703/kangaroo-mariadb-3.90.1.230703-x86_64.exe",target:"_blank",rel:"noopener noreferrer"}},[t._v("Server 3"),r("OutboundLink")],1),t._v(" "),r("br"),t._v(" "),r("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v3.90.1.230703/kangaroo-mariadb-3.90.1.230703-x86_64.exe",target:"_blank",rel:"noopener noreferrer"}},[t._v("Server 4"),r("OutboundLink")],1)]),t._v(" "),r("td",[r("a",{attrs:{href:"https://kangaroo.awaysoft.com/downloads/v3.90.1.230703/kangaroo-mysql-3.90.1.230703-x86_64.exe",target:"_blank",rel:"noopener noreferrer"}},[t._v("Server 3"),r("OutboundLink")],1),t._v(" "),r("br"),t._v(" "),r("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v3.90.1.230703/kangaroo-mysql-3.90.1.230703-x86_64.exe",target:"_blank",rel:"noopener noreferrer"}},[t._v("Server 4"),r("OutboundLink")],1)]),t._v(" "),r("td",[r("a",{attrs:{href:"https://kangaroo.awaysoft.com/downloads/v3.90.1.230703/kangaroo-postgresql-3.90.1.230703-x86_64.exe",target:"_blank",rel:"noopener noreferrer"}},[t._v("Server 3"),r("OutboundLink")],1),t._v(" "),r("br"),t._v(" "),r("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v3.90.1.230703/kangaroo-postgresql-3.90.1.230703-x86_64.exe",target:"_blank",rel:"noopener noreferrer"}},[t._v("Server 4"),r("OutboundLink")],1)])]),t._v(" "),r("tr",[r("td",[t._v("ARM64")]),t._v(" "),r("td"),t._v(" "),r("td"),t._v(" "),r("td"),t._v(" "),r("td"),t._v(" "),r("td")]),t._v(" "),r("tr",[r("td",[t._v("RISCV64")]),t._v(" "),r("td"),t._v(" "),r("td"),t._v(" "),r("td"),t._v(" "),r("td"),t._v(" "),r("td")])])]),t._v(" "),r("h3",{attrs:{id:"macos-平台"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#macos-平台"}},[t._v("#")]),t._v(" macOS 平台")]),t._v(" "),r("table",[r("thead",[r("tr",[r("th",[t._v("Architect")]),t._v(" "),r("th",[t._v("All")]),t._v(" "),r("th",[t._v("SQLite")]),t._v(" "),r("th",[t._v("MariaDB")]),t._v(" "),r("th",[t._v("MySQL")]),t._v(" "),r("th",[t._v("PostgreSQL")])])]),t._v(" "),r("tbody",[r("tr",[r("td",[t._v("ARM64")]),t._v(" "),r("td"),t._v(" "),r("td"),t._v(" "),r("td"),t._v(" "),r("td"),t._v(" "),r("td")]),t._v(" "),r("tr",[r("td",[t._v("x86-64")]),t._v(" "),r("td"),t._v(" "),r("td"),t._v(" "),r("td"),t._v(" "),r("td"),t._v(" "),r("td")]),t._v(" "),r("tr",[r("td",[t._v("RISCV64")]),t._v(" "),r("td"),t._v(" "),r("td"),t._v(" "),r("td"),t._v(" "),r("td"),t._v(" "),r("td")])])]),t._v(" "),r("h3",{attrs:{id:"linux-平台"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#linux-平台"}},[t._v("#")]),t._v(" Linux 平台")]),t._v(" "),r("p",[t._v("这个版本使用未发布的依赖库版本,鉴于依赖库版本未发布原因,不建议 Linux 普通用户使用。"),r("br"),t._v("\n专业用户需要自行拉取代码并编译、安装,才能让袋鼠正常使用,相关依赖库为:"),r("br"),t._v("\nGTK4 >= 4.10 "),r("br"),t._v("\nlibpanel >= 1.2.0")]),t._v(" "),r("table",[r("thead",[r("tr",[r("th",[t._v("Architect")]),t._v(" "),r("th",[t._v("All")]),t._v(" "),r("th",[t._v("SQLite")]),t._v(" "),r("th",[t._v("MariaDB")]),t._v(" "),r("th",[t._v("MySQL")]),t._v(" "),r("th",[t._v("PostgreSQL")])])]),t._v(" "),r("tbody",[r("tr",[r("td",[t._v("x86-64")]),t._v(" "),r("td",[t._v("Arch Linux"),r("br"),r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v3.90.1.230701/kangaroo-max-3.90.1.230703-1-x86_64.pkg.tar.zst",target:"_blank",rel:"noopener noreferrer"}},[t._v("Github"),r("OutboundLink")],1),t._v(" "),r("br"),t._v(" "),r("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/releases/download/v3.90.1.230701/kangaroo-max-3.90.1.230703-1-x86_64.pkg.tar.zst",target:"_blank",rel:"noopener noreferrer"}},[t._v("GitEE"),r("OutboundLink")],1),t._v(" "),r("br"),r("a",{attrs:{href:"https://kangaroo.awaysoft.com/downloads/v3.90.1.230703/kangaroo-max-3.90.1.230703-1-x86_64.pkg.tar.zst",target:"_blank",rel:"noopener noreferrer"}},[t._v("Server 3"),r("OutboundLink")],1),t._v(" "),r("br"),t._v(" "),r("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v3.90.1.230703/kangaroo-max-3.90.1.230703-1-x86_64.pkg.tar.zst",target:"_blank",rel:"noopener noreferrer"}},[t._v("Server 4"),r("OutboundLink")],1),r("br"),r("br"),t._v(" Debian"),r("br"),t._v(" "),r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v3.90.1.230701/kangaroo-max-3.90.1.230703-x86_64.deb",target:"_blank",rel:"noopener noreferrer"}},[t._v("Github"),r("OutboundLink")],1),t._v(" "),r("br"),r("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/releases/download/v3.90.1.230701/kangaroo-max-3.90.1.230703-x86_64.deb",target:"_blank",rel:"noopener noreferrer"}},[t._v("Gitee"),r("OutboundLink")],1),t._v(" "),r("br"),r("a",{attrs:{href:"https://kangaroo.awaysoft.com/downloads/v3.90.1.230703/kangaroo-max-3.90.1.230703-x86_64.deb",target:"_blank",rel:"noopener noreferrer"}},[t._v("Server 3"),r("OutboundLink")],1),t._v(" "),r("br"),r("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v3.90.1.230703/kangaroo-max-3.90.1.230703-x86_64.deb",target:"_blank",rel:"noopener noreferrer"}},[t._v("Server 4"),r("OutboundLink")],1)]),t._v(" "),r("td"),t._v(" "),r("td"),t._v(" "),r("td"),t._v(" "),r("td")]),t._v(" "),r("tr",[r("td",[t._v("ARM64")]),t._v(" "),r("td"),t._v(" "),r("td"),t._v(" "),r("td"),t._v(" "),r("td"),t._v(" "),r("td")]),t._v(" "),r("tr",[r("td",[t._v("RISCV64")]),t._v(" "),r("td"),t._v(" "),r("td"),t._v(" "),r("td"),t._v(" "),r("td"),t._v(" "),r("td")])])]),t._v(" "),r("div",[r("script2",{attrs:{type:"text/javascript",async:"true",src:"https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"}}),t._v(" "),r("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),t._v(" "),r("script2",{attrs:{type:"text/javascript"}},[t._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),t._v(" "),r("h2",{attrs:{id:"sha256sum"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#sha256sum"}},[t._v("#")]),t._v(" SHA256SUM")]),t._v(" "),r("p",[t._v("强烈建议您使用 "),r("code",[t._v("sha256sum")]),t._v("、"),r("code",[t._v("7-Zip")]),t._v(" 等工具,校验您下载的包文件 SHA256 哈希值是否与官方一致,确保您的包文件100%正确无篡改。")]),t._v(" "),r("table",[r("thead",[r("tr",[r("th",[t._v("sha256sum 校验码")]),t._v(" "),r("th",[t._v("袋鼠安装包文件名")])])]),t._v(" "),r("tbody",[r("tr",[r("td",[t._v("0dbbefb6823b406351d753bc597394ba785898677904e98145e145a73a4e3512")]),t._v(" "),r("td",[t._v("kangaroo-max-3.90.1.230703-x86_64.exe")])]),t._v(" "),r("tr",[r("td",[t._v("9b20a3ab546797a47845ec63b13da31a33d3e0e700c6f4171bb72c1c8c41b71f")]),t._v(" "),r("td",[t._v("kangaroo-max-3.90.1.230703-x86_64.deb")])]),t._v(" "),r("tr",[r("td",[t._v("0bcc168cdb9e05aed57bd1842dac291ee15b8f8c65dab379acc14eb1065cc9b5")]),t._v(" "),r("td",[t._v("kangaroo-max-3.90.1.230703-1-x86_64.pkg.tar.zst")])]),t._v(" "),r("tr",[r("td",[t._v("fd76fd988716f8dfb105d9ffb77255a606c79eb58a2a79d94450dc7626d3d5d5")]),t._v(" "),r("td",[t._v("kangaroo-mariadb-3.90.1.230703-x86_64.exe")])]),t._v(" "),r("tr",[r("td",[t._v("279cb589f427b19ea66d36ca815d340ca628c32cad03dbe4e3ad9672b7d4f18b")]),t._v(" "),r("td",[t._v("kangaroo-mysql-3.90.1.230703-x86_64.exe")])]),t._v(" "),r("tr",[r("td",[t._v("afc76b0ab613cd64ba95277ae3f1071b4acbb74e081b4bbbfa52cdb962249bcf")]),t._v(" "),r("td",[t._v("kangaroo-postgresql-3.90.1.230703-x86_64.exe")])]),t._v(" "),r("tr",[r("td",[t._v("873917695247339c56403aeb35737a40d00b68c456866c7016c5b5f4fa50e3e7")]),t._v(" "),r("td",[t._v("kangaroo-sqlite-3.90.1.230703-x86_64.exe")])]),t._v(" "),r("tr",[r("td",[t._v("f070a6969f4e94c43e16f4a483011a22582155a4782565bf75140d3ae88532fb")]),t._v(" "),r("td",[t._v("kangaroo-max-3.90.1.230703-x86_64.7z")])]),t._v(" "),r("tr",[r("td",[t._v("eb627ed093c4476305fbf04b2e30f67ddca0da2efe9bbc59febf383fd202ea8b")]),t._v(" "),r("td",[t._v("kangaroo-max-3.90.1.230703-x86_64.tar.zst")])])])]),t._v(" "),r("h2",{attrs:{id:"分享给朋友们"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#分享给朋友们"}},[t._v("#")]),t._v(" 分享给朋友们")]),t._v(" "),r("social-share",{attrs:{networks:["wechat","qq","weibo","douban","facebook","twitter","telegram","line","skype","linkedin"]}})],1)}),[],!1,null,null,null);a.default=o.exports}}]); \ No newline at end of file diff --git a/assets/js/218.2fe794bf.js b/assets/js/218.2fe794bf.js new file mode 100644 index 000000000..9f618976e --- /dev/null +++ b/assets/js/218.2fe794bf.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[218],{810:function(t,a,r){"use strict";r.r(a);var e=r(13),o=Object(e.a)({},(function(){var t=this,a=t.$createElement,r=t._self._c||a;return r("ContentSlotsDistributor",{attrs:{"slot-key":t.$parent.slotKey}},[r("h1",{attrs:{id:"袋鼠数据库工具-v3-91-1-beta"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#袋鼠数据库工具-v3-91-1-beta"}},[t._v("#")]),t._v(" 袋鼠数据库工具 v3.91.1 (Beta)")]),t._v(" "),r("p",[t._v("这是一个稳定版本,功能成熟度和稳定性无限趋近版本目标,推荐所有用户使用。")]),t._v(" "),r("div",{staticClass:"custom-block danger"},[r("p",{staticClass:"custom-block-title"},[t._v("重要提示")]),t._v(" "),r("p",[t._v("版本中标注有 "),r("Badge",{attrs:{text:"Dev"}}),t._v(" "),r("Badge",{attrs:{text:"Beta"}}),t._v(" 字样的可以免费使用,其它版本需要付费。")],1)]),t._v(" "),r("h2",{attrs:{id:"新特性或修复的缺陷列表"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#新特性或修复的缺陷列表"}},[t._v("#")]),t._v(" 新特性或修复的缺陷列表")]),t._v(" "),r("ul",[r("li",[t._v("界面适配 libadwaita 1.4")]),t._v(" "),r("li",[t._v("重构切换空间属性(GtkSwitch.state to active)")]),t._v(" "),r("li",[t._v("增加显示数据库驱动库版本")]),t._v(" "),r("li",[t._v("增加中文语言支持(zh_Hans/zh_Hant)")]),t._v(" "),r("li",[t._v("改进工作空间状态栏用户体验")]),t._v(" "),r("li",[t._v("更新中文语言支持")]),t._v(" "),r("li",[t._v("MariaDB: 增加表设计器页面")]),t._v(" "),r("li",[t._v("MariaDB: 修复外键相关问题")]),t._v(" "),r("li",[t._v("MySQL: 增加类型支持 TIMESTAMP")]),t._v(" "),r("li",[t._v("PostgreSQL: 修复类型和排序规则问题")]),t._v(" "),r("li",[t._v("SQLite: 修复模式相关问题")]),t._v(" "),r("li",[t._v("数据传输: 初始化默认设置")]),t._v(" "),r("li",[t._v("数据传输: 增加日志输出")]),t._v(" "),r("li",[t._v("数据传输: 修复目标连接问题")])]),t._v(" "),r("div",[r("script2",{attrs:{type:"text/javascript",async:"true",src:"https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"}}),t._v(" "),r("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),t._v(" "),r("script2",{attrs:{type:"text/javascript"}},[t._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),t._v(" "),r("h2",{attrs:{id:"安装程序和便携安装包"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#安装程序和便携安装包"}},[t._v("#")]),t._v(" 安装程序和便携安装包")]),t._v(" "),r("p",[t._v("Windows 用户可通过 winget 工具直接安装袋鼠:"),r("code",[t._v("winget install Taozuhong.Kangaroo")]),t._v(",否则需要自行下载并安装它。")]),t._v(" "),r("h3",{attrs:{id:"windows-平台"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#windows-平台"}},[t._v("#")]),t._v(" Windows 平台")]),t._v(" "),r("table",[r("thead",[r("tr",[r("th",[t._v("Architect")]),t._v(" "),r("th",[t._v("All")]),t._v(" "),r("th",[t._v("SQLite")]),t._v(" "),r("th",[t._v("MariaDB")]),t._v(" "),r("th",[t._v("MySQL")]),t._v(" "),r("th",[t._v("PostgreSQL")])])]),t._v(" "),r("tbody",[r("tr",[r("td",[t._v("x86-64")]),t._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v3.91.1.230801/kangaroo-max-3.91.2.230807-x86_64.exe",target:"_blank",rel:"noopener noreferrer"}},[t._v("Github"),r("OutboundLink")],1),t._v(" "),r("br"),t._v(" "),r("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/releases/download/v3.91.1.230801/kangaroo-max-3.91.2.230807-x86_64.exe",target:"_blank",rel:"noopener noreferrer"}},[t._v("GitEE"),r("OutboundLink")],1),t._v(" "),r("br"),t._v(" "),r("a",{attrs:{href:"https://kangaroo.awaysoft.com/downloads/v3.91.1.230801/kangaroo-max-3.91.2.230807-x86_64.exe",target:"_blank",rel:"noopener noreferrer"}},[t._v("Server 3"),r("OutboundLink")],1),t._v(" "),r("br"),t._v(" "),r("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v3.91.1.230801/kangaroo-max-3.91.2.230807-x86_64.exe",target:"_blank",rel:"noopener noreferrer"}},[t._v("Server 4"),r("OutboundLink")],1)]),t._v(" "),r("td",[r("a",{attrs:{href:"https://kangaroo.awaysoft.com/downloads/v3.91.1.230801/kangaroo-sqlite-3.91.2.230807-x86_64.exe",target:"_blank",rel:"noopener noreferrer"}},[t._v("Server 3"),r("OutboundLink")],1),t._v(" "),r("br"),t._v(" "),r("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v3.91.1.230801/kangaroo-sqlite-3.91.2.230807-x86_64.exe",target:"_blank",rel:"noopener noreferrer"}},[t._v("Server 4"),r("OutboundLink")],1)]),t._v(" "),r("td",[r("a",{attrs:{href:"https://kangaroo.awaysoft.com/downloads/v3.91.1.230801/kangaroo-mariadb-3.91.2.230807-x86_64.exe",target:"_blank",rel:"noopener noreferrer"}},[t._v("Server 3"),r("OutboundLink")],1),t._v(" "),r("br"),t._v(" "),r("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v3.91.1.230801/kangaroo-mariadb-3.91.2.230807-x86_64.exe",target:"_blank",rel:"noopener noreferrer"}},[t._v("Server 4"),r("OutboundLink")],1)]),t._v(" "),r("td",[r("a",{attrs:{href:"https://kangaroo.awaysoft.com/downloads/v3.91.1.230801/kangaroo-mysql-3.91.2.230807-x86_64.exe",target:"_blank",rel:"noopener noreferrer"}},[t._v("Server 3"),r("OutboundLink")],1),t._v(" "),r("br"),t._v(" "),r("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v3.91.1.230801/kangaroo-mysql-3.91.2.230807-x86_64.exe",target:"_blank",rel:"noopener noreferrer"}},[t._v("Server 4"),r("OutboundLink")],1)]),t._v(" "),r("td",[r("a",{attrs:{href:"https://kangaroo.awaysoft.com/downloads/v3.91.1.230801/kangaroo-postgresql-3.91.2.230807-x86_64.exe",target:"_blank",rel:"noopener noreferrer"}},[t._v("Server 3"),r("OutboundLink")],1),t._v(" "),r("br"),t._v(" "),r("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v3.91.1.230801/kangaroo-postgresql-3.91.2.230807-x86_64.exe",target:"_blank",rel:"noopener noreferrer"}},[t._v("Server 4"),r("OutboundLink")],1)])]),t._v(" "),r("tr",[r("td",[t._v("ARM64")]),t._v(" "),r("td"),t._v(" "),r("td"),t._v(" "),r("td"),t._v(" "),r("td"),t._v(" "),r("td")]),t._v(" "),r("tr",[r("td",[t._v("RISCV64")]),t._v(" "),r("td"),t._v(" "),r("td"),t._v(" "),r("td"),t._v(" "),r("td"),t._v(" "),r("td")])])]),t._v(" "),r("h3",{attrs:{id:"macos-平台"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#macos-平台"}},[t._v("#")]),t._v(" macOS 平台")]),t._v(" "),r("table",[r("thead",[r("tr",[r("th",[t._v("Architect")]),t._v(" "),r("th",[t._v("All")]),t._v(" "),r("th",[t._v("SQLite")]),t._v(" "),r("th",[t._v("MariaDB")]),t._v(" "),r("th",[t._v("MySQL")]),t._v(" "),r("th",[t._v("PostgreSQL")])])]),t._v(" "),r("tbody",[r("tr",[r("td",[t._v("ARM64")]),t._v(" "),r("td"),t._v(" "),r("td"),t._v(" "),r("td"),t._v(" "),r("td"),t._v(" "),r("td")]),t._v(" "),r("tr",[r("td",[t._v("x86-64")]),t._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v3.91.1.230801/kangaroo-max-3.90.2.230801-x86_64.dmg",target:"_blank",rel:"noopener noreferrer"}},[t._v("Github"),r("OutboundLink")],1),t._v(" "),r("br"),t._v(" "),r("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/releases/download/v3.91.1.230801/kangaroo-max-3.90.2.230801-x86_64.dmg",target:"_blank",rel:"noopener noreferrer"}},[t._v("GitEE"),r("OutboundLink")],1),t._v(" "),r("br"),t._v(" "),r("a",{attrs:{href:"https://kangaroo.awaysoft.com/downloads/v3.91.1.230801/kangaroo-max-3.90.2.230801-x86_64.dmg",target:"_blank",rel:"noopener noreferrer"}},[t._v("Server 3"),r("OutboundLink")],1),t._v(" "),r("br"),r("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v3.91.1.230801/kangaroo-max-3.90.2.230801-x86_64.dmg",target:"_blank",rel:"noopener noreferrer"}},[t._v("Server 4"),r("OutboundLink")],1)]),t._v(" "),r("td"),t._v(" "),r("td"),t._v(" "),r("td"),t._v(" "),r("td")]),t._v(" "),r("tr",[r("td",[t._v("RISCV64")]),t._v(" "),r("td"),t._v(" "),r("td"),t._v(" "),r("td"),t._v(" "),r("td"),t._v(" "),r("td")])])]),t._v(" "),r("h3",{attrs:{id:"linux-平台"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#linux-平台"}},[t._v("#")]),t._v(" Linux 平台")]),t._v(" "),r("p",[t._v("这个版本使用未发布的依赖库版本,鉴于依赖库版本未发布原因,不建议 Linux 普通用户使用。"),r("br"),t._v("\n专业用户需要自行拉取代码并编译、安装,才能让袋鼠正常使用,相关依赖库为:"),r("br"),t._v("\nGTK4 >= 4.11.4 "),r("br"),t._v("\nlibadwaita >= 1.4.0")]),t._v(" "),r("table",[r("thead",[r("tr",[r("th",[t._v("Architect")]),t._v(" "),r("th",[t._v("All")]),t._v(" "),r("th",[t._v("SQLite")]),t._v(" "),r("th",[t._v("MariaDB")]),t._v(" "),r("th",[t._v("MySQL")]),t._v(" "),r("th",[t._v("PostgreSQL")])])]),t._v(" "),r("tbody",[r("tr",[r("td",[t._v("x86-64")]),t._v(" "),r("td",[t._v("Arch Linux"),r("br"),r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v3.91.1.230801/kangaroo-max-3.90.2.230801-1-x86_64.pkg.tar.zst",target:"_blank",rel:"noopener noreferrer"}},[t._v("Github"),r("OutboundLink")],1),t._v(" "),r("br"),t._v(" "),r("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/releases/download/v3.91.1.230801/kangaroo-max-3.90.2.230801-1-x86_64.pkg.tar.zst",target:"_blank",rel:"noopener noreferrer"}},[t._v("GitEE"),r("OutboundLink")],1),t._v(" "),r("br"),r("a",{attrs:{href:"https://kangaroo.awaysoft.com/downloads/v3.91.1.230801/kangaroo-max-3.90.2.230801-1-x86_64.pkg.tar.zst",target:"_blank",rel:"noopener noreferrer"}},[t._v("Server 3"),r("OutboundLink")],1),t._v(" "),r("br"),t._v(" "),r("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v3.91.1.230801/kangaroo-max-3.90.2.230801-1-x86_64.pkg.tar.zst",target:"_blank",rel:"noopener noreferrer"}},[t._v("Server 4"),r("OutboundLink")],1),r("br"),r("br"),t._v(" Debian"),r("br"),t._v(" "),r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v3.91.1.230801/kangaroo-max-3.90.2.230801-x86_64.deb",target:"_blank",rel:"noopener noreferrer"}},[t._v("Github"),r("OutboundLink")],1),t._v(" "),r("br"),r("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/releases/download/v3.91.1.230801/kangaroo-max-3.90.2.230801-x86_64.deb",target:"_blank",rel:"noopener noreferrer"}},[t._v("Gitee"),r("OutboundLink")],1),t._v(" "),r("br"),r("a",{attrs:{href:"https://kangaroo.awaysoft.com/downloads/v3.91.1.230801/kangaroo-max-3.90.2.230801-x86_64.deb",target:"_blank",rel:"noopener noreferrer"}},[t._v("Server 3"),r("OutboundLink")],1),t._v(" "),r("br"),r("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v3.91.1.230801/kangaroo-max-3.90.2.230801-x86_64.deb",target:"_blank",rel:"noopener noreferrer"}},[t._v("Server 4"),r("OutboundLink")],1)]),t._v(" "),r("td"),t._v(" "),r("td"),t._v(" "),r("td"),t._v(" "),r("td")]),t._v(" "),r("tr",[r("td",[t._v("ARM64")]),t._v(" "),r("td"),t._v(" "),r("td"),t._v(" "),r("td"),t._v(" "),r("td"),t._v(" "),r("td")]),t._v(" "),r("tr",[r("td",[t._v("RISCV64")]),t._v(" "),r("td"),t._v(" "),r("td"),t._v(" "),r("td"),t._v(" "),r("td"),t._v(" "),r("td")])])]),t._v(" "),r("div",[r("script2",{attrs:{type:"text/javascript",async:"true",src:"https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"}}),t._v(" "),r("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),t._v(" "),r("script2",{attrs:{type:"text/javascript"}},[t._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),t._v(" "),r("h2",{attrs:{id:"sha256sum"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#sha256sum"}},[t._v("#")]),t._v(" SHA256SUM")]),t._v(" "),r("p",[t._v("强烈建议您使用 "),r("code",[t._v("sha256sum")]),t._v("、"),r("code",[t._v("7-Zip")]),t._v(" 等工具,校验您下载的包文件 SHA256 哈希值是否与官方一致,确保您的包文件100%正确无篡改。")]),t._v(" "),r("table",[r("thead",[r("tr",[r("th",[t._v("sha256sum 校验码")]),t._v(" "),r("th",[t._v("袋鼠安装包文件名")])])]),t._v(" "),r("tbody",[r("tr",[r("td",[t._v("0724bfb36f576ffd0183eff98f9308a37a23d3c9440dfb18d3c72814e52a7c7f")]),t._v(" "),r("td",[t._v("kangaroo-max-3.91.2.230807-x86_64.exe")])]),t._v(" "),r("tr",[r("td",[t._v("d737d9b3d29baf543cccd5b7c6ebe329b075ec36e8ba01a46cef146ec83bfc20")]),t._v(" "),r("td",[t._v("kangaroo-max-3.90.2.230801-x86_64.deb")])]),t._v(" "),r("tr",[r("td",[t._v("7c526127e14dbeafa69a818cef61710dd8441b677e83f5b5480dbf90e673146a")]),t._v(" "),r("td",[t._v("kangaroo-max-3.90.2.230801-1-x86_64.pkg.tar.zst")])]),t._v(" "),r("tr",[r("td",[t._v("21f6cafe83a5639e5ec639e5560420bbc69f7c74d8ea9d77e57789e2d9e7bb30")]),t._v(" "),r("td",[t._v("kangaroo-max-3.90.2.230801-x86_64.dmg")])]),t._v(" "),r("tr",[r("td",[t._v("366c09e7f779be87d435e681d89301f5e9388d286f79d8140d1d1bb0ee4cf2e7")]),t._v(" "),r("td",[t._v("kangaroo-mariadb-3.91.2.230807-x86_64.exe")])]),t._v(" "),r("tr",[r("td",[t._v("20e4750206a48ab3888b6196f3c5affcbcc1c9192529398553e8897b654f6f9c")]),t._v(" "),r("td",[t._v("kangaroo-mysql-3.91.2.230807-x86_64.exe")])]),t._v(" "),r("tr",[r("td",[t._v("a543ac201f5f95e231c464e60c452b4ff1168e50776883376a4b66bfc8d42401")]),t._v(" "),r("td",[t._v("kangaroo-postgresql-3.91.2.230807-x86_64.exe")])]),t._v(" "),r("tr",[r("td",[t._v("df895b43909a424c958e525ddd76facd8db7d27a151a7cbccad339b7f01198c9")]),t._v(" "),r("td",[t._v("kangaroo-sqlite-3.91.2.230807-x86_64.exe")])]),t._v(" "),r("tr",[r("td",[t._v("38f1d00e1136e02c41b6eb9338e7877b5f5aa851ede2f9a32db580e02e0a3ecb")]),t._v(" "),r("td",[t._v("kangaroo-max-3.90.2.230801-x86_64.tar.zst")])]),t._v(" "),r("tr",[r("td",[t._v("4f1d560d4f19221655aa226fdb61dd1e18fa25889c7e54f9a0326b93ce50ef9f")]),t._v(" "),r("td",[t._v("kangaroo-max-3.91.2.230807-x86_64.7z")])])])]),t._v(" "),r("h2",{attrs:{id:"分享给朋友们"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#分享给朋友们"}},[t._v("#")]),t._v(" 分享给朋友们")]),t._v(" "),r("social-share",{attrs:{networks:["wechat","qq","weibo","douban","facebook","twitter","telegram","line","skype","linkedin"]}})],1)}),[],!1,null,null,null);a.default=o.exports}}]); \ No newline at end of file diff --git a/assets/js/219.47781c0d.js b/assets/js/219.47781c0d.js new file mode 100644 index 000000000..4462df31d --- /dev/null +++ b/assets/js/219.47781c0d.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[219],{811:function(a,t,r){"use strict";r.r(t);var e=r(13),o=Object(e.a)({},(function(){var a=this,t=a.$createElement,r=a._self._c||t;return r("ContentSlotsDistributor",{attrs:{"slot-key":a.$parent.slotKey}},[r("h1",{attrs:{id:"袋鼠数据库工具-v3-92-1"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#袋鼠数据库工具-v3-92-1"}},[a._v("#")]),a._v(" 袋鼠数据库工具 v3.92.1")]),a._v(" "),r("p",[a._v("由于袋鼠稳定性大幅度改善,崩溃已属于极少数个案,故从 v3.92.1 开始移除 Beta 标记,正式进入稳定版本发布周期,欢迎大家享用;")]),a._v(" "),r("div",{staticClass:"custom-block danger"},[r("p",{staticClass:"custom-block-title"},[a._v("重要提示")]),a._v(" "),r("p",[a._v("版本中标注有 "),r("Badge",{attrs:{text:"Dev"}}),a._v(" "),r("Badge",{attrs:{text:"Beta"}}),a._v(" 字样的可以免费使用,其它版本需要付费。")],1)]),a._v(" "),r("h2",{attrs:{id:"新特性或修复的缺陷列表"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#新特性或修复的缺陷列表"}},[a._v("#")]),a._v(" 新特性或修复的缺陷列表")]),a._v(" "),r("ul",[r("li",[a._v("GTK4 升级为 4.12")]),a._v(" "),r("li",[a._v("libadwaita 升级为 1.4 beta")]),a._v(" "),r("li",[a._v("新增 Redhat 系列系统安装包(rpm)")]),a._v(" "),r("li",[a._v("新增用户自定义代码块支持\n"),r("ul",[r("li",[a._v("用户自定义代码块边栏(过滤/拖放支持)")]),a._v(" "),r("li",[a._v("用户自定义代码块编辑对话框")]),a._v(" "),r("li",[a._v("用户自定义代码块智能提示支持")]),a._v(" "),r("li",[a._v("用户自定义代码块保存与配置支持")]),a._v(" "),r("li",[a._v("用户自定义代码块之查询视图弹出菜单")])])]),a._v(" "),r("li",[a._v("查询视图弹出菜单增加执行菜单项")]),a._v(" "),r("li",[a._v("重构日志视图")]),a._v(" "),r("li",[a._v("重构着色文本视图")]),a._v(" "),r("li",[a._v("重构页面工具栏样式")]),a._v(" "),r("li",[a._v("重构工具栏配置支持")]),a._v(" "),r("li",[a._v("重构导出助理列映射页")]),a._v(" "),r("li",[a._v("重构导出助理实体映射页")]),a._v(" "),r("li",[a._v("重构导出助理DSV设置页")]),a._v(" "),r("li",[a._v("重构模型实体对话框")]),a._v(" "),r("li",[a._v("二维码增加袋鼠LOGO")]),a._v(" "),r("li",[a._v("更新中文语言支持")]),a._v(" "),r("li",[a._v("修复: 通讯连接问题")]),a._v(" "),r("li",[a._v("修复: 文档对话框数据显示问题")]),a._v(" "),r("li",[a._v("修复: 连接空间状态栏信息丢失问题")]),a._v(" "),r("li",[a._v("修复: 数据库连接ID丢失问题")])]),a._v(" "),r("div",[r("script2",{attrs:{type:"text/javascript",async:"true",src:"https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"}}),a._v(" "),r("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),a._v(" "),r("script2",{attrs:{type:"text/javascript"}},[a._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),a._v(" "),r("h2",{attrs:{id:"安装程序和便携安装包"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#安装程序和便携安装包"}},[a._v("#")]),a._v(" 安装程序和便携安装包")]),a._v(" "),r("p",[a._v("Windows 用户可通过 winget 工具直接安装袋鼠:"),r("code",[a._v("winget install Taozuhong.Kangaroo")]),a._v(",否则需要自行下载并安装它。")]),a._v(" "),r("h3",{attrs:{id:"windows-平台"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#windows-平台"}},[a._v("#")]),a._v(" Windows 平台")]),a._v(" "),r("table",[r("thead",[r("tr",[r("th",[a._v("Architect")]),a._v(" "),r("th",[a._v("All")]),a._v(" "),r("th",[a._v("SQLite")]),a._v(" "),r("th",[a._v("MariaDB")]),a._v(" "),r("th",[a._v("MySQL")]),a._v(" "),r("th",[a._v("PostgreSQL")])])]),a._v(" "),r("tbody",[r("tr",[r("td",[a._v("x86-64")]),a._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v3.92.1.230901/kangaroo-max-3.92.1.230901-x86_64.exe",target:"_blank",rel:"noopener noreferrer"}},[a._v("Github"),r("OutboundLink")],1),a._v(" "),r("br"),a._v(" "),r("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/releases/download/v3.92.1.230901/kangaroo-max-3.92.1.230901-x86_64.exe",target:"_blank",rel:"noopener noreferrer"}},[a._v("GitEE"),r("OutboundLink")],1),a._v(" "),r("br"),a._v(" "),r("a",{attrs:{href:"https://kangaroo.awaysoft.com/downloads/v3.92.1.230901/kangaroo-max-3.92.1.230901-x86_64.exe",target:"_blank",rel:"noopener noreferrer"}},[a._v("Server 3"),r("OutboundLink")],1),a._v(" "),r("br"),a._v(" "),r("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v3.92.1.230901/kangaroo-max-3.92.1.230901-x86_64.exe",target:"_blank",rel:"noopener noreferrer"}},[a._v("Server 4"),r("OutboundLink")],1)]),a._v(" "),r("td",[r("a",{attrs:{href:"https://kangaroo.awaysoft.com/downloads/v3.92.1.230901/kangaroo-sqlite-3.92.1.230901-x86_64.exe",target:"_blank",rel:"noopener noreferrer"}},[a._v("Server 3"),r("OutboundLink")],1),a._v(" "),r("br"),a._v(" "),r("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v3.92.1.230901/kangaroo-sqlite-3.92.1.230901-x86_64.exe",target:"_blank",rel:"noopener noreferrer"}},[a._v("Server 4"),r("OutboundLink")],1)]),a._v(" "),r("td",[r("a",{attrs:{href:"https://kangaroo.awaysoft.com/downloads/v3.92.1.230901/kangaroo-mariadb-3.92.1.230901-x86_64.exe",target:"_blank",rel:"noopener noreferrer"}},[a._v("Server 3"),r("OutboundLink")],1),a._v(" "),r("br"),a._v(" "),r("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v3.92.1.230901/kangaroo-mariadb-3.92.1.230901-x86_64.exe",target:"_blank",rel:"noopener noreferrer"}},[a._v("Server 4"),r("OutboundLink")],1)]),a._v(" "),r("td",[r("a",{attrs:{href:"https://kangaroo.awaysoft.com/downloads/v3.92.1.230901/kangaroo-mysql-3.92.1.230901-x86_64.exe",target:"_blank",rel:"noopener noreferrer"}},[a._v("Server 3"),r("OutboundLink")],1),a._v(" "),r("br"),a._v(" "),r("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v3.92.1.230901/kangaroo-mysql-3.92.1.230901-x86_64.exe",target:"_blank",rel:"noopener noreferrer"}},[a._v("Server 4"),r("OutboundLink")],1)]),a._v(" "),r("td",[r("a",{attrs:{href:"https://kangaroo.awaysoft.com/downloads/v3.92.1.230901/kangaroo-postgresql-3.92.1.230901-x86_64.exe",target:"_blank",rel:"noopener noreferrer"}},[a._v("Server 3"),r("OutboundLink")],1),a._v(" "),r("br"),a._v(" "),r("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v3.92.1.230901/kangaroo-postgresql-3.92.1.230901-x86_64.exe",target:"_blank",rel:"noopener noreferrer"}},[a._v("Server 4"),r("OutboundLink")],1)])]),a._v(" "),r("tr",[r("td",[a._v("ARM64")]),a._v(" "),r("td"),a._v(" "),r("td"),a._v(" "),r("td"),a._v(" "),r("td"),a._v(" "),r("td")]),a._v(" "),r("tr",[r("td",[a._v("RISCV64")]),a._v(" "),r("td"),a._v(" "),r("td"),a._v(" "),r("td"),a._v(" "),r("td"),a._v(" "),r("td")])])]),a._v(" "),r("h3",{attrs:{id:"macos-平台"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#macos-平台"}},[a._v("#")]),a._v(" macOS 平台")]),a._v(" "),r("table",[r("thead",[r("tr",[r("th",[a._v("Architect")]),a._v(" "),r("th",[a._v("All")]),a._v(" "),r("th",[a._v("SQLite")]),a._v(" "),r("th",[a._v("MariaDB")]),a._v(" "),r("th",[a._v("MySQL")]),a._v(" "),r("th",[a._v("PostgreSQL")])])]),a._v(" "),r("tbody",[r("tr",[r("td",[a._v("ARM64")]),a._v(" "),r("td"),a._v(" "),r("td"),a._v(" "),r("td"),a._v(" "),r("td"),a._v(" "),r("td")]),a._v(" "),r("tr",[r("td",[a._v("x86-64")]),a._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v3.92.1.230901/kangaroo-max-3.92.1.230901-x86_64.dmg",target:"_blank",rel:"noopener noreferrer"}},[a._v("Github"),r("OutboundLink")],1),a._v(" "),r("br"),a._v(" "),r("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/releases/download/v3.92.1.230901/kangaroo-max-3.92.1.230901-x86_64.dmg",target:"_blank",rel:"noopener noreferrer"}},[a._v("GitEE"),r("OutboundLink")],1),a._v(" "),r("br"),a._v(" "),r("a",{attrs:{href:"https://kangaroo.awaysoft.com/downloads/v3.92.1.230901/kangaroo-max-3.92.1.230901-x86_64.dmg",target:"_blank",rel:"noopener noreferrer"}},[a._v("Server 3"),r("OutboundLink")],1),a._v(" "),r("br"),r("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v3.92.1.230901/kangaroo-max-3.92.1.230901-x86_64.dmg",target:"_blank",rel:"noopener noreferrer"}},[a._v("Server 4"),r("OutboundLink")],1)]),a._v(" "),r("td"),a._v(" "),r("td"),a._v(" "),r("td"),a._v(" "),r("td")]),a._v(" "),r("tr",[r("td",[a._v("RISCV64")]),a._v(" "),r("td"),a._v(" "),r("td"),a._v(" "),r("td"),a._v(" "),r("td"),a._v(" "),r("td")])])]),a._v(" "),r("h3",{attrs:{id:"linux-平台"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#linux-平台"}},[a._v("#")]),a._v(" Linux 平台")]),a._v(" "),r("p",[a._v("这个版本使用未发布的依赖库版本,鉴于依赖库版本未发布原因,不建议 Linux 普通用户使用。"),r("br"),a._v("\n专业用户需要自行拉取代码并编译、安装,才能让袋鼠正常使用,相关依赖库为:"),r("br"),a._v("\nGTK4 >= 4.12.0 "),r("br"),a._v("\nlibadwaita >= 1.4.0")]),a._v(" "),r("table",[r("thead",[r("tr",[r("th",[a._v("Architect")]),a._v(" "),r("th",[a._v("All")]),a._v(" "),r("th",[a._v("SQLite")]),a._v(" "),r("th",[a._v("MariaDB")]),a._v(" "),r("th",[a._v("MySQL")]),a._v(" "),r("th",[a._v("PostgreSQL")])])]),a._v(" "),r("tbody",[r("tr",[r("td",[a._v("x86-64")]),a._v(" "),r("td",[a._v("Arch Linux"),r("br"),r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v3.92.1.230901/kangaroo-max-3.92.1.230901-1-x86_64.pkg.tar.zst",target:"_blank",rel:"noopener noreferrer"}},[a._v("Github"),r("OutboundLink")],1),a._v(" "),r("br"),a._v(" "),r("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/releases/download/v3.92.1.230901/kangaroo-max-3.92.1.230901-1-x86_64.pkg.tar.zst",target:"_blank",rel:"noopener noreferrer"}},[a._v("GitEE"),r("OutboundLink")],1),a._v(" "),r("br"),r("a",{attrs:{href:"https://kangaroo.awaysoft.com/downloads/v3.92.1.230901/kangaroo-max-3.92.1.230901-1-x86_64.pkg.tar.zst",target:"_blank",rel:"noopener noreferrer"}},[a._v("Server 3"),r("OutboundLink")],1),a._v(" "),r("br"),a._v(" "),r("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v3.92.1.230901/kangaroo-max-3.92.1.230901-1-x86_64.pkg.tar.zst",target:"_blank",rel:"noopener noreferrer"}},[a._v("Server 4"),r("OutboundLink")],1),r("br"),r("br"),a._v(" Debian"),r("br"),a._v(" "),r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v3.92.1.230901/kangaroo-max-3.92.1.230901-x86_64.deb",target:"_blank",rel:"noopener noreferrer"}},[a._v("Github"),r("OutboundLink")],1),a._v(" "),r("br"),r("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/releases/download/v3.92.1.230901/kangaroo-max-3.92.1.230901-x86_64.deb",target:"_blank",rel:"noopener noreferrer"}},[a._v("Gitee"),r("OutboundLink")],1),a._v(" "),r("br"),r("a",{attrs:{href:"https://kangaroo.awaysoft.com/downloads/v3.92.1.230901/kangaroo-max-3.92.1.230901-x86_64.deb",target:"_blank",rel:"noopener noreferrer"}},[a._v("Server 3"),r("OutboundLink")],1),a._v(" "),r("br"),r("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v3.92.1.230901/kangaroo-max-3.92.1.230901-x86_64.deb",target:"_blank",rel:"noopener noreferrer"}},[a._v("Server 4"),r("OutboundLink")],1),a._v(" "),r("br"),r("br"),a._v(" Red Hat"),r("br"),r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v3.92.1.230901/kangaroo-max-3.92.1.230901-x86_64.rpm",target:"_blank",rel:"noopener noreferrer"}},[a._v("Github"),r("OutboundLink")],1),a._v(" "),r("br"),r("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/releases/download/v3.92.1.230901/kangaroo-max-3.92.1.230901-x86_64.rpm",target:"_blank",rel:"noopener noreferrer"}},[a._v("Gitee"),r("OutboundLink")],1),a._v(" "),r("br"),r("a",{attrs:{href:"https://kangaroo.awaysoft.com/downloads/v3.92.1.230901/kangaroo-max-3.92.1.230901-x86_64.rpm",target:"_blank",rel:"noopener noreferrer"}},[a._v("Server 3"),r("OutboundLink")],1),a._v(" "),r("br"),r("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v3.92.1.230901/kangaroo-max-3.92.1.230901-x86_64.rpm",target:"_blank",rel:"noopener noreferrer"}},[a._v("Server 4"),r("OutboundLink")],1)]),a._v(" "),r("td"),a._v(" "),r("td"),a._v(" "),r("td"),a._v(" "),r("td")]),a._v(" "),r("tr",[r("td",[a._v("ARM64")]),a._v(" "),r("td"),a._v(" "),r("td"),a._v(" "),r("td"),a._v(" "),r("td"),a._v(" "),r("td")]),a._v(" "),r("tr",[r("td",[a._v("RISCV64")]),a._v(" "),r("td"),a._v(" "),r("td"),a._v(" "),r("td"),a._v(" "),r("td"),a._v(" "),r("td")])])]),a._v(" "),r("div",[r("script2",{attrs:{type:"text/javascript",async:"true",src:"https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"}}),a._v(" "),r("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),a._v(" "),r("script2",{attrs:{type:"text/javascript"}},[a._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),a._v(" "),r("h2",{attrs:{id:"sha256sum"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#sha256sum"}},[a._v("#")]),a._v(" SHA256SUM")]),a._v(" "),r("p",[a._v("强烈建议您使用 "),r("code",[a._v("sha256sum")]),a._v("、"),r("code",[a._v("7-Zip")]),a._v(" 等工具,校验您下载的包文件 SHA256 哈希值是否与官方一致,确保您的包文件100%正确无篡改。")]),a._v(" "),r("table",[r("thead",[r("tr",[r("th",[a._v("sha256sum 校验码")]),a._v(" "),r("th",[a._v("袋鼠安装包文件名")])])]),a._v(" "),r("tbody",[r("tr",[r("td",[a._v("460b029dbb91afe8c5a2e236309a608a2f08ae257a7e774175b208523f753d49")]),a._v(" "),r("td",[a._v("kangaroo-max-3.92.1.230901-x86_64.exe")])]),a._v(" "),r("tr",[r("td",[a._v("6316e5d17bf32fcd667e3edd3cd2593566f2244677d617c830659d0e136c24f6")]),a._v(" "),r("td",[a._v("kangaroo-max-3.92.1.230901-x86_64.dmg")])]),a._v(" "),r("tr",[r("td",[a._v("010a3406f0c67701e23419543c2830270fffee3865da5759465d300ff43656d3")]),a._v(" "),r("td",[a._v("kangaroo-max-3.92.1.230901-x86_64.deb")])]),a._v(" "),r("tr",[r("td",[a._v("b33f33d9daa888ec45f3639eceb37e30cfd8bf4e0c22fc742affd993fc727b66")]),a._v(" "),r("td",[a._v("kangaroo-max-3.92.1.230901-x86_64.rpm")])]),a._v(" "),r("tr",[r("td",[a._v("453c33bb90bd881b3e29f8ac63c577a563265661c3d8b044b3bfd16b818359ef")]),a._v(" "),r("td",[a._v("kangaroo-max-3.92.1.230901-1-x86_64.pkg.tar.zst")])]),a._v(" "),r("tr",[r("td",[a._v("39376cbb67511e8a99758e7c2ae6b2ed00e0a8dba88c62f967aa881b0e792822")]),a._v(" "),r("td",[a._v("kangaroo-max-3.92.1.230901-x86_64.7z")])]),a._v(" "),r("tr",[r("td",[a._v("3f27e51f50858ad515ade26ca4c7fe00d5028dbc765b5a8bcf04e2a84ca91337")]),a._v(" "),r("td",[a._v("kangaroo-mariadb-3.92.1.230901-x86_64.exe")])]),a._v(" "),r("tr",[r("td",[a._v("b2d09740311f44abcace6cc81c2876fb02184f6b048e59a19f2ffd667cb2ae1f")]),a._v(" "),r("td",[a._v("kangaroo-mysql-3.92.1.230901-x86_64.exe")])]),a._v(" "),r("tr",[r("td",[a._v("99bfe18452ce25e13ede7811e5eefc16a083150d75a3c6fa5e6bacdd73e3517f")]),a._v(" "),r("td",[a._v("kangaroo-postgresql-3.92.1.230901-x86_64.exe")])]),a._v(" "),r("tr",[r("td",[a._v("1b99c4cbe956608d7bca6dc49c5222b23493fcdf76c01242cd6dd89e07f2e547")]),a._v(" "),r("td",[a._v("kangaroo-sqlite-3.92.1.230901-x86_64.exe")])])])]),a._v(" "),r("h2",{attrs:{id:"分享给朋友们"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#分享给朋友们"}},[a._v("#")]),a._v(" 分享给朋友们")]),a._v(" "),r("social-share",{attrs:{networks:["wechat","qq","weibo","douban","facebook","twitter","telegram","line","skype","linkedin"]}})],1)}),[],!1,null,null,null);t.default=o.exports}}]); \ No newline at end of file diff --git a/assets/js/22.66891c55.js b/assets/js/22.66891c55.js new file mode 100644 index 000000000..7764a9547 --- /dev/null +++ b/assets/js/22.66891c55.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[22],{600:function(t,v,_){"use strict";_.r(v);var e=_(13),a=Object(e.a)({},(function(){var t=this,v=t.$createElement,_=t._self._c||v;return _("ContentSlotsDistributor",{attrs:{"slot-key":t.$parent.slotKey}},[_("div",{staticClass:"features"},[_("div",{staticClass:"feature"},[_("h2",[t._v("Simple & Powerful")]),t._v(" "),_("p",[t._v("Simple and Intuitive GUI helps you focus on data and finishing your work quickly.")])]),t._v(" "),_("div",{staticClass:"feature"},[_("h2",[t._v("Touch friendly")]),t._v(" "),_("p",[t._v("Focus on the experience of editting, make you feel smoothly when working with it.")])]),t._v(" "),_("div",{staticClass:"feature"},[_("h2",[t._v("Performance")]),t._v(" "),_("p",[_("a",{attrs:{target:"_blank",href:"https://www.gtk.org/"}},[t._v("GTK")]),t._v(" and "),_("a",{attrs:{target:"_blank",href:"https://gitlab.gnome.org/GNOME/libadwaita"}},[t._v("Adwaita")]),t._v(" with "),_("a",{attrs:{target:"_blank",href:"https://gitlab.gnome.org/GNOME/vala"}},[t._v("Vala")]),t._v(" based native application, focus on performance, focus on responsible.")])])]),t._v(" "),_("h2",{attrs:{id:"support-database"}},[_("a",{staticClass:"header-anchor",attrs:{href:"#support-database"}},[t._v("#")]),t._v(" Support database")]),t._v(" "),_("p",[t._v("Database support capability level: "),_("strong",[t._v("Planned")]),t._v(" / "),_("strong",[t._v("Partial")]),t._v(" / "),_("strong",[t._v("Full(💯)")])]),t._v(" "),_("table",[_("thead",[_("tr",[_("th",[t._v("Database")]),t._v(" "),_("th",[t._v("Version")]),t._v(" "),_("th",[t._v("Query")]),t._v(" "),_("th",[t._v("Editing")]),t._v(" "),_("th",[t._v("Designer")]),t._v(" "),_("th",[t._v("Export")]),t._v(" "),_("th",[t._v("Import")]),t._v(" "),_("th",[t._v("Hint")]),t._v(" "),_("th",[t._v("Modeling")]),t._v(" "),_("th",[t._v("DB Sync")])])]),t._v(" "),_("tbody",[_("tr",[_("td",[t._v("SQLite")]),t._v(" "),_("td",[t._v("3.0 +")]),t._v(" "),_("td",[t._v("Full💯")]),t._v(" "),_("td",[t._v("Full💯")]),t._v(" "),_("td",[t._v("Full💯")]),t._v(" "),_("td",[t._v("Full💯")]),t._v(" "),_("td",[t._v("Full💯")]),t._v(" "),_("td",[t._v("Full💯")]),t._v(" "),_("td",[t._v("✅✅🔲🔲🔲")]),t._v(" "),_("td",[t._v("✅✅✅✅🔲")])]),t._v(" "),_("tr",[_("td",[t._v("MySQL")]),t._v(" "),_("td",[t._v("5.5 +")]),t._v(" "),_("td",[t._v("Full💯")]),t._v(" "),_("td",[t._v("Full💯")]),t._v(" "),_("td",[t._v("Full💯")]),t._v(" "),_("td",[t._v("Full💯")]),t._v(" "),_("td",[t._v("Full💯")]),t._v(" "),_("td",[t._v("Full💯")]),t._v(" "),_("td",[t._v("✅✅🔲🔲🔲")]),t._v(" "),_("td",[t._v("✅✅✅✅🔲")])]),t._v(" "),_("tr",[_("td",[t._v("MariaDB")]),t._v(" "),_("td",[t._v("10.0 +")]),t._v(" "),_("td",[t._v("Full💯")]),t._v(" "),_("td",[t._v("Full💯")]),t._v(" "),_("td",[t._v("Full💯")]),t._v(" "),_("td",[t._v("Full💯")]),t._v(" "),_("td",[t._v("Full💯")]),t._v(" "),_("td",[t._v("Full💯")]),t._v(" "),_("td",[t._v("✅✅🔲🔲🔲")]),t._v(" "),_("td",[t._v("✅✅✅✅🔲")])]),t._v(" "),_("tr",[_("td",[t._v("PostgreSQL")]),t._v(" "),_("td",[t._v("9.0 +")]),t._v(" "),_("td",[t._v("Full💯")]),t._v(" "),_("td",[t._v("Full💯")]),t._v(" "),_("td",[t._v("Full💯")]),t._v(" "),_("td",[t._v("Full💯")]),t._v(" "),_("td",[t._v("Full💯")]),t._v(" "),_("td",[t._v("Full💯")]),t._v(" "),_("td",[t._v("✅✅🔲🔲🔲")]),t._v(" "),_("td",[t._v("✅✅✅✅🔲")])]),t._v(" "),_("tr",[_("td",[t._v("Redis")]),t._v(" "),_("td"),t._v(" "),_("td",[t._v("Planned")]),t._v(" "),_("td",[t._v("Planned")]),t._v(" "),_("td",[t._v("Planned")]),t._v(" "),_("td",[t._v("Planned")]),t._v(" "),_("td",[t._v("Planned")]),t._v(" "),_("td",[t._v("Planned")]),t._v(" "),_("td",[t._v("Planned")]),t._v(" "),_("td",[t._v("Planned")])]),t._v(" "),_("tr",[_("td",[t._v("Oracle")]),t._v(" "),_("td"),t._v(" "),_("td"),t._v(" "),_("td"),t._v(" "),_("td"),t._v(" "),_("td"),t._v(" "),_("td"),t._v(" "),_("td"),t._v(" "),_("td"),t._v(" "),_("td")]),t._v(" "),_("tr",[_("td",[t._v("SQL Server")]),t._v(" "),_("td"),t._v(" "),_("td"),t._v(" "),_("td"),t._v(" "),_("td"),t._v(" "),_("td"),t._v(" "),_("td"),t._v(" "),_("td"),t._v(" "),_("td"),t._v(" "),_("td")])])]),t._v(" "),_("p",[_("strong",[t._v("Hint")]),t._v(": Code intellisense or Code autocomplete")]),t._v(" "),_("p",[_("a",{attrs:{href:"./en/license/privacy-policy"}},[t._v("Privacy Policy")]),t._v(" | "),_("a",{attrs:{href:"./en/license/service-agreement"}},[t._v("Service Agreement")]),t._v(" | | "),_("a",{attrs:{href:"http://www.beian.gov.cn/portal/registerSystemInfo?recordcode=44030602005092",target:"_blank",rel:"noopener noreferrer"}},[t._v("粤公网安备44030602005092号"),_("OutboundLink")],1),t._v(" | "),_("a",{attrs:{href:"http://beian.miit.gov.cn/",target:"_blank",rel:"noopener noreferrer"}},[t._v("粤ICP备2020100158号"),_("OutboundLink")],1),t._v(" "),_("br"),t._v(" Copyright © 2019 - present Kangaroo. All Rights Reserved.")])])}),[],!1,null,null,null);v.default=a.exports}}]); \ No newline at end of file diff --git a/assets/js/220.8067fb9c.js b/assets/js/220.8067fb9c.js new file mode 100644 index 000000000..e6d2dcfef --- /dev/null +++ b/assets/js/220.8067fb9c.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[220],{812:function(t,a,r){"use strict";r.r(a);var e=r(13),s=Object(e.a)({},(function(){var t=this,a=t.$createElement,r=t._self._c||a;return r("ContentSlotsDistributor",{attrs:{"slot-key":t.$parent.slotKey}},[r("h1",{attrs:{id:"袋鼠及第三方库许可证"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#袋鼠及第三方库许可证"}},[t._v("#")]),t._v(" 袋鼠及第三方库许可证")]),t._v(" "),r("p",[t._v("在这里您可以详细查阅袋鼠数据库工具的用户许可协议,各功能特性使用的第三方库的许可协议(证)")]),t._v(" "),r("h2",{attrs:{id:"隐私政策"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#隐私政策"}},[t._v("#")]),t._v(" 隐私政策")]),t._v(" "),r("p",[r("a",{attrs:{href:"./privacy-policy"}},[t._v("袋鼠数据库工具隐私保护指引")])]),t._v(" "),r("h2",{attrs:{id:"用户协议"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#用户协议"}},[t._v("#")]),t._v(" 用户协议")]),t._v(" "),r("p",[r("a",{attrs:{href:"./service-agreement"}},[t._v("袋鼠数据库工具软件许可及服务协议")])]),t._v(" "),r("h2",{attrs:{id:"致谢"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#致谢"}},[t._v("#")]),t._v(" 致谢")]),t._v(" "),r("p",[r("a",{attrs:{href:"./acknowledgement"}},[t._v("致谢")])])])}),[],!1,null,null,null);a.default=s.exports}}]); \ No newline at end of file diff --git a/assets/js/221.5dd30ebf.js b/assets/js/221.5dd30ebf.js new file mode 100644 index 000000000..c23cb9735 --- /dev/null +++ b/assets/js/221.5dd30ebf.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[221],{813:function(t,a,r){"use strict";r.r(a);var s=r(13),e=Object(s.a)({},(function(){var t=this,a=t.$createElement,r=t._self._c||a;return r("ContentSlotsDistributor",{attrs:{"slot-key":t.$parent.slotKey}},[r("h1",{attrs:{id:"致谢"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#致谢"}},[t._v("#")]),t._v(" 致谢")]),t._v(" "),r("p",[t._v("袋鼠数据库工具(Kangaroo) 是 @taozuhong 先生开发的软件作品. 保留所有版权.")]),t._v(" "),r("h2",{attrs:{id:"本地化贡献者"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#本地化贡献者"}},[t._v("#")]),t._v(" 本地化贡献者")]),t._v(" "),r("ul",[r("li",[t._v("简体中文:taozuhong")]),t._v(" "),r("li",[t._v("繁体中文:taozuhong")])]),t._v(" "),r("h2",{attrs:{id:"下载服务器支持"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#下载服务器支持"}},[t._v("#")]),t._v(" 下载服务器支持")]),t._v(" "),r("ul",[r("li",[t._v("腾讯云 + CDN 支持: TOM")]),t._v(" "),r("li",[t._v("又拍云 支持: yanling112")])]),t._v(" "),r("h2",{attrs:{id:"第三方库和图标"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#第三方库和图标"}},[t._v("#")]),t._v(" 第三方库和图标")]),t._v(" "),r("p",[r("a",{attrs:{href:"./third-party"}},[t._v("第三方库许可协议(证)")])])])}),[],!1,null,null,null);a.default=e.exports}}]); \ No newline at end of file diff --git a/assets/js/222.a95e33dd.js b/assets/js/222.a95e33dd.js new file mode 100644 index 000000000..0f08707ee --- /dev/null +++ b/assets/js/222.a95e33dd.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[222],{814:function(e,o,a){"use strict";a.r(o);var t=a(13),s=Object(t.a)({},(function(){var e=this,o=e.$createElement,a=e._self._c||o;return a("ContentSlotsDistributor",{attrs:{"slot-key":e.$parent.slotKey}},[a("h1",{attrs:{id:"privacy-policy"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#privacy-policy"}},[e._v("#")]),e._v(" Privacy Policy")]),e._v(" "),a("p",[e._v("February 1, 2022 by datatable.online")]),e._v(" "),a("p",[e._v("datatable.online built Kangaroo as a Commercial software. This SOFTWARE is provided by datatable.online and is intended for use as is.")]),e._v(" "),a("p",[e._v("This page is used to inform users regarding our policies with the collection, use, and disclosure of Personal Information if anyone decided to use Kangaroo.")]),e._v(" "),a("p",[e._v("If you choose to use Kangaroo, then you agree to the collection and use of information in relation to this policy.")]),e._v(" "),a("p",[e._v("The terms used in this Privacy Policy have the same meanings as in our Terms and Conditions, which will be accessible at Kangaroo unless otherwise defined in this Privacy Policy.")]),e._v(" "),a("p",[e._v("This Privacy Policy only applies for the usage of our software. Visiting our official homepage, support website, theme website, or other related websites, is not controlled by this Privacy Policy.")]),e._v(" "),a("h2",{attrs:{id:"information-collection-and-use"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#information-collection-and-use"}},[e._v("#")]),e._v(" Information Collection and Use")]),e._v(" "),a("p",[e._v("Anonymous usage data will only be send when the option “Send Anonymous Usage Info” is enabled in preferences panel.")]),e._v(" "),a("p",[e._v("If you disable the option, no data will be collected to us. (The option can be opt-out, but may need a restart of Kangaroo for the option to apply).")]),e._v(" "),a("p",[e._v("When you allow send anonymous usage data, we WILL collect following data anonymous for getting overall statistics of how Kangaroo is used:")]),e._v(" "),a("ul",[a("li",[e._v("Kangaroo version, operation system, screen resolution, locale and countries (based on IP address).")]),e._v(" "),a("li",[e._v("Name of operations when using Kangaroo, such as “launch”, “new window”, “print”, etc, for gathering overall statistics. (We won’t be able to list all detailed operations for a given user. We won’t collect any detail or sensitive data for user’s operation)")]),e._v(" "),a("li",[e._v("How long a user is using Kangaroo.")]),e._v(" "),a("li",[e._v("Insensitive preference settings in Kangaroo such as theme name, window style, etc.\nWhen error/exception happens, and if you allow send anonymous usage data, we will collect stack trace, related settings, and running status before exception throws to help us find errors. It should not contain any sensitive or personal data.")])]),e._v(" "),a("h2",{attrs:{id:"_3rd-party-apps-services"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#_3rd-party-apps-services"}},[e._v("#")]),e._v(" 3rd Party Apps & Services")]),e._v(" "),a("p",[e._v("Kangaroo can call and execute other apps for higher usability, which may collect information used to identify you, no matter you enable “Send Anonymous Usage Info” or not.")]),e._v(" "),a("p",[e._v("The 3rd party apps that Kangaroo may launch includes:")]),e._v(" "),a("ul",[a("li",[e._v("gdbus . It may be automatically launched by Kangaroo when you launch Kangaroo. it allows communication between multiple processes running concurrently on the same machine.")])]),e._v(" "),a("p",[e._v("None of them will be installed automatically by Kangaroo, nor launched automatically when user is not doing related operations.")]),e._v(" "),a("p",[e._v("We have no control over and assume no responsibility for the content, privacy policies, or practices of any third-party services or apps.")]),e._v(" "),a("h2",{attrs:{id:"external-sites"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#external-sites"}},[e._v("#")]),e._v(" External Sites")]),e._v(" "),a("p",[e._v("If you insert images, videos, iframes or other resources Kangaroo support from remote websites, or open local markdown file containing them, Kangaroo will load them automatically from target sites. Those sites, however, may collect your visit information.")]),e._v(" "),a("p",[e._v("Also, you can input or open files that may contain links to other sites. If you click on a third-party link, you will be directed to that site. Note that these external sites are not operated by us. Therefore, we strongly advise you to review the Privacy Policy of these websites.")]),e._v(" "),a("p",[e._v("We have no control over and assume no responsibility for the content, privacy policies, or practices of any third-party websites.")]),e._v(" "),a("h2",{attrs:{id:"log-data"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#log-data"}},[e._v("#")]),e._v(" Log Data")]),e._v(" "),a("p",[e._v("Kangaroo will record necessary log on your local computer.")]),e._v(" "),a("h2",{attrs:{id:"backups"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#backups"}},[e._v("#")]),e._v(" Backups")]),e._v(" "),a("p",[e._v("For better user experience and prevent data lose from crash, if possible, Kangaroo will create backups for the content your input or modify automatically, those backups are stored on your local computer, no data will be collected by us.")]),e._v(" "),a("h2",{attrs:{id:"feedbacks-debug-contents"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#feedbacks-debug-contents"}},[e._v("#")]),e._v(" Feedbacks & Debug Contents")]),e._v(" "),a("p",[e._v("You may send us, or we may suggest you to send us informations like system version, operation steps , sample markdown files, or other needed info when you reports bugs or gave feedbacks. You can refuse to provide those informations if you do not want to.")]),e._v(" "),a("p",[e._v("All sample markdown files that user send to us, will only be used for debug and test purpose, we will not leak them to any other person who is not one of our development team without user’s permission. We may keep and use them after we remove sensitive data or personal identical data, for regulation test purpose. But we will delete files from mail box and local machine after we fixed related bugs, if user require us doing so.")]),e._v(" "),a("p",[e._v("Since user can give us feedbacks via mail, GitHub, twitter, doorbell.io, and so on, we have no control over and assume no responsibility for the content, privacy policies, or practices of any of those communication tools.")]),e._v(" "),a("h2",{attrs:{id:"service-providers"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#service-providers"}},[e._v("#")]),e._v(" Service Providers")]),e._v(" "),a("p",[e._v("We will NOT share data with third-party companies and individuals.")]),e._v(" "),a("h2",{attrs:{id:"security"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#security"}},[e._v("#")]),e._v(" Security")]),e._v(" "),a("p",[e._v("We value your trust in providing us your Personal Information, thus we are striving to use commercially acceptable means of protecting it. But remember that no method of transmission over the internet, or method of electronic storage is 100% secure and reliable, and we cannot guarantee its absolute security.")]),e._v(" "),a("h2",{attrs:{id:"children-s-privacy"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#children-s-privacy"}},[e._v("#")]),e._v(" Children’s Privacy")]),e._v(" "),a("p",[e._v("These Services do not address anyone under the age of 13. We do not knowingly collect personally identifiable information from children under 13. In the case we discover that a child under 13 has provided us with personal information, we immediately delete this from our servers or machines. If you are a parent or guardian and you are aware that your child has provided us with personal information, please contact me so that we will be able to do necessary actions.")]),e._v(" "),a("h2",{attrs:{id:"changes-to-this-privacy-policy"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#changes-to-this-privacy-policy"}},[e._v("#")]),e._v(" Changes to This Privacy Policy")]),e._v(" "),a("p",[e._v("We may update our Privacy Policy from time to time. Thus, you are advised to review this file or page periodically for any changes. These changes are effective immediately after they are updated in our website or Kangaroo is upgraded.")]),e._v(" "),a("h2",{attrs:{id:"contact-us"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#contact-us"}},[e._v("#")]),e._v(" Contact Us")]),e._v(" "),a("p",[e._v("If you have any questions or suggestions about our Privacy Policy, do not hesitate to contact us (dbkangaroo@hotmail.com).")])])}),[],!1,null,null,null);o.default=s.exports}}]); \ No newline at end of file diff --git a/assets/js/223.c095c67f.js b/assets/js/223.c095c67f.js new file mode 100644 index 000000000..2d545735e --- /dev/null +++ b/assets/js/223.c095c67f.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[223],{815:function(e,t,a){"use strict";a.r(t);var o=a(13),i=Object(o.a)({},(function(){var e=this,t=e.$createElement,a=e._self._c||t;return a("ContentSlotsDistributor",{attrs:{"slot-key":e.$parent.slotKey}},[a("h1",{attrs:{id:"end-user-license-agreement"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#end-user-license-agreement"}},[e._v("#")]),e._v(" End User License Agreement")]),e._v(" "),a("p",[e._v("February 1, 2022 by datatable.online")]),e._v(" "),a("div",{staticClass:"custom-block tip"},[a("p",{staticClass:"custom-block-title"},[e._v("提示")]),e._v(" "),a("p",[e._v("Please read this End User License Agreement (a.k.a “EULA”, “License Agreement”) before You purchase a License Key for the Software and subsequently download and use the Software.")])]),e._v(" "),a("p",[e._v("By purchasing a License Key and/or downloading and using the Software, You agree, without reservation, to be bound by the terms of this EULA. If You do not agree with the terms of this EULA, please do not purchase a License Key and/or download and use the Software.")]),e._v(" "),a("p",[e._v("If You accept the terms and conditions in this EULA on behalf of a company or other legal entity, You warrant that You have full legal authority to accept the terms and conditions in this EULA on behalf of such company or other legal entity, and to legally bind such company or other legal entity.")]),e._v(" "),a("p",[e._v("You may not accept this EULA if You are not of legal age to form a binding contract in your country/states.")]),e._v(" "),a("h2",{attrs:{id:"_1-definitions"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#_1-definitions"}},[e._v("#")]),e._v(" 1. Definitions")]),e._v(" "),a("ul",[a("li",[e._v("“"),a("strong",[e._v("We")]),e._v("” a.k.a. “us”, or “datatable.online”. Developer(s) of Kangaroo.")]),e._v(" "),a("li",[e._v("“"),a("strong",[e._v("Documentation")]),e._v("” the detailed information about the Software, its features and the system requirements as made available on the website of datatable.online, as amended from time to time.")]),e._v(" "),a("li",[e._v("“"),a("strong",[e._v("Open Source Software")]),e._v("” any software that requires as a condition of use, copying, modification and/or distribution of such software that such software or other software incorporated into, derived from or distributed with such software (a) be disclosed or distributed in source code form, and (b) be licensed for the purpose of making and/or distributing derivative works, and (c) be redistributable at no charge;")]),e._v(" "),a("li",[e._v("“"),a("strong",[e._v("Beta version")]),e._v("” the license for the Software for public testing before version v2.0.")]),e._v(" "),a("li",[e._v("“"),a("strong",[e._v("Stable version")]),e._v("” versions with version number equal or greater than v2.0, exclude Beta versions.")]),e._v(" "),a("li",[e._v("“"),a("strong",[e._v("Dev version")]),e._v("” versions marked with “Dev” flag, those versions are used for public testing purpose after v2.0.")]),e._v(" "),a("li",[e._v("“"),a("strong",[e._v("Full version")]),e._v("” the license for the Software for the term specified on the webpage of the store where You purchase the license, or in any applicable agreement concerning the purchase of the license (as stand-alone product or as part of a subscription) to Use the Software. This license is when Kangaroo reaches v2.0.")]),e._v(" "),a("li",[e._v("“"),a("strong",[e._v("Trial version")]),e._v("” the license for the Software for the term of N days to Use the Stable version of Software for the sole purpose of testing and evaluating the Software. (N will be decided by us in future). This license is when Kangaroo reaches v2.0.")]),e._v(" "),a("li",[e._v("“"),a("strong",[e._v("Updates")]),e._v("” any modified versions and updates of, and additions to the Software (excluding upgrades of the Software);")]),e._v(" "),a("li",[e._v("“"),a("strong",[e._v("Major Update")]),e._v("” updates that introduce major version number changes, for example, from v2.x to v3.x is a Major Update, from v2.1.x to v2.2.x is not.")]),e._v(" "),a("li",[e._v("“"),a("strong",[e._v("Use")]),e._v("” the access, download, install, copy or get benefit from using the Software in accordance with the documentation.")]),e._v(" "),a("li",[e._v("“"),a("strong",[e._v("You")]),e._v("” you, the final and ultimate user of the Software or the authorized representative of a company or other legal entity that will be the final and ultimate user of the Software, and the company or other legal entity that will be the final and ultimate user of the Software, if applicable.")])]),e._v(" "),a("h3",{attrs:{id:"general"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#general"}},[e._v("#")]),e._v(" General")]),e._v(" "),a("ol",[a("li",[e._v("This EULA applies to any licenses granted to You by us for the use of the Software.")]),e._v(" "),a("li",[e._v("By purchasing a License Key for the Software and/or downloading and using the Software, You enter into this EULA with us.")])]),e._v(" "),a("h2",{attrs:{id:"_2-changes-to-the-license-agreement-and-the-website-product"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#_2-changes-to-the-license-agreement-and-the-website-product"}},[e._v("#")]),e._v(" 2. Changes to the License Agreement and the Website/Product")]),e._v(" "),a("ol",[a("li",[e._v("Kangaroo is a work in progress, meaning that a lot will change in the near future. We reserve the right to update the Website and these Terms of Service from time to time, at our discretion. We will make sure to announce any major change in a prominent way.")]),e._v(" "),a("li",[a("strong",[e._v("Your continued use of the Kangaroo following the publishing of updated License Agreement means that you accept and agree to the changes.")])]),e._v(" "),a("li",[e._v("The published License Agreement not only applies to current beta versions, but also applies to all versions and future updates of Kangaroo.")])]),e._v(" "),a("h2",{attrs:{id:"_3-license"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#_3-license"}},[e._v("#")]),e._v(" 3. License")]),e._v(" "),a("ol",[a("li",[e._v("We grant You a non-exclusive, non-transferable, limited, revocable license to Use the Software in accordance with this EULA. We reserve all rights not expressly granted to You.")]),e._v(" "),a("li",[e._v("We are and remain the owner of any intellectual property rights with respect to the Software. You shall not acquire any ownership to the Software as result of Your purchase of the License Key or Your Use of the Software.")])]),e._v(" "),a("h2",{attrs:{id:"_4-permitted-use-and-restrictions"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#_4-permitted-use-and-restrictions"}},[e._v("#")]),e._v(" 4. Permitted use and restrictions")]),e._v(" "),a("ol",[a("li",[e._v("In order to be able to install the Software and receive Updates and upgrades, Your computer shall have access to the Internet and shall meet the system requirements described in the Documentation that can be found on the webpage: "),a("a",{attrs:{href:"../document/system-requirements"}},[e._v("System Requirements")]),e._v(". The system requirements may be changed in future updates.")]),e._v(" "),a("li",[e._v("You shall Use the Beta version, Full version, or Trial version in accordance with applicable laws and shall not:\n"),a("ol",[a("li",[e._v("Use the Trial version on any system where the Trial version was previously Used and expired;")]),e._v(" "),a("li",[e._v("Rent, lease, lend, sell, redistribute, sublicense or otherwise commercially exploit the License Key, the Full version or the Trial version;")]),e._v(" "),a("li",[e._v("Assign the License Key, the Full version or the Trial version without prior written approval of us;")]),e._v(" "),a("li",[e._v("Use the Beta version, Full version or Trial version for any unlawful or illegal activity, or to facilitate an unlawful or illegal activity;")]),e._v(" "),a("li",[e._v("After 14 days evaluation passed, continue uses the versions for commercial usage, without a license code;")]),e._v(" "),a("li",[e._v("Delete or alter any disclaimers, warnings, copyright or other proprietary notices accompanying the Software; or")]),e._v(" "),a("li",[e._v("Adapt (except as otherwise provided in this EULA), decompile, reverse engineer, disassemble, attempt to derive the source code of, modify or create derivative works of the Software and the License Key or any parts thereof, except to the extent permitted by applicable law.")]),e._v(" "),a("li",[e._v("Exception: repackage (provide installation packages/scripts) Kangaroo on Linux system is allowed if all contents (includes all binaries, resources files, scripts, etc) of Kangaroo are not modified or deleted.")])])]),e._v(" "),a("li",[e._v("We may modify the Software at any time at its sole discretion and without notice to You, for example to comply with applicable law or a court order, to avoid a third party infringement claim or to provide Updates and upgrades.")]),e._v(" "),a("li",[e._v("Certain components of the Software are Open Source Software and licensed under the terms of the applicable license(s) of the Open Source Software. You shall adhere to these terms and conditions, which can be found via the webpage: "),a("a",{attrs:{href:"../license/acknowledgement"}},[e._v("Acknowledgement")]),e._v(".")])]),e._v(" "),a("h2",{attrs:{id:"_5-maintenance-and-support"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#_5-maintenance-and-support"}},[e._v("#")]),e._v(" 5. Maintenance and support")]),e._v(" "),a("ol",[a("li",[e._v("We will notify You of any available Updates and upgrades.")]),e._v(" "),a("li",[e._v("You will be entitled to receive Updates free of charge for unless it is a Major Update.")]),e._v(" "),a("li",[e._v("For a major update, You may need to pay an additional fee in order to be able to download an upgrade. The payment policy for major update will be announced by us when the upgrades are ready.")]),e._v(" "),a("li",[e._v("After you upgrade from Beta version to Stable version, if no License key are provided, you would start using Trial Version automatically.")]),e._v(" "),a("li",[e._v("You could upgrade or downgrade Kangaroo as you like, but we will delete older versions from our website after a long time period or we find it contains serious bugs.")]),e._v(" "),a("li",[e._v("Any maintenance and support provided by us, including the provision of Updates and upgrades, will be provided in an adequate way on an “as is” basis without any warranty, as soon as reasonably practicable, subject to availability of personnel.")])]),e._v(" "),a("h2",{attrs:{id:"_6-use-of-data"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#_6-use-of-data"}},[e._v("#")]),e._v(" 6. Use of data")]),e._v(" "),a("p",[e._v("See our Private Policy.")]),e._v(" "),a("h2",{attrs:{id:"_7-disclaimer"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#_7-disclaimer"}},[e._v("#")]),e._v(" 7. Disclaimer")]),e._v(" "),a("ol",[a("li",[e._v("You Use the Software at Your own risk and the entire risk as to satisfactory quality, performance and accuracy is with You.")]),e._v(" "),a("li",[e._v("We are working hard on improving Kangaroo, but we can’t guarantee that is it bug free. Therefore, "),a("strong",[e._v("your use of Kangaroo is at your sole risk. The service is provided “as is” and “as available”.")]),e._v(" We disclaim all warranties of any kind, express or implied, including, without limitation, the warranties of merchantability, fitness for a particular purpose and non-infringement. We are not liable for damages, direct or consequential, resulting from your use of the Website, and you agree to defend, indemnify and hold us harmless from any claims, losses, liability costs and expenses (including but not limited to attorney’s fees) arising from your violation of any third-party’s rights. You acknowledge that you have only a limited, nonexclusive, nontransferable license to use the Website.")])]),e._v(" "),a("h2",{attrs:{id:"_8-liability-limitation"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#_8-liability-limitation"}},[e._v("#")]),e._v(" 8. Liability limitation")]),e._v(" "),a("ol",[a("li",[e._v("We and any third party that has been involved in the creation, production, or delivery of the Software are under no circumstances liable for consequential or indirect damages (including damage for loss of profit, business interruption, loss of data, and the like arising out of the use or inability to use the Software).")]),e._v(" "),a("li",[e._v("The limitations of liability referred to in clause 8.1 shall not apply in the event that: (i) any negligence on the part of Kangaroo leads to death or physical injury or (ii) damages arise from the intent, willful misconduct or gross negligence of us or the management of us.")])]),e._v(" "),a("h2",{attrs:{id:"_9-termination"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#_9-termination"}},[e._v("#")]),e._v(" 9. Termination")]),e._v(" "),a("ol",[a("li",[e._v("This EULA will continue to be in force until the expiry or termination of the Full version or Trial version.")]),e._v(" "),a("li",[e._v("The Full version or Trial version will terminate automatically at the end of the applicable license term, unless renewed or Activated prior to the end of the applicable license term.")]),e._v(" "),a("li",[e._v("We are entitled to terminate the Full version or Trial version by blocking the License Key during the license term with immediate effect and without prior notice in the event You fail to comply with the terms in this EULA, in the event You fail to pay Your (subscription) fee for the License Key within the applicable payment term, or in the event Kangaroo is required to do so by law or an order of an applicable court.")]),e._v(" "),a("li",[e._v("Upon termination of the Full version or Trial version, You shall cease all use of the Software and shall destroy all copies thereof.")]),e._v(" "),a("li",[e._v("You acknowledge that the provisions of this EULA, which by their nature are intended to survive termination, will remain in effect after termination of this EULA.")])]),e._v(" "),a("h2",{attrs:{id:"_10-feedback"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#_10-feedback"}},[e._v("#")]),e._v(" 10. Feedback")]),e._v(" "),a("p",[e._v("We welcome any comment, question and communication at dbkangaroo@hotmail.com")])])}),[],!1,null,null,null);t.default=i.exports}}]); \ No newline at end of file diff --git a/assets/js/224.6b6abbed.js b/assets/js/224.6b6abbed.js new file mode 100644 index 000000000..6c54ad37a --- /dev/null +++ b/assets/js/224.6b6abbed.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[224],{816:function(t,r,e){"use strict";e.r(r);var n=e(13),a=Object(n.a)({},(function(){var t=this,r=t.$createElement,e=t._self._c||r;return e("ContentSlotsDistributor",{attrs:{"slot-key":t.$parent.slotKey}},[e("h1",{attrs:{id:"第三方库许可证"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#第三方库许可证"}},[t._v("#")]),t._v(" 第三方库许可证")]),t._v(" "),e("h2",{attrs:{id:"功能特性、第三方库及许可证"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#功能特性、第三方库及许可证"}},[t._v("#")]),t._v(" 功能特性、第三方库及许可证")]),t._v(" "),e("table",[e("thead",[e("tr",[e("th",[t._v("功能特性")]),t._v(" "),e("th",[t._v("第三方库名称")]),t._v(" "),e("th",[t._v("许可证协议")])])]),t._v(" "),e("tbody",[e("tr",[e("td",[t._v("编译器")]),t._v(" "),e("td",[e("a",{attrs:{href:"https://gitlab.gnome.org/GNOME/vala",target:"_blank",rel:"noopener noreferrer"}},[t._v("Vala"),e("OutboundLink")],1)]),t._v(" "),e("td",[e("a",{attrs:{href:"https://gitlab.gnome.org/GNOME/vala/-/blob/master/COPYING",target:"_blank",rel:"noopener noreferrer"}},[t._v("LGPL 2.1"),e("OutboundLink")],1)])]),t._v(" "),e("tr",[e("td",[t._v("-")]),t._v(" "),e("td",[t._v("-")]),t._v(" "),e("td",[t._v("-")])]),t._v(" "),e("tr",[e("td",[t._v("对象模型库")]),t._v(" "),e("td",[e("a",{attrs:{href:"https://gitlab.gnome.org/GNOME/glib",target:"_blank",rel:"noopener noreferrer"}},[t._v("GLib2"),e("OutboundLink")],1)]),t._v(" "),e("td",[e("a",{attrs:{href:"https://gitlab.gnome.org/GNOME/glib/-/blob/main/COPYING",target:"_blank",rel:"noopener noreferrer"}},[t._v("LGPL 2.1"),e("OutboundLink")],1)])]),t._v(" "),e("tr",[e("td",[t._v("JSON支持库")]),t._v(" "),e("td",[e("a",{attrs:{href:"https://gitlab.gnome.org/GNOME/json-glib",target:"_blank",rel:"noopener noreferrer"}},[t._v("json-glib"),e("OutboundLink")],1)]),t._v(" "),e("td",[e("a",{attrs:{href:"https://gitlab.gnome.org/GNOME/json-glib/-/blob/master/COPYING",target:"_blank",rel:"noopener noreferrer"}},[t._v("LGPL 2.1"),e("OutboundLink")],1)])]),t._v(" "),e("tr",[e("td",[t._v("数据库访问")]),t._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/lurcher/unixODBC",target:"_blank",rel:"noopener noreferrer"}},[t._v("unixODBC"),e("OutboundLink")],1)]),t._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/lurcher/unixODBC/blob/master/COPYING",target:"_blank",rel:"noopener noreferrer"}},[t._v("LGPL 2.1"),e("OutboundLink")],1)])]),t._v(" "),e("tr",[e("td",[t._v("容器库")]),t._v(" "),e("td",[e("a",{attrs:{href:"https://gitlab.gnome.org/GNOME/libgee",target:"_blank",rel:"noopener noreferrer"}},[t._v("libgee"),e("OutboundLink")],1)]),t._v(" "),e("td",[e("a",{attrs:{href:"https://gitlab.gnome.org/GNOME/libgee/-/blob/master/COPYING",target:"_blank",rel:"noopener noreferrer"}},[t._v("LGPL 2.1"),e("OutboundLink")],1)])]),t._v(" "),e("tr",[e("td",[t._v("SSH支持库")]),t._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/libssh2/libssh2",target:"_blank",rel:"noopener noreferrer"}},[t._v("libssh2"),e("OutboundLink")],1)]),t._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/libssh2/libssh2/blob/master/COPYING",target:"_blank",rel:"noopener noreferrer"}},[t._v("BSD-3-Clause"),e("OutboundLink")],1)])]),t._v(" "),e("tr",[e("td",[t._v("XML支持库")]),t._v(" "),e("td",[e("a",{attrs:{href:"https://gitlab.gnome.org/GNOME/libxml2",target:"_blank",rel:"noopener noreferrer"}},[t._v("libxml2"),e("OutboundLink")],1)]),t._v(" "),e("td",[e("a",{attrs:{href:"https://gitlab.gnome.org/GNOME/libxml2/-/blob/master/Copyright",target:"_blank",rel:"noopener noreferrer"}},[t._v("LGPL 2.1"),e("OutboundLink")],1)])]),t._v(" "),e("tr",[e("td",[t._v("加密解密")]),t._v(" "),e("td",[e("a",{attrs:{href:"https://www.openssl.org/",target:"_blank",rel:"noopener noreferrer"}},[t._v("OpenSSL"),e("OutboundLink")],1)]),t._v(" "),e("td",[e("a",{attrs:{href:"https://www.openssl.org/source/license.html",target:"_blank",rel:"noopener noreferrer"}},[t._v("Apache License 2.0"),e("OutboundLink")],1)])]),t._v(" "),e("tr",[e("td",[t._v("编码检测")]),t._v(" "),e("td",[e("a",{attrs:{href:"https://gitlab.freedesktop.org/uchardet/uchardet",target:"_blank",rel:"noopener noreferrer"}},[t._v("uchardet"),e("OutboundLink")],1)]),t._v(" "),e("td",[e("a",{attrs:{href:"https://gitlab.freedesktop.org/uchardet/uchardet/-/blob/master/COPYING",target:"_blank",rel:"noopener noreferrer"}},[t._v("LGPL 2.1"),e("OutboundLink")],1)])]),t._v(" "),e("tr",[e("td",[t._v("-")]),t._v(" "),e("td",[t._v("-")]),t._v(" "),e("td",[t._v("-")])]),t._v(" "),e("tr",[e("td",[t._v("图形界面库")]),t._v(" "),e("td",[e("a",{attrs:{href:"https://gitlab.gnome.org/GNOME/gtk",target:"_blank",rel:"noopener noreferrer"}},[t._v("GTK"),e("OutboundLink")],1)]),t._v(" "),e("td",[e("a",{attrs:{href:"https://gitlab.gnome.org/GNOME/gtk/-/blob/main/COPYING",target:"_blank",rel:"noopener noreferrer"}},[t._v("LGPL 2"),e("OutboundLink")],1)])]),t._v(" "),e("tr",[e("td",[t._v("适配界面库")]),t._v(" "),e("td",[e("a",{attrs:{href:"https://gitlab.gnome.org/GNOME/libadwaita",target:"_blank",rel:"noopener noreferrer"}},[t._v("libadwaita"),e("OutboundLink")],1)]),t._v(" "),e("td",[e("a",{attrs:{href:"https://gitlab.gnome.org/GNOME/libadwaita/-/blob/main/COPYING",target:"_blank",rel:"noopener noreferrer"}},[t._v("LGPL 2.1"),e("OutboundLink")],1)])]),t._v(" "),e("tr",[e("td",[t._v("停靠界面库")]),t._v(" "),e("td",[e("a",{attrs:{href:"https://gitlab.gnome.org/GNOME/libpanel",target:"_blank",rel:"noopener noreferrer"}},[t._v("libpanel"),e("OutboundLink")],1)]),t._v(" "),e("td",[e("a",{attrs:{href:"https://gitlab.gnome.org/GNOME/libpanel/-/blob/main/COPYING",target:"_blank",rel:"noopener noreferrer"}},[t._v("LGPL 3.0"),e("OutboundLink")],1)])]),t._v(" "),e("tr",[e("td",[t._v("插件支持库")]),t._v(" "),e("td",[e("a",{attrs:{href:"https://gitlab.gnome.org/GNOME/libpeas",target:"_blank",rel:"noopener noreferrer"}},[t._v("libpeas"),e("OutboundLink")],1)]),t._v(" "),e("td",[e("a",{attrs:{href:"https://gitlab.gnome.org/GNOME/libpeas/-/blob/master/COPYING",target:"_blank",rel:"noopener noreferrer"}},[t._v("LGPL 2.1+"),e("OutboundLink")],1)])]),t._v(" "),e("tr",[e("td",[t._v("代码编辑器")]),t._v(" "),e("td",[e("a",{attrs:{href:"https://gitlab.gnome.org/GNOME/gtksourceview",target:"_blank",rel:"noopener noreferrer"}},[t._v("GtkSourceView"),e("OutboundLink")],1)]),t._v(" "),e("td",[e("a",{attrs:{href:"https://gitlab.gnome.org/GNOME/gtksourceview/-/blob/master/COPYING",target:"_blank",rel:"noopener noreferrer"}},[t._v("LGPL 2.1"),e("OutboundLink")],1)])]),t._v(" "),e("tr",[e("td",[t._v("二维码")]),t._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/fukuchi/libqrencode",target:"_blank",rel:"noopener noreferrer"}},[t._v("libqrencode"),e("OutboundLink")],1)]),t._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/fukuchi/libqrencode/blob/master/COPYING",target:"_blank",rel:"noopener noreferrer"}},[t._v("LGPL 2.1"),e("OutboundLink")],1)])]),t._v(" "),e("tr",[e("td",[t._v("文件格式库")]),t._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/libarchive/libarchive",target:"_blank",rel:"noopener noreferrer"}},[t._v("libarchive"),e("OutboundLink")],1)]),t._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/libarchive/libarchive/blob/master/COPYING",target:"_blank",rel:"noopener noreferrer"}},[t._v("BSD-3-Clause"),e("OutboundLink")],1)])]),t._v(" "),e("tr",[e("td",[t._v("HTTP通讯库")]),t._v(" "),e("td",[e("a",{attrs:{href:"https://gitlab.gnome.org/GNOME/libsoup",target:"_blank",rel:"noopener noreferrer"}},[t._v("libsoup"),e("OutboundLink")],1)]),t._v(" "),e("td",[e("a",{attrs:{href:"https://gitlab.gnome.org/GNOME/libsoup/-/blob/master/COPYING",target:"_blank",rel:"noopener noreferrer"}},[t._v("LGPL 2"),e("OutboundLink")],1)])]),t._v(" "),e("tr",[e("td",[t._v("地图支持库")]),t._v(" "),e("td",[e("a",{attrs:{href:"https://gitlab.gnome.org/GNOME/libshumate",target:"_blank",rel:"noopener noreferrer"}},[t._v("libshumate"),e("OutboundLink")],1)]),t._v(" "),e("td",[e("a",{attrs:{href:"https://gitlab.gnome.org/GNOME/libshumate/-/blob/main/COPYING",target:"_blank",rel:"noopener noreferrer"}},[t._v("LGPL 2"),e("OutboundLink")],1)])]),t._v(" "),e("tr",[e("td",[t._v("数据图表库")]),t._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/lcallarec/live-chart",target:"_blank",rel:"noopener noreferrer"}},[t._v("live-chart"),e("OutboundLink")],1)]),t._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/lcallarec/live-chart/blob/master/LICENSE",target:"_blank",rel:"noopener noreferrer"}},[t._v("MIT"),e("OutboundLink")],1)])]),t._v(" "),e("tr",[e("td",[t._v("模板处理库")]),t._v(" "),e("td",[e("a",{attrs:{href:"https://gitlab.gnome.org/GNOME/template-glib",target:"_blank",rel:"noopener noreferrer"}},[t._v("template-glib"),e("OutboundLink")],1)]),t._v(" "),e("td",[e("a",{attrs:{href:"https://gitlab.gnome.org/GNOME/template-glib/-/blob/main/COPYING",target:"_blank",rel:"noopener noreferrer"}},[t._v("LGPL 2.1"),e("OutboundLink")],1)])]),t._v(" "),e("tr",[e("td",[t._v("-")]),t._v(" "),e("td",[t._v("-")]),t._v(" "),e("td",[t._v("-")])]),t._v(" "),e("tr",[e("td",[t._v("图标")]),t._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/bytedance/IconPark",target:"_blank",rel:"noopener noreferrer"}},[t._v("IconPark"),e("OutboundLink")],1)]),t._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/bytedance/IconPark/blob/master/LICENSE",target:"_blank",rel:"noopener noreferrer"}},[t._v("Apache License 2.0"),e("OutboundLink")],1)])])])])])}),[],!1,null,null,null);r.default=a.exports}}]); \ No newline at end of file diff --git a/assets/js/23.5ccca576.js b/assets/js/23.5ccca576.js new file mode 100644 index 000000000..15a0ac36d --- /dev/null +++ b/assets/js/23.5ccca576.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[23],{602:function(t,v,_){"use strict";_.r(v);var e=_(13),a=Object(e.a)({},(function(){var t=this,v=t.$createElement,_=t._self._c||v;return _("ContentSlotsDistributor",{attrs:{"slot-key":t.$parent.slotKey}},[_("div",{staticClass:"features"},[_("div",{staticClass:"feature"},[_("h2",[t._v("Simple & Powerful")]),t._v(" "),_("p",[t._v("Simple and Intuitive GUI helps you focus on data and finishing your work quickly.")])]),t._v(" "),_("div",{staticClass:"feature"},[_("h2",[t._v("Touch friendly")]),t._v(" "),_("p",[t._v("Focus on the experience of editting, make you feel smoothly when working with it.")])]),t._v(" "),_("div",{staticClass:"feature"},[_("h2",[t._v("Performance")]),t._v(" "),_("p",[_("a",{attrs:{target:"_blank",href:"https://www.gtk.org/"}},[t._v("GTK")]),t._v(" and "),_("a",{attrs:{target:"_blank",href:"https://gitlab.gnome.org/GNOME/libadwaita"}},[t._v("Adwaita")]),t._v(" with "),_("a",{attrs:{target:"_blank",href:"https://gitlab.gnome.org/GNOME/vala"}},[t._v("Vala")]),t._v(" based native application, focus on performance, focus on responsible.")])])]),t._v(" "),_("h2",{attrs:{id:"support-database"}},[_("a",{staticClass:"header-anchor",attrs:{href:"#support-database"}},[t._v("#")]),t._v(" Support database")]),t._v(" "),_("p",[t._v("Database support capability level: "),_("strong",[t._v("Planned")]),t._v(" / "),_("strong",[t._v("Partial")]),t._v(" / "),_("strong",[t._v("Full(💯)")])]),t._v(" "),_("table",[_("thead",[_("tr",[_("th",[t._v("Database")]),t._v(" "),_("th",[t._v("Version")]),t._v(" "),_("th",[t._v("Query")]),t._v(" "),_("th",[t._v("Editing")]),t._v(" "),_("th",[t._v("Designer")]),t._v(" "),_("th",[t._v("Export")]),t._v(" "),_("th",[t._v("Import")]),t._v(" "),_("th",[t._v("Hint")]),t._v(" "),_("th",[t._v("Modeling")]),t._v(" "),_("th",[t._v("DB Sync")])])]),t._v(" "),_("tbody",[_("tr",[_("td",[t._v("SQLite")]),t._v(" "),_("td",[t._v("3.0 +")]),t._v(" "),_("td",[t._v("Full💯")]),t._v(" "),_("td",[t._v("Full💯")]),t._v(" "),_("td",[t._v("Full💯")]),t._v(" "),_("td",[t._v("Full💯")]),t._v(" "),_("td",[t._v("Full💯")]),t._v(" "),_("td",[t._v("Full💯")]),t._v(" "),_("td",[t._v("✅✅🔲🔲🔲")]),t._v(" "),_("td",[t._v("✅✅✅✅🔲")])]),t._v(" "),_("tr",[_("td",[t._v("MySQL")]),t._v(" "),_("td",[t._v("5.5 +")]),t._v(" "),_("td",[t._v("Full💯")]),t._v(" "),_("td",[t._v("Full💯")]),t._v(" "),_("td",[t._v("Full💯")]),t._v(" "),_("td",[t._v("Full💯")]),t._v(" "),_("td",[t._v("Full💯")]),t._v(" "),_("td",[t._v("Full💯")]),t._v(" "),_("td",[t._v("✅✅🔲🔲🔲")]),t._v(" "),_("td",[t._v("✅✅✅✅🔲")])]),t._v(" "),_("tr",[_("td",[t._v("MariaDB")]),t._v(" "),_("td",[t._v("10.0 +")]),t._v(" "),_("td",[t._v("Full💯")]),t._v(" "),_("td",[t._v("Full💯")]),t._v(" "),_("td",[t._v("Full💯")]),t._v(" "),_("td",[t._v("Full💯")]),t._v(" "),_("td",[t._v("Full💯")]),t._v(" "),_("td",[t._v("Full💯")]),t._v(" "),_("td",[t._v("✅✅🔲🔲🔲")]),t._v(" "),_("td",[t._v("✅✅✅✅🔲")])]),t._v(" "),_("tr",[_("td",[t._v("PostgreSQL")]),t._v(" "),_("td",[t._v("9.0 +")]),t._v(" "),_("td",[t._v("Full💯")]),t._v(" "),_("td",[t._v("Full💯")]),t._v(" "),_("td",[t._v("Full💯")]),t._v(" "),_("td",[t._v("Full💯")]),t._v(" "),_("td",[t._v("Full💯")]),t._v(" "),_("td",[t._v("Full💯")]),t._v(" "),_("td",[t._v("✅✅🔲🔲🔲")]),t._v(" "),_("td",[t._v("✅✅✅✅🔲")])]),t._v(" "),_("tr",[_("td",[t._v("Redis")]),t._v(" "),_("td"),t._v(" "),_("td",[t._v("Planned")]),t._v(" "),_("td",[t._v("Planned")]),t._v(" "),_("td",[t._v("Planned")]),t._v(" "),_("td",[t._v("Planned")]),t._v(" "),_("td",[t._v("Planned")]),t._v(" "),_("td",[t._v("Planned")]),t._v(" "),_("td",[t._v("Planned")]),t._v(" "),_("td",[t._v("Planned")])]),t._v(" "),_("tr",[_("td",[t._v("Oracle")]),t._v(" "),_("td"),t._v(" "),_("td"),t._v(" "),_("td"),t._v(" "),_("td"),t._v(" "),_("td"),t._v(" "),_("td"),t._v(" "),_("td"),t._v(" "),_("td"),t._v(" "),_("td")]),t._v(" "),_("tr",[_("td",[t._v("SQL Server")]),t._v(" "),_("td"),t._v(" "),_("td"),t._v(" "),_("td"),t._v(" "),_("td"),t._v(" "),_("td"),t._v(" "),_("td"),t._v(" "),_("td"),t._v(" "),_("td"),t._v(" "),_("td")])])]),t._v(" "),_("p",[_("strong",[t._v("Hint")]),t._v(": Code intellisense or Code autocomplete")]),t._v(" "),_("p",[_("a",{attrs:{href:"./license/privacy-policy"}},[t._v("Privacy Policy")]),t._v(" | "),_("a",{attrs:{href:"./license/service-agreement"}},[t._v("Service Agreement")]),t._v(" | "),_("a",{attrs:{href:"http://www.beian.gov.cn/portal/registerSystemInfo?recordcode=44030602005092",target:"_blank",rel:"noopener noreferrer"}},[t._v("粤公网安备44030602005092号"),_("OutboundLink")],1),t._v(" | "),_("a",{attrs:{href:"http://beian.miit.gov.cn/",target:"_blank",rel:"noopener noreferrer"}},[t._v("粤ICP备2020100158号"),_("OutboundLink")],1),_("br"),t._v("Copyright © 2019 - present Kangaroo. All Rights Reserved.")])])}),[],!1,null,null,null);v.default=a.exports}}]); \ No newline at end of file diff --git a/assets/js/24.3702f868.js b/assets/js/24.3702f868.js new file mode 100644 index 000000000..96d598747 --- /dev/null +++ b/assets/js/24.3702f868.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[24],{601:function(t,a,e){"use strict";e.r(a);var r=e(13),n=Object(r.a)({},(function(){var t=this,a=t.$createElement,e=t._self._c||a;return e("ContentSlotsDistributor",{attrs:{"slot-key":t.$parent.slotKey}},[e("h1",{attrs:{id:"why-choose-vala-to-build-kangaroo-updated-at-5-20-2022"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#why-choose-vala-to-build-kangaroo-updated-at-5-20-2022"}},[t._v("#")]),t._v(" Why choose Vala to build Kangaroo?(Updated at 5/20/2022)")]),t._v(" "),e("h2",{attrs:{id:"some-thoughts-about-building-kangaroo"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#some-thoughts-about-building-kangaroo"}},[t._v("#")]),t._v(" Some thoughts about building Kangaroo")]),t._v(" "),e("p",[t._v("While I decided to build my own app, the most important thing is that what kind of talents of the new app should have? I think they are:")]),t._v(" "),e("ol",[e("li",[e("strong",[t._v("Performance")]),t._v(": native performance is the best.")]),t._v(" "),e("li",[e("strong",[t._v("Keep code safe")]),t._v(": the app must be safe to against to be cracked.")]),t._v(" "),e("li",[e("strong",[t._v("Platform independent")]),t._v(": support all platforms like Windows / macOS / Linux.")]),t._v(" "),e("li",[e("strong",[t._v("Technology maturity")]),t._v(": the technology stack could support to gain the business purpose, I need the money to continue the work.")]),t._v(" "),e("li",[e("strong",[t._v("Master it easily")]),t._v(": Language must be simple and powerful, sure it is familiar by yourself.")])]),t._v(" "),e("p",[t._v("I had reviewed some kind of framework and languages like:\nQT / C++ vs WxWidget / C++ vs GTK-mm / C++ vs GTK-rs / Rust / Go-GTK / Go vs GTK / Vala")]),t._v(" "),e("p",[t._v("finally, I chosen GTK / Vala combination to be the Kangaroo's tech stack.")]),t._v(" "),e("div",[e("script2",{attrs:{type:"text/javascript",async:"true",src:"https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"}}),t._v(" "),e("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),t._v(" "),e("script2",{attrs:{type:"text/javascript"}},[t._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),t._v(" "),e("h2",{attrs:{id:"benefits-and-strength-from-vala"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#benefits-and-strength-from-vala"}},[t._v("#")]),t._v(" Benefits and strength from Vala")]),t._v(" "),e("ol",[e("li",[e("p",[e("strong",[t._v("Syntax compatible with C# and Java")]),e("br"),t._v("\nIt gives your apps the performance of C/C++ with the productivity of C# and Java; pls see:"),e("br"),t._v(" "),e("a",{attrs:{href:"https://wiki.gnome.org/Projects/Vala/ValaForJavaProgrammers",target:"_blank",rel:"noopener noreferrer"}},[t._v("Vala for Java Programmers"),e("OutboundLink")],1),t._v(" "),e("a",{attrs:{href:"https://wiki.gnome.org/Projects/Vala/ValaForCSharpProgrammers",target:"_blank",rel:"noopener noreferrer"}},[t._v("Vala for C# Programmers"),e("OutboundLink")],1)])]),t._v(" "),e("li",[e("p",[e("strong",[t._v("Automatic memory management without GC")]),e("br"),t._v("\nVala's memory management is based on automatic reference counting, no GC, no GC performance issue.")])]),t._v(" "),e("li",[e("p",[e("strong",[t._v("Mixin interface support")]),e("br"),t._v("\nVala's interface like PHP's traits and JavaScript's mixin.")])]),t._v(" "),e("li",[e("p",[e("strong",[t._v("Dot(.) connect every thing")]),e("br"),t._v("\nDBKangaroo project has more than 400 source code files, divide them as three subproject with many namespaces and many levels, all of them connect with the character dot(.), and they work greatly and smoothly.")])]),t._v(" "),e("li",[e("p",[e("strong",[t._v("First class regex expression support")]),e("br"),t._v("\nRegex expression treat as first class member, simple and powerful. Regex expression be used everywhere in DBKangaroo.")])])]),t._v(" "),e("div",{staticClass:"language-vala extra-class"},[e("pre",{pre:!0,attrs:{class:"language-vala"}},[e("code",[e("span",{pre:!0,attrs:{class:"token class-name"}},[t._v("GLib"),e("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("MatchInfo")]),t._v(" regex_match"),e("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(";")]),t._v("\n"),e("span",{pre:!0,attrs:{class:"token class-name"}},[t._v("Regex")]),t._v(" regex "),e("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" "),e("span",{pre:!0,attrs:{class:"token regex"}},[e("span",{pre:!0,attrs:{class:"token regex-delimiter"}},[t._v("/")]),e("span",{pre:!0,attrs:{class:"token regex-source language-regex"}},[t._v("(?[\\d\\.\\-]+),(?[\\s]*[\\-\\d\\.]+)")]),e("span",{pre:!0,attrs:{class:"token regex-delimiter"}},[t._v("/")]),e("span",{pre:!0,attrs:{class:"token regex-flags"}},[t._v("mi")])]),e("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(";")]),t._v("\n"),e("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("if")]),t._v(" "),e("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("regex"),e("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),e("span",{pre:!0,attrs:{class:"token function"}},[t._v("match")]),e("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("text"),e("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),e("span",{pre:!0,attrs:{class:"token number"}},[t._v("0")]),e("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),e("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("out")]),t._v(" regex_match"),e("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),e("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),e("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v("\n point_new"),e("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),e("span",{pre:!0,attrs:{class:"token function"}},[t._v("set_x")]),e("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),e("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("double")]),e("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),e("span",{pre:!0,attrs:{class:"token function"}},[t._v("parse")]),e("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("regex_match"),e("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),e("span",{pre:!0,attrs:{class:"token function"}},[t._v("fetch_named")]),e("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),e("span",{pre:!0,attrs:{class:"token string"}},[t._v('"x"')]),e("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),e("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),e("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),e("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(";")]),t._v("\n point_new"),e("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),e("span",{pre:!0,attrs:{class:"token function"}},[t._v("set_y")]),e("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),e("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("double")]),e("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),e("span",{pre:!0,attrs:{class:"token function"}},[t._v("parse")]),e("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("regex_match"),e("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),e("span",{pre:!0,attrs:{class:"token function"}},[t._v("fetch_named")]),e("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),e("span",{pre:!0,attrs:{class:"token string"}},[t._v('"y"')]),e("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),e("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),e("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),e("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(";")]),t._v("\n"),e("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),t._v(" \n")])])]),e("p",[t._v("Special gift: a powerful regex online tool: "),e("a",{attrs:{href:"https://regex101.com/",target:"_blank",rel:"noopener noreferrer"}},[t._v("Regex101"),e("OutboundLink")],1)]),t._v(" "),e("ol",{attrs:{start:"6"}},[e("li",[e("p",[e("strong",[t._v("Performance of C/C++ with great interoperability")]),e("br"),t._v("\nVala produces C code as intermediate language to support all platforms, Vala code and C code could be compiled in the same project。")])]),t._v(" "),e("li",[e("p",[e("strong",[t._v("Rich and powerful libraries")]),e("br"),t._v("\nThere are 300+ Vala bindings for GNOME foundation and other populary project. "),e("a",{attrs:{href:"https://github.com/nemequ/vala-girs/tree/master/vala/vapi",target:"_blank",rel:"noopener noreferrer"}},[t._v("VAPIs @ Github"),e("OutboundLink")],1),t._v(" "),e("a",{attrs:{href:"https://gitlab.gnome.org/GNOME/vala/-/tree/main/vapi",target:"_blank",rel:"noopener noreferrer"}},[t._v("VAPIs @ Project"),e("OutboundLink")],1)])]),t._v(" "),e("li",[e("p",[e("strong",[t._v("Excellent documentation")]),e("br"),t._v("\nVala has excellent documentation, be it in the form of "),e("a",{attrs:{href:"https://chebizarro.gitbooks.io/the-vala-tutorial/content/",target:"_blank",rel:"noopener noreferrer"}},[t._v("tutorials"),e("OutboundLink")],1),t._v(", "),e("a",{attrs:{href:"https://wiki.gnome.org/Projects/Vala/Examples",target:"_blank",rel:"noopener noreferrer"}},[t._v("code samples"),e("OutboundLink")],1),t._v(" or a "),e("a",{attrs:{href:"https://valadoc.org/",target:"_blank",rel:"noopener noreferrer"}},[t._v("very easy-to-use API Reference"),e("OutboundLink")],1),t._v("."),e("br"),t._v(" "),e("a",{attrs:{href:"https://wiki.gnome.org/Projects/Vala/Documentation#Projects_Developed_in_Vala",target:"_blank",rel:"noopener noreferrer"}},[t._v("Vala projects at GNOME"),e("OutboundLink")],1),t._v(" "),e("a",{attrs:{href:"https://github.com/search?l=Vala&q=Vala&type=Repositories",target:"_blank",rel:"noopener noreferrer"}},[t._v("Vala projects at Github"),e("OutboundLink")],1)])]),t._v(" "),e("li",[e("p",[e("strong",[t._v("Visual Studio Code with Vala language server support")]),e("br"),t._v("\nThe best Vala IDE is "),e("a",{attrs:{href:"https://code.visualstudio.com/Download",target:"_blank",rel:"noopener noreferrer"}},[t._v("Visual Studio Code"),e("OutboundLink")],1),t._v(" + "),e("a",{attrs:{href:"https://marketplace.visualstudio.com/items?itemName=prince781.vala",target:"_blank",rel:"noopener noreferrer"}},[t._v("Vala plugin"),e("OutboundLink")],1),t._v(" + "),e("a",{attrs:{href:"https://github.com/vala-lang/vala-language-server",target:"_blank",rel:"noopener noreferrer"}},[t._v("Vala language server"),e("OutboundLink")],1),t._v(" + Meson(Ninja)/MSYS2, enjoy them, comtribute them, we can.")])]),t._v(" "),e("li",[e("p",[e("strong",[t._v("Elementary OS team's primary language")]),e("br"),t._v("\nElementary's blog will tell you the truth: "),e("a",{attrs:{href:"https://blog.elementary.io/why-we-write-elementary-apps-in-vala/",target:"_blank",rel:"noopener noreferrer"}},[t._v("Why we write elementary apps in Vala"),e("OutboundLink")],1)])])])])}),[],!1,null,null,null);a.default=n.exports}}]); \ No newline at end of file diff --git a/assets/js/25.f34a8af6.js b/assets/js/25.f34a8af6.js new file mode 100644 index 000000000..20b7599c2 --- /dev/null +++ b/assets/js/25.f34a8af6.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[25],{609:function(s,a,t){"use strict";t.r(a);var n=t(13),e=Object(n.a)({},(function(){var s=this,a=s.$createElement,t=s._self._c||a;return t("ContentSlotsDistributor",{attrs:{"slot-key":s.$parent.slotKey}},[t("h1",{attrs:{id:"how-to-deploy-gtk-based-app-on-windows-updated-at-08-03-2020"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#how-to-deploy-gtk-based-app-on-windows-updated-at-08-03-2020"}},[s._v("#")]),s._v(" How to deploy GTK based app on windows?(Updated at 08/03/2020)")]),s._v(" "),t("h2",{attrs:{id:"background"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#background"}},[s._v("#")]),s._v(" Background")]),s._v(" "),t("p",[s._v("Since developing SQL client tool Kangaroo, I met the major trouble is how to deploy Kangaroo app to user, then searched all of solutions from internet, finally, I found a great article "),t("a",{attrs:{href:"http://www.tarnyko.net/repo/gtk3_build_system/tutorial/gtk3_tutorial.htm",target:"_blank",rel:"noopener noreferrer"}},[s._v("GTK+3 Installation Tutorial for Windows"),t("OutboundLink")],1),s._v(", it provides clear guide to deploy GTK based app, so the honor belongs to the author of article.")]),s._v(" "),t("h2",{attrs:{id:"precondition"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#precondition"}},[s._v("#")]),s._v(" Precondition")]),s._v(" "),t("p",[s._v("The app must be compiled and executed in environment: "),t("a",{attrs:{href:"https://www.msys2.org/",target:"_blank",rel:"noopener noreferrer"}},[s._v("MSYS2"),t("OutboundLink")],1)]),s._v(" "),t("h2",{attrs:{id:"solution"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#solution"}},[s._v("#")]),s._v(" Solution")]),s._v(" "),t("h3",{attrs:{id:"prepare-app-directory-structure"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#prepare-app-directory-structure"}},[s._v("#")]),s._v(" Prepare app directory structure")]),s._v(" "),t("p",[s._v("To deploy GTK based app, the app must follow the directory structure like linux:")]),s._v(" "),t("div",{staticClass:"language- extra-class"},[t("pre",{pre:!0,attrs:{class:"language-text"}},[t("code",[s._v("[App Home]\n ├─bin\n ├─etc\n │ └─gtk-3.0\n ├─lib\n └─share\n ├─doc\n ├─glib-2.0\n │ └─schemas\n ├─icons\n │ ├─Adwaita\n │ └─hicolor\n ├─locale\n └─themes\n ├─Default\n ├─MS-Windows\n └─Windows10\n")])])]),t("div",[t("script2",{attrs:{type:"text/javascript",async:"true",src:"https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"}}),s._v(" "),t("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),s._v(" "),t("script2",{attrs:{type:"text/javascript"}},[s._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),s._v(" "),t("h3",{attrs:{id:"copy-dependent-libraries-of-app"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#copy-dependent-libraries-of-app"}},[s._v("#")]),s._v(" Copy dependent libraries of app")]),s._v(" "),t("p",[t("strong",[s._v("List of GTK dependencies")]),s._v("\nGTK depends on several libraries:")]),s._v(" "),t("ul",[t("li",[s._v("GLib")]),s._v(" "),t("li",[s._v("cairo")]),s._v(" "),t("li",[s._v("Pango")]),s._v(" "),t("li",[s._v("ATK")]),s._v(" "),t("li",[s._v("gdk-pixbuf")])]),s._v(" "),t("p",[s._v("To run GTK programs you will also need:")]),s._v(" "),t("ul",[t("li",[s._v("gettext-runtime")]),s._v(" "),t("li",[s._v("fontconfig")]),s._v(" "),t("li",[s._v("freetype")]),s._v(" "),t("li",[s._v("expat")]),s._v(" "),t("li",[s._v("libpng")]),s._v(" "),t("li",[s._v("zlib")])]),s._v(" "),t("p",[t("strong",[s._v("How to get the file list and copy them to target dir?")])]),s._v(" "),t("p",[s._v("the solution is a series of linux commands combination like this:")]),s._v(" "),t("div",{staticClass:"language-bash extra-class"},[t("pre",{pre:!0,attrs:{class:"language-bash"}},[t("code",[s._v("ldd "),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"'),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("${SOURCEDIR}")]),s._v('/build/src/kangaroo.exe"')]),s._v(" "),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("|")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token function"}},[s._v("grep")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token string"}},[s._v("'\\/mingw64\\/bin\\/.*dll'")]),s._v(" -o "),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("|")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token function"}},[s._v("xargs")]),s._v(" -I"),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("{")]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("}")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token function"}},[s._v("cp")]),s._v(" -f "),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"{}"')]),s._v(" "),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"'),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("${TARGETDIR}")]),s._v('/bin/"')]),s._v("\n")])])]),t("p",[t("strong",[s._v("Done the commands above is all right? No!!!")])]),s._v(" "),t("p",[s._v("Some components in the GTK framework have plugins like gdk-pixbuf / libgda, so we must use the commands to copy them one by one.")]),s._v(" "),t("div",{staticClass:"language-bash extra-class"},[t("pre",{pre:!0,attrs:{class:"language-bash"}},[t("code",[s._v("ldd /mingw64/bin/libpq.dll "),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("|")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token function"}},[s._v("grep")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token string"}},[s._v("'\\/mingw64\\/bin\\/.*dll'")]),s._v(" -o "),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("|")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token function"}},[s._v("xargs")]),s._v(" -I"),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("{")]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("}")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token function"}},[s._v("cp")]),s._v(" -f "),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"{}"')]),s._v(" "),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"'),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("${TARGETDIR}")]),s._v('/bin/"')]),s._v("\n")])])]),t("h3",{attrs:{id:"copy-app-resource-file"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#copy-app-resource-file"}},[s._v("#")]),s._v(" Copy app resource file")]),s._v(" "),t("ul",[t("li",[t("p",[s._v("/etc")]),s._v(" "),t("ul",[t("li",[s._v("/gtk-3.0/settings.ini : applications-wide settings.")]),s._v(" "),t("li",[s._v("*: miscellaneous files.")])])]),s._v(" "),t("li",[t("p",[s._v("/lib")]),s._v(" "),t("ul",[t("li",[s._v("/gdk-pixbuf-2.0 : GDK-Pixbuf modules. SVG support.")]),s._v(" "),t("li",[s._v("/gtk-3.0 : GTK+-IM modules.")]),s._v(" "),t("li",[s._v("/pango : Pango modules.")]),s._v(" "),t("li",[s._v("*: import libraries, headers, pkg-config files... only needed for development.")])])]),s._v(" "),t("li",[t("p",[s._v("/share")]),s._v(" "),t("ul",[t("li",[s._v("/doc : license and copyleft.")]),s._v(" "),t("li",[s._v("/gtk-3.0 : resource files for gtk3-demo program.")]),s._v(" "),t("li",[s._v("/gtk-doc : documentation in HTML format.")]),s._v(" "),t("li",[s._v("/icons : icon themes, used by gtk3-demo and gtk3-widget-factory.")]),s._v(" "),t("li",[s._v("/locale : localization files. Internationalized text support.")]),s._v(" "),t("li",[s._v("/themes : graphical themes.")]),s._v(" "),t("li",[s._v("*: miscellaneous files.")])])])]),s._v(" "),t("h3",{attrs:{id:"compare-the-runtime-dependency-view"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#compare-the-runtime-dependency-view"}},[s._v("#")]),s._v(" Compare the runtime dependency view")]),s._v(" "),t("p",[s._v("Execute the app under user environment and the app under dev environment in full function mode, compare the runtime dependency view, check the count of dll file and dll file name. make sure they are the same.")]),s._v(" "),t("p",[s._v("Runtime dependency dll view tool "),t("a",{attrs:{href:"https://docs.microsoft.com/en-us/sysinternals/downloads/process-explorer",target:"_blank",rel:"noopener noreferrer"}},[s._v("Process Explorer"),t("OutboundLink")],1)]),s._v(" "),t("div",[t("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),s._v(" "),t("script2",{attrs:{type:"text/javascript"}},[s._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),s._v(" "),t("h3",{attrs:{id:"full-source-code"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#full-source-code"}},[s._v("#")]),s._v(" Full source code")]),s._v(" "),t("div",{staticClass:"language-bash extra-class"},[t("pre",{pre:!0,attrs:{class:"language-bash"}},[t("code",[t("span",{pre:!0,attrs:{class:"token shebang important"}},[s._v("#!/usr/bin/env sh")]),s._v("\n\n"),t("span",{pre:!0,attrs:{class:"token comment"}},[s._v("#")]),s._v("\n"),t("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# Copyright(C) 2018-2020 taozuhong(https://github.com/taozuhong)")]),s._v("\n"),t("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# Important:")]),s._v("\n"),t("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# These functions are a part of the Kangaroo tool suite;")]),s._v("\n"),t("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# copyright taozuhong. 2018-2020. All rights reserved.")]),s._v("\n"),t("span",{pre:!0,attrs:{class:"token comment"}},[s._v("#")]),s._v("\n"),t("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# Author: taozuhong")]),s._v("\n"),t("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# Created: 1.8.2019")]),s._v("\n"),t("span",{pre:!0,attrs:{class:"token comment"}},[s._v("#")]),s._v("\n"),t("span",{pre:!0,attrs:{class:"token assign-left variable"}},[s._v("SOURCEDIR")]),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"$( cd "'),t("span",{pre:!0,attrs:{class:"token variable"}},[t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("$(")]),t("span",{pre:!0,attrs:{class:"token function"}},[s._v("dirname")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"'),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("$0")]),s._v('"')]),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v(")")])]),s._v('/../"')]),s._v(" "),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(";")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token builtin class-name"}},[s._v("pwd")]),s._v(" -P "),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"\nTARGETDIR="')]),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("${SOURCEDIR}")]),s._v("/build/windows"),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"\nVERSION="')]),t("span",{pre:!0,attrs:{class:"token number"}},[s._v("0.7")]),s._v(".2."),t("span",{pre:!0,attrs:{class:"token variable"}},[t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("$(")]),t("span",{pre:!0,attrs:{class:"token function"}},[s._v("date")]),s._v(" +%y%m%d"),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v(")")])]),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"\n\n# check target directory exist and make it\necho -n "')]),s._v("Check and "),t("span",{pre:!0,attrs:{class:"token function"}},[s._v("make")]),s._v(" target directory"),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("..")]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("..")]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("..")]),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"\nif [ ! -d "')]),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("$TARGETDIR")]),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('" ]; then\n mkdir '),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("$TARGETDIR")]),s._v('\n mkdir "')]),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("${TARGETDIR}")]),s._v("/bin/"),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"\n mkdir "')]),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("${TARGETDIR}")]),s._v("/lib/"),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"\n mkdir -p "')]),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("${TARGETDIR}")]),s._v("/share/glib-2.0/schemas"),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"\n mkdir "')]),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("${TARGETDIR}")]),s._v("/share/doc"),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"\n mkdir "')]),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("${TARGETDIR}")]),s._v("/share/themes"),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"\n mkdir "')]),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("${TARGETDIR}")]),s._v("/etc/"),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"\nelse \n if [ ! -d "')]),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("${TARGETDIR}")]),s._v("/bin"),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('" ]; then\n mkdir "')]),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("${TARGETDIR}")]),s._v("/bin/"),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"\n fi\n\n if [ ! -d "')]),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("${TARGETDIR}")]),s._v("/lib"),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('" ]; then\n mkdir "')]),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("${TARGETDIR}")]),s._v("/lib/"),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"\n fi\n\n if [ ! -d "')]),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("${TARGETDIR}")]),s._v("/share"),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('" ]; then\n mkdir -p "')]),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("${TARGETDIR}")]),s._v("/share/glib-2.0/schemas"),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"\n mkdir "')]),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("${TARGETDIR}")]),s._v("/share/"),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"\n mkdir "')]),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("${TARGETDIR}")]),s._v("/share/doc"),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"\n mkdir "')]),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("${TARGETDIR}")]),s._v("/share/themes"),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"\n fi\n\n if [ ! -d "')]),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("${TARGETDIR}")]),s._v("/etc"),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('" ]; then\n mkdir "')]),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("${TARGETDIR}")]),s._v("/etc/"),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"\n fi\nfi\necho "')]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("[")]),s._v("done"),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("]")]),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"\n\n# copy app dependency library to target dir\necho -n "')]),s._v("Copy app dependency library"),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("..")]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("..")]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("..")]),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"\nldd "')]),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("${SOURCEDIR}")]),s._v("/build/src/kangaroo.exe"),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('" | grep "')]),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("$MSYSTEM_PREFIX")]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("\\")]),s._v("/bin"),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("\\")]),s._v("/.*dll"),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('" -o | xargs -I{} cp -f "')]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("{")]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("}")]),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('" "')]),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("${TARGETDIR}")]),s._v("/bin/"),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"\nldd '),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("$MSYSTEM_PREFIX")]),s._v('/bin/libjson-glib-1.0-0.dll | grep "')]),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("$MSYSTEM_PREFIX")]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("\\")]),s._v("/bin"),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("\\")]),s._v("/.*dll"),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('" -o | xargs -I{} cp -f "')]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("{")]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("}")]),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('" "')]),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("${TARGETDIR}")]),s._v("/bin/"),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"\nldd '),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("$MSYSTEM_PREFIX")]),s._v('/bin/libsoup-2.4-1.dll | grep "')]),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("$MSYSTEM_PREFIX")]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("\\")]),s._v("/bin"),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("\\")]),s._v("/.*dll"),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('" -o | xargs -I{} cp -f "')]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("{")]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("}")]),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('" "')]),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("${TARGETDIR}")]),s._v("/bin/"),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"\nldd '),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("$MSYSTEM_PREFIX")]),s._v('/bin/libgtksourceview-4-0.dll | grep "')]),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("$MSYSTEM_PREFIX")]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("\\")]),s._v("/bin"),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("\\")]),s._v("/.*dll"),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('" -o | xargs -I{} cp -f "')]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("{")]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("}")]),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('" "')]),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("${TARGETDIR}")]),s._v("/bin/"),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"\n\ncp -f "')]),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("${SOURCEDIR}")]),s._v("/build/src/kangaroo.exe"),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('" "')]),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("${TARGETDIR}")]),s._v("/bin/"),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"\ncp -f "')]),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("${SOURCEDIR}")]),s._v("/data/assets/kangaroo.ico"),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('" "')]),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("${TARGETDIR}")]),s._v("/bin/"),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"\ncp -f '),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("$MSYSTEM_PREFIX")]),s._v('/bin/librsvg-2-2.dll "')]),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("${TARGETDIR}")]),s._v("/bin/"),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"\ncp -f '),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("$MSYSTEM_PREFIX")]),s._v('/bin/libgthread-2.0-0.dll "')]),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("${TARGETDIR}")]),s._v("/bin/"),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"\ncp -f '),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("$MSYSTEM_PREFIX")]),s._v('/bin/libcroco-0.6-3.dll "')]),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("${TARGETDIR}")]),s._v("/bin/"),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"\ncp -f '),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("$MSYSTEM_PREFIX")]),s._v('/bin/libtasn1-6.dll "')]),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("${TARGETDIR}")]),s._v("/bin/"),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"\ncp -f '),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("$MSYSTEM_PREFIX")]),s._v('/bin/libproxy-1.dll "')]),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("${TARGETDIR}")]),s._v("/bin/"),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"\ncp -f '),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("$MSYSTEM_PREFIX")]),s._v('/bin/libp11-kit-0.dll "')]),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("${TARGETDIR}")]),s._v("/bin/"),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"\ncp -f '),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("$MSYSTEM_PREFIX")]),s._v('/bin/libnettle-7.dll "')]),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("${TARGETDIR}")]),s._v("/bin/"),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"\ncp -f '),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("$MSYSTEM_PREFIX")]),s._v('/bin/libhogweed-5.dll "')]),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("${TARGETDIR}")]),s._v("/bin/"),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"\ncp -f '),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("$MSYSTEM_PREFIX")]),s._v('/bin/libgnutls-30.dll "')]),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("${TARGETDIR}")]),s._v("/bin/"),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"\ncp -f '),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("$MSYSTEM_PREFIX")]),s._v('/bin/libgmp-10.dll "')]),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("${TARGETDIR}")]),s._v("/bin/"),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"\necho "')]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("[")]),s._v("done"),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("]")]),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"\n\n# copy GDBus/Helper and dependencies files\necho -n "')]),s._v("Copy GDBus/Helper and dependencies"),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("..")]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("..")]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("..")]),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"\ncp -f '),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("$MSYSTEM_PREFIX")]),s._v('/bin/gdbus.exe "')]),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("${TARGETDIR}")]),s._v("/bin/"),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"\nldd '),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("$MSYSTEM_PREFIX")]),s._v('/bin/gdbus.exe | grep "')]),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("$MSYSTEM_PREFIX")]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("\\")]),s._v("/bin"),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("\\")]),s._v("/.*dll"),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('" -o | xargs -I{} cp -f "')]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("{")]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("}")]),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('" "')]),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("${TARGETDIR}")]),s._v("/bin/"),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"\ncp -f '),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("$MSYSTEM_PREFIX")]),s._v('/bin/gspawn-win64-helper.exe "')]),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("${TARGETDIR}")]),s._v("/bin/"),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"\nldd '),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("$MSYSTEM_PREFIX")]),s._v('/bin/gspawn-win64-helper.exe | grep "')]),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("$MSYSTEM_PREFIX")]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("\\")]),s._v("/bin"),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("\\")]),s._v("/.*dll"),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('" -o | xargs -I{} cp -f "')]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("{")]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("}")]),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('" "')]),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("${TARGETDIR}")]),s._v("/bin/"),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"\necho "')]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("[")]),s._v("done"),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("]")]),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"\n\n# libgda providers required library(MySQL/PostgreSQL/JDBC/...)\necho -n "')]),s._v("Copy database client library "),t("span",{pre:!0,attrs:{class:"token keyword"}},[s._v("for")]),s._v(" libgda"),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("..")]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("..")]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("..")]),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"\ncp -f '),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("$MSYSTEM_PREFIX")]),s._v('/bin/libpq.dll "')]),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("${TARGETDIR}")]),s._v("/bin/"),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"\ncp -f '),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("$MSYSTEM_PREFIX")]),s._v('/bin/mariadb.dll "')]),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("${TARGETDIR}")]),s._v("/bin/"),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"\nldd '),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("$MSYSTEM_PREFIX")]),s._v('/bin/libpq.dll | grep "')]),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("$MSYSTEM_PREFIX")]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("\\")]),s._v("/bin"),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("\\")]),s._v("/.*dll"),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('" -o | xargs -I{} cp -f "')]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("{")]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("}")]),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('" "')]),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("${TARGETDIR}")]),s._v("/bin/"),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"\nldd '),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("$MSYSTEM_PREFIX")]),s._v('/bin/mariadb.dll | grep "')]),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("$MSYSTEM_PREFIX")]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("\\")]),s._v("/bin"),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("\\")]),s._v("/.*dll"),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('" -o | xargs -I{} cp -f "')]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("{")]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("}")]),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('" "')]),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("${TARGETDIR}")]),s._v("/bin/"),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"\nif [ -d "')]),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("${SOURCEDIR}")]),s._v("/libs/plugin"),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('" ]; then\n cp -rf "')]),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("${SOURCEDIR}")]),s._v("/libs/plugin"),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('" "')]),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("${TARGETDIR}")]),s._v("/lib"),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"\nfi\necho "')]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("[")]),s._v("done"),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("]")]),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"\n\n# copy GTK runtime dependencies resource\necho -n "')]),s._v("Copy GTK runtime resource"),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("..")]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("..")]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("..")]),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"\ncp -rf '),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("$MSYSTEM_PREFIX")]),s._v('/lib/gdk-pixbuf-2.0 "')]),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("${TARGETDIR}")]),s._v("/lib/"),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"\ncp -rf '),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("$MSYSTEM_PREFIX")]),s._v('/lib/libgda-5.0 "')]),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("${TARGETDIR}")]),s._v("/lib/"),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"\ncp -rf '),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("$MSYSTEM_PREFIX")]),s._v('/lib/gio "')]),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("${TARGETDIR}")]),s._v("/lib/"),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"\ncp -rf '),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("$MSYSTEM_PREFIX")]),s._v('/etc/gtk-3.0 "')]),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("${TARGETDIR}")]),s._v("/etc/"),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"\ncp -rf '),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("$MSYSTEM_PREFIX")]),s._v('/share/icons "')]),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("${TARGETDIR}")]),s._v("/share/"),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"\ncp -rf '),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("$MSYSTEM_PREFIX")]),s._v('/share/locale "')]),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("${TARGETDIR}")]),s._v("/share/"),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"\ncp -rf '),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("$MSYSTEM_PREFIX")]),s._v('/share/gtksourceview-4 "')]),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("${TARGETDIR}")]),s._v("/share/"),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"\nglib-compile-schemas '),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("$MSYSTEM_PREFIX")]),s._v("/share/glib-2.0/schemas\ncp -f "),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("$MSYSTEM_PREFIX")]),s._v('/share/glib-2.0/schemas/gschema* "')]),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("${TARGETDIR}")]),s._v("/share/glib-2.0/schemas"),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"\ncp -rf '),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("$MSYSTEM_PREFIX")]),s._v('/share/themes/Default "')]),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("${TARGETDIR}")]),s._v("/share/themes/"),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"\ncp -rf '),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("$MSYSTEM_PREFIX")]),s._v('/share/themes/MS-Windows "')]),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("${TARGETDIR}")]),s._v("/share/themes/"),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"\nfind "')]),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("${TARGETDIR}")]),s._v("/lib"),t("span",{pre:!0,attrs:{class:"token string"}},[s._v("\" -type f -path '*.dll.a' -exec rm '{}' \\;\necho \"")]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("[")]),s._v("done"),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("]")]),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"\n\n# download license file: LGPL-3.0\necho -n "')]),s._v("Downloading the remote license file"),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("..")]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("..")]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("..")]),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"\nif [ ! -f "')]),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("${TARGETDIR}")]),s._v("/share/doc/lgpl-3.0.txt"),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('" ]; then\n curl "')]),s._v("https://www.gnu.org/licenses/lgpl-3.0.txt"),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('" -o "')]),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("${TARGETDIR}")]),s._v("/share/doc/lgpl-3.0.txt"),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"\nfi\nif [ -f "')]),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("${TARGETDIR}")]),s._v("/share/doc/lgpl-3.0.txt"),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('" ]; then\n echo "')]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("[")]),s._v("done"),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("]")]),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"\nelse\n echo "')]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("[")]),s._v("failed"),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("]")]),s._v('"\n'),t("span",{pre:!0,attrs:{class:"token keyword"}},[s._v("fi")]),s._v("\n")])])])])}),[],!1,null,null,null);a.default=e.exports}}]); \ No newline at end of file diff --git a/assets/js/26.4c346c7e.js b/assets/js/26.4c346c7e.js new file mode 100644 index 000000000..d4ca22a4d --- /dev/null +++ b/assets/js/26.4c346c7e.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[26],{603:function(t,a,s){"use strict";s.r(a);var n=s(13),e=Object(n.a)({},(function(){var t=this,a=t.$createElement,s=t._self._c||a;return s("ContentSlotsDistributor",{attrs:{"slot-key":t.$parent.slotKey}},[s("h1",{attrs:{id:"how-to-serialize-deserialize-glib-object-will-update-later"}},[s("a",{staticClass:"header-anchor",attrs:{href:"#how-to-serialize-deserialize-glib-object-will-update-later"}},[t._v("#")]),t._v(" How to serialize / deserialize GLib object(Will update later)")]),t._v(" "),s("h2",{attrs:{id:"background"}},[s("a",{staticClass:"header-anchor",attrs:{href:"#background"}},[t._v("#")]),t._v(" Background")]),t._v(" "),s("p",[t._v("How to compare two objects and generate the patch for them? It is a important step to forward Kangaroo 1.0.\nI don't know which library is the best way to solve this problem, So I start to study this problem.")]),t._v(" "),s("h2",{attrs:{id:"solution"}},[s("a",{staticClass:"header-anchor",attrs:{href:"#solution"}},[t._v("#")]),t._v(" Solution")]),t._v(" "),s("p",[t._v("In GLib framework, there are two libraries support to serialize / deserialize object, there are:")]),t._v(" "),s("table",[s("thead",[s("tr",[s("th",[t._v("Library")]),t._v(" "),s("th",[t._v("Latest version")]),t._v(" "),s("th",[t._v("Website")]),t._v(" "),s("th",[t._v("Description")])])]),t._v(" "),s("tbody",[s("tr",[s("td",[t._v("JSON-GLib")]),t._v(" "),s("td",[t._v("1.44")]),t._v(" "),s("td",[s("a",{attrs:{href:"https://gitlab.gnome.org/GNOME/json-glib",target:"_blank",rel:"noopener noreferrer"}},[t._v("JSON-GLib"),s("OutboundLink")],1)]),t._v(" "),s("td",[t._v("JSON-GLib implements a full JSON parser and generator using GLib and GObject, and integrates JSON with GLib data types.")])]),t._v(" "),s("tr",[s("td",[t._v("GXML")]),t._v(" "),s("td",[t._v("0.16")]),t._v(" "),s("td",[s("a",{attrs:{href:"https://gitlab.gnome.org/GNOME/gxml",target:"_blank",rel:"noopener noreferrer"}},[t._v("GXML"),s("OutboundLink")],1)]),t._v(" "),s("td",[t._v("GXml provides a GObject API for manipulating XML and a Serializable framework from GObject to XML.")])])])]),t._v(" "),s("h3",{attrs:{id:"which-library-is-suitable-for-this-problem"}},[s("a",{staticClass:"header-anchor",attrs:{href:"#which-library-is-suitable-for-this-problem"}},[t._v("#")]),t._v(" Which library is suitable for this problem?")]),t._v(" "),s("p",[t._v("let us list a checklist to check which library is better for our problem:")]),t._v(" "),s("table",[s("thead",[s("tr",[s("th",[t._v("Key item")]),t._v(" "),s("th",{staticStyle:{"text-align":"center"}},[t._v("GXML")]),t._v(" "),s("th",{staticStyle:{"text-align":"center"}},[t._v("JSON-GLib")]),t._v(" "),s("th",[t._v("Remark")])])]),t._v(" "),s("tbody",[s("tr",[s("td",[t._v("Basic types")]),t._v(" "),s("td",{staticStyle:{"text-align":"center"}},[t._v("[x] Supported")]),t._v(" "),s("td",{staticStyle:{"text-align":"center"}},[t._v("[x] Supported")]),t._v(" "),s("td",[t._v("char/int/double/...")])]),t._v(" "),s("tr",[s("td",[t._v("Boxed types")]),t._v(" "),s("td",{staticStyle:{"text-align":"center"}},[t._v("[ ] Unsupported")]),t._v(" "),s("td",{staticStyle:{"text-align":"center"}},[t._v("[x] Supported")]),t._v(" "),s("td",[t._v("Value/Variant/...")])]),t._v(" "),s("tr",[s("td",[t._v("Object")]),t._v(" "),s("td",{staticStyle:{"text-align":"center"}},[t._v("[x] Supported")]),t._v(" "),s("td",{staticStyle:{"text-align":"center"}},[t._v("[x] Supported")]),t._v(" "),s("td",[t._v("GObject based object")])]),t._v(" "),s("tr",[s("td",[t._v("Vala Array")]),t._v(" "),s("td",{staticStyle:{"text-align":"center"}},[t._v("[x] Supported")]),t._v(" "),s("td",{staticStyle:{"text-align":"center"}},[t._v("[ ] Unsupported")]),t._v(" "),s("td",[t._v("container type")])]),t._v(" "),s("tr",[s("td",[t._v("Gee.ArrayList")]),t._v(" "),s("td",{staticStyle:{"text-align":"center"}},[t._v("[x] Supported")]),t._v(" "),s("td",{staticStyle:{"text-align":"center"}},[t._v("[ ] Unsupported")]),t._v(" "),s("td",[t._v("container type")])]),t._v(" "),s("tr",[s("td",[t._v("Gee.HashMap")]),t._v(" "),s("td",{staticStyle:{"text-align":"center"}},[t._v("[x] Supported")]),t._v(" "),s("td",{staticStyle:{"text-align":"center"}},[t._v("[ ] Unsupported")]),t._v(" "),s("td",[t._v("container type")])]),t._v(" "),s("tr",[s("td",[t._v("Gee.TreeMap")]),t._v(" "),s("td",{staticStyle:{"text-align":"center"}},[t._v("[x] Supported")]),t._v(" "),s("td",{staticStyle:{"text-align":"center"}},[t._v("[ ] Unsupported")]),t._v(" "),s("td",[t._v("container type")])]),t._v(" "),s("tr",[s("td",[t._v("Gee.LinkedList")]),t._v(" "),s("td",{staticStyle:{"text-align":"center"}},[t._v("[ ] Unsupported")]),t._v(" "),s("td",{staticStyle:{"text-align":"center"}},[t._v("[ ] Unsupported")]),t._v(" "),s("td",[t._v("container type")])]),t._v(" "),s("tr",[s("td",[t._v("GLib.Array")]),t._v(" "),s("td",{staticStyle:{"text-align":"center"}},[t._v("[ ] Unsupported")]),t._v(" "),s("td",{staticStyle:{"text-align":"center"}},[t._v("[ ] Unsupported")]),t._v(" "),s("td",[t._v("container type")])]),t._v(" "),s("tr",[s("td",[t._v("GLib.List")]),t._v(" "),s("td",{staticStyle:{"text-align":"center"}},[t._v("[ ] Unsupported")]),t._v(" "),s("td",{staticStyle:{"text-align":"center"}},[t._v("[ ] Unsupported")]),t._v(" "),s("td",[t._v("container type")])]),t._v(" "),s("tr",[s("td",[t._v("GLib.SList")]),t._v(" "),s("td",{staticStyle:{"text-align":"center"}},[t._v("[ ] Unsupported")]),t._v(" "),s("td",{staticStyle:{"text-align":"center"}},[t._v("[ ] Unsupported")]),t._v(" "),s("td",[t._v("container type")])]),t._v(" "),s("tr",[s("td",[t._v("GLib.Queue")]),t._v(" "),s("td",{staticStyle:{"text-align":"center"}},[t._v("[ ] Unsupported")]),t._v(" "),s("td",{staticStyle:{"text-align":"center"}},[t._v("[ ] Unsupported")]),t._v(" "),s("td",[t._v("container type")])]),t._v(" "),s("tr",[s("td",[t._v("GLib.HastTable")]),t._v(" "),s("td",{staticStyle:{"text-align":"center"}},[t._v("[ ] Unsupported")]),t._v(" "),s("td",{staticStyle:{"text-align":"center"}},[t._v("[ ] Unsupported")]),t._v(" "),s("td",[t._v("container type")])])])]),t._v(" "),s("div",[s("script2",{attrs:{type:"text/javascript",async:"true",src:"https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"}}),t._v(" "),s("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),t._v(" "),s("script2",{attrs:{type:"text/javascript"}},[t._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),t._v(" "),s("h3",{attrs:{id:"advantage-disadvantage-of-gxml"}},[s("a",{staticClass:"header-anchor",attrs:{href:"#advantage-disadvantage-of-gxml"}},[t._v("#")]),t._v(" Advantage / Disadvantage of GXML")]),t._v(" "),s("p",[s("strong",[t._v("Advantage")])]),t._v(" "),s("ol",[s("li",[t._v("Vala friendly")]),t._v(" "),s("li",[t._v("Support four kinds of Gee container.")])]),t._v(" "),s("p",[s("strong",[t._v("Disadvantage")])]),t._v(" "),s("ol",[s("li",[t._v("Missing GLib built-in container support.")]),t._v(" "),s("li",[t._v("Missing boxed type support")])]),t._v(" "),s("h3",{attrs:{id:"advantage-disadvantage-of-json-glib"}},[s("a",{staticClass:"header-anchor",attrs:{href:"#advantage-disadvantage-of-json-glib"}},[t._v("#")]),t._v(" Advantage / Disadvantage of JSON-GLib")]),t._v(" "),s("p",[s("strong",[t._v("Advantage")])]),t._v(" "),s("ol",[s("li",[t._v("support to register new type function to serialize / deserialize unsupported types, both boxed types and complex objects.")]),t._v(" "),s("li",[t._v("Boxed type and container friendly.")])]),t._v(" "),s("p",[s("strong",[t._v("Disadvantage")])]),t._v(" "),s("ol",[s("li",[t._v("Missing GLib built-in container support.")])]),t._v(" "),s("h3",{attrs:{id:"json-glib-is-the-choice"}},[s("a",{staticClass:"header-anchor",attrs:{href:"#json-glib-is-the-choice"}},[t._v("#")]),t._v(" JSON-GLib is the choice")]),t._v(" "),s("p",[t._v("For Kangaroo project, the final choice is JSON-GLib, because it is boxed type and container friendly, and support to register new type function to serialize/deserialize unsupported types, so the user could handle all new GObject based type.")]),t._v(" "),s("h2",{attrs:{id:"example"}},[s("a",{staticClass:"header-anchor",attrs:{href:"#example"}},[t._v("#")]),t._v(" Example")]),t._v(" "),s("h3",{attrs:{id:"glib-container-serialization"}},[s("a",{staticClass:"header-anchor",attrs:{href:"#glib-container-serialization"}},[t._v("#")]),t._v(" GLib container serialization")]),t._v(" "),s("div",{staticClass:"language-vala extra-class"},[s("pre",{pre:!0,attrs:{class:"language-vala"}},[s("code",[t._v(" "),s("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("public")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("class")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token class-name"}},[t._v("DbObject")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(":")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token class-name"}},[t._v("GLib"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("Object")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" Json"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("Serializable\n "),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v("\n "),s("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("public")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token class-name"}},[t._v("Json"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("Object")]),s("span",{pre:!0,attrs:{class:"token operator"}},[t._v("?")]),t._v(" meta "),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("get")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(";")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("construct")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("set")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(";")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("default")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("null")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(";")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),t._v("\n "),s("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("public")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token class-name"}},[t._v("VersionSync")]),t._v(" version "),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("get")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(";")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("set")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(";")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("default")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" VersionSync"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),s("span",{pre:!0,attrs:{class:"token constant"}},[t._v("UNKNOWN")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(";")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),t._v("\n\n "),s("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("public")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("virtual")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token class-name"}},[t._v("Value")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token function"}},[t._v("get_property")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),s("span",{pre:!0,attrs:{class:"token class-name"}},[t._v("ParamSpec")]),t._v(" pspec"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\n "),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v("\n "),s("span",{pre:!0,attrs:{class:"token class-name"}},[t._v("Value")]),t._v(" prop_value "),s("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" GLib"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),s("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("Value")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("pspec"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("value_type"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(";")]),t._v("\n "),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),s("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("this")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("as")]),t._v(" GLib"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("Object"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),s("span",{pre:!0,attrs:{class:"token function"}},[t._v("get_property")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("pspec"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("name"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("ref")]),t._v(" prop_value"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(";")]),t._v("\n stdout"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),s("span",{pre:!0,attrs:{class:"token function"}},[t._v("printf")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),s("span",{pre:!0,attrs:{class:"token string"}},[t._v('"%s --\x3e %s\\n"')]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" prop_value"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),s("span",{pre:!0,attrs:{class:"token function"}},[t._v("type_name")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" prop_value"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),s("span",{pre:!0,attrs:{class:"token function"}},[t._v("strdup_contents")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(";")]),t._v("\n\n "),s("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("return")]),t._v(" prop_value"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(";")]),t._v("\n "),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),t._v("\n\n "),s("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("public")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("virtual")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("void")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token function"}},[t._v("set_property")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),s("span",{pre:!0,attrs:{class:"token class-name"}},[t._v("ParamSpec")]),t._v(" pspec"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token class-name"}},[t._v("Value")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("value")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\n "),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v("\n "),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),s("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("this")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("as")]),t._v(" GLib"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("Object"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),s("span",{pre:!0,attrs:{class:"token function"}},[t._v("set_property")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("pspec"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("name"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("value")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(";")]),t._v("\n "),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),t._v("\n\n "),s("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("public")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("unowned")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token class-name"}},[t._v("ParamSpec")]),s("span",{pre:!0,attrs:{class:"token operator"}},[t._v("?")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token function"}},[t._v("find_property")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),s("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("string")]),t._v(" name"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\n "),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v("\n "),s("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("return")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("ObjectClass"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token function"}},[t._v("get_type")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),s("span",{pre:!0,attrs:{class:"token function"}},[t._v("class_ref")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),s("span",{pre:!0,attrs:{class:"token function"}},[t._v("find_property")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("name"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(";")]),t._v("\n "),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),t._v("\n\n "),s("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("public")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("virtual")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token class-name"}},[t._v("Json"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("Node")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token function"}},[t._v("serialize_property")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),s("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("string")]),t._v(" property_name"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("Value")]),t._v(" @"),s("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("value")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token class-name"}},[t._v("ParamSpec")]),t._v(" pspec"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\n "),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v("\n "),s("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("if")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("@"),s("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("value")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),s("span",{pre:!0,attrs:{class:"token function"}},[t._v("type")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),s("span",{pre:!0,attrs:{class:"token function"}},[t._v("is_a")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),s("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("typeof")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("Json"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("Object"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\n "),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v("\n "),s("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("var")]),t._v(" obj "),s("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" @"),s("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("value")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("as")]),t._v(" Json"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("Object"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(";")]),t._v("\n "),s("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("if")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("obj "),s("span",{pre:!0,attrs:{class:"token operator"}},[t._v("!=")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("null")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\n "),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v("\n "),s("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("var")]),t._v(" node "),s("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("new")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token class-name"}},[t._v("Json"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("Node")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("NodeType"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),s("span",{pre:!0,attrs:{class:"token constant"}},[t._v("OBJECT")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(";")]),t._v("\n node"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),s("span",{pre:!0,attrs:{class:"token function"}},[t._v("set_object")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("obj"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(";")]),t._v("\n "),s("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("return")]),t._v(" node"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(";")]),t._v("\n "),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),t._v("\n "),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),t._v("\n "),s("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("else")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("if")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("@"),s("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("value")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),s("span",{pre:!0,attrs:{class:"token function"}},[t._v("type")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),s("span",{pre:!0,attrs:{class:"token function"}},[t._v("is_a")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),s("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("typeof")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("Gee"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("ArrayList"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\n "),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v("\n "),s("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("unowned")]),t._v(" Gee"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("ArrayList"),s("span",{pre:!0,attrs:{class:"token operator"}},[t._v("<")]),t._v("GLib"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("Object"),s("span",{pre:!0,attrs:{class:"token operator"}},[t._v(">")]),t._v(" list_value "),s("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" @"),s("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("value")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("as")]),t._v(" Gee"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("ArrayList"),s("span",{pre:!0,attrs:{class:"token operator"}},[t._v("<")]),t._v("GLib"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("Object"),s("span",{pre:!0,attrs:{class:"token operator"}},[t._v(">")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(";")]),t._v("\n "),s("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("if")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("list_value "),s("span",{pre:!0,attrs:{class:"token operator"}},[t._v("!=")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("null")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token operator"}},[t._v("||")]),t._v(" property_name "),s("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token string"}},[t._v('"data"')]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\n "),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v("\n "),s("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("var")]),t._v(" array "),s("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("new")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token class-name"}},[t._v("Json"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("Array"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("sized")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("list_value"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("size"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(";")]),t._v("\n "),s("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("foreach")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),s("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("var")]),t._v(" item "),s("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("in")]),t._v(" list_value"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\n "),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v("\n array"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),s("span",{pre:!0,attrs:{class:"token function"}},[t._v("add_element")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),s("span",{pre:!0,attrs:{class:"token function"}},[t._v("gobject_serialize")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("item"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(";")]),t._v("\n "),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),t._v("\n\n "),s("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("var")]),t._v(" node "),s("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("new")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token class-name"}},[t._v("Json"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("Node")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("NodeType"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),s("span",{pre:!0,attrs:{class:"token constant"}},[t._v("ARRAY")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(";")]),t._v("\n node"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),s("span",{pre:!0,attrs:{class:"token function"}},[t._v("set_array")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("array"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(";")]),t._v("\n "),s("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("return")]),t._v(" node"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(";")]),t._v("\n "),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),t._v("\n "),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),t._v("\n "),s("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("else")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("if")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("@"),s("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("value")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),s("span",{pre:!0,attrs:{class:"token function"}},[t._v("type")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),s("span",{pre:!0,attrs:{class:"token function"}},[t._v("is_a")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),s("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("typeof")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("GLib"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("Array"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\n "),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v("\n "),s("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("unowned")]),t._v(" GLib"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("Array"),s("span",{pre:!0,attrs:{class:"token operator"}},[t._v("<")]),t._v("GLib"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("Object"),s("span",{pre:!0,attrs:{class:"token operator"}},[t._v(">")]),t._v(" array_value "),s("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" @"),s("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("value")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("as")]),t._v(" GLib"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("Array"),s("span",{pre:!0,attrs:{class:"token operator"}},[t._v("<")]),t._v("GLib"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("Object"),s("span",{pre:!0,attrs:{class:"token operator"}},[t._v(">")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(";")]),t._v("\n "),s("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("if")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("array_value "),s("span",{pre:!0,attrs:{class:"token operator"}},[t._v("!=")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("null")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token operator"}},[t._v("||")]),t._v(" property_name "),s("span",{pre:!0,attrs:{class:"token operator"}},[t._v("==")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token string"}},[t._v('"data"')]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\n "),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v("\n "),s("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("var")]),t._v(" array "),s("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("new")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token class-name"}},[t._v("Json"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("Array"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("sized")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("array_value"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("length"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(";")]),t._v("\n "),s("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("for")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),s("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("int")]),t._v(" i "),s("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token number"}},[t._v("0")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(";")]),t._v(" i "),s("span",{pre:!0,attrs:{class:"token operator"}},[t._v("<")]),t._v(" array_value"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("length"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(";")]),t._v(" i"),s("span",{pre:!0,attrs:{class:"token operator"}},[t._v("++")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v("\n array"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),s("span",{pre:!0,attrs:{class:"token function"}},[t._v("add_element")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),s("span",{pre:!0,attrs:{class:"token function"}},[t._v("gobject_serialize")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("array_value"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),s("span",{pre:!0,attrs:{class:"token function"}},[t._v("index")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("i"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(";")]),t._v("\n "),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),t._v("\n\n "),s("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("var")]),t._v(" node "),s("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("new")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token class-name"}},[t._v("Json"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("Node")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("NodeType"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),s("span",{pre:!0,attrs:{class:"token constant"}},[t._v("ARRAY")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(";")]),t._v("\n node"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),s("span",{pre:!0,attrs:{class:"token function"}},[t._v("set_array")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("array"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(";")]),t._v("\n "),s("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("return")]),t._v(" node"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(";")]),t._v("\n "),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),t._v("\n "),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),t._v(" \n "),s("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("else")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("if")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("@"),s("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("value")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),s("span",{pre:!0,attrs:{class:"token function"}},[t._v("type")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),s("span",{pre:!0,attrs:{class:"token function"}},[t._v("is_a")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),s("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("typeof")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("HashTable"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\n "),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v("\n "),s("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("var")]),t._v(" obj "),s("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("new")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token class-name"}},[t._v("Json"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("Object")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(";")]),t._v("\n "),s("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("var")]),t._v(" ht_string "),s("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" @"),s("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("value")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("as")]),t._v(" HashTable"),s("span",{pre:!0,attrs:{class:"token operator"}},[t._v("<")]),s("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("string")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("string")]),s("span",{pre:!0,attrs:{class:"token operator"}},[t._v(">")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(";")]),t._v("\n "),s("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("if")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("ht_string "),s("span",{pre:!0,attrs:{class:"token operator"}},[t._v("!=")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("null")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\n "),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v("\n ht_string"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),s("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("foreach")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("k"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" v"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=>")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v("\n obj"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),s("span",{pre:!0,attrs:{class:"token function"}},[t._v("set_string_member")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("k"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" v"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(";")]),t._v("\n "),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(";")]),t._v("\n\n "),s("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("var")]),t._v(" node "),s("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("new")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token class-name"}},[t._v("Json"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("Node")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("NodeType"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),s("span",{pre:!0,attrs:{class:"token constant"}},[t._v("OBJECT")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(";")]),t._v("\n node"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),s("span",{pre:!0,attrs:{class:"token function"}},[t._v("set_object")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("obj"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(";")]),t._v("\n "),s("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("return")]),t._v(" node"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(";")]),t._v("\n "),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("else")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v("\n "),s("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("var")]),t._v(" ht_object "),s("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" @"),s("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("value")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("as")]),t._v(" HashTable"),s("span",{pre:!0,attrs:{class:"token operator"}},[t._v("<")]),s("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("string")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" GLib"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("Object"),s("span",{pre:!0,attrs:{class:"token operator"}},[t._v(">")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(";")]),t._v("\n "),s("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("if")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("ht_object "),s("span",{pre:!0,attrs:{class:"token operator"}},[t._v("!=")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("null")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\n "),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v("\n ht_object"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),s("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("foreach")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("k"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" v"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=>")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v("\n obj"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),s("span",{pre:!0,attrs:{class:"token function"}},[t._v("set_member")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("k"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token function"}},[t._v("gobject_serialize")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("v"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(";")]),t._v("\n "),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(";")]),t._v(" \n\n "),s("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("var")]),t._v(" node "),s("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("new")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token class-name"}},[t._v("Json"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("Node")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("NodeType"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),s("span",{pre:!0,attrs:{class:"token constant"}},[t._v("OBJECT")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(";")]),t._v("\n node"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),s("span",{pre:!0,attrs:{class:"token function"}},[t._v("set_object")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("obj"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(";")]),t._v("\n "),s("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("return")]),t._v(" node"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(";")]),t._v("\n "),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),t._v("\n "),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),t._v("\n "),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),t._v("\n\n "),s("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("return")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token function"}},[t._v("default_serialize_property")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("property_name"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" @"),s("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("value")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" pspec"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(";")]),t._v("\n "),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),t._v("\n\n "),s("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("public")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("virtual")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("bool")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token function"}},[t._v("deserialize_property")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),s("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("string")]),t._v(" property_name"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("out")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("Value")]),t._v(" @"),s("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("value")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token class-name"}},[t._v("ParamSpec")]),t._v(" pspec"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token class-name"}},[t._v("Json"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("Node")]),t._v(" property_node"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\n "),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v("\n "),s("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("return")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token function"}},[t._v("default_deserialize_property")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("property_name"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("out")]),t._v(" @"),s("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("value")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" pspec"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v(" property_node"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(";")]),t._v("\n "),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),t._v("\n "),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),t._v("\n")])])]),s("div",[s("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),t._v(" "),s("script2",{attrs:{type:"text/javascript"}},[t._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),t._v(" "),s("h2",{attrs:{id:"reference"}},[s("a",{staticClass:"header-anchor",attrs:{href:"#reference"}},[t._v("#")]),t._v(" Reference")]),t._v(" "),s("p",[s("a",{attrs:{href:"https://blogs.gnome.org/despinosa/2016/11/06/gxml-objects-and-collections-to-xml-and-back/",target:"_blank",rel:"noopener noreferrer"}},[t._v("GXml: Objects and Collections to XML and back"),s("OutboundLink")],1)]),t._v(" "),s("p",[s("a",{attrs:{href:"https://blogs.gnome.org/despinosa/2016/11/03/gxml-0-14-and-serialization/",target:"_blank",rel:"noopener noreferrer"}},[t._v("GXml 0.14 and Serialization"),s("OutboundLink")],1)]),t._v(" "),s("p",[s("a",{attrs:{href:"https://blogs.gnome.org/despinosa/2016/05/04/howto-gobject-serialization-to-xml-using-gxml/",target:"_blank",rel:"noopener noreferrer"}},[t._v("HowTo: GObject Serialization to XML using GXml"),s("OutboundLink")],1)]),t._v(" "),s("p",[s("a",{attrs:{href:"https://stackoverflow.com/questions/43344017/vala-serializing-object-property-with-json-gobject-serialize",target:"_blank",rel:"noopener noreferrer"}},[t._v("Serializing object property with Json.gobject_serialize?"),s("OutboundLink")],1)]),t._v(" "),s("p",[s("a",{attrs:{href:"https://github.com/major-lab/json-api-glib/blob/master/src/json-api-object.vala",target:"_blank",rel:"noopener noreferrer"}},[t._v("json-api-object.vala"),s("OutboundLink")],1)]),t._v(" "),s("p",[s("a",{attrs:{href:"https://discourse.gnome.org/t/is-there-no-way-to-auto-serialize-any-array-with-data-to-json/1621",target:"_blank",rel:"noopener noreferrer"}},[t._v("Is there no way to auto serialize any array with data to JSON?"),s("OutboundLink")],1)])])}),[],!1,null,null,null);a.default=e.exports}}]); \ No newline at end of file diff --git a/assets/js/27.d247afdf.js b/assets/js/27.d247afdf.js new file mode 100644 index 000000000..18fbb4071 --- /dev/null +++ b/assets/js/27.d247afdf.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[27],{605:function(a,s,t){"use strict";t.r(s);var e=t(13),n=Object(e.a)({},(function(){var a=this,s=a.$createElement,t=a._self._c||s;return t("ContentSlotsDistributor",{attrs:{"slot-key":a.$parent.slotKey}},[t("h1",{attrs:{id:"how-to-deploy-gtk-based-app-on-mac-os-x"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#how-to-deploy-gtk-based-app-on-mac-os-x"}},[a._v("#")]),a._v(" How to deploy GTK based app on Mac OS X?")]),a._v(" "),t("h2",{attrs:{id:"background"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#background"}},[a._v("#")]),a._v(" Background")]),a._v(" "),t("p",[a._v("Many friends ask me to provide the official installer package(.dmg) for Mac OS X, I do want to implement it. But there is a big stone on the way, because I don't have physical machine and landed OS X just a short time, have many dark hole on it.")]),a._v(" "),t("p",[a._v("Face it, solve it, things will be done, I think.")]),a._v(" "),t("p",[a._v("Tried again and again, 8 days later, found the right way finally.")]),a._v(" "),t("h2",{attrs:{id:"precondition-and-environment"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#precondition-and-environment"}},[a._v("#")]),a._v(" Precondition and environment")]),a._v(" "),t("p",[a._v("Using the package manager tool"),t("a",{attrs:{href:"https://brew.sh/",target:"_blank",rel:"noopener noreferrer"}},[a._v("Homebrew"),t("OutboundLink")],1),a._v(" to install all app dependency libraries.")]),a._v(" "),t("p",[a._v("You need to install GTK、libgda、GtkSourceView4、Vala、GCC toolchain / etc.")]),a._v(" "),t("h2",{attrs:{id:"solution"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#solution"}},[a._v("#")]),a._v(" Solution")]),a._v(" "),t("h3",{attrs:{id:"prepare-app-directory-structure"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#prepare-app-directory-structure"}},[a._v("#")]),a._v(" Prepare app directory structure")]),a._v(" "),t("p",[a._v("To deploy GTK based app, the app must follow the structure of OS X bundle structure and Linux platform structure, and the final structure as follow:")]),a._v(" "),t("div",{staticClass:"language- extra-class"},[t("pre",{pre:!0,attrs:{class:"language-text"}},[t("code",[a._v("[Kangaroo.app]\n └─Contents\n ├─Info.plist\n ├─MacOS\n │ ├─launcher.sh\n │ └─\n └─Resources\n ├─bin\n ├─etc\n │ └─gtk-3.0\n ├─include\n ├─lib\n │ ├─gdk-pixbuf-2.0\n │ │ └─2.10.0\n │ │ └─loaders\n │ ├─gio\n │ │ └─modules\n │ ├─girepository-1.0\n │ ├─gtk-3.0\n │ │ └─3.0.0\n │ │ ├─immodules\n │ │ └─printbackends\n │ ├─kangaroo\n │ │ └─plugins\n │ │ └─example\n │ ├─libgda-5.0\n │ │ └─providers\n │ ├─pkgconfig\n │ └─plugin\n └─share\n ├─appdata\n ├─applications\n ├─doc\n ├─fontconfig\n │ └─conf.avail\n ├─glib-2.0\n │ └─schemas\n ├─gtksourceview-4\n │ ├─language-specs\n │ └─styles\n ├─icons\n │ ├─Adwaita\n │ └─hicolor\n ├─licenses\n │ └─kangaroo\n ├─locale\n ├─themes\n │ ├─Default\n │ └─Mac\n └─vala\n └─vapi\n")])])]),t("div",[t("script2",{attrs:{type:"text/javascript",async:"true",src:"https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"}}),a._v(" "),t("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),a._v(" "),t("script2",{attrs:{type:"text/javascript"}},[a._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),a._v(" "),t("h3",{attrs:{id:"key-components-of-app-bundler"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#key-components-of-app-bundler"}},[a._v("#")]),a._v(" Key components of app bundler")]),a._v(" "),t("p",[a._v("There are some core components in the GTK app as follow:")]),a._v(" "),t("table",[t("thead",[t("tr",[t("th",{staticStyle:{"text-align":"center"}},[a._v("Key components")]),a._v(" "),t("th",[a._v("Comment")])])]),a._v(" "),t("tbody",[t("tr",[t("td",{staticStyle:{"text-align":"center"}},[a._v("GTK")]),a._v(" "),t("td",[a._v("GTK libraries like GTK / GDK / Pango / ...")])]),a._v(" "),t("tr",[t("td",{staticStyle:{"text-align":"center"}},[a._v("launcher.sh")]),a._v(" "),t("td",[a._v("app start point script, set environments for app like gdk-pixbuf plugins / GTK input modules and print backends / libgda's providers / ...")])]),a._v(" "),t("tr",[t("td",{staticStyle:{"text-align":"center"}},[a._v("Real app")]),a._v(" "),t("td",[a._v("your real app")])]),a._v(" "),t("tr",[t("td",{staticStyle:{"text-align":"center"}},[a._v("Info.plist")]),a._v(" "),t("td",[a._v("bundler package info list file, contain app entry point information, like GtkOSXLaunchScriptFile / CFBundleExecutable / CFBundleIconFiles")])]),a._v(" "),t("tr",[t("td",{staticStyle:{"text-align":"center"}},[a._v("app.icns")]),a._v(" "),t("td",[a._v("app's icons")])])])]),a._v(" "),t("h3",{attrs:{id:"prepare-app-resource"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#prepare-app-resource"}},[a._v("#")]),a._v(" prepare app resource")]),a._v(" "),t("p",[a._v("Your should make app resources before start compiling and packing your app:")]),a._v(" "),t("ol",[t("li",[a._v("App script: launcher.sh")]),a._v(" "),t("li",[a._v("App icon(image or .icns)")]),a._v(" "),t("li",[a._v("Info.plist")])]),a._v(" "),t("h3",{attrs:{id:"deploy-your-app-as-linux-app"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#deploy-your-app-as-linux-app"}},[a._v("#")]),a._v(" deploy your app as linux app")]),a._v(" "),t("p",[a._v("First, compile and install app to the target dir:")]),a._v(" "),t("div",{staticClass:"language-bash extra-class"},[t("pre",{pre:!0,attrs:{class:"language-bash"}},[t("code",[a._v("meson --prefix"),t("span",{pre:!0,attrs:{class:"token operator"}},[a._v("=")]),t("span",{pre:!0,attrs:{class:"token variable"}},[a._v("$TARGETDIR")]),a._v(" --buildtype"),t("span",{pre:!0,attrs:{class:"token operator"}},[a._v("=")]),a._v("release build\nninja -C "),t("span",{pre:!0,attrs:{class:"token string"}},[a._v('"'),t("span",{pre:!0,attrs:{class:"token variable"}},[a._v("${PROJECTDIR}")]),a._v('/build"')]),a._v(" "),t("span",{pre:!0,attrs:{class:"token function"}},[a._v("install")]),a._v("\n")])])]),t("p",[a._v("Then copy all dependency libraries and resources to the target dir, make a full and standalone linux app.")]),a._v(" "),t("div",{staticClass:"language-bash extra-class"},[t("pre",{pre:!0,attrs:{class:"language-bash"}},[t("code",[t("span",{pre:!0,attrs:{class:"token keyword"}},[a._v("function")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token function-name function"}},[a._v("lib_dependency_copy")]),a._v("\n"),t("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("{")]),a._v("\n "),t("span",{pre:!0,attrs:{class:"token comment"}},[a._v("# This function use otool to analyze library dependency.")]),a._v("\n "),t("span",{pre:!0,attrs:{class:"token comment"}},[a._v("# then copy the dependency libraries to destination path")]),a._v("\n\n "),t("span",{pre:!0,attrs:{class:"token builtin class-name"}},[a._v("local")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token assign-left variable"}},[a._v("target")]),t("span",{pre:!0,attrs:{class:"token operator"}},[a._v("=")]),t("span",{pre:!0,attrs:{class:"token variable"}},[a._v("$1")]),a._v("\n "),t("span",{pre:!0,attrs:{class:"token builtin class-name"}},[a._v("local")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token assign-left variable"}},[a._v("folder")]),t("span",{pre:!0,attrs:{class:"token operator"}},[a._v("=")]),t("span",{pre:!0,attrs:{class:"token variable"}},[a._v("$2")]),a._v("\n\n "),t("span",{pre:!0,attrs:{class:"token assign-left variable"}},[a._v("libraries")]),t("span",{pre:!0,attrs:{class:"token operator"}},[a._v("=")]),t("span",{pre:!0,attrs:{class:"token string"}},[a._v('"'),t("span",{pre:!0,attrs:{class:"token variable"}},[t("span",{pre:!0,attrs:{class:"token variable"}},[a._v("$(")]),a._v("otool -L $target "),t("span",{pre:!0,attrs:{class:"token operator"}},[a._v("|")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token function"}},[a._v("grep")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token string"}},[a._v('"/*.*dylib"')]),a._v(" -o "),t("span",{pre:!0,attrs:{class:"token operator"}},[a._v("|")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token function"}},[a._v("xargs")]),t("span",{pre:!0,attrs:{class:"token variable"}},[a._v(")")])]),a._v('"')]),a._v("\n "),t("span",{pre:!0,attrs:{class:"token keyword"}},[a._v("for")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token for-or-select variable"}},[a._v("lib")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token keyword"}},[a._v("in")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token variable"}},[a._v("$libraries")]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v(";")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token keyword"}},[a._v("do")]),a._v("\n "),t("span",{pre:!0,attrs:{class:"token keyword"}},[a._v("if")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("[")]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("[")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token string"}},[a._v("'/usr/lib/'")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token operator"}},[a._v("!=")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token variable"}},[a._v("${lib"),t("span",{pre:!0,attrs:{class:"token operator"}},[a._v(":")]),a._v("0"),t("span",{pre:!0,attrs:{class:"token operator"}},[a._v(":")]),a._v("9}")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token operator"}},[a._v("&&")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token string"}},[a._v("'/System/Library/'")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token operator"}},[a._v("!=")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token variable"}},[a._v("${lib"),t("span",{pre:!0,attrs:{class:"token operator"}},[a._v(":")]),a._v("0"),t("span",{pre:!0,attrs:{class:"token operator"}},[a._v(":")]),a._v("16}")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("]")]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("]")]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v(";")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token keyword"}},[a._v("then")]),a._v("\n "),t("span",{pre:!0,attrs:{class:"token function"}},[a._v("cp")]),a._v(" -n "),t("span",{pre:!0,attrs:{class:"token variable"}},[a._v("$lib")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token variable"}},[a._v("$folder")]),a._v("\n "),t("span",{pre:!0,attrs:{class:"token keyword"}},[a._v("fi")]),a._v(" \n "),t("span",{pre:!0,attrs:{class:"token keyword"}},[a._v("done")]),a._v("\n"),t("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("}")]),a._v("\n\n"),t("span",{pre:!0,attrs:{class:"token keyword"}},[a._v("function")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token function-name function"}},[a._v("lib_dependency_analyze")]),a._v("\n"),t("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("{")]),a._v("\n "),t("span",{pre:!0,attrs:{class:"token comment"}},[a._v("# This function use otool to analyze library directory.")]),a._v("\n "),t("span",{pre:!0,attrs:{class:"token comment"}},[a._v("# then copy the dependency libraries to destination path")]),a._v("\n\n "),t("span",{pre:!0,attrs:{class:"token builtin class-name"}},[a._v("local")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token assign-left variable"}},[a._v("library_dir")]),t("span",{pre:!0,attrs:{class:"token operator"}},[a._v("=")]),t("span",{pre:!0,attrs:{class:"token variable"}},[a._v("$1")]),a._v("\n "),t("span",{pre:!0,attrs:{class:"token builtin class-name"}},[a._v("local")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token assign-left variable"}},[a._v("targets_dir")]),t("span",{pre:!0,attrs:{class:"token operator"}},[a._v("=")]),t("span",{pre:!0,attrs:{class:"token variable"}},[a._v("$2")]),a._v("\n\n "),t("span",{pre:!0,attrs:{class:"token assign-left variable"}},[a._v("libraries")]),t("span",{pre:!0,attrs:{class:"token operator"}},[a._v("=")]),t("span",{pre:!0,attrs:{class:"token string"}},[a._v('"'),t("span",{pre:!0,attrs:{class:"token variable"}},[t("span",{pre:!0,attrs:{class:"token variable"}},[a._v("$(")]),t("span",{pre:!0,attrs:{class:"token function"}},[a._v("find")]),a._v(" $library_dir -name "),t("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("\\")]),a._v("*.dylib -o -name "),t("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("\\")]),a._v("*.so -type f"),t("span",{pre:!0,attrs:{class:"token variable"}},[a._v(")")])]),a._v('"')]),a._v("\n "),t("span",{pre:!0,attrs:{class:"token keyword"}},[a._v("for")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token for-or-select variable"}},[a._v("lib")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token keyword"}},[a._v("in")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token variable"}},[a._v("$libraries")]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v(";")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token keyword"}},[a._v("do")]),a._v("\n lib_dependency_copy "),t("span",{pre:!0,attrs:{class:"token variable"}},[a._v("$lib")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token variable"}},[a._v("$targets_dir")]),a._v("\n "),t("span",{pre:!0,attrs:{class:"token keyword"}},[a._v("done")]),a._v("\n"),t("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("}")]),a._v("\n\n"),t("span",{pre:!0,attrs:{class:"token comment"}},[a._v("# copy app dependency library to target dir")]),a._v("\n"),t("span",{pre:!0,attrs:{class:"token builtin class-name"}},[a._v("echo")]),a._v(" -n "),t("span",{pre:!0,attrs:{class:"token string"}},[a._v('"Copy app dependency library......"')]),a._v("\n"),t("span",{pre:!0,attrs:{class:"token function"}},[a._v("cp")]),a._v(" -f "),t("span",{pre:!0,attrs:{class:"token string"}},[a._v('"'),t("span",{pre:!0,attrs:{class:"token variable"}},[a._v("${PROJECTDIR}")]),a._v('/build/src/kangaroo"')]),a._v(" "),t("span",{pre:!0,attrs:{class:"token string"}},[a._v('"'),t("span",{pre:!0,attrs:{class:"token variable"}},[a._v("${TARGETDIR}")]),a._v('/bin"')]),a._v("\n"),t("span",{pre:!0,attrs:{class:"token function"}},[a._v("cp")]),a._v(" -f "),t("span",{pre:!0,attrs:{class:"token string"}},[a._v('"'),t("span",{pre:!0,attrs:{class:"token variable"}},[a._v("${TARGETDIR}")]),a._v('/lib/libkangaroo.dylib"')]),a._v(" "),t("span",{pre:!0,attrs:{class:"token string"}},[a._v('"'),t("span",{pre:!0,attrs:{class:"token variable"}},[a._v("${TARGETDIR}")]),a._v('/bin"')]),a._v("\n"),t("span",{pre:!0,attrs:{class:"token function"}},[a._v("cp")]),a._v(" -f "),t("span",{pre:!0,attrs:{class:"token string"}},[a._v('"'),t("span",{pre:!0,attrs:{class:"token variable"}},[a._v("${PROJECTDIR}")]),a._v('/tools/mac_launcher.sh"')]),a._v(" "),t("span",{pre:!0,attrs:{class:"token string"}},[a._v('"'),t("span",{pre:!0,attrs:{class:"token variable"}},[a._v("${TARGETDIR}")]),a._v('/bin/launcher.sh"')]),a._v("\n\nlib_dependency_copy "),t("span",{pre:!0,attrs:{class:"token variable"}},[a._v("${PROJECTDIR}")]),a._v("/build/src/libkangaroo.dylib "),t("span",{pre:!0,attrs:{class:"token string"}},[a._v('"'),t("span",{pre:!0,attrs:{class:"token variable"}},[a._v("${TARGETDIR}")]),a._v('/bin"')]),a._v("\nlib_dependency_copy "),t("span",{pre:!0,attrs:{class:"token variable"}},[a._v("${TARGETDIR}")]),a._v("/bin/libglib-2.0.0.dylib "),t("span",{pre:!0,attrs:{class:"token string"}},[a._v('"'),t("span",{pre:!0,attrs:{class:"token variable"}},[a._v("${TARGETDIR}")]),a._v('/bin"')]),a._v("\nlib_dependency_copy "),t("span",{pre:!0,attrs:{class:"token variable"}},[a._v("${TARGETDIR}")]),a._v("/bin/libgtk-3.0.dylib "),t("span",{pre:!0,attrs:{class:"token string"}},[a._v('"'),t("span",{pre:!0,attrs:{class:"token variable"}},[a._v("${TARGETDIR}")]),a._v('/bin"')]),a._v("\nlib_dependency_copy "),t("span",{pre:!0,attrs:{class:"token variable"}},[a._v("${TARGETDIR}")]),a._v("/bin/libjson-glib-1.0.0.dylib "),t("span",{pre:!0,attrs:{class:"token string"}},[a._v('"'),t("span",{pre:!0,attrs:{class:"token variable"}},[a._v("${TARGETDIR}")]),a._v('/bin"')]),a._v("\nlib_dependency_copy "),t("span",{pre:!0,attrs:{class:"token variable"}},[a._v("${TARGETDIR}")]),a._v("/bin/libsoup-2.4.1.dylib "),t("span",{pre:!0,attrs:{class:"token string"}},[a._v('"'),t("span",{pre:!0,attrs:{class:"token variable"}},[a._v("${TARGETDIR}")]),a._v('/bin"')]),a._v("\nlib_dependency_copy "),t("span",{pre:!0,attrs:{class:"token variable"}},[a._v("${TARGETDIR}")]),a._v("/bin/libgtksourceview-4.0.dylib "),t("span",{pre:!0,attrs:{class:"token string"}},[a._v('"'),t("span",{pre:!0,attrs:{class:"token variable"}},[a._v("${TARGETDIR}")]),a._v('/bin"')]),a._v("\n\n"),t("span",{pre:!0,attrs:{class:"token function"}},[a._v("cp")]),a._v(" -f /usr/local/lib/libgtkmacintegration-gtk3.2.dylib "),t("span",{pre:!0,attrs:{class:"token string"}},[a._v('"'),t("span",{pre:!0,attrs:{class:"token variable"}},[a._v("${TARGETDIR}")]),a._v('/bin"')]),a._v("\n"),t("span",{pre:!0,attrs:{class:"token function"}},[a._v("cp")]),a._v(" -f /usr/local/lib/libgirepository-1.0.1.dylib "),t("span",{pre:!0,attrs:{class:"token string"}},[a._v('"'),t("span",{pre:!0,attrs:{class:"token variable"}},[a._v("${TARGETDIR}")]),a._v('/bin"')]),a._v("\n"),t("span",{pre:!0,attrs:{class:"token function"}},[a._v("cp")]),a._v(" -f /usr/local/lib/librsvg-2.2.dylib "),t("span",{pre:!0,attrs:{class:"token string"}},[a._v('"'),t("span",{pre:!0,attrs:{class:"token variable"}},[a._v("${TARGETDIR}")]),a._v('/bin"')]),a._v("\n"),t("span",{pre:!0,attrs:{class:"token function"}},[a._v("cp")]),a._v(" -f /usr/local/lib/libgthread-2.0.0.dylib "),t("span",{pre:!0,attrs:{class:"token string"}},[a._v('"'),t("span",{pre:!0,attrs:{class:"token variable"}},[a._v("${TARGETDIR}")]),a._v('/bin"')]),a._v("\n"),t("span",{pre:!0,attrs:{class:"token function"}},[a._v("cp")]),a._v(" -f /usr/local/lib/libcroco-0.6.3.dylib "),t("span",{pre:!0,attrs:{class:"token string"}},[a._v('"'),t("span",{pre:!0,attrs:{class:"token variable"}},[a._v("${TARGETDIR}")]),a._v('/bin"')]),a._v("\n"),t("span",{pre:!0,attrs:{class:"token function"}},[a._v("cp")]),a._v(" -f /usr/local/lib/p11-kit-proxy.dylib "),t("span",{pre:!0,attrs:{class:"token string"}},[a._v('"'),t("span",{pre:!0,attrs:{class:"token variable"}},[a._v("${TARGETDIR}")]),a._v('/bin"')]),a._v("\n"),t("span",{pre:!0,attrs:{class:"token function"}},[a._v("cp")]),a._v(" -f /usr/local/lib/libgmpxx.4.dylib "),t("span",{pre:!0,attrs:{class:"token string"}},[a._v('"'),t("span",{pre:!0,attrs:{class:"token variable"}},[a._v("${TARGETDIR}")]),a._v('/bin"')]),a._v("\n\nlib_dependency_analyze "),t("span",{pre:!0,attrs:{class:"token variable"}},[a._v("${TARGETDIR}")]),a._v("/bin "),t("span",{pre:!0,attrs:{class:"token variable"}},[a._v("${TARGETDIR}")]),a._v("/bin\n"),t("span",{pre:!0,attrs:{class:"token builtin class-name"}},[a._v("echo")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token string"}},[a._v('"[done]"')]),a._v("\n")])])]),t("h3",{attrs:{id:"bundle-your-app-as-os-x-app"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#bundle-your-app-as-os-x-app"}},[a._v("#")]),a._v(" Bundle your app as OS X app")]),a._v(" "),t("p",[a._v("Convert the full linux app to Mac OS X .app structure, just make the structure folder and copy files.")]),a._v(" "),t("p",[t("strong",[a._v("How to verify the app and dependency libraries are self-dependency?")]),t("br"),a._v("\nCan't verify so far, We must entry next step to solve the library locating problem.")]),a._v(" "),t("div",[t("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),a._v(" "),t("script2",{attrs:{type:"text/javascript"}},[a._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),a._v(" "),t("h3",{attrs:{id:"update-app-and-library-link-path"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#update-app-and-library-link-path"}},[a._v("#")]),a._v(" Update app and library link path")]),a._v(" "),t("p",[a._v("On the Mac OS X platform, the most important problem is the app how to find the library while running, We can solve this problem by two ways:")]),a._v(" "),t("ol",[t("li",[a._v("Using lib tool(otool and install_name_tool) to add or replace link path")])]),a._v(" "),t("div",{staticClass:"language-bash extra-class"},[t("pre",{pre:!0,attrs:{class:"language-bash"}},[t("code",[t("span",{pre:!0,attrs:{class:"token comment"}},[a._v("# Gdk-pixbuf plugins")]),a._v("\n"),t("span",{pre:!0,attrs:{class:"token assign-left variable"}},[a._v("pixbuf_plugins")]),t("span",{pre:!0,attrs:{class:"token operator"}},[a._v("=")]),t("span",{pre:!0,attrs:{class:"token string"}},[a._v('"'),t("span",{pre:!0,attrs:{class:"token variable"}},[t("span",{pre:!0,attrs:{class:"token variable"}},[a._v("$(")]),t("span",{pre:!0,attrs:{class:"token function"}},[a._v("find")]),a._v(" $APP_LIB_DIR/gdk-pixbuf-2.0/2.10.0/loaders/ -name "),t("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("\\")]),a._v("*.dylib -o -name "),t("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("\\")]),a._v("*.so -type f"),t("span",{pre:!0,attrs:{class:"token variable"}},[a._v(")")])]),a._v('"')]),a._v("\n"),t("span",{pre:!0,attrs:{class:"token keyword"}},[a._v("for")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token for-or-select variable"}},[a._v("pixbuf_plugin")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token keyword"}},[a._v("in")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token variable"}},[a._v("$pixbuf_plugins")]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v(";")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token keyword"}},[a._v("do")]),a._v("\n lib_change_paths "),t("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("\\")]),a._v("\n @executable_path/"),t("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("..")]),a._v("/Resources/lib "),t("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("\\")]),a._v("\n "),t("span",{pre:!0,attrs:{class:"token variable"}},[a._v("$APP_LIB_DIR")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("\\")]),a._v("\n "),t("span",{pre:!0,attrs:{class:"token variable"}},[a._v("$pixbuf_plugin")]),a._v("\n"),t("span",{pre:!0,attrs:{class:"token keyword"}},[a._v("done")]),a._v("\n\nlib_change_paths "),t("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("\\")]),a._v("\n @executable_path/"),t("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("..")]),a._v("/Resources/lib "),t("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("\\")]),a._v("\n "),t("span",{pre:!0,attrs:{class:"token variable"}},[a._v("$APP_LIB_DIR")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("\\")]),a._v("\n "),t("span",{pre:!0,attrs:{class:"token variable"}},[a._v("$APP_EXE_DIR")]),a._v("/gdbus\n\nlib_change_siblings "),t("span",{pre:!0,attrs:{class:"token variable"}},[a._v("$APP_LIB_DIR")]),a._v(" @loader_path\n")])])]),t("ol",{attrs:{start:"2"}},[t("li",[a._v("Using environments to tell app or library to find its dependency libraries.")])]),a._v(" "),t("div",{staticClass:"language-bash extra-class"},[t("pre",{pre:!0,attrs:{class:"language-bash"}},[t("code",[t("span",{pre:!0,attrs:{class:"token builtin class-name"}},[a._v("export")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token assign-left variable"}},[a._v("DYLD_LIBRARY_PATH")]),t("span",{pre:!0,attrs:{class:"token operator"}},[a._v("=")]),t("span",{pre:!0,attrs:{class:"token string"}},[a._v('"'),t("span",{pre:!0,attrs:{class:"token variable"}},[a._v("$bundle_lib")]),a._v('"')]),a._v("\n"),t("span",{pre:!0,attrs:{class:"token builtin class-name"}},[a._v("export")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token assign-left variable"}},[t("span",{pre:!0,attrs:{class:"token environment constant"}},[a._v("XDG_CONFIG_DIRS")])]),t("span",{pre:!0,attrs:{class:"token operator"}},[a._v("=")]),t("span",{pre:!0,attrs:{class:"token string"}},[a._v('"'),t("span",{pre:!0,attrs:{class:"token variable"}},[a._v("$bundle_etc")]),a._v('"')]),a._v("/xdg\n"),t("span",{pre:!0,attrs:{class:"token builtin class-name"}},[a._v("export")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token assign-left variable"}},[t("span",{pre:!0,attrs:{class:"token environment constant"}},[a._v("XDG_DATA_DIRS")])]),t("span",{pre:!0,attrs:{class:"token operator"}},[a._v("=")]),t("span",{pre:!0,attrs:{class:"token string"}},[a._v('"'),t("span",{pre:!0,attrs:{class:"token variable"}},[a._v("$bundle_data")]),a._v('"')]),a._v("\n"),t("span",{pre:!0,attrs:{class:"token builtin class-name"}},[a._v("export")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token assign-left variable"}},[a._v("GTK_DATA_PREFIX")]),t("span",{pre:!0,attrs:{class:"token operator"}},[a._v("=")]),t("span",{pre:!0,attrs:{class:"token string"}},[a._v('"'),t("span",{pre:!0,attrs:{class:"token variable"}},[a._v("$bundle_res")]),a._v('"')]),a._v("\n"),t("span",{pre:!0,attrs:{class:"token builtin class-name"}},[a._v("export")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token assign-left variable"}},[a._v("GTK_EXE_PREFIX")]),t("span",{pre:!0,attrs:{class:"token operator"}},[a._v("=")]),t("span",{pre:!0,attrs:{class:"token string"}},[a._v('"'),t("span",{pre:!0,attrs:{class:"token variable"}},[a._v("$bundle_res")]),a._v('"')]),a._v("\n"),t("span",{pre:!0,attrs:{class:"token builtin class-name"}},[a._v("export")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token assign-left variable"}},[a._v("GTK_PATH")]),t("span",{pre:!0,attrs:{class:"token operator"}},[a._v("=")]),t("span",{pre:!0,attrs:{class:"token string"}},[a._v('"'),t("span",{pre:!0,attrs:{class:"token variable"}},[a._v("$bundle_res")]),a._v('"')]),a._v("\n\n"),t("span",{pre:!0,attrs:{class:"token comment"}},[a._v("# PANGO_* is no longer needed for pango >= 1.38")]),a._v("\n"),t("span",{pre:!0,attrs:{class:"token builtin class-name"}},[a._v("export")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token assign-left variable"}},[a._v("PANGO_RC_FILE")]),t("span",{pre:!0,attrs:{class:"token operator"}},[a._v("=")]),t("span",{pre:!0,attrs:{class:"token string"}},[a._v('"'),t("span",{pre:!0,attrs:{class:"token variable"}},[a._v("$bundle_etc")]),a._v('/pango/pangorc"')]),a._v("\n"),t("span",{pre:!0,attrs:{class:"token builtin class-name"}},[a._v("export")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token assign-left variable"}},[a._v("PANGO_SYSCONFDIR")]),t("span",{pre:!0,attrs:{class:"token operator"}},[a._v("=")]),t("span",{pre:!0,attrs:{class:"token string"}},[a._v('"'),t("span",{pre:!0,attrs:{class:"token variable"}},[a._v("$bundle_etc")]),a._v('"')]),a._v("\n"),t("span",{pre:!0,attrs:{class:"token builtin class-name"}},[a._v("export")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token assign-left variable"}},[a._v("PANGO_LIBDIR")]),t("span",{pre:!0,attrs:{class:"token operator"}},[a._v("=")]),t("span",{pre:!0,attrs:{class:"token string"}},[a._v('"'),t("span",{pre:!0,attrs:{class:"token variable"}},[a._v("$bundle_lib")]),a._v('"')]),a._v("\n\n"),t("span",{pre:!0,attrs:{class:"token comment"}},[a._v("# Pixbuf plugins")]),a._v("\n"),t("span",{pre:!0,attrs:{class:"token builtin class-name"}},[a._v("export")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token assign-left variable"}},[a._v("GDK_PIXBUF_MODULEDIR")]),t("span",{pre:!0,attrs:{class:"token operator"}},[a._v("=")]),t("span",{pre:!0,attrs:{class:"token string"}},[a._v('"'),t("span",{pre:!0,attrs:{class:"token variable"}},[a._v("$bundle_lib")]),a._v('/gdk-pixbuf-2.0/2.10.0/loaders"')]),a._v("\n"),t("span",{pre:!0,attrs:{class:"token builtin class-name"}},[a._v("export")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token assign-left variable"}},[a._v("GDK_PIXBUF_MODULE_FILE")]),t("span",{pre:!0,attrs:{class:"token operator"}},[a._v("=")]),t("span",{pre:!0,attrs:{class:"token string"}},[a._v('"'),t("span",{pre:!0,attrs:{class:"token variable"}},[a._v("$bundle_lib")]),a._v('/gdk-pixbuf-2.0/2.10.0/loaders.cache"')]),a._v("\n\n"),t("span",{pre:!0,attrs:{class:"token comment"}},[a._v("# MySQL / MaridDB plugins")]),a._v("\n"),t("span",{pre:!0,attrs:{class:"token builtin class-name"}},[a._v("export")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token assign-left variable"}},[a._v("LIBMYSQL_PLUGIN_DIR")]),t("span",{pre:!0,attrs:{class:"token operator"}},[a._v("=")]),t("span",{pre:!0,attrs:{class:"token string"}},[a._v('"'),t("span",{pre:!0,attrs:{class:"token variable"}},[a._v("$bundle_lib")]),a._v('/plugin"')]),a._v("\n"),t("span",{pre:!0,attrs:{class:"token builtin class-name"}},[a._v("export")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token assign-left variable"}},[a._v("LIBMYSQL_ENABLE_CLEARTEXT_PLUGIN")]),t("span",{pre:!0,attrs:{class:"token operator"}},[a._v("=")]),a._v("Y\n")])])]),t("h3",{attrs:{id:"verify-your-app-app"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#verify-your-app-app"}},[a._v("#")]),a._v(" Verify your app(.app)")]),a._v(" "),t("p",[a._v("There are two ways to verify the app:"),t("br")]),a._v(" "),t("ol",[t("li",[t("p",[a._v("Start and debug your app"),t("br"),a._v(" "),t("code",[a._v("GTK_DEBUG_LAUNCHER=yes MyApp.app/Contents/MacOS/MyApp")]),t("br"),a._v("\nThis will print out the steps performed by the launcher script before the application executable is started."),t("br"),t("br"),a._v("\nTo run the application under gdb:"),t("br"),a._v(" "),t("code",[a._v("GTK_DEBUG_GDB=yes MyApp.app/Contents/MacOS/MyApp")])])]),a._v(" "),t("li",[t("p",[a._v("Using lib tool to list its dependency libraries"),t("br"),a._v(" "),t("code",[a._v("otool -L MyApp.app/Contents/MacOS/MyApp")]),t("br"),a._v("\nthis command will list all dependency libraries with full link path")])])]),a._v(" "),t("h3",{attrs:{id:"create-app-package-dmg"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#create-app-package-dmg"}},[a._v("#")]),a._v(" Create app package(.dmg)")]),a._v(" "),t("p",[a._v("There are many tool support make dmg package, I choose "),t("a",{attrs:{href:"https://github.com/LinusU/node-appdmg",target:"_blank",rel:"noopener noreferrer"}},[a._v("node-appdmg"),t("OutboundLink")],1),a._v(" to create app package, because it using JSON configuration file and output step detail into console.")]),a._v(" "),t("div",{staticClass:"language-json extra-class"},[t("pre",{pre:!0,attrs:{class:"language-json"}},[t("code",[t("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("{")]),a._v("\n "),t("span",{pre:!0,attrs:{class:"token property"}},[a._v('"title"')]),t("span",{pre:!0,attrs:{class:"token operator"}},[a._v(":")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token string"}},[a._v('"Kangaroo installer"')]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v(",")]),a._v("\n "),t("span",{pre:!0,attrs:{class:"token property"}},[a._v('"icon"')]),t("span",{pre:!0,attrs:{class:"token operator"}},[a._v(":")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token string"}},[a._v('"kangaroo.icns"')]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v(",")]),a._v("\n "),t("span",{pre:!0,attrs:{class:"token property"}},[a._v('"background"')]),t("span",{pre:!0,attrs:{class:"token operator"}},[a._v(":")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token string"}},[a._v('"kangaroo_dmg_background.png"')]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v(",")]),a._v("\n "),t("span",{pre:!0,attrs:{class:"token property"}},[a._v('"contents"')]),t("span",{pre:!0,attrs:{class:"token operator"}},[a._v(":")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("[")]),a._v("\n "),t("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("{")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token property"}},[a._v('"x"')]),t("span",{pre:!0,attrs:{class:"token operator"}},[a._v(":")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token number"}},[a._v("448")]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v(",")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token property"}},[a._v('"y"')]),t("span",{pre:!0,attrs:{class:"token operator"}},[a._v(":")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token number"}},[a._v("170")]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v(",")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token property"}},[a._v('"type"')]),t("span",{pre:!0,attrs:{class:"token operator"}},[a._v(":")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token string"}},[a._v('"link"')]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v(",")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token property"}},[a._v('"path"')]),t("span",{pre:!0,attrs:{class:"token operator"}},[a._v(":")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token string"}},[a._v('"/Applications"')]),a._v(" "),t("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("}")]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v(",")]),a._v("\n "),t("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("{")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token property"}},[a._v('"x"')]),t("span",{pre:!0,attrs:{class:"token operator"}},[a._v(":")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token number"}},[a._v("192")]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v(",")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token property"}},[a._v('"y"')]),t("span",{pre:!0,attrs:{class:"token operator"}},[a._v(":")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token number"}},[a._v("170")]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v(",")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token property"}},[a._v('"type"')]),t("span",{pre:!0,attrs:{class:"token operator"}},[a._v(":")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token string"}},[a._v('"file"')]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v(",")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token property"}},[a._v('"path"')]),t("span",{pre:!0,attrs:{class:"token operator"}},[a._v(":")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token string"}},[a._v('"kangaroo.app"')]),a._v(" "),t("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("}")]),a._v("\n "),t("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("]")]),a._v("\n"),t("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("}")]),a._v("\n")])])]),t("div",{staticClass:"language-bash extra-class"},[t("pre",{pre:!0,attrs:{class:"language-bash"}},[t("code",[t("span",{pre:!0,attrs:{class:"token comment"}},[a._v("# make installer package")]),a._v("\n"),t("span",{pre:!0,attrs:{class:"token builtin class-name"}},[a._v("echo")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token string"}},[a._v('"make macos installer(.dmg)......"')]),a._v("\n"),t("span",{pre:!0,attrs:{class:"token function"}},[a._v("cp")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token string"}},[a._v('"'),t("span",{pre:!0,attrs:{class:"token variable"}},[a._v("${PROJECTDIR}")]),a._v('/tools/installers/dmg.json"')]),a._v(" kangaroo_dmg.json\n"),t("span",{pre:!0,attrs:{class:"token function"}},[a._v("cp")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token string"}},[a._v('"'),t("span",{pre:!0,attrs:{class:"token variable"}},[a._v("${PROJECTDIR}")]),a._v('/data/assets/background.png"')]),a._v(" "),t("span",{pre:!0,attrs:{class:"token string"}},[a._v('"'),t("span",{pre:!0,attrs:{class:"token variable"}},[a._v("${PROJECTDIR}")]),a._v('/build/kangaroo_dmg_background.png"')]),a._v("\nappdmg kangaroo_dmg.json "),t("span",{pre:!0,attrs:{class:"token string"}},[a._v('"kangaroo-'),t("span",{pre:!0,attrs:{class:"token variable"}},[a._v("${VERSION}")]),a._v('-macos.dmg"')]),a._v("\n"),t("span",{pre:!0,attrs:{class:"token keyword"}},[a._v("if")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("[")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token variable"}},[a._v("$?")]),a._v(" -eq "),t("span",{pre:!0,attrs:{class:"token number"}},[a._v("0")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("]")]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v(";")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token keyword"}},[a._v("then")]),a._v("\n "),t("span",{pre:!0,attrs:{class:"token builtin class-name"}},[a._v("echo")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token string"}},[a._v('"[done]"')]),a._v("\n "),t("span",{pre:!0,attrs:{class:"token keyword"}},[a._v("else")]),a._v("\n "),t("span",{pre:!0,attrs:{class:"token builtin class-name"}},[a._v("echo")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token string"}},[a._v('"[failed]"')]),a._v("\n"),t("span",{pre:!0,attrs:{class:"token keyword"}},[a._v("fi")]),a._v("\n")])])]),t("div",[t("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),a._v(" "),t("script2",{attrs:{type:"text/javascript"}},[a._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),a._v(" "),t("h2",{attrs:{id:"script-source-files"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#script-source-files"}},[a._v("#")]),a._v(" Script source files")]),a._v(" "),t("p",[a._v("You can download the complete packaging tool script source files from here, welcome to use and share with your friends.")]),a._v(" "),t("p",[t("a",{attrs:{href:"/sources/Info.plist"}},[a._v("Info.plist")]),t("br"),a._v(" "),t("a",{attrs:{href:"/sources/mac_launcher.sh"}},[a._v("mac_launcher.sh")]),t("br"),a._v(" "),t("a",{attrs:{href:"/sources/mac_app_path.sh"}},[a._v("mac_app_path.sh")]),t("br"),a._v(" "),t("a",{attrs:{href:"/sources/mac_app_pack.sh"}},[a._v("mac_app_pack.sh")]),t("br"),a._v(" "),t("a",{attrs:{href:"/sources/deploy_macos.sh"}},[a._v("deploy_macos.sh")])]),a._v(" "),t("h2",{attrs:{id:"reference"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#reference"}},[a._v("#")]),a._v(" Reference")]),a._v(" "),t("p",[a._v("There are many resources helped me to find the final solution, thank for you all, the major resources are:")]),a._v(" "),t("p",[t("a",{attrs:{href:"https://github.com/LinusU/node-appdmg",target:"_blank",rel:"noopener noreferrer"}},[a._v("node-appdmg"),t("OutboundLink")],1),t("br"),a._v(" "),t("a",{attrs:{href:"https://gist.github.com/oubiwann/453744744da1141ccc542ff75b47e0cf",target:"_blank",rel:"noopener noreferrer"}},[a._v("oubiwann's appify.sh"),t("OutboundLink")],1),t("br"),a._v(" "),t("a",{attrs:{href:"https://gitlab.com/inkscape/inkscape/-/blob/master/packaging/macos/bash_d/lib_.sh",target:"_blank",rel:"noopener noreferrer"}},[a._v("inkscape packaging: lib_.sh"),t("OutboundLink")],1),t("br"),a._v(" "),t("a",{attrs:{href:"https://gitlab.gnome.org/GNOME/gtk-mac-bundler/-/blob/master/examples/gtk3-launcher.sh",target:"_blank",rel:"noopener noreferrer"}},[a._v("gtk-mac-bundler gtk3-launcher.sh"),t("OutboundLink")],1)])])}),[],!1,null,null,null);s.default=n.exports}}]); \ No newline at end of file diff --git a/assets/js/28.d7e73d05.js b/assets/js/28.d7e73d05.js new file mode 100644 index 000000000..5dd816a82 --- /dev/null +++ b/assets/js/28.d7e73d05.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[28],{604:function(t,a,n){"use strict";n.r(a);var s=n(13),e=Object(s.a)({},(function(){var t=this,a=t.$createElement,n=t._self._c||a;return n("ContentSlotsDistributor",{attrs:{"slot-key":t.$parent.slotKey}},[n("h1",{attrs:{id:"kangaroo-gtk4-upgrade-report-phase-1"}},[n("a",{staticClass:"header-anchor",attrs:{href:"#kangaroo-gtk4-upgrade-report-phase-1"}},[t._v("#")]),t._v(" Kangaroo GTK4 upgrade report (Phase 1)")]),t._v(" "),n("p",[t._v("Kangaroo app(based on GTK3) has passed the compilation with GTK4 framework and its dependency libraries this week(10/29/2021), it cost me six weeks and met many troubles, so make a GTK4 upgrade report for sharing.")]),t._v(" "),n("h2",{attrs:{id:"project-information"}},[n("a",{staticClass:"header-anchor",attrs:{href:"#project-information"}},[t._v("#")]),t._v(" Project information")]),t._v(" "),n("p",[n("strong",[t._v("Project summary")])]),t._v(" "),n("ul",[n("li",[t._v("Developers: 1")]),t._v(" "),n("li",[t._v("Machine: ThinkPad T450 + Windows 10")]),t._v(" "),n("li",[t._v("Vala source files: 364")]),t._v(" "),n("li",[t._v("GtkBuild UI files: 23")]),t._v(" "),n("li",[t._v("Action SVG files: 58")]),t._v(" "),n("li",[t._v("Action built-in: 280")]),t._v(" "),n("li",[t._v("Support platforms: Windows, macOS, Linux")])]),t._v(" "),n("h2",{attrs:{id:"development-environment"}},[n("a",{staticClass:"header-anchor",attrs:{href:"#development-environment"}},[t._v("#")]),t._v(" Development environment")]),t._v(" "),n("p",[t._v("Kangaroo's development environment is based on MSYS2 tool suite, the detail are as follow:"),n("br")]),t._v(" "),n("table",[n("thead",[n("tr",[n("th",[t._v("Feature")]),t._v(" "),n("th",[t._v("Tool")]),t._v(" "),n("th",[t._v("Version")])])]),t._v(" "),n("tbody",[n("tr",[n("td",[t._v("Package manager")]),t._v(" "),n("td",[t._v("pacman")]),t._v(" "),n("td",[t._v("6.0.1")])]),t._v(" "),n("tr",[n("td",[t._v("Terminal")]),t._v(" "),n("td",[t._v("mintty")]),t._v(" "),n("td",[t._v("3.5.1")])]),t._v(" "),n("tr",[n("td",[t._v("IDE(Editor)")]),t._v(" "),n("td",[t._v("Visual Studio Code + Vala")]),t._v(" "),n("td",[t._v("1.60")])]),t._v(" "),n("tr",[n("td",[t._v("Build")]),t._v(" "),n("td",[t._v("meson + ninja")]),t._v(" "),n("td",[t._v("0.58")])]),t._v(" "),n("tr",[n("td",[t._v("Installer")]),t._v(" "),n("td",[t._v("NSIS")]),t._v(" "),n("td",[t._v("3.0.6")])]),t._v(" "),n("tr",[n("td",[t._v("Virtual VM")]),t._v(" "),n("td",[t._v("VirtualBox")]),t._v(" "),n("td",[t._v("6.1")])])])]),t._v(" "),n("div",[n("script2",{attrs:{type:"text/javascript",async:"true",src:"https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"}}),t._v(" "),n("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),t._v(" "),n("script2",{attrs:{type:"text/javascript"}},[t._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),t._v(" "),n("p",[t._v("Kangaroo app integrates with many third-party libraries, the third-party libraries detail as follow:")]),t._v(" "),n("table",[n("thead",[n("tr",[n("th",[t._v("Feature")]),t._v(" "),n("th",[t._v("Third-party library")]),t._v(" "),n("th",[t._v("Version")])])]),t._v(" "),n("tbody",[n("tr",[n("td",[t._v("Compiler")]),t._v(" "),n("td",[n("a",{attrs:{href:"https://gitlab.gnome.org/GNOME/vala",target:"_blank",rel:"noopener noreferrer"}},[t._v("Vala"),n("OutboundLink")],1)]),t._v(" "),n("td",[t._v("0.54.2")])]),t._v(" "),n("tr",[n("td",[t._v("Platform")]),t._v(" "),n("td",[n("a",{attrs:{href:"https://gitlab.gnome.org/GNOME/glib",target:"_blank",rel:"noopener noreferrer"}},[t._v("GLib2"),n("OutboundLink")],1)]),t._v(" "),n("td",[t._v("2.68.1")])]),t._v(" "),n("tr",[n("td",[t._v("GUI Toolkit")]),t._v(" "),n("td",[n("a",{attrs:{href:"https://gitlab.gnome.org/GNOME/gtk",target:"_blank",rel:"noopener noreferrer"}},[t._v("GTK3 --\x3e GTK4"),n("OutboundLink")],1)]),t._v(" "),n("td",[t._v("3.24.30 --\x3e 4.4.0")])]),t._v(" "),n("tr",[n("td",[t._v("GUI adaptive")]),t._v(" "),n("td",[n("a",{attrs:{href:"https://gitlab.gnome.org/GNOME/libhandy",target:"_blank",rel:"noopener noreferrer"}},[t._v("libhandy"),n("OutboundLink")],1),t._v(" --\x3e "),n("a",{attrs:{href:"https://gitlab.gnome.org/GNOME/libhandy",target:"_blank",rel:"noopener noreferrer"}},[t._v("libadwaita"),n("OutboundLink")],1)]),t._v(" "),n("td",[t._v("1.4.0 --\x3e 1.0.0 alpha2")])]),t._v(" "),n("tr",[n("td",[t._v("Code editor")]),t._v(" "),n("td",[n("a",{attrs:{href:"https://gitlab.gnome.org/GNOME/gtksourceview",target:"_blank",rel:"noopener noreferrer"}},[t._v("GtkSourceView4 --\x3e GtkSourceView5"),n("OutboundLink")],1)]),t._v(" "),n("td",[t._v("4.8.2 --\x3e 5.2.0")])]),t._v(" "),n("tr",[n("td",[t._v("Map")]),t._v(" "),n("td",[n("a",{attrs:{href:"https://gitlab.gnome.org/GNOME/libshumate",target:"_blank",rel:"noopener noreferrer"}},[t._v("libshumate"),n("OutboundLink")],1)]),t._v(" "),n("td",[t._v("unknown")])]),t._v(" "),n("tr",[n("td",[t._v("JSON")]),t._v(" "),n("td",[n("a",{attrs:{href:"https://gitlab.gnome.org/GNOME/json-glib",target:"_blank",rel:"noopener noreferrer"}},[t._v("json-glib"),n("OutboundLink")],1)]),t._v(" "),n("td",[t._v("1.6.6")])]),t._v(" "),n("tr",[n("td",[t._v("Data access")]),t._v(" "),n("td",[n("a",{attrs:{href:"https://gitlab.gnome.org/GNOME/libgda",target:"_blank",rel:"noopener noreferrer"}},[t._v("libgda"),n("OutboundLink")],1)]),t._v(" "),n("td",[t._v("6.0.0")])]),t._v(" "),n("tr",[n("td",[t._v("Container")]),t._v(" "),n("td",[n("a",{attrs:{href:"https://gitlab.gnome.org/GNOME/libgee",target:"_blank",rel:"noopener noreferrer"}},[t._v("libgee"),n("OutboundLink")],1)]),t._v(" "),n("td",[t._v("0.20.3")])]),t._v(" "),n("tr",[n("td",[t._v("SSH")]),t._v(" "),n("td",[n("a",{attrs:{href:"https://github.com/libssh2/libssh2",target:"_blank",rel:"noopener noreferrer"}},[t._v("libssh2"),n("OutboundLink")],1)]),t._v(" "),n("td",[t._v("1.9.0")])]),t._v(" "),n("tr",[n("td",[t._v("XML")]),t._v(" "),n("td",[n("a",{attrs:{href:"https://gitlab.gnome.org/GNOME/libxml2",target:"_blank",rel:"noopener noreferrer"}},[t._v("libxml2"),n("OutboundLink")],1)]),t._v(" "),n("td",[t._v("2.9.12")])]),t._v(" "),n("tr",[n("td",[t._v("cryptography")]),t._v(" "),n("td",[n("a",{attrs:{href:"https://www.openssl.org/",target:"_blank",rel:"noopener noreferrer"}},[t._v("OpenSSL"),n("OutboundLink")],1)]),t._v(" "),n("td",[t._v("1.1.1.k")])]),t._v(" "),n("tr",[n("td",[t._v("Encoding")]),t._v(" "),n("td",[n("a",{attrs:{href:"https://gitlab.freedesktop.org/uchardet/uchardet",target:"_blank",rel:"noopener noreferrer"}},[t._v("uchardet"),n("OutboundLink")],1)]),t._v(" "),n("td",[t._v("0.0.7")])]),t._v(" "),n("tr",[n("td",[t._v("Plugin")]),t._v(" "),n("td",[n("a",{attrs:{href:"https://gitlab.gnome.org/GNOME/libpeas",target:"_blank",rel:"noopener noreferrer"}},[t._v("libpeas"),n("OutboundLink")],1)]),t._v(" "),n("td",[t._v("1.30.0")])]),t._v(" "),n("tr",[n("td",[t._v("File format")]),t._v(" "),n("td",[n("a",{attrs:{href:"https://github.com/libarchive/libarchive",target:"_blank",rel:"noopener noreferrer"}},[t._v("libarchive"),n("OutboundLink")],1)]),t._v(" "),n("td",[t._v("3.5.1")])]),t._v(" "),n("tr",[n("td",[t._v("HTTP")]),t._v(" "),n("td",[n("a",{attrs:{href:"https://gitlab.gnome.org/GNOME/libsoup",target:"_blank",rel:"noopener noreferrer"}},[t._v("libsoup"),n("OutboundLink")],1)]),t._v(" "),n("td",[t._v("2.72.0")])]),t._v(" "),n("tr",[n("td",[t._v("Template")]),t._v(" "),n("td",[n("a",{attrs:{href:"https://gitlab.gnome.org/GNOME/template-glib",target:"_blank",rel:"noopener noreferrer"}},[t._v("template-glib"),n("OutboundLink")],1)]),t._v(" "),n("td",[t._v("3.34.0")])])])]),t._v(" "),n("h2",{attrs:{id:"gtk4-upgrade-summary"}},[n("a",{staticClass:"header-anchor",attrs:{href:"#gtk4-upgrade-summary"}},[t._v("#")]),t._v(" GTK4 upgrade summary")]),t._v(" "),n("p",[t._v("To pass the compilation, Kangaroo source code had been refactored five rounds, every round found many compile issues")]),t._v(" "),n("table",[n("thead",[n("tr",[n("th",[t._v("Round")]),t._v(" "),n("th",[t._v("Action")]),t._v(" "),n("th",[t._v("Issues")])])]),t._v(" "),n("tbody",[n("tr",[n("td",[t._v("round 1")]),t._v(" "),n("td",[t._v("1. Fixed namespace issues"),n("br"),t._v("2. fixed missed API issues")]),t._v(" "),n("td",[t._v("400+")])]),t._v(" "),n("tr",[n("td",[t._v("Round 2")]),t._v(" "),n("td",[t._v("1. Fixed GtkContainer API issues"),n("br"),t._v("2. Fixed GtkBin widget issues")]),t._v(" "),n("td",[t._v("1720+")])]),t._v(" "),n("tr",[n("td",[t._v("Round 3")]),t._v(" "),n("td",[t._v("1. Fixed clipboard API issues"),n("br"),t._v("2. Fixed mouse and keyboard signal issues")]),t._v(" "),n("td",[t._v("1454")])]),t._v(" "),n("tr",[n("td",[t._v("Round 4")]),t._v(" "),n("td",[t._v("1. Fixed GtkBuilder issues"),n("br"),t._v("2. Fixed UI module issues")]),t._v(" "),n("td",[t._v("800+")])]),t._v(" "),n("tr",[n("td",[t._v("Round 5")]),t._v(" "),n("td",[t._v("Fixed the final flag issues:"),n("br"),t._v("GtkPaned"),n("br"),t._v("GtkScrolledWindow"),n("br"),t._v("GtkStack"),n("br"),t._v("GtkOverlay"),n("br"),t._v("GtkNotebook"),n("br"),t._v("GtkTreeViewColumn"),n("br"),t._v("Gtk.ComboBoxText"),n("br"),t._v("Gtk.Assistant")]),t._v(" "),n("td",[t._v("8 widget class issues"),n("br"),t._v("about 1430+ issues")])])])]),t._v(" "),n("p",[t._v("Finally, the Kangaroo app GTK4 version had been compiled on 10/29/2021, then executed ASAP, a wired UI with many missed features shown on my face, Now, I know it's a big step to upgrade to the GTK4 version, and much more effort need to spend on it.")]),t._v(" "),n("div",[n("script2",{attrs:{type:"text/javascript",async:"true",src:"https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"}}),t._v(" "),n("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),t._v(" "),n("script2",{attrs:{type:"text/javascript"}},[t._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),t._v(" "),n("h2",{attrs:{id:"technical-analysis-and-solution"}},[n("a",{staticClass:"header-anchor",attrs:{href:"#technical-analysis-and-solution"}},[t._v("#")]),t._v(" Technical analysis and solution")]),t._v(" "),n("p",[t._v("Now we will share some important trouble and its solution, help newbies fix them quickly.")]),t._v(" "),n("h3",{attrs:{id:"_1-container-api"}},[n("a",{staticClass:"header-anchor",attrs:{href:"#_1-container-api"}},[t._v("#")]),t._v(" 1. Container API")]),t._v(" "),n("p",[t._v("In the GTK4, GtkContainer class has been removed, all widgets can hold child widgets, its API replaced with a common APIs: prepend/append/insert/remove:")]),t._v(" "),n("table",[n("thead",[n("tr",[n("th",[t._v("GTK3 API")]),t._v(" "),n("th",[t._v("GTK4 API")]),t._v(" "),n("th",[t._v("Recommend for upgrade")])])]),t._v(" "),n("tbody",[n("tr",[n("td",[t._v("add"),n("br"),t._v("pack_start")]),t._v(" "),n("td",[t._v("prepend"),n("br"),t._v(" append")]),t._v(" "),n("td",[t._v("append")])]),t._v(" "),n("tr",[n("td",[t._v("pack_end")]),t._v(" "),n("td",[t._v("insert_child_after")]),t._v(" "),n("td",[t._v("append")])]),t._v(" "),n("tr",[n("td",[t._v("reorder_child")]),t._v(" "),n("td",[t._v("reorder_child_after")]),t._v(" "),n("td",[t._v("reorder_child_after")])]),t._v(" "),n("tr",[n("td",[t._v("foreach/get_children")]),t._v(" "),n("td",[t._v("get_first_child"),n("br"),t._v("get_next_sibling"),n("br"),t._v("get_prev_sibling"),n("br"),t._v("get_last_child")]),t._v(" "),n("td")])])]),t._v(" "),n("h3",{attrs:{id:"_2-bin-widget-api"}},[n("a",{staticClass:"header-anchor",attrs:{href:"#_2-bin-widget-api"}},[t._v("#")]),t._v(" 2. Bin widget API")]),t._v(" "),n("p",[t._v("In the GTK4, GtkBin class has been removed, all widgets can hold child widgets, if the widget hold one child, so it has a child property to reference that child widget.")]),t._v(" "),n("h3",{attrs:{id:"_3-clipboard-api"}},[n("a",{staticClass:"header-anchor",attrs:{href:"#_3-clipboard-api"}},[t._v("#")]),t._v(" 3. Clipboard API")]),t._v(" "),n("p",[t._v("In the GTK3, we could use the follow code to get the image from clipboard:")]),t._v(" "),n("div",{staticClass:"language-vala extra-class"},[n("pre",{pre:!0,attrs:{class:"language-vala"}},[n("code",[n("span",{pre:!0,attrs:{class:"token class-name"}},[t._v("Gtk"),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("Clipboard")]),t._v(" clipboard "),n("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" Gtk"),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("Clipboard"),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),n("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("get")]),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("Gdk"),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),n("span",{pre:!0,attrs:{class:"token constant"}},[t._v("SELECTION_CLIPBOARD")]),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(";")]),t._v("\n"),n("span",{pre:!0,attrs:{class:"token class-name"}},[t._v("Pixbuf")]),n("span",{pre:!0,attrs:{class:"token operator"}},[t._v("?")]),t._v(" pixbuf "),n("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" clipboard"),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),n("span",{pre:!0,attrs:{class:"token function"}},[t._v("wait_for_image")]),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(";")]),t._v("\n")])])]),n("p",[t._v("GTK4's equivalent code as follow:")]),t._v(" "),n("div",{staticClass:"language-vala extra-class"},[n("pre",{pre:!0,attrs:{class:"language-vala"}},[n("code",[n("span",{pre:!0,attrs:{class:"token class-name"}},[t._v("Pixbuf")]),n("span",{pre:!0,attrs:{class:"token operator"}},[t._v("?")]),t._v(" pixbuf "),n("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" "),n("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("null")]),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(";")]),t._v("\n"),n("span",{pre:!0,attrs:{class:"token class-name"}},[t._v("Value")]),t._v(" "),n("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("value")]),t._v(" "),n("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" GLib"),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),n("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("Value")]),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),n("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("typeof")]),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("Pixbuf"),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(";")]),t._v("\n"),n("span",{pre:!0,attrs:{class:"token class-name"}},[t._v("Gdk"),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("Clipboard")]),t._v(" clipboard "),n("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" "),n("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("this")]),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),n("span",{pre:!0,attrs:{class:"token function"}},[t._v("get_clipboard")]),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(";")]),t._v("\n"),n("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("if")]),t._v(" "),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("clipboard"),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("content"),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),n("span",{pre:!0,attrs:{class:"token function"}},[t._v("get_value")]),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),n("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("ref")]),t._v(" "),n("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("value")]),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v("\n pixbuf "),n("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" "),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("Pixbuf"),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),n("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("value")]),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),n("span",{pre:!0,attrs:{class:"token function"}},[t._v("get_boxed")]),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(";")]),t._v("\n"),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),t._v("\n")])])]),n("div",[n("script2",{attrs:{type:"text/javascript",async:"true",src:"https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"}}),t._v(" "),n("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),t._v(" "),n("script2",{attrs:{type:"text/javascript"}},[t._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),t._v(" "),n("h3",{attrs:{id:"_4-user-inputs-mouse-and-key"}},[n("a",{staticClass:"header-anchor",attrs:{href:"#_4-user-inputs-mouse-and-key"}},[t._v("#")]),t._v(" 4. User inputs(mouse and key)")]),t._v(" "),n("p",[t._v("Some useful Vala code snippets for upgrading mouse and key input signals in GTK3:")]),t._v(" "),n("div",{staticClass:"language-vala extra-class"},[n("pre",{pre:!0,attrs:{class:"language-vala"}},[n("code",[t._v("treeview"),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("key_press_event"),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),n("span",{pre:!0,attrs:{class:"token function"}},[t._v("connect")]),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("key_press_handler"),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(";")]),t._v("\ntreeview"),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("key_release_event"),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),n("span",{pre:!0,attrs:{class:"token function"}},[t._v("connect")]),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("key_release_handler"),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(";")]),t._v("\n\ntreeview"),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("button_press_event"),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),n("span",{pre:!0,attrs:{class:"token function"}},[t._v("connect")]),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("button_press_handler"),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(";")]),t._v("\ntreeview"),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("button_release_event"),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),n("span",{pre:!0,attrs:{class:"token function"}},[t._v("connect")]),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("button_release_handler"),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(";")]),t._v("\n\ntreeview"),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("motion_notify_event"),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),n("span",{pre:!0,attrs:{class:"token function"}},[t._v("connect")]),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("mouse_move_handler"),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(";")]),t._v("\ntreeview"),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("enter_notify_event"),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),n("span",{pre:!0,attrs:{class:"token function"}},[t._v("connect")]),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("mouse_enter_handler"),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(";")]),t._v("\ntreeview"),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("leave_notify_event"),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),n("span",{pre:!0,attrs:{class:"token function"}},[t._v("connect")]),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("mouse_leave_handler"),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(";")]),t._v("\n\ntreeview"),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("scroll_event"),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),n("span",{pre:!0,attrs:{class:"token function"}},[t._v("connect")]),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("scroll_event_handler"),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(";")]),t._v("\n\ntreeview"),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("focus_in_event"),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),n("span",{pre:!0,attrs:{class:"token function"}},[t._v("connect")]),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("focus_enter_event_handler"),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(";")]),t._v("\ntreeview"),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("focus_out_event"),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),n("span",{pre:!0,attrs:{class:"token function"}},[t._v("connect")]),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("focus_leave_event_handler"),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(";")]),t._v("\n")])])]),n("div",{staticClass:"language-vala extra-class"},[n("pre",{pre:!0,attrs:{class:"language-vala"}},[n("code",[n("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("var")]),t._v(" key_input_event "),n("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" "),n("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("new")]),t._v(" "),n("span",{pre:!0,attrs:{class:"token class-name"}},[t._v("Gtk"),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("EventControllerKey")]),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(";")]),t._v("\nkey_input_event"),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("key_pressed"),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),n("span",{pre:!0,attrs:{class:"token function"}},[t._v("connect")]),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("key_press_handler"),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(";")]),t._v("\nkey_input_event"),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("key_released"),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),n("span",{pre:!0,attrs:{class:"token function"}},[t._v("connect")]),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("key_release_handler"),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(";")]),t._v("\ntreeview"),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),n("span",{pre:!0,attrs:{class:"token function"}},[t._v("add_controller")]),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("key_input_event"),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(";")]),t._v("\n\n"),n("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("var")]),t._v(" mouse_button_event "),n("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" "),n("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("new")]),t._v(" "),n("span",{pre:!0,attrs:{class:"token class-name"}},[t._v("Gtk"),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("GestureClick")]),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(";")]),t._v("\nmouse_button_event"),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("pressed"),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),n("span",{pre:!0,attrs:{class:"token function"}},[t._v("connect")]),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("button_press_handler"),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(";")]),t._v("\nmouse_button_event"),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("released"),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),n("span",{pre:!0,attrs:{class:"token function"}},[t._v("connect")]),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("button_release_handler"),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(";")]),t._v("\ntreeview"),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),n("span",{pre:!0,attrs:{class:"token function"}},[t._v("add_controller")]),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("mouse_button_event"),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(";")]),t._v("\n\n"),n("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("var")]),t._v(" mouse_motion_event "),n("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" "),n("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("new")]),t._v(" "),n("span",{pre:!0,attrs:{class:"token class-name"}},[t._v("Gtk"),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("EventControllerMotion")]),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(";")]),t._v("\nmouse_motion_event"),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("motion"),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),n("span",{pre:!0,attrs:{class:"token function"}},[t._v("connect")]),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("mouse_move_handler"),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(";")]),t._v("\nmouse_motion_event"),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("enter"),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),n("span",{pre:!0,attrs:{class:"token function"}},[t._v("connect")]),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("mouse_enter_handler"),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(";")]),t._v("\nmouse_motion_event"),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("leave"),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),n("span",{pre:!0,attrs:{class:"token function"}},[t._v("connect")]),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("mouse_leave_handler"),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(";")]),t._v("\ntreeview"),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),n("span",{pre:!0,attrs:{class:"token function"}},[t._v("add_controller")]),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("mouse_motion_event"),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(";")]),t._v("\n\n"),n("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("var")]),t._v(" view_scroll_event "),n("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" "),n("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("new")]),t._v(" "),n("span",{pre:!0,attrs:{class:"token class-name"}},[t._v("Gtk"),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("EventControllerScroll")]),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(";")]),t._v("\nview_scroll_event"),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("scroll"),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),n("span",{pre:!0,attrs:{class:"token function"}},[t._v("connect")]),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("scroll_event_handler"),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(";")]),t._v("\ntreeview"),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),n("span",{pre:!0,attrs:{class:"token function"}},[t._v("add_controller")]),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("view_scroll_event"),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(";")]),t._v("\n\n"),n("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("var")]),t._v(" view_focus_event "),n("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" "),n("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("new")]),t._v(" "),n("span",{pre:!0,attrs:{class:"token class-name"}},[t._v("Gtk"),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("EventControllerFocus")]),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(";")]),t._v("\nview_focus_event"),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("enter"),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),n("span",{pre:!0,attrs:{class:"token function"}},[t._v("connect")]),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("focus_enter_event_handler"),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(";")]),t._v("\nview_focus_event"),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),t._v("leave"),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),n("span",{pre:!0,attrs:{class:"token function"}},[t._v("connect")]),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("focus_leave_event_handler"),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(";")]),t._v("\ntreeview"),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(".")]),n("span",{pre:!0,attrs:{class:"token function"}},[t._v("add_controller")]),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),t._v("view_focus_event"),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(";")]),t._v("\n")])])]),n("h3",{attrs:{id:"_5-gtkbuilder-ui-files"}},[n("a",{staticClass:"header-anchor",attrs:{href:"#_5-gtkbuilder-ui-files"}},[t._v("#")]),t._v(" 5. GtkBuilder UI files")]),t._v(" "),n("p",[t._v("the follow command could help you upgrade you UI file in-place:")]),t._v(" "),n("div",{staticClass:"language-bash extra-class"},[n("pre",{pre:!0,attrs:{class:"language-bash"}},[n("code",[t._v("gtk-builder-tool simplify --3to4 --replace "),n("span",{pre:!0,attrs:{class:"token operator"}},[t._v("<")]),t._v("filename.ui"),n("span",{pre:!0,attrs:{class:"token operator"}},[t._v(">")]),t._v("\n")])])]),n("p",[t._v("you could try the following command if you want to just preview the content of the upgraded UI file, then the command will show content on screen:")]),t._v(" "),n("div",{staticClass:"language-bash extra-class"},[n("pre",{pre:!0,attrs:{class:"language-bash"}},[n("code",[t._v("gtk-builder-tool simplify --3to4 "),n("span",{pre:!0,attrs:{class:"token operator"}},[t._v("<")]),t._v("filename.ui"),n("span",{pre:!0,attrs:{class:"token operator"}},[t._v(">")]),t._v("\n")])])])])}),[],!1,null,null,null);a.default=e.exports}}]); \ No newline at end of file diff --git a/assets/js/29.c0029f8b.js b/assets/js/29.c0029f8b.js new file mode 100644 index 000000000..dcd1918b7 --- /dev/null +++ b/assets/js/29.c0029f8b.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[29],{608:function(e,t,s){"use strict";s.r(t);var n=s(13),o=Object(n.a)({},(function(){var e=this,t=e.$createElement,s=e._self._c||t;return s("ContentSlotsDistributor",{attrs:{"slot-key":e.$parent.slotKey}},[s("h1",{attrs:{id:"kangaroo-secure-connection-ssl-or-ssh-solution"}},[s("a",{staticClass:"header-anchor",attrs:{href:"#kangaroo-secure-connection-ssl-or-ssh-solution"}},[e._v("#")]),e._v(" Kangaroo Secure connection (SSL or SSH) solution")]),e._v(" "),s("h2",{attrs:{id:"connection-via-secure-sockets-layer-ssl"}},[s("a",{staticClass:"header-anchor",attrs:{href:"#connection-via-secure-sockets-layer-ssl"}},[e._v("#")]),e._v(" Connection via secure sockets layer (SSL)")]),e._v(" "),s("p",[e._v("Sometimes, database server use secure connection to keep security, so client must connect to database server by secure socket, Kangaroo integrated with")]),e._v(" "),s("h2",{attrs:{id:"connection-over-secure-shell-tunnel-ssh"}},[s("a",{staticClass:"header-anchor",attrs:{href:"#connection-over-secure-shell-tunnel-ssh"}},[e._v("#")]),e._v(" Connection over secure shell tunnel(SSH)")]),e._v(" "),s("p",[s("strong",[e._v("Windows")]),e._v("\nhttps://gist.github.com/siggibjarna/0da65bd0d3f2b82d3752\nKangaroo connnect to database over secure shell tunnel via "),s("a",{attrs:{href:"https://www.chiark.greenend.org.uk/~sgtatham/putty/latest.html",target:"_blank",rel:"noopener noreferrer"}},[e._v("plink.exe"),s("OutboundLink")],1),e._v(" on windows, examples: HeidiSQL")]),e._v(" "),s("p",[s("strong",[e._v("Linux")])]),e._v(" "),s("p",[s("strong",[e._v("MacOS")])])])}),[],!1,null,null,null);t.default=o.exports}}]); \ No newline at end of file diff --git a/assets/js/3.7b2528eb.js b/assets/js/3.7b2528eb.js new file mode 100644 index 000000000..08311e5c3 --- /dev/null +++ b/assets/js/3.7b2528eb.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[3],{483:function(t,e,n){"use strict";n.d(e,"d",(function(){return i})),n.d(e,"a",(function(){return a})),n.d(e,"i",(function(){return s})),n.d(e,"f",(function(){return u})),n.d(e,"g",(function(){return l})),n.d(e,"h",(function(){return c})),n.d(e,"b",(function(){return h})),n.d(e,"e",(function(){return p})),n.d(e,"k",(function(){return f})),n.d(e,"l",(function(){return d})),n.d(e,"c",(function(){return v})),n.d(e,"j",(function(){return m}));n(16),n(25),n(486),n(60),n(153),n(152),n(59),n(149),n(5),n(150),n(47),n(61),n(106);var i=/#.*$/,r=/\.(md|html)$/,a=/\/$/,s=/^[a-z]+:/i;function o(t){return decodeURI(t).replace(i,"").replace(r,"")}function u(t){return s.test(t)}function l(t){return/^mailto:/.test(t)}function c(t){return/^tel:/.test(t)}function h(t){if(u(t))return t;var e=t.match(i),n=e?e[0]:"",r=o(t);return a.test(r)?t:r+".html"+n}function p(t,e){var n=decodeURIComponent(t.hash),r=function(t){var e=t.match(i);if(e)return e[0]}(e);return(!r||n===r)&&o(t.path)===o(e)}function f(t,e,n){if(u(e))return{type:"external",path:e};n&&(e=function(t,e,n){var i=t.charAt(0);if("/"===i)return t;if("?"===i||"#"===i)return e+t;var r=e.split("/");n&&r[r.length-1]||r.pop();for(var a=t.replace(/^\//,"").split("/"),s=0;s3&&void 0!==arguments[3]?arguments[3]:1;if("string"==typeof e)return f(n,e,i);if(Array.isArray(e))return Object.assign(f(n,e[0],i),{title:e[1]});var a=e.children||[];return 0===a.length&&e.path?Object.assign(f(n,e.path,i),{title:e.title}):{type:"group",path:e.path,title:e.title,sidebarDepth:e.sidebarDepth,initialOpenGroupIndex:e.initialOpenGroupIndex,children:a.map((function(e){return t(e,n,i,r+1)})),collapsable:!1!==e.collapsable}}(t,r,l)})):[]}return[]}function g(t){var e=v(t.headers||[]);return[{type:"group",collapsable:!1,title:t.title,path:null,children:e.map((function(e){return{type:"auto",title:e.title,basePath:t.path,path:t.path+"#"+e.slug,children:e.children||[]}}))}]}function v(t){var e;return(t=t.map((function(t){return Object.assign({},t)}))).forEach((function(t){2===t.level?e=t:e&&(e.children||(e.children=[])).push(t)})),t.filter((function(t){return 2===t.level}))}function m(t){return Object.assign(t,{type:t.items&&t.items.length?"links":"link"})}},486:function(t,e,n){"use strict";var i=n(12),r=n(159),a=n(9),s=n(77),o=n(17),u=n(33),l=n(62),c=n(160),h=n(161);r("match",(function(t,e,n){return[function(e){var n=u(this),r=null==e?void 0:l(e,t);return r?i(r,e,n):new RegExp(e)[t](o(n))},function(t){var i=a(this),r=o(t),u=n(e,i,r);if(u.done)return u.value;if(!i.global)return h(i,r);var l=i.unicode;i.lastIndex=0;for(var p,f=[],d=0;null!==(p=h(i,r));){var g=o(p[0]);f[d]=g,""===g&&(i.lastIndex=c(r,s(i.lastIndex),l)),d++}return 0===d?null:f}]}))},489:function(t,e,n){},490:function(t,e,n){"use strict";var i=n(2),r=n(253).trim;i({target:"String",proto:!0,forced:n(521)("trim")},{trim:function(){return r(this)}})},491:function(t,e,n){var i=n(8),r=n(0),a=n(1),s=n(80),o=n(107),u=n(27),l=n(11).f,c=n(63).f,h=n(35),p=n(156),f=n(17),d=n(158),g=n(151),v=n(14),m=n(3),b=n(10),k=n(42).enforce,_=n(154),x=n(6),C=n(252),y=n(256),$=x("match"),L=r.RegExp,w=L.prototype,O=r.SyntaxError,S=a(d),I=a(w.exec),E=a("".charAt),j=a("".replace),T=a("".indexOf),N=a("".slice),A=/^\?<[^\s\d!#%&*+<=>@^][^\s!#%&*+<=>@^]*>/,P=/a/g,R=/a/g,D=new L(P)!==P,U=g.MISSED_STICKY,H=g.UNSUPPORTED_Y,W=i&&(!D||U||C||y||m((function(){return R[$]=!1,L(P)!=P||L(R)==R||"/a/i"!=L(P,"i")})));if(s("RegExp",W)){for(var G=function(t,e){var n,i,r,a,s,l,c=h(w,this),d=p(t),g=void 0===e,v=[],m=t;if(!c&&d&&g&&t.constructor===G)return t;if((d||h(w,t))&&(t=t.source,g&&(e="flags"in m?m.flags:S(m))),t=void 0===t?"":f(t),e=void 0===e?"":f(e),m=t,C&&"dotAll"in P&&(i=!!e&&T(e,"s")>-1)&&(e=j(e,/s/g,"")),n=e,U&&"sticky"in P&&(r=!!e&&T(e,"y")>-1)&&H&&(e=j(e,/y/g,"")),y&&(t=(a=function(t){for(var e,n=t.length,i=0,r="",a=[],s={},o=!1,u=!1,l=0,c="";i<=n;i++){if("\\"===(e=E(t,i)))e+=E(t,++i);else if("]"===e)o=!1;else if(!o)switch(!0){case"["===e:o=!0;break;case"("===e:I(A,N(t,i+1))&&(i+=2,u=!0),r+=e,l++;continue;case">"===e&&u:if(""===c||b(s,c))throw new O("Invalid capture group name");s[c]=!0,a[a.length]=[c,l],u=!1,c="";continue}u?c+=e:r+=e}return[r,a]}(t))[0],v=a[1]),s=o(L(t,e),c?this:w,G),(i||r||v.length)&&(l=k(s),i&&(l.dotAll=!0,l.raw=G(function(t){for(var e,n=t.length,i=0,r="",a=!1;i<=n;i++)"\\"!==(e=E(t,i))?a||"."!==e?("["===e?a=!0:"]"===e&&(a=!1),r+=e):r+="[\\s\\S]":r+=e+E(t,++i);return r}(t),n)),r&&(l.sticky=!0),v.length&&(l.groups=v)),t!==m)try{u(s,"source",""===m?"(?:)":m)}catch(t){}return s},B=function(t){t in G||l(G,t,{configurable:!0,get:function(){return L[t]},set:function(e){L[t]=e}})},M=c(L),q=0;M.length>q;)B(M[q++]);w.constructor=G,G.prototype=w,v(r,"RegExp",G)}_("RegExp")},492:function(t,e,n){var i=n(0),r=n(8),a=n(252),s=n(34),o=n(11).f,u=n(42).get,l=RegExp.prototype,c=i.TypeError;r&&a&&o(l,"dotAll",{configurable:!0,get:function(){if(this!==l){if("RegExp"===s(this))return!!u(this).dotAll;throw c("Incompatible receiver, RegExp required")}}})},493:function(t,e,n){var i=n(0),r=n(8),a=n(151).MISSED_STICKY,s=n(34),o=n(11).f,u=n(42).get,l=RegExp.prototype,c=i.TypeError;r&&a&&o(l,"sticky",{configurable:!0,get:function(){if(this!==l){if("RegExp"===s(this))return!!u(this).sticky;throw c("Incompatible receiver, RegExp required")}}})},494:function(t,e,n){},495:function(t,e,n){},496:function(t,e,n){},497:function(t,e,n){},498:function(t,e,n){},499:function(t,e,n){},500:function(t,e){t.exports=function(t){return null==t}},501:function(t,e,n){},502:function(t,e,n){},503:function(t,e,n){},504:function(t,e,n){},505:function(t,e,n){},506:function(t,e,n){},513:function(t,e,n){"use strict";n.r(e);n(105),n(5);var i=n(483),r={name:"SidebarGroup",components:{DropdownTransition:n(514).a},props:["item","open","collapsable","depth"],beforeCreate:function(){this.$options.components.SidebarLinks=n(513).default},methods:{isActive:i.e}},a=(n(533),n(13)),s=Object(a.a)(r,(function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("section",{staticClass:"sidebar-group",class:[{collapsable:t.collapsable,"is-sub-group":0!==t.depth},"depth-"+t.depth]},[t.item.path?n("RouterLink",{staticClass:"sidebar-heading clickable",class:{open:t.open,active:t.isActive(t.$route,t.item.path)},attrs:{to:t.item.path},nativeOn:{click:function(e){return t.$emit("toggle")}}},[n("span",[t._v(t._s(t.item.title))]),t._v(" "),t.collapsable?n("span",{staticClass:"arrow",class:t.open?"down":"right"}):t._e()]):n("p",{staticClass:"sidebar-heading",class:{open:t.open},on:{click:function(e){return t.$emit("toggle")}}},[n("span",[t._v(t._s(t.item.title))]),t._v(" "),t.collapsable?n("span",{staticClass:"arrow",class:t.open?"down":"right"}):t._e()]),t._v(" "),n("DropdownTransition",[t.open||!t.collapsable?n("SidebarLinks",{staticClass:"sidebar-group-items",attrs:{items:t.item.children,"sidebar-depth":t.item.sidebarDepth,"initial-open-group-index":t.item.initialOpenGroupIndex,depth:t.depth+1}}):t._e()],1)],1)}),[],!1,null,null,null).exports;n(259),n(16),n(60),n(59);function o(t,e,n,i,r){var a={props:{to:e,activeClass:"",exactActiveClass:""},class:{active:i,"sidebar-link":!0}};return r>2&&(a.style={"padding-left":r+"rem"}),t("RouterLink",a,n)}function u(t,e,n,r,a){var s=arguments.length>5&&void 0!==arguments[5]?arguments[5]:1;return!e||s>a?null:t("ul",{class:"sidebar-sub-headers"},e.map((function(e){var l=Object(i.e)(r,n+"#"+e.slug);return t("li",{class:"sidebar-sub-header"},[o(t,n+"#"+e.slug,e.title,l,e.level-1),u(t,e.children,n,r,a,s+1)])})))}var l={functional:!0,props:["item","sidebarDepth"],render:function(t,e){var n=e.parent,r=n.$page,a=(n.$site,n.$route),s=n.$themeConfig,l=n.$themeLocaleConfig,c=e.props,h=c.item,p=c.sidebarDepth,f=Object(i.e)(a,h.path),d="auto"===h.type?f||h.children.some((function(t){return Object(i.e)(a,h.basePath+"#"+t.slug)})):f,g="external"===h.type?function(t,e,n){return t("a",{attrs:{href:e,target:"_blank",rel:"noopener noreferrer"},class:{"sidebar-link":!0}},[n,t("OutboundLink")])}(t,h.path,h.title||h.path):o(t,h.path,h.title||h.path,d),v=[r.frontmatter.sidebarDepth,p,l.sidebarDepth,s.sidebarDepth,1].find((function(t){return void 0!==t})),m=l.displayAllHeaders||s.displayAllHeaders;return"auto"===h.type?[g,u(t,h.children,h.basePath,a,v)]:(d||m)&&h.headers&&!i.d.test(h.path)?[g,u(t,Object(i.c)(h.headers),h.path,a,v)]:g}};n(534);function c(t,e){if("group"===e.type){var n=e.path&&Object(i.e)(t,e.path),r=e.children.some((function(e){return"group"===e.type?c(t,e):"page"===e.type&&Object(i.e)(t,e.path)}));return n||r}return!1}var h={name:"SidebarLinks",components:{SidebarGroup:s,SidebarLink:Object(a.a)(l,void 0,void 0,!1,null,null,null).exports},props:["items","depth","sidebarDepth","initialOpenGroupIndex"],data:function(){return{openGroupIndex:this.initialOpenGroupIndex||0}},watch:{$route:function(){this.refreshIndex()}},created:function(){this.refreshIndex()},methods:{refreshIndex:function(){var t=function(t,e){for(var n=0;n-1&&(this.openGroupIndex=t)},toggleGroup:function(t){this.openGroupIndex=t===this.openGroupIndex?-1:t},isActive:function(t){return Object(i.e)(this.$route,t.regularPath)}}},p=Object(a.a)(h,(function(){var t=this,e=t.$createElement,n=t._self._c||e;return t.items.length?n("ul",{staticClass:"sidebar-links"},t._l(t.items,(function(e,i){return n("li",{key:i},["group"===e.type?n("SidebarGroup",{attrs:{item:e,open:i===t.openGroupIndex,collapsable:e.collapsable||e.collapsible,depth:t.depth},on:{toggle:function(e){return t.toggleGroup(i)}}}):n("SidebarLink",{attrs:{"sidebar-depth":t.sidebarDepth,item:e}})],1)})),0):t._e()}),[],!1,null,null,null);e.default=p.exports},514:function(t,e,n){"use strict";var i={name:"DropdownTransition",methods:{setHeight:function(t){t.style.height=t.scrollHeight+"px"},unsetHeight:function(t){t.style.height=""}}},r=(n(525),n(13)),a=Object(r.a)(i,(function(){var t=this.$createElement;return(this._self._c||t)("transition",{attrs:{name:"dropdown"},on:{enter:this.setHeight,"after-enter":this.unsetHeight,"before-leave":this.setHeight}},[this._t("default")],2)}),[],!1,null,null,null);e.a=a.exports},515:function(t,e,n){"use strict";var i=n(2),r=n(516);i({target:"String",proto:!0,forced:n(517)("link")},{link:function(t){return r(this,"a","href",t)}})},516:function(t,e,n){var i=n(1),r=n(33),a=n(17),s=/"/g,o=i("".replace);t.exports=function(t,e,n,i){var u=a(r(t)),l="<"+e;return""!==n&&(l+=" "+n+'="'+o(a(i),s,""")+'"'),l+">"+u+""}},517:function(t,e,n){var i=n(3);t.exports=function(t){return i((function(){var e=""[t]('"');return e!==e.toLowerCase()||e.split('"').length>3}))}},518:function(t,e,n){"use strict";n(489)},519:function(t,e,n){var i=n(2),r=n(520);i({global:!0,forced:parseInt!=r},{parseInt:r})},520:function(t,e,n){var i=n(0),r=n(3),a=n(1),s=n(17),o=n(253).trim,u=n(254),l=i.parseInt,c=i.Symbol,h=c&&c.iterator,p=/^[+-]?0x/i,f=a(p.exec),d=8!==l(u+"08")||22!==l(u+"0x16")||h&&!r((function(){l(Object(h))}));t.exports=d?function(t,e){var n=o(s(t));return l(n,e>>>0||(f(p,n)?16:10))}:l},521:function(t,e,n){var i=n(79).PROPER,r=n(3),a=n(254);t.exports=function(t){return r((function(){return!!a[t]()||"​…᠎"!=="​…᠎"[t]()||i&&a[t].name!==t}))}},522:function(t,e,n){"use strict";var i,r=n(2),a=n(1),s=n(36).f,o=n(77),u=n(17),l=n(155),c=n(33),h=n(157),p=n(26),f=a("".endsWith),d=a("".slice),g=Math.min,v=h("endsWith");r({target:"String",proto:!0,forced:!!(p||v||(i=s(String.prototype,"endsWith"),!i||i.writable))&&!v},{endsWith:function(t){var e=u(c(this));l(t);var n=arguments.length>1?arguments[1]:void 0,i=e.length,r=void 0===n?i:g(o(n),i),a=u(t);return f?f(e,a,r):d(e,r-a.length,r)===a}})},523:function(t,e,n){"use strict";n(494)},524:function(t,e,n){"use strict";n(495)},525:function(t,e,n){"use strict";n(496)},526:function(t,e,n){"use strict";n(497)},527:function(t,e,n){"use strict";n(498)},528:function(t,e,n){"use strict";n(499)},529:function(t,e,n){"use strict";n(501)},530:function(t,e,n){var i=n(64),r=n(28),a=n(48);t.exports=function(t){return"string"==typeof t||!r(t)&&a(t)&&"[object String]"==i(t)}},531:function(t,e,n){"use strict";n(502)},532:function(t,e,n){"use strict";n(503)},533:function(t,e,n){"use strict";n(504)},534:function(t,e,n){"use strict";n(505)},535:function(t,e,n){"use strict";n(506)},596:function(t,e,n){"use strict";n.r(e);n(515),n(105),n(5),n(78);var i=n(483),r={name:"NavLink",props:{item:{required:!0}},computed:{link:function(){return Object(i.b)(this.item.link)},exact:function(){var t=this;return this.$site.locales?Object.keys(this.$site.locales).some((function(e){return e===t.link})):"/"===this.link},isNonHttpURI:function(){return Object(i.g)(this.link)||Object(i.h)(this.link)},isBlankTarget:function(){return"_blank"===this.target},isInternal:function(){return!Object(i.f)(this.link)&&!this.isBlankTarget},target:function(){return this.isNonHttpURI?null:this.item.target?this.item.target:Object(i.f)(this.link)?"_blank":""},rel:function(){return this.isNonHttpURI||!1===this.item.rel?null:this.item.rel?this.item.rel:this.isBlankTarget?"noopener noreferrer":null}},methods:{focusoutAction:function(){this.$emit("focusout")}}},a=n(13),s=Object(a.a)(r,(function(){var t=this,e=t.$createElement,n=t._self._c||e;return t.isInternal?n("RouterLink",{staticClass:"nav-link",attrs:{to:t.link,exact:t.exact},nativeOn:{focusout:function(e){return t.focusoutAction.apply(null,arguments)}}},[t._v("\n "+t._s(t.item.text)+"\n")]):n("a",{staticClass:"nav-link external",attrs:{href:t.link,target:t.target,rel:t.rel},on:{focusout:t.focusoutAction}},[t._v("\n "+t._s(t.item.text)+"\n "),t.isBlankTarget?n("OutboundLink"):t._e()],1)}),[],!1,null,null,null).exports,o={name:"Home",components:{NavLink:s},computed:{data:function(){return this.$page.frontmatter},actionLink:function(){return{link:this.data.actionLink,text:this.data.actionText}}}},u=(n(518),Object(a.a)(o,(function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("main",{staticClass:"home",attrs:{"aria-labelledby":null!==t.data.heroText?"main-title":null}},[n("header",{staticClass:"hero"},[t.data.heroImage?n("img",{attrs:{src:t.$withBase(t.data.heroImage),alt:t.data.heroAlt||"hero"}}):t._e(),t._v(" "),null!==t.data.heroText?n("h1",{attrs:{id:"main-title"}},[t._v("\n "+t._s(t.data.heroText||t.$title||"Hello")+"\n ")]):t._e(),t._v(" "),null!==t.data.tagline?n("p",{staticClass:"description"},[t._v("\n "+t._s(t.data.tagline||t.$description||"Welcome to your VuePress site")+"\n ")]):t._e(),t._v(" "),t.data.actionText&&t.data.actionLink?n("p",{staticClass:"action"},[n("NavLink",{staticClass:"action-button",attrs:{item:t.actionLink}})],1):t._e()]),t._v(" "),t.data.features&&t.data.features.length?n("div",{staticClass:"features"},t._l(t.data.features,(function(e,i){return n("div",{key:i,staticClass:"feature"},[n("h2",[t._v(t._s(e.title))]),t._v(" "),n("p",[t._v(t._s(e.details))])])})),0):t._e(),t._v(" "),n("Content",{staticClass:"theme-default-content custom"}),t._v(" "),t.data.footer?n("div",{staticClass:"footer"},[t._v("\n "+t._s(t.data.footer)+"\n ")]):n("Content",{staticClass:"footer",attrs:{"slot-key":"footer"}})],1)}),[],!1,null,null,null).exports),l=(n(519),n(490),n(106),n(61),n(47),n(16),n(486),n(81),n(108),n(152),n(25),n(491),n(492),n(493),n(255),n(59),n(153),n(60),n(522),n(257)),c=n.n(l),h=function(t,e){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:null,i=c()(e,"title","");return c()(e,"frontmatter.tags")&&(i+=" ".concat(e.frontmatter.tags.join(" "))),n&&(i+=" ".concat(n)),p(t,i)},p=function(t,e){var n=function(t){return t.replace(/[-/\\^$*+?.()|[\]{}]/g,"\\$&")},i=new RegExp("[^\0-]"),r=t.split(/\s+/g).map((function(t){return t.trim()})).filter((function(t){return!!t}));if(i.test(t))return r.some((function(t){return e.toLowerCase().indexOf(t)>-1}));var a=t.endsWith(" ");return new RegExp(r.map((function(t,e){return r.length!==e+1||a?"(?=.*\\b".concat(n(t),"\\b)"):"(?=.*\\b".concat(n(t),")")})).join("")+".+","gi").test(e)},f={name:"SearchBox",data:function(){return{query:"",focused:!1,focusIndex:0,placeholder:void 0}},computed:{showSuggestions:function(){return this.focused&&this.suggestions&&this.suggestions.length},suggestions:function(){var t=this.query.trim().toLowerCase();if(t){for(var e=this.$site.pages,n=this.$site.themeConfig.searchMaxSuggestions||5,i=this.$localePath,r=[],a=0;a=n);a++){var s=e[a];if(this.getPageLocalePath(s)===i&&this.isSearchable(s))if(h(t,s))r.push(s);else if(s.headers)for(var o=0;o=n);o++){var u=s.headers[o];u.title&&h(t,s,u.title)&&r.push(Object.assign({},s,{path:s.path+"#"+u.slug,header:u}))}}return r}},alignRight:function(){return(this.$site.themeConfig.nav||[]).length+(this.$site.repo?1:0)<=2}},mounted:function(){this.placeholder=this.$site.themeConfig.searchPlaceholder||"",document.addEventListener("keydown",this.onHotkey)},beforeDestroy:function(){document.removeEventListener("keydown",this.onHotkey)},methods:{getPageLocalePath:function(t){for(var e in this.$site.locales||{})if("/"!==e&&0===t.path.indexOf(e))return e;return"/"},isSearchable:function(t){var e=null;return null===e||(e=Array.isArray(e)?e:new Array(e)).filter((function(e){return t.path.match(e)})).length>0},onHotkey:function(t){t.srcElement===document.body&&["s","/"].includes(t.key)&&(this.$refs.input.focus(),t.preventDefault())},onUp:function(){this.showSuggestions&&(this.focusIndex>0?this.focusIndex--:this.focusIndex=this.suggestions.length-1)},onDown:function(){this.showSuggestions&&(this.focusIndex "+t._s(e.header.title))]):t._e()])])})),0):t._e()])}),[],!1,null,null,null).exports),g=(n(524),Object(a.a)({},(function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("div",{staticClass:"sidebar-button",on:{click:function(e){return t.$emit("toggle-sidebar")}}},[n("svg",{staticClass:"icon",attrs:{xmlns:"http://www.w3.org/2000/svg","aria-hidden":"true",role:"img",viewBox:"0 0 448 512"}},[n("path",{attrs:{fill:"currentColor",d:"M436 124H12c-6.627 0-12-5.373-12-12V80c0-6.627 5.373-12 12-12h424c6.627 0 12 5.373 12 12v32c0 6.627-5.373 12-12 12zm0 160H12c-6.627 0-12-5.373-12-12v-32c0-6.627 5.373-12 12-12h424c6.627 0 12 5.373 12 12v32c0 6.627-5.373 12-12 12zm0 160H12c-6.627 0-12-5.373-12-12v-32c0-6.627 5.373-12 12-12h424c6.627 0 12 5.373 12 12v32c0 6.627-5.373 12-12 12z"}})])])}),[],!1,null,null,null).exports),v=n(75),m=(n(162),n(514)),b=n(258),k=n.n(b),_={name:"DropdownLink",components:{NavLink:s,DropdownTransition:m.a},props:{item:{required:!0}},data:function(){return{open:!1}},computed:{dropdownAriaLabel:function(){return this.item.ariaLabel||this.item.text}},watch:{$route:function(){this.open=!1}},methods:{setOpen:function(t){this.open=t},isLastItemOfArray:function(t,e){return k()(e)===t},handleDropdown:function(){0===event.detail&&this.setOpen(!this.open)}}},x=(n(526),{name:"NavLinks",components:{NavLink:s,DropdownLink:Object(a.a)(_,(function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("div",{staticClass:"dropdown-wrapper",class:{open:t.open}},[n("button",{staticClass:"dropdown-title",attrs:{type:"button","aria-label":t.dropdownAriaLabel},on:{click:t.handleDropdown}},[n("span",{staticClass:"title"},[t._v(t._s(t.item.text))]),t._v(" "),n("span",{staticClass:"arrow down"})]),t._v(" "),n("button",{staticClass:"mobile-dropdown-title",attrs:{type:"button","aria-label":t.dropdownAriaLabel},on:{click:function(e){return t.setOpen(!t.open)}}},[n("span",{staticClass:"title"},[t._v(t._s(t.item.text))]),t._v(" "),n("span",{staticClass:"arrow",class:t.open?"down":"right"})]),t._v(" "),n("DropdownTransition",[n("ul",{directives:[{name:"show",rawName:"v-show",value:t.open,expression:"open"}],staticClass:"nav-dropdown"},t._l(t.item.items,(function(e,i){return n("li",{key:e.link||i,staticClass:"dropdown-item"},["links"===e.type?n("h4",[t._v("\n "+t._s(e.text)+"\n ")]):t._e(),t._v(" "),"links"===e.type?n("ul",{staticClass:"dropdown-subitem-wrapper"},t._l(e.items,(function(i){return n("li",{key:i.link,staticClass:"dropdown-subitem"},[n("NavLink",{attrs:{item:i},on:{focusout:function(n){t.isLastItemOfArray(i,e.items)&&t.isLastItemOfArray(e,t.item.items)&&t.setOpen(!1)}}})],1)})),0):n("NavLink",{attrs:{item:e},on:{focusout:function(n){t.isLastItemOfArray(e,t.item.items)&&t.setOpen(!1)}}})],1)})),0)])],1)}),[],!1,null,null,null).exports},computed:{userNav:function(){return this.$themeLocaleConfig.nav||this.$site.themeConfig.nav||[]},nav:function(){var t=this,e=this.$site.locales;if(e&&Object.keys(e).length>1){var n=this.$page.path,i=this.$router.options.routes,r=this.$site.themeConfig.locales||{},a={text:this.$themeLocaleConfig.selectText||"Languages",ariaLabel:this.$themeLocaleConfig.ariaLabel||"Select language",items:Object.keys(e).map((function(a){var s,o=e[a],u=r[a]&&r[a].label||o.lang;return o.lang===t.$lang?s=n:(s=n.replace(t.$localeConfig.path,a),i.some((function(t){return t.path===s}))||(s=a)),{text:u,link:s}}))};return[].concat(Object(v.a)(this.userNav),[a])}return this.userNav},userLinks:function(){return(this.nav||[]).map((function(t){return Object.assign(Object(i.j)(t),{items:(t.items||[]).map(i.j)})}))},repoLink:function(){var t=this.$site.themeConfig.repo;return t?/^https?:/.test(t)?t:"https://github.com/".concat(t):null},repoLabel:function(){if(this.repoLink){if(this.$site.themeConfig.repoLabel)return this.$site.themeConfig.repoLabel;for(var t=this.repoLink.match(/^https?:\/\/[^/]+/)[0],e=["GitHub","GitLab","Bitbucket"],n=0;nMath.abs(n)&&Math.abs(e)>40&&(e>0&&this.touchStart.x<=80?this.toggleSidebar(!0):this.toggleSidebar(!1))}}}),G=Object(a.a)(W,(function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("div",{staticClass:"theme-container",class:t.pageClasses,on:{touchstart:t.onTouchStart,touchend:t.onTouchEnd}},[t.shouldShowNavbar?n("Navbar",{on:{"toggle-sidebar":t.toggleSidebar}}):t._e(),t._v(" "),n("div",{staticClass:"sidebar-mask",on:{click:function(e){return t.toggleSidebar(!1)}}}),t._v(" "),n("Sidebar",{attrs:{items:t.sidebarItems},on:{"toggle-sidebar":t.toggleSidebar},scopedSlots:t._u([{key:"top",fn:function(){return[t._t("sidebar-top")]},proxy:!0},{key:"bottom",fn:function(){return[t._t("sidebar-bottom")]},proxy:!0}],null,!0)}),t._v(" "),t.$page.frontmatter.home?n("Home"):n("Page",{attrs:{"sidebar-items":t.sidebarItems},scopedSlots:t._u([{key:"top",fn:function(){return[t._t("page-top")]},proxy:!0},{key:"bottom",fn:function(){return[t._t("page-bottom")]},proxy:!0}],null,!0)})],1)}),[],!1,null,null,null);e.default=G.exports}}]); \ No newline at end of file diff --git a/assets/js/30.fd982798.js b/assets/js/30.fd982798.js new file mode 100644 index 000000000..107a9858e --- /dev/null +++ b/assets/js/30.fd982798.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[30],{606:function(t,e,a){"use strict";a.r(e);var o=a(13),s=Object(o.a)({},(function(){var t=this,e=t.$createElement,a=t._self._c||e;return a("ContentSlotsDistributor",{attrs:{"slot-key":t.$parent.slotKey}},[a("h1",{attrs:{id:"techs-skills-and-notes"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#techs-skills-and-notes"}},[t._v("#")]),t._v(" Techs, skills and notes")]),t._v(" "),a("p",[a("a",{attrs:{href:"./005-GTK4-upgrade-report-phase-1"}},[t._v("2021-10-31: Kangaroo GTK4 upgrade report (Phase 1)")]),a("Badge",{attrs:{text:"New"}})],1),t._v(" "),a("p",[a("a",{attrs:{href:"./004-how-to-deploy-gtk-app-on-mac"}},[t._v("2020-09-01: How to deploy GTK based app on Mac OS X?")])]),t._v(" "),a("p",[a("a",{attrs:{href:"./003-serialize-glib-object"}},[t._v("2019-10-19: How to serialize / deserialize GLib object")])]),t._v(" "),a("p",[a("a",{attrs:{href:"./002-how-to-deploy-gtk-app-on-windows"}},[t._v("2019-10-08: How to deploy GTK based app on windows?(Updated at 03/15/2020)")]),a("Badge",{attrs:{text:"Update"}})],1),t._v(" "),a("p",[a("a",{attrs:{href:"./001-why-choose-vala"}},[t._v("2019-09-20: Why choose Vala to build Kangaroo?")]),a("Badge",{attrs:{text:"Update"}})],1)])}),[],!1,null,null,null);e.default=s.exports}}]); \ No newline at end of file diff --git a/assets/js/31.8fa9277d.js b/assets/js/31.8fa9277d.js new file mode 100644 index 000000000..add92bdf5 --- /dev/null +++ b/assets/js/31.8fa9277d.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[31],{607:function(e,t,a){"use strict";a.r(t);var n=a(13),r=Object(n.a)({},(function(){var e=this,t=e.$createElement,a=e._self._c||t;return a("ContentSlotsDistributor",{attrs:{"slot-key":e.$parent.slotKey}},[a("h1",{attrs:{id:"buy-kangaroo"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#buy-kangaroo"}},[e._v("#")]),e._v(" Buy Kangaroo")]),e._v(" "),a("p",[e._v("Thank for buying "),a("strong",[e._v("Kangaroo")]),e._v("。")]),e._v(" "),a("p",[e._v("In order to achieve sustainable services, the "),a("strong",[e._v("Kangaroo")]),e._v(" adopts a subscription model, and multi-year subscriptions are recommended not to exceed [ten years].")]),e._v(" "),a("h2",{attrs:{id:"subscription-plan"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#subscription-plan"}},[e._v("#")]),e._v(" Subscription plan")]),e._v(" "),a("p",[e._v("The prices below are annual subscription prices and include one year of free upgrades and support.")]),e._v(" "),a("p",[e._v("All prices(without VAT) are displayed in USD and VAT may apply.")]),e._v(" "),a("table",[a("thead",[a("tr",[a("th",[e._v("Features plan")]),e._v(" "),a("th",{staticStyle:{"text-align":"center"}},[e._v("Enterprise license")]),e._v(" "),a("th",{staticStyle:{"text-align":"center"}},[e._v("Non-commercial license")]),e._v(" "),a("th",[e._v("License extension")])])]),e._v(" "),a("tbody",[a("tr",[a("td",[e._v("Multiple database")]),e._v(" "),a("td",{staticStyle:{"text-align":"center"}},[e._v("USD 249")]),e._v(" "),a("td",{staticStyle:{"text-align":"center"}},[e._v("USD 99")]),e._v(" "),a("td",[e._v("20% discount")])]),e._v(" "),a("tr",[a("td",[e._v("Single database")]),e._v(" "),a("td",{staticStyle:{"text-align":"center"}},[e._v("USD 66")]),e._v(" "),a("td",{staticStyle:{"text-align":"center"}},[e._v("USD 29")]),e._v(" "),a("td",[e._v("20% discount")])])])]),e._v(" "),a("p",[e._v("【Tips】")]),e._v(" "),a("ol",[a("li",[e._v("One license, one user, connect with mobile phone.")]),e._v(" "),a("li",[e._v("One license support three devices(Windows / MacOS / Linux).")])]),e._v(" "),a("h2",{attrs:{id:"payment-method"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#payment-method"}},[e._v("#")]),e._v(" Payment method")]),e._v(" "),a("p",[e._v("We support three pay methods:Paypal pay, WeChat Pay and Alipay payment.\n"),a("table",[a("tr",[a("td",[a("img",{attrs:{src:"/images/alipay.png",alt:"alipay qrcode"}})]),e._v(" "),a("td",[a("img",{attrs:{src:"/images/tenpay.png",alt:"tenpay qrcode"}})]),e._v(" "),a("td",[a("img",{attrs:{src:"/images/paypal.png",alt:"paypal qrcode"}})])])])]),e._v(" "),a("p",[e._v("When scanning the QR code to pay, please be sure to add comment: "),a("code",[e._v("Kangaroo - ")]),e._v(" on the order ticket, and the license code will be sent to your email.")]),e._v(" "),a("h2",{attrs:{id:"contact"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#contact"}},[e._v("#")]),e._v(" Contact")]),e._v(" "),a("p",[e._v("If you have any questions about the purchase or product, you can contact team via the following channel:")]),e._v(" "),a("p",[e._v("QQ: "),a("a",{attrs:{href:"http://wpa.qq.com/msgrd?v=3&uin=292422734&site=qq&menu=yes",target:"_blank",rel:"noopener noreferrer"}},[e._v("PC QQ"),a("OutboundLink")],1),e._v(" "),a("a",{attrs:{href:"mqqwpa://im/chat?chat_type=wpa&uin=292422734&version=1&src_type=web&web_src=datatable.online"}},[e._v("Mobile QQ")]),a("br"),e._v("\nE-mail: dbkangaroo@hotmail.com")]),e._v(" "),a("h2",{attrs:{id:"faq"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#faq"}},[e._v("#")]),e._v(" FAQ")]),e._v(" "),a("h3",{attrs:{id:"how-long-does-it-take-to-receive-my-license-code-after-payment"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#how-long-does-it-take-to-receive-my-license-code-after-payment"}},[e._v("#")]),e._v(" How long does it take to receive my license code after payment?")]),e._v(" "),a("p",[a("strong",[e._v("Kangaroo")]),e._v(" will start the process of license code work within one week after the license validation feature launched, please pay attention to the version announcement and E-mail notification;")]),e._v(" "),a("h3",{attrs:{id:"can-i-get-a-refund-on-my-license"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#can-i-get-a-refund-on-my-license"}},[e._v("#")]),e._v(" Can I get a refund on my license?")]),e._v(" "),a("p",[e._v("Virtual goods are non-refundable after purchase. Please purchase with caution.")])])}),[],!1,null,null,null);t.default=r.exports}}]); \ No newline at end of file diff --git a/assets/js/32.2da1cbee.js b/assets/js/32.2da1cbee.js new file mode 100644 index 000000000..5ff375f8b --- /dev/null +++ b/assets/js/32.2da1cbee.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[32],{610:function(t,e,a){"use strict";a.r(e);var s=a(13),r=Object(s.a)({},(function(){var t=this,e=t.$createElement,a=t._self._c||e;return a("ContentSlotsDistributor",{attrs:{"slot-key":t.$parent.slotKey}},[a("h1",{attrs:{id:"documents-for-kangaroo"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#documents-for-kangaroo"}},[t._v("#")]),t._v(" Documents for Kangaroo")]),t._v(" "),a("p",[t._v("Here is the center of documents, could find documents you need, if could not found, please submit your request in the repo's issue, we will improve and add new documents as soon as possible.")]),t._v(" "),a("h2",{attrs:{id:"system-requirements"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#system-requirements"}},[t._v("#")]),t._v(" System Requirements")]),t._v(" "),a("p",[a("RouterLink",{attrs:{to:"/en/document/system-requirements.html"}},[t._v("Minimal system requirements")])],1),t._v(" "),a("h2",{attrs:{id:"pricing-plan"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#pricing-plan"}},[t._v("#")]),t._v(" Pricing plan")]),t._v(" "),a("p",[a("RouterLink",{attrs:{to:"/en/document/pricing.html"}},[t._v("Kangaroo pricing plan")])],1),t._v(" "),a("h2",{attrs:{id:"change-timeline"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#change-timeline"}},[t._v("#")]),t._v(" Change timeline")]),t._v(" "),a("p",[a("RouterLink",{attrs:{to:"/en/document/changelog.html"}},[t._v("Kangaroo's change timeline")])],1),t._v(" "),a("h2",{attrs:{id:"install-kangaroo"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#install-kangaroo"}},[t._v("#")]),t._v(" Install Kangaroo")]),t._v(" "),a("p",[t._v("Kangaroo has full function support on Windows, the user experience is best:"),a("br"),t._v(" "),a("RouterLink",{attrs:{to:"/en/document/install-windows.html"}},[t._v("Install Kangaroo on Windows")])],1),t._v(" "),a("p",[t._v("Kangaroo has full function support on linux, installation on linux OS is easy:"),a("br"),t._v(" "),a("RouterLink",{attrs:{to:"/en/document/install-linux.html"}},[t._v("Install Kangaroo on Linux")])],1),t._v(" "),a("p",[t._v("Kangaroo has full function support on MacOS:"),a("br"),t._v(" "),a("RouterLink",{attrs:{to:"/en/document/install-macos.html"}},[t._v("Install Kangaroo on MacOS")])],1),t._v(" "),a("h2",{attrs:{id:"features"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#features"}},[t._v("#")]),t._v(" Features")]),t._v(" "),a("p",[a("RouterLink",{attrs:{to:"/en/document/feature-matrix.html"}},[t._v("Feature matrix")])],1),t._v(" "),a("h2",{attrs:{id:"screenshots"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#screenshots"}},[t._v("#")]),t._v(" Screenshots")]),t._v(" "),a("p",[a("a",{attrs:{href:"screenshots"}},[t._v("Screenshots")])]),t._v(" "),a("h2",{attrs:{id:"connect-to-database"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#connect-to-database"}},[t._v("#")]),t._v(" Connect to database")]),t._v(" "),a("p",[a("RouterLink",{attrs:{to:"/en/document/connection.html"}},[t._v("Make a connection")])],1),t._v(" "),a("h2",{attrs:{id:"create-a-new-table"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#create-a-new-table"}},[t._v("#")]),t._v(" Create a new table")]),t._v(" "),a("p",[a("RouterLink",{attrs:{to:"/en/document/designer-schema.html"}},[t._v("Table schema designer")])],1),t._v(" "),a("h2",{attrs:{id:"browse-and-edit-data"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#browse-and-edit-data"}},[t._v("#")]),t._v(" Browse and edit data")]),t._v(" "),a("p",[a("RouterLink",{attrs:{to:"/en/document/datagrid.html"}},[t._v("Data grid in content view")])],1),t._v(" "),a("h2",{attrs:{id:"sql-programming"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#sql-programming"}},[t._v("#")]),t._v(" SQL programming")]),t._v(" "),a("p",[a("RouterLink",{attrs:{to:"/en/document/editor.html"}},[t._v("Editing sql in code view")])],1),t._v(" "),a("h2",{attrs:{id:"sqlite-support"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#sqlite-support"}},[t._v("#")]),t._v(" SQLite support")]),t._v(" "),a("p",[a("RouterLink",{attrs:{to:"/en/document/sqlite.html"}},[t._v("SQLite support")])],1),t._v(" "),a("h2",{attrs:{id:"odbc-drivers"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#odbc-drivers"}},[t._v("#")]),t._v(" ODBC Drivers")]),t._v(" "),a("p",[a("a",{attrs:{href:"drivers"}},[t._v("ODBC Drivers")])]),t._v(" "),a("h2",{attrs:{id:"_2k-3k-4k-monitor-scale"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#_2k-3k-4k-monitor-scale"}},[t._v("#")]),t._v(" 2K/3K/4K monitor scale")]),t._v(" "),a("p",[a("RouterLink",{attrs:{to:"/en/document/scale.html"}},[t._v("Hi-DPI scale setting")])],1),t._v(" "),a("h2",{attrs:{id:"frequently-asked-questions"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#frequently-asked-questions"}},[t._v("#")]),t._v(" Frequently Asked Questions")]),t._v(" "),a("p",[a("RouterLink",{attrs:{to:"/en/document/faq.html"}},[t._v("General frequently asked questions")])],1),t._v(" "),a("Vssue",{attrs:{"issue-id":2,title:t.$title}})],1)}),[],!1,null,null,null);e.default=r.exports}}]); \ No newline at end of file diff --git a/assets/js/33.d0d2041d.js b/assets/js/33.d0d2041d.js new file mode 100644 index 000000000..78e91786f --- /dev/null +++ b/assets/js/33.d0d2041d.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[33],{614:function(a,e,t){"use strict";t.r(e);var o=t(13),v=Object(o.a)({},(function(){var a=this,e=a.$createElement,t=a._self._c||e;return t("ContentSlotsDistributor",{attrs:{"slot-key":a.$parent.slotKey}},[t("h1",{attrs:{id:"kangaroo-change"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#kangaroo-change"}},[a._v("#")]),a._v(" Kangaroo change")]),a._v(" "),t("h2",{attrs:{id:"kangaroo-v3-92-1"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#kangaroo-v3-92-1"}},[a._v("#")]),a._v(" "),t("a",{attrs:{href:"/en/download/v3.92.1.230901"}},[a._v("Kangaroo v3.92.1")])]),a._v(" "),t("ul",[t("li",[a._v("GTK4 upgrade to 4.12")]),a._v(" "),t("li",[a._v("libadwaita upgrade to 1.4 beta")]),a._v(" "),t("li",[a._v("Add Redhat series package support(rpm)")]),a._v(" "),t("li",[a._v("Add code snippet support\n"),t("ul",[t("li",[a._v("Code snippet pane(filter/drag and drop)")]),a._v(" "),t("li",[a._v("Code snippet dialog")]),a._v(" "),t("li",[a._v("Code snippet intellisense")]),a._v(" "),t("li",[a._v("Code snippet setting")]),a._v(" "),t("li",[a._v("Code snippet context menu for query view")])])]),a._v(" "),t("li",[a._v("Add execute menu item for query view context menu")]),a._v(" "),t("li",[a._v("Refactor history view")]),a._v(" "),t("li",[a._v("Refactor color text view")]),a._v(" "),t("li",[a._v("Refactor minor toolbar style")]),a._v(" "),t("li",[a._v("Refactor toolbar setting")]),a._v(" "),t("li",[a._v("Refactor exportor columns page")]),a._v(" "),t("li",[a._v("Refactor exportor tables page")]),a._v(" "),t("li",[a._v("Refactor exportor option page")]),a._v(" "),t("li",[a._v("Refactor model entity dialog")]),a._v(" "),t("li",[a._v("QR code add kangaroo logo")]),a._v(" "),t("li",[a._v("Updated Chinese translation")]),a._v(" "),t("li",[a._v("Fixed: libsoup connection issue")]),a._v(" "),t("li",[a._v("Fixed: document UI data display issue")]),a._v(" "),t("li",[a._v("Fixed: status bar missing data issue")]),a._v(" "),t("li",[a._v("Fixed: connection id issue")])]),a._v(" "),t("h2",{attrs:{id:"kangaroo-v3-91-1-beta"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#kangaroo-v3-91-1-beta"}},[a._v("#")]),a._v(" "),t("a",{attrs:{href:"/en/download/v3.91.1.230801"}},[a._v("Kangaroo v3.91.1 (Beta)")])]),a._v(" "),t("ul",[t("li",[a._v("Port to libadwaita 1.4")]),a._v(" "),t("li",[a._v("Refactor GtkSwitch.state to active")]),a._v(" "),t("li",[a._v("Add database library version for about dialog")]),a._v(" "),t("li",[a._v("Add Chinese support(zh_Hans/zh_Hant)")]),a._v(" "),t("li",[a._v("Improve workspace status bar")]),a._v(" "),t("li",[a._v("Updated Chinese translation")]),a._v(" "),t("li",[a._v("MariaDB: add table designer pages")]),a._v(" "),t("li",[a._v("MariaDB: fixed foreign key issue")]),a._v(" "),t("li",[a._v("MySQL: add missing type: TIMESTAMP")]),a._v(" "),t("li",[a._v("PostgreSQL: fixed type and collation issue")]),a._v(" "),t("li",[a._v("SQLite: fixed schema issue")]),a._v(" "),t("li",[a._v("Data transfer: initialize default options")]),a._v(" "),t("li",[a._v("Data transfer: add log output")]),a._v(" "),t("li",[a._v("Data transfer: Fixed target connection issue")])]),a._v(" "),t("h2",{attrs:{id:"kangaroo-v3-90-1-beta"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#kangaroo-v3-90-1-beta"}},[a._v("#")]),a._v(" "),t("a",{attrs:{href:"/en/download/v3.90.1.230701"}},[a._v("Kangaroo v3.90.1 (Beta)")])]),a._v(" "),t("ul",[t("li",[a._v("Add transfer/structure sync/data sync UI")]),a._v(" "),t("li",[a._v("Implent transfer bussiness logic")]),a._v(" "),t("li",[a._v("Implement structure sync business logic")]),a._v(" "),t("li",[a._v("SQLite Encryption Extension support(SQLCipher)")]),a._v(" "),t("li",[a._v("MySQL: Improve TEXT/BLOB type support")]),a._v(" "),t("li",[a._v("MariaDB: Improve TEXT/BLOB type support")]),a._v(" "),t("li",[a._v("Make dialog window stay center")]),a._v(" "),t("li",[a._v("Add language switch support")]),a._v(" "),t("li",[a._v("Improve preference window performance")]),a._v(" "),t("li",[a._v("Updated Chinese translation")]),a._v(" "),t("li",[a._v("Fixed MySQL/MariaDB field flag issue")])]),a._v(" "),t("h2",{attrs:{id:"kangaroo-v2-99-3-beta"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#kangaroo-v2-99-3-beta"}},[a._v("#")]),a._v(" "),t("a",{attrs:{href:"/en/download/v2.99.3.230602"}},[a._v("Kangaroo v2.99.3 (Beta)")])]),a._v(" "),t("ul",[t("li",[a._v("Windows: GTK4 upgrade to 4.11.2")]),a._v(" "),t("li",[a._v("MySQL: fixed TINYTEXT/TEXT/MEDIUMTEXT/LONGTEXT show issue")]),a._v(" "),t("li",[a._v("MariaDB: fixed TINYTEXT/TEXT/MEDIUMTEXT/LONGTEXT show issue")])]),a._v(" "),t("h2",{attrs:{id:"kangaroo-v1-10-3-beta"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#kangaroo-v1-10-3-beta"}},[a._v("#")]),a._v(" "),t("a",{attrs:{href:"/en/download/v1.10.3.230508"}},[a._v("Kangaroo v1.10.3 (Beta)")])]),a._v(" "),t("ul",[t("li",[a._v("Windows: GTK4 upgrade to 4.11.1")]),a._v(" "),t("li",[a._v("Fixed:Chinese support issue")])]),a._v(" "),t("h2",{attrs:{id:"kangaroo-v2-99-2-beta"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#kangaroo-v2-99-2-beta"}},[a._v("#")]),a._v(" "),t("a",{attrs:{href:"/en/download/v2.99.2.230428"}},[a._v("Kangaroo v2.99.2 (Beta)")])]),a._v(" "),t("ul",[t("li",[a._v("Add sandbox support(Windows only)")]),a._v(" "),t("li",[a._v("GTK4 upgrade to 4.10.3")]),a._v(" "),t("li",[a._v("libadwaita upgrade to 1.3.1")])]),a._v(" "),t("h2",{attrs:{id:"kangaroo-v2-99-1-beta"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#kangaroo-v2-99-1-beta"}},[a._v("#")]),a._v(" "),t("a",{attrs:{href:"/en/download/v2.99.1.230331"}},[a._v("Kangaroo v2.99.1 (Beta)")])]),a._v(" "),t("ul",[t("li",[a._v("SQLite: add direct access support")]),a._v(" "),t("li",[a._v("MySQL: add direct access support")]),a._v(" "),t("li",[a._v("MariaDB: add direct access support")]),a._v(" "),t("li",[a._v("PostgreSQL: add direct access support")]),a._v(" "),t("li",[a._v("Improved floating-point display support")]),a._v(" "),t("li",[a._v("Improved connection establishment")]),a._v(" "),t("li",[a._v("Updated Chinese translation")])]),a._v(" "),t("h2",{attrs:{id:"kangaroo-v2-3-2-beta"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#kangaroo-v2-3-2-beta"}},[a._v("#")]),a._v(" "),t("a",{attrs:{href:"/en/download/v2.3.2.230301"}},[a._v("Kangaroo v2.3.2 (Beta)")])]),a._v(" "),t("ul",[t("li",[a._v("MySQL: Add executor menu item")]),a._v(" "),t("li",[a._v("MariaDB: Add executor menu item")]),a._v(" "),t("li",[a._v("PostgreSQL: Add executor menu item")]),a._v(" "),t("li",[a._v("Update datagrid normal style bg color")]),a._v(" "),t("li",[a._v("Update Chinese translation")]),a._v(" "),t("li",[a._v("Fixed: Unknown SCHEMA_COMMENT (< MariaDB 10.5)")]),a._v(" "),t("li",[a._v("Fixed: executor's file dialog issue")]),a._v(" "),t("li",[a._v("Fixed: intellisense issue")]),a._v(" "),t("li",[a._v("Fixed: datagrid craches")])]),a._v(" "),t("div",[t("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),a._v(" "),t("script2",{attrs:{type:"text/javascript"}},[a._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),a._v(" "),t("h2",{attrs:{id:"kangaroo-v2-3-1-beta"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#kangaroo-v2-3-1-beta"}},[a._v("#")]),a._v(" "),t("a",{attrs:{href:"/en/download/v2.3.1.230201"}},[a._v("Kangaroo v2.3.1 (Beta)")])]),a._v(" "),t("ul",[t("li",[a._v("Add query file pane")]),a._v(" "),t("li",[a._v("Add model file pane")]),a._v(" "),t("li",[a._v("Update toolbar style")]),a._v(" "),t("li",[a._v("Workspace add split support (vertical or horizontal)")]),a._v(" "),t("li",[a._v("Workspace add status bar")]),a._v(" "),t("li",[a._v("Workspace add language support")]),a._v(" "),t("li",[a._v("Workspace add line ending support")]),a._v(" "),t("li",[a._v("Workspace add file encoding support")]),a._v(" "),t("li",[a._v("Workspace add word wrap support")]),a._v(" "),t("li",[a._v("Workspace add indentation support")]),a._v(" "),t("li",[a._v("Workspace add position support")]),a._v(" "),t("li",[a._v("Workspace add pane switching support")]),a._v(" "),t("li",[a._v("Workspace add worksheet message support")]),a._v(" "),t("li",[a._v("Update about window(System information)")]),a._v(" "),t("li",[a._v("Update RPM installer script")]),a._v(" "),t("li",[a._v("Update Chinese translation")]),a._v(" "),t("li",[a._v("Remove view submenu from main menu")])]),a._v(" "),t("h2",{attrs:{id:"kangaroo-v2-2-1-beta"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#kangaroo-v2-2-1-beta"}},[a._v("#")]),a._v(" "),t("a",{attrs:{href:"/en/download/v2.2.1.230101"}},[a._v("Kangaroo v2.2.1 (Beta)")])]),a._v(" "),t("ul",[t("li",[a._v("Add executor dialog")]),a._v(" "),t("li",[a._v("Add dump & tranform dialog")]),a._v(" "),t("li",[a._v("Add time cost for query")]),a._v(" "),t("li",[a._v("SQLite: fixed index load issue")]),a._v(" "),t("li",[a._v("SQLite: fixed backup name issue")]),a._v(" "),t("li",[a._v("MariaDB: fixed schema scope issue")]),a._v(" "),t("li",[a._v("MySQL: fixed schema scope issue")]),a._v(" "),t("li",[a._v("PostgreSQL: fixed v15 user info issue")]),a._v(" "),t("li",[a._v("Update intellisense proposal's icon")]),a._v(" "),t("li",[a._v("Update Chinese translation")]),a._v(" "),t("li",[a._v("Update Windows installer to select drivers defaultly")]),a._v(" "),t("li",[a._v("Update GTK library to 4.9.2")])]),a._v(" "),t("h2",{attrs:{id:"kangaroo-v2-1-1-beta"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#kangaroo-v2-1-1-beta"}},[a._v("#")]),a._v(" "),t("a",{attrs:{href:"/en/download/v2.1.1.221201"}},[a._v("Kangaroo v2.1.1 (Beta)")])]),a._v(" "),t("ul",[t("li",[a._v("Add dynamic QR code support")]),a._v(" "),t("li",[a._v("Add debian package support")]),a._v(" "),t("li",[a._v("Implement designer's clone menu action")]),a._v(" "),t("li",[a._v("Implement designer's copy/paste action")]),a._v(" "),t("li",[a._v("Add designer's cut menu item")]),a._v(" "),t("li",[a._v("Add SQL "),t("code",[a._v("EXPLAIN")]),a._v(" statement with format support")]),a._v(" "),t("li",[a._v("Add SQL "),t("code",[a._v("ANALYZE")]),a._v(" statement support")]),a._v(" "),t("li",[a._v("Refactor SQL beautify and minify")]),a._v(" "),t("li",[a._v("Improve editor undo support")]),a._v(" "),t("li",[a._v("Update linux package script")]),a._v(" "),t("li",[a._v("Update Chinese translation")]),a._v(" "),t("li",[a._v("Fixed: app crashed while closing book page")]),a._v(" "),t("li",[a._v("Fixed: SSH label issue")])]),a._v(" "),t("h2",{attrs:{id:"kangaroo-v2-0-0-beta"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#kangaroo-v2-0-0-beta"}},[a._v("#")]),a._v(" "),t("a",{attrs:{href:"/en/download/v2.0.0.221101"}},[a._v("Kangaroo v2.0.0 (Beta)")])]),a._v(" "),t("ul",[t("li",[a._v("Refactor importer page (columns/preview)")]),a._v(" "),t("li",[a._v("Refactor columns selection dialog")]),a._v(" "),t("li",[a._v("Refactor SQLite columns dialog")]),a._v(" "),t("li",[a._v("Refactor PostgreSQL columns dialog")]),a._v(" "),t("li",[a._v("Refactor MySQL columns dialog")]),a._v(" "),t("li",[a._v("Refactor type values dialog (Enum/set)")]),a._v(" "),t("li",[a._v("Refactor documents dialog")]),a._v(" "),t("li",[a._v("Refactor DataGrid events and context menu")]),a._v(" "),t("li",[a._v("Replace icon with symbolic icon")]),a._v(" "),t("li",[a._v("Implement form view edit and save support")]),a._v(" "),t("li",[a._v("Implement table view edit and save support")]),a._v(" "),t("li",[a._v("Implement Binary/BLOB import/export/save support")]),a._v(" "),t("li",[a._v("Improve SQLite schema support")]),a._v(" "),t("li",[a._v("Form view navigation support")]),a._v(" "),t("li",[a._v("Update Chinese translation")]),a._v(" "),t("li",[a._v("Fixed numeric value lost its decimal issue")]),a._v(" "),t("li",[a._v("Fixed toolbar icon size issue")]),a._v(" "),t("li",[a._v("Fixed explorer DataGrid issue")]),a._v(" "),t("li",[a._v("Fixed import data failure issue")]),a._v(" "),t("li",[a._v("Fixed index loading crash issue")]),a._v(" "),t("li",[a._v("Fixed repo tree node change issue")]),a._v(" "),t("li",[a._v("Fixed SQLite function crash issue")]),a._v(" "),t("li",[a._v("Fixed application warning messages")]),a._v(" "),t("li",[a._v("Fixed compiler warning messages")]),a._v(" "),t("li",[a._v("Fixed context menu dump action issue")])]),a._v(" "),t("div",[t("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),a._v(" "),t("script2",{attrs:{type:"text/javascript"}},[a._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),a._v(" "),t("h2",{attrs:{id:"kangaroo-v1-99-1-dev"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#kangaroo-v1-99-1-dev"}},[a._v("#")]),a._v(" "),t("a",{attrs:{href:"/en/download/v1.99.1.221001"}},[a._v("Kangaroo v1.99.1 (Dev)")])]),a._v(" "),t("ul",[t("li",[a._v("Normalize DataModel and MetaModel")]),a._v(" "),t("li",[a._v("Refactor documents dialog")]),a._v(" "),t("li",[a._v("Refactor export pages")]),a._v(" "),t("li",[a._v("Refactor import pages")]),a._v(" "),t("li",[a._v("Refactor connection dialog")]),a._v(" "),t("li",[a._v("Add attach database dialog")]),a._v(" "),t("li",[a._v("Upgrade libsoup2 to libsoup3")]),a._v(" "),t("li",[a._v("Add ODBC general support")]),a._v(" "),t("li",[a._v("Add ODBC help entry point")]),a._v(" "),t("li",[a._v("Add object search support")]),a._v(" "),t("li",[a._v("Update Windows and ArchLinux installer and deploy script")]),a._v(" "),t("li",[a._v("SQLite: attach and detach database")]),a._v(" "),t("li",[a._v("SQLite: load extension support")]),a._v(" "),t("li",[a._v("Improve the way to create new connection")]),a._v(" "),t("li",[a._v("Update Chinese translation")]),a._v(" "),t("li",[a._v("Fixed shortcut file issue")])]),a._v(" "),t("h2",{attrs:{id:"kangaroo-v1-98-1-dev"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#kangaroo-v1-98-1-dev"}},[a._v("#")]),a._v(" "),t("a",{attrs:{href:"/en/download/v1.98.1.220904"}},[a._v("Kangaroo v1.98.1 (Dev)")])]),a._v(" "),t("ul",[t("li",[a._v("DataGrid add style for current cell")]),a._v(" "),t("li",[a._v("SQLite: refactor table designer")]),a._v(" "),t("li",[a._v("MySQL: refactor table designer")]),a._v(" "),t("li",[a._v("PostgreSQL: refactor table designer")]),a._v(" "),t("li",[a._v("Normalize column's length/precision/scale")]),a._v(" "),t("li",[a._v("Update the Chinese translation")]),a._v(" "),t("li",[a._v("Fixed ODBC CHAR/WCHAR data type issue")]),a._v(" "),t("li",[a._v("Fixed connection's driver missed issue")]),a._v(" "),t("li",[a._v("Fixed drop SQLite file to create connection issue")]),a._v(" "),t("li",[a._v("Fixed MySQL/MariaDB encoding(Chinese) issue")])]),a._v(" "),t("h2",{attrs:{id:"kangaroo-v1-97-1-dev"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#kangaroo-v1-97-1-dev"}},[a._v("#")]),a._v(" "),t("a",{attrs:{href:"/en/download/v1.97.1.220731"}},[a._v("Kangaroo v1.97.1 (Dev)")])]),a._v(" "),t("ul",[t("li",[a._v("Update windows deploy script")]),a._v(" "),t("li",[a._v("Update ArchLinux build script")]),a._v(" "),t("li",[a._v("Upgrade close confirm dialog")]),a._v(" "),t("li",[a._v("Refactor datagrid with ColumnView")]),a._v(" "),t("li",[a._v("Windows installer support ODBC drivers")]),a._v(" "),t("li",[a._v("Improve Windows installer l10n support")]),a._v(" "),t("li",[a._v("Improve object explorer sort support")]),a._v(" "),t("li",[a._v("Improve content builder")]),a._v(" "),t("li",[a._v("Improve SQL builder")]),a._v(" "),t("li",[a._v("Improve DBNull value support")]),a._v(" "),t("li",[a._v("Update the Chinese translation")]),a._v(" "),t("li",[a._v("Fixed ODBC connection issues")])]),a._v(" "),t("h2",{attrs:{id:"kangaroo-v1-10-2-beta"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#kangaroo-v1-10-2-beta"}},[a._v("#")]),a._v(" "),t("a",{attrs:{href:"/en/download/v1.10.2.220701"}},[a._v("Kangaroo v1.10.2 (Beta)")])]),a._v(" "),t("ul",[t("li",[a._v("Remove app expire date")]),a._v(" "),t("li",[a._v("Windows: update library to the latest.")])]),a._v(" "),t("h2",{attrs:{id:"kangaroo-v1-96-1-dev"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#kangaroo-v1-96-1-dev"}},[a._v("#")]),a._v(" "),t("a",{attrs:{href:"/en/download/v1.96.1.220701"}},[a._v("Kangaroo v1.96.1 (Dev)")])]),a._v(" "),t("ul",[t("li",[a._v("Replace libgda with ODBC")]),a._v(" "),t("li",[a._v("Add general database support")]),a._v(" "),t("li",[a._v("Update the Chinese translation")])]),a._v(" "),t("h2",{attrs:{id:"kangaroo-v1-95-1-dev"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#kangaroo-v1-95-1-dev"}},[a._v("#")]),a._v(" "),t("a",{attrs:{href:"/en/download/v1.95.1.220601"}},[a._v("Kangaroo v1.95.1 (Dev)")])]),a._v(" "),t("ul",[t("li",[a._v("MySQL: Add role designer")]),a._v(" "),t("li",[a._v("MySQL: Add schema designer")]),a._v(" "),t("li",[a._v("MySQL: Add database designer")]),a._v(" "),t("li",[a._v("MariaDB: Add role designer")]),a._v(" "),t("li",[a._v("MariaDB: Add schema designer")]),a._v(" "),t("li",[a._v("MariaDB: Add database designer")]),a._v(" "),t("li",[a._v("PostgreSQL: Add role designer")]),a._v(" "),t("li",[a._v("PostgreSQL: Add schema designer")]),a._v(" "),t("li",[a._v("PostgreSQL: Add database designer")]),a._v(" "),t("li",[a._v("Update explorer view with database and schema support")]),a._v(" "),t("li",[a._v("Refactor object tree context menu")]),a._v(" "),t("li",[a._v("Bind tab title with explorer title")]),a._v(" "),t("li",[a._v("Update the Chinese translation")])]),a._v(" "),t("div",[t("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),a._v(" "),t("script2",{attrs:{type:"text/javascript"}},[a._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),a._v(" "),t("h2",{attrs:{id:"kangaroo-v1-94-1-dev"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#kangaroo-v1-94-1-dev"}},[a._v("#")]),a._v(" "),t("a",{attrs:{href:"/en/download/v1.94.1.220501"}},[a._v("Kangaroo v1.94.1 (Dev)")])]),a._v(" "),t("ul",[t("li",[a._v("MySQL: Add function designer")]),a._v(" "),t("li",[a._v("MySQL: Add procedure designer")]),a._v(" "),t("li",[a._v("MySQL: Add user designer")]),a._v(" "),t("li",[a._v("MariaDB: Add function designer")]),a._v(" "),t("li",[a._v("MariaDB: Add procedure designer")]),a._v(" "),t("li",[a._v("MariaDB: Add user designer")]),a._v(" "),t("li",[a._v("PostgreSQL: Add function designer")]),a._v(" "),t("li",[a._v("PostgreSQL: Add procedure designer")]),a._v(" "),t("li",[a._v("PostgreSQL: Add user designer")]),a._v(" "),t("li",[a._v("Add runtime version support on About window")]),a._v(" "),t("li",[a._v("Update the Chinese translation")]),a._v(" "),t("li",[a._v("Fixed: workspace view issue")]),a._v(" "),t("li",[a._v("Fixed: autosave cache file issue")])]),a._v(" "),t("h2",{attrs:{id:"kangaroo-v1-93-1-dev"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#kangaroo-v1-93-1-dev"}},[a._v("#")]),a._v(" "),t("a",{attrs:{href:"/en/download/v1.93.1.220401"}},[a._v("Kangaroo v1.93.1 (Dev)")])]),a._v(" "),t("ul",[t("li",[a._v("SQLite: Add index designer")]),a._v(" "),t("li",[a._v("SQLite: Add trigger designer")]),a._v(" "),t("li",[a._v("SQLite: Refactor data view designer to improve support")]),a._v(" "),t("li",[a._v("MySQL: Add index object support")]),a._v(" "),t("li",[a._v("MySQL: Add trigger object support")]),a._v(" "),t("li",[a._v("MySQL: Add index designer")]),a._v(" "),t("li",[a._v("MySQL: Add trigger designer")]),a._v(" "),t("li",[a._v("MySQL: Refactor data view designer to improve support")]),a._v(" "),t("li",[a._v("MariaDB: Add index object support")]),a._v(" "),t("li",[a._v("MariaDB: Add trigger object support")]),a._v(" "),t("li",[a._v("MariaDB: Add index designer")]),a._v(" "),t("li",[a._v("MariaDB: Add trigger designer")]),a._v(" "),t("li",[a._v("MariaDB: Refactor data view designer to improve support")]),a._v(" "),t("li",[a._v("PostgreSQL: Add index designer")]),a._v(" "),t("li",[a._v("PostgreSQL: Add trigger designer")]),a._v(" "),t("li",[a._v("PostgreSQL: Refactor data view designer to improve support")]),a._v(" "),t("li",[a._v("Add connection detail view for workspace")]),a._v(" "),t("li",[a._v("Update repository tree icon")]),a._v(" "),t("li",[a._v("Update the Chinese translation")]),a._v(" "),t("li",[a._v("Refactor starter view")]),a._v(" "),t("li",[a._v("Refactor repository view")]),a._v(" "),t("li",[a._v("Fixed: data view designer's restore issue")]),a._v(" "),t("li",[a._v("Fixed: workspace menu loading issue")]),a._v(" "),t("li",[a._v("Fixed: crash while active_id is null")]),a._v(" "),t("li",[a._v("Fixed: editor input issue while having selection")]),a._v(" "),t("li",[a._v("Fixed: can't load schema views for MySQL/MariaDB")]),a._v(" "),t("li",[a._v("Fixed: crashed while PostgreSQL database is empty")])]),a._v(" "),t("h2",{attrs:{id:"kangaroo-v1-92-1-dev"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#kangaroo-v1-92-1-dev"}},[a._v("#")]),a._v(" "),t("a",{attrs:{href:"/en/download/v1.92.1.220228"}},[a._v("Kangaroo v1.92.1 (Dev)")])]),a._v(" "),t("ol",[t("li",[a._v("Add explorer view(Table + Iconic)")]),a._v(" "),t("li",[a._v("Add search and sort support")]),a._v(" "),t("li",[a._v("SQLite: load objects for explorer")]),a._v(" "),t("li",[a._v("MariaDB: load objects for explorer")]),a._v(" "),t("li",[a._v("MySQL: load objects for explorer")]),a._v(" "),t("li",[a._v("PostgreSQL: load objects for explorer")]),a._v(" "),t("li",[a._v("Add context menu for objects")]),a._v(" "),t("li",[a._v("Implement context menu for table and view")]),a._v(" "),t("li",[a._v("Refactor workspace toolbar")]),a._v(" "),t("li",[a._v("Update database object icon")]),a._v(" "),t("li",[a._v("Update the Chinese translation")])]),a._v(" "),t("h2",{attrs:{id:"kangaroo-v1-91-1-dev"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#kangaroo-v1-91-1-dev"}},[a._v("#")]),a._v(" "),t("a",{attrs:{href:"/en/download/v1.91.1.220128"}},[a._v("Kangaroo v1.91.1 (Dev)")])]),a._v(" "),t("ol",[t("li",[a._v("Refactor workbench and workspace")]),a._v(" "),t("li",[a._v("Refactor import/export")]),a._v(" "),t("li",[a._v("Refactor intellisense")]),a._v(" "),t("li",[a._v("Refactor toolbars")]),a._v(" "),t("li",[a._v("Refactor sql builder")]),a._v(" "),t("li",[a._v("Refactor app expire notification")]),a._v(" "),t("li",[a._v("Improve titlebar skin support")]),a._v(" "),t("li",[a._v("Improve dialog style")]),a._v(" "),t("li",[a._v("Split setting into app setting and server setting")]),a._v(" "),t("li",[a._v("Move intellisense data to user document folder")]),a._v(" "),t("li",[a._v("Update the Chinese translation")]),a._v(" "),t("li",[a._v("Fixed: can't open url with default app")]),a._v(" "),t("li",[a._v("Fixed: insert sql error(user_name -> user__name)")]),a._v(" "),t("li",[a._v("Fixed: model view crashed")]),a._v(" "),t("li",[a._v("Fixed: DSV formats has a extra column")]),a._v(" "),t("li",[a._v("Fixed: scalable image size issue")]),a._v(" "),t("li",[a._v("Fixed: warning messages")])]),a._v(" "),t("div",[t("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),a._v(" "),t("script2",{attrs:{type:"text/javascript"}},[a._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),a._v(" "),t("h2",{attrs:{id:"kangaroo-v1-90-1-dev"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#kangaroo-v1-90-1-dev"}},[a._v("#")]),a._v(" "),t("a",{attrs:{href:"/en/download/v1.90.1.211231"}},[a._v("Kangaroo v1.90.1 (Dev)")])]),a._v(" "),t("ol",[t("li",[a._v("Update UI toolkit from GTK3 to GTK4")]),a._v(" "),t("li",[a._v("Update UI library to GTK4 version")]),a._v(" "),t("li",[a._v("Update GtkSoureceView from 4 to 5")]),a._v(" "),t("li",[a._v("Merge setting and shortcut dialog")]),a._v(" "),t("li",[a._v("Add document overview map")]),a._v(" "),t("li",[a._v("Add style scheme support")]),a._v(" "),t("li",[a._v("Add development support")]),a._v(" "),t("li",[a._v("MySQL: Add user and privilege management support")]),a._v(" "),t("li",[a._v("MariaDB: Add user and privilege management support")]),a._v(" "),t("li",[a._v("PostgreSQL: Add user and privilege management support")])]),a._v(" "),t("h2",{attrs:{id:"kangaroo-v1-10-1-beta"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#kangaroo-v1-10-1-beta"}},[a._v("#")]),a._v(" "),t("a",{attrs:{href:"/en/download/v1.10.1.210731"}},[a._v("Kangaroo v1.10.1 (Beta)")])]),a._v(" "),t("ol",[t("li",[a._v("Add visual sql builder dialog")]),a._v(" "),t("li",[a._v("Add values window")]),a._v(" "),t("li",[a._v("Add icon for datagrid context menu")]),a._v(" "),t("li",[a._v("Add copy cell value with algorithm")]),a._v(" "),t("li",[a._v("Add update cell value with algorithm")]),a._v(" "),t("li",[a._v("Improve connection naming schema")]),a._v(" "),t("li",[a._v("Improve toolbar layout")]),a._v(" "),t("li",[a._v("Improve float type support")]),a._v(" "),t("li",[a._v("Update the Chinese translation")]),a._v(" "),t("li",[a._v("Fixed: invalid sql while large text type(PostgreSQL)")]),a._v(" "),t("li",[a._v("Fixed: designer's checkbox not response.")]),a._v(" "),t("li",[a._v("Fixed: connection crashed(MySQL/PostgreSQL)")]),a._v(" "),t("li",[a._v("Fixed: can't load source of view(PostgreSQL)")]),a._v(" "),t("li",[a._v("Fixed: MacOS Chinese not support")]),a._v(" "),t("li",[a._v("Fixed: invalid sql while meet the same cell value")])]),a._v(" "),t("h2",{attrs:{id:"kangaroo-v1-9-1-dev"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#kangaroo-v1-9-1-dev"}},[a._v("#")]),a._v(" "),t("a",{attrs:{href:"/en/download/v1.9.1.210531"}},[a._v("Kangaroo v1.9.1 (Dev)")])]),a._v(" "),t("ol",[t("li",[a._v("Add view designer")]),a._v(" "),t("li",[a._v("Add Toolbar control")]),a._v(" "),t("li",[a._v("Upgrade library libgda to 6.0.1")]),a._v(" "),t("li",[a._v("Improve connection stability for MySQL/MariaDB")]),a._v(" "),t("li",[a._v("Refactor repository's context menu")]),a._v(" "),t("li",[a._v("Implement rename function for SQLite")]),a._v(" "),t("li",[a._v("Implement rename function for MySQL/MariaDB")]),a._v(" "),t("li",[a._v("Implement new/edit/source/rename/dump/copy names function for view")]),a._v(" "),t("li",[a._v("Refactor query view's toolbar")]),a._v(" "),t("li",[a._v("Update the Chinese translation(zh-CN/zh-TW/zh-SG/zh-HK)")]),a._v(" "),t("li",[a._v("Add column reorder support for data grid")]),a._v(" "),t("li",[a._v("Improve format of DataTime/TimeStamp")]),a._v(" "),t("li",[a._v("Add geometric point type support")]),a._v(" "),t("li",[a._v("Add large text type support")]),a._v(" "),t("li",[a._v("Improve installer for windows and MacOS")]),a._v(" "),t("li",[a._v("Fixed: non-response while clicking the triangle icon on the tree")]),a._v(" "),t("li",[a._v("Fixed: NULL/Empty string invalid")]),a._v(" "),t("li",[a._v("Fixed: can't show view's columns in the model view")]),a._v(" "),t("li",[a._v("Fixed: enlarge model view while importing objects.")]),a._v(" "),t("li",[a._v("Fixed: can't load index entries (MySQL)")]),a._v(" "),t("li",[a._v("Fixed: can't modify boolean data")]),a._v(" "),t("li",[a._v("Fixed: warning message while loading intellisense data.")])]),a._v(" "),t("div",[t("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),a._v(" "),t("script2",{attrs:{type:"text/javascript"}},[a._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),a._v(" "),t("h2",{attrs:{id:"kangaroo-v1-8-1-dev"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#kangaroo-v1-8-1-dev"}},[a._v("#")]),a._v(" "),t("a",{attrs:{href:"/en/download/v1.8.1.210430"}},[a._v("Kangaroo v1.8.1 (Dev)")])]),a._v(" "),t("ol",[t("li",[a._v("Improve toolbar effect(show label and large icon default)")]),a._v(" "),t("li",[a._v("Improve the tab title for Query view")]),a._v(" "),t("li",[a._v("Open one instance of the same view only")]),a._v(" "),t("li",[a._v("Update app desktop entry's category")]),a._v(" "),t("li",[a._v("Add import/generate buttons for the model toolbar")]),a._v(" "),t("li",[a._v("Model: implement import entity models from the database")]),a._v(" "),t("li",[a._v("Model: load and save data of the table and view node")]),a._v(" "),t("li",[a._v("Model: implement change and close notification")]),a._v(" "),t("li",[a._v("Model: Add entity dialog")]),a._v(" "),t("li",[a._v("Model: improve effect of node(table / view / shape)")]),a._v(" "),t("li",[a._v("Fixed: can't show columns on the non-column page")]),a._v(" "),t("li",[a._v("Fixed: can't load libgda's plugin")]),a._v(" "),t("li",[a._v("Fixed: can't show node while loading large model file")])]),a._v(" "),t("h2",{attrs:{id:"kangaroo-v1-7-1-dev"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#kangaroo-v1-7-1-dev"}},[a._v("#")]),a._v(" "),t("a",{attrs:{href:"/en/download/v1.7.1.210331"}},[a._v("Kangaroo v1.7.1 (Dev)")])]),a._v(" "),t("ol",[t("li",[a._v("Implement hex editor support (completed)")]),a._v(" "),t("li",[a._v("Add workspace tab UI support (completed)")]),a._v(" "),t("li",[a._v("Add independent history support(completed)")]),a._v(" "),t("li",[a._v("Add shortcut customize support(completed)")]),a._v(" "),t("li",[a._v("Add data chart support (in progress)")]),a._v(" "),t("li",[a._v("Add database model support (in progress)\n"),t("ul",[t("li",[a._v("Add load and save model support")]),a._v(" "),t("li",[a._v("Add node copy and paste support")]),a._v(" "),t("li",[a._v("Add multi-selection support")])])]),a._v(" "),t("li",[a._v("Drag and drop SQLite file on the workspace to open it #76")]),a._v(" "),t("li",[a._v("Refactor app home page to improve experience")]),a._v(" "),t("li",[a._v("Copy data as LUA table")]),a._v(" "),t("li",[a._v("improve object tree experience")]),a._v(" "),t("li",[a._v("Backup and restore workspace layout")]),a._v(" "),t("li",[a._v("Add more language support")]),a._v(" "),t("li",[a._v("Improve log support(add database and connection name)")]),a._v(" "),t("li",[a._v("File monitor support for sql script file")]),a._v(" "),t("li",[a._v("refactor content view to show feature bar")]),a._v(" "),t("li",[a._v("all data tables are displayed by default")]),a._v(" "),t("li",[a._v("refactor object panel to improve UI experience")]),a._v(" "),t("li",[a._v("Add shortcut dialog for search and setup;")]),a._v(" "),t("li",[a._v("Improve app title bar style, add color and image support.")]),a._v(" "),t("li",[a._v("Add shell notification support")]),a._v(" "),t("li",[a._v("Add confirm dialog while closing pages")]),a._v(" "),t("li",[a._v("Refactor tool bar with GtkToolbar widget")]),a._v(" "),t("li",[a._v("Fixed: Access denied: you need the SUPER privilege(s) for this operation")]),a._v(" "),t("li",[a._v("Fixed: close tab view after deleted the database object.")]),a._v(" "),t("li",[a._v("Fixed: update tab view after renamed the database object.")]),a._v(" "),t("li",[a._v("Fixed: can't get system name on MacOS platform")])]),a._v(" "),t("div",[t("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),a._v(" "),t("script2",{attrs:{type:"text/javascript"}},[a._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),a._v(" "),t("h2",{attrs:{id:"kangaroo-v1-6-1-dev"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#kangaroo-v1-6-1-dev"}},[a._v("#")]),a._v(" "),t("a",{attrs:{href:"/en/download/v1.6.1.210131"}},[a._v("Kangaroo v1.6.1 (Dev)")])]),a._v(" "),t("ol",[t("li",[a._v("Implement hex editor support (completed)")]),a._v(" "),t("li",[a._v("Add workspace tab UI support (completed)")]),a._v(" "),t("li",[a._v("Add independent history support(completed)")]),a._v(" "),t("li",[a._v("Add shortcut customeize support(completed)")]),a._v(" "),t("li",[a._v("Add data chart support (in progress)")]),a._v(" "),t("li",[a._v("Add database model support (in progress)")])]),a._v(" "),t("h2",{attrs:{id:"kangaroo-v1-5-1-dev"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#kangaroo-v1-5-1-dev"}},[a._v("#")]),a._v(" "),t("a",{attrs:{href:"/en/download/v1.5.1.201231"}},[a._v("Kangaroo v1.5.1 (Dev)")])]),a._v(" "),t("ol",[t("li",[a._v("Implement hex editor support (completed)")]),a._v(" "),t("li",[a._v("Add workspace tab UI support (completed)")]),a._v(" "),t("li",[a._v("Add data chart support (in progress)")]),a._v(" "),t("li",[a._v("Add database modeling support (in progress)")])]),a._v(" "),t("h2",{attrs:{id:"kangaroo-v1-0-6-beta"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#kangaroo-v1-0-6-beta"}},[a._v("#")]),a._v(" "),t("a",{attrs:{href:"/en/download/v1.0.6.201109"}},[a._v("Kangaroo v1.0.6 (Beta)")])]),a._v(" "),t("ol",[t("li",[a._v("Update domain to www.datatable.online")])]),a._v(" "),t("h2",{attrs:{id:"kangaroo-v1-3-1-dev"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#kangaroo-v1-3-1-dev"}},[a._v("#")]),a._v(" "),t("a",{attrs:{href:"/en/download/v1.3.1.201102"}},[a._v("Kangaroo v1.3.1 (Dev)")])]),a._v(" "),t("ol",[t("li",[a._v("Implement hex editor (completed)")]),a._v(" "),t("li",[a._v("Add data chart support(in progress)")]),a._v(" "),t("li",[a._v("Add workspace tab ui support(in progress)")])]),a._v(" "),t("h2",{attrs:{id:"kangaroo-v1-0-5-beta"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#kangaroo-v1-0-5-beta"}},[a._v("#")]),a._v(" "),t("a",{attrs:{href:"/en/download/v1.0.5.201019"}},[a._v("Kangaroo v1.0.5 (Beta)")])]),a._v(" "),t("ol",[t("li",[a._v("Implement context menu for cell value")]),a._v(" "),t("li",[a._v("Improve database null value support")]),a._v(" "),t("li",[a._v("Improve text view for cell value, support to detect charset and convert to UTF-8")]),a._v(" "),t("li",[a._v("Improve the China mainland user accessibility: show changelog")]),a._v(" "),t("li",[a._v("Improve mysql connection stability")]),a._v(" "),t("li",[a._v("Fixed: fail to change cell value viewer")]),a._v(" "),t("li",[a._v("Fixed: copy short and full name invalid")])]),a._v(" "),t("div",[t("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),a._v(" "),t("script2",{attrs:{type:"text/javascript"}},[a._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),a._v(" "),t("h2",{attrs:{id:"kangaroo-v0-99-3-beta"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#kangaroo-v0-99-3-beta"}},[a._v("#")]),a._v(" "),t("a",{attrs:{href:"/en/download/v0.99.3.200921"}},[a._v("Kangaroo v0.99.3 (Beta)")])]),a._v(" "),t("ol",[t("li",[a._v("Refactor container and service module")]),a._v(" "),t("li",[a._v("Improve the performance of content and query view")]),a._v(" "),t("li",[a._v("Update datagrid toolbar icon")]),a._v(" "),t("li",[a._v("Fixed: can't open mariadb database")])]),a._v(" "),t("h2",{attrs:{id:"kangaroo-v0-99-2-beta"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#kangaroo-v0-99-2-beta"}},[a._v("#")]),a._v(" "),t("a",{attrs:{href:"/en/download/v0.99.2.200907"}},[a._v("Kangaroo v0.99.2 (Beta)")])]),a._v(" "),t("ol",[t("li",[a._v("Improve Mac OS X installer and portable packages")]),a._v(" "),t("li",[a._v("Improve tools page locale support")]),a._v(" "),t("li",[a._v("Update Chinese(zh-CN/zh-TW/zh-HK/zh-SG)")]),a._v(" "),t("li",[a._v("Fixed: 提示 MySQL server has done away 后,没有自动\\手动重连 #63")]),a._v(" "),t("li",[a._v("Fixed: plugin caching sha2 password could not be loaded #64")]),a._v(" "),t("li",[a._v("Fixed: console warning message")])]),a._v(" "),t("h2",{attrs:{id:"kangaroo-v0-99-1-beta"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#kangaroo-v0-99-1-beta"}},[a._v("#")]),a._v(" "),t("a",{attrs:{href:"/en/download/v0.99.1.200824"}},[a._v("Kangaroo v0.99.1 (Beta)")])]),a._v(" "),t("ol",[t("li",[a._v("Improve designer to notify user save change")]),a._v(" "),t("li",[a._v("Improve message dialog to show title")]),a._v(" "),t("li",[a._v("Improve preview tab to show change only")]),a._v(" "),t("li",[a._v("Update SQLite/MySQL/PostgreSQL meta model")]),a._v(" "),t("li",[a._v("Improve windows installer to add license and language support")]),a._v(" "),t("li",[a._v("Make kangaroo portable #59")])]),a._v(" "),t("h2",{attrs:{id:"kangaroo-v0-33-1-dev"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#kangaroo-v0-33-1-dev"}},[a._v("#")]),a._v(" "),t("a",{attrs:{href:"/en/download/v0.33.1.200817"}},[a._v("Kangaroo v0.33.1 (Dev)")])]),a._v(" "),t("ol",[t("li",[a._v("Update title bar and tab bar CSS style")]),a._v(" "),t("li",[a._v("Improve date&time picker")]),a._v(" "),t("li",[a._v("Improve date&time renderer")]),a._v(" "),t("li",[a._v("Implement date&time editing in grid and form")]),a._v(" "),t("li",[a._v("Update windows deploy script to include libpeas loaders")]),a._v(" "),t("li",[a._v("Update meson script to add dependencies(pdf/draw/map)")]),a._v(" "),t("li",[a._v("Update meson script to improve debug support")]),a._v(" "),t("li",[a._v("Fixed: can't show animation image(.gif)")])]),a._v(" "),t("h2",{attrs:{id:"kangaroo-v0-32-1-dev"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#kangaroo-v0-32-1-dev"}},[a._v("#")]),a._v(" "),t("a",{attrs:{href:"/en/download/v0.32.1.200810"}},[a._v("Kangaroo v0.32.1 (Dev)")])]),a._v(" "),t("ol",[t("li",[a._v("Implement to generate W3C html document")]),a._v(" "),t("li",[a._v("Implement to generate markdown document")]),a._v(" "),t("li",[a._v("Update import/export icon image")])]),a._v(" "),t("div",[t("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),a._v(" "),t("script2",{attrs:{type:"text/javascript"}},[a._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),a._v(" "),t("h2",{attrs:{id:"kangaroo-v0-31-1-dev"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#kangaroo-v0-31-1-dev"}},[a._v("#")]),a._v(" "),t("a",{attrs:{href:"/en/download/v0.31.1.200803"}},[a._v("Kangaroo v0.31.1 (Dev)")])]),a._v(" "),t("ol",[t("li",[a._v("Implement BLOB content identity")]),a._v(" "),t("li",[a._v("Implement SQLite BLOB column handle(import / export / set null)")]),a._v(" "),t("li",[a._v("Implement MySQL BLOB column handle(import / export / set null)")]),a._v(" "),t("li",[a._v("Implement PostgreSQL BLOB column handle(import / export / set null)")]),a._v(" "),t("li",[a._v("Implement view BLOB data as string")]),a._v(" "),t("li",[a._v("Apply tight style for find and replace box")])]),a._v(" "),t("h2",{attrs:{id:"kangaroo-v0-30-1-dev"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#kangaroo-v0-30-1-dev"}},[a._v("#")]),a._v(" "),t("a",{attrs:{href:"/en/download/v0.30.1.200727"}},[a._v("Kangaroo v0.30.1 (Dev)")])]),a._v(" "),t("ol",[t("li",[a._v("Add app relate plugin search path")]),a._v(" "),t("li",[a._v("Add data viewer pane and button")]),a._v(" "),t("li",[a._v("Implement text and image vierer")]),a._v(" "),t("li",[a._v("Update button with flat style")])]),a._v(" "),t("h2",{attrs:{id:"kangaroo-v0-29-1-dev"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#kangaroo-v0-29-1-dev"}},[a._v("#")]),a._v(" "),t("a",{attrs:{href:"/en/download/v0.29.1.200713"}},[a._v("Kangaroo v0.29.1 (Dev)")])]),a._v(" "),t("ol",[t("li",[a._v("Implement plugin system")]),a._v(" "),t("li",[a._v("Implement a example plugin")]),a._v(" "),t("li",[a._v("Update ArchLinux and MacOSX installer")]),a._v(" "),t("li",[a._v("Update protable package(more *nixable)")])]),a._v(" "),t("h2",{attrs:{id:"kangaroo-v0-28-1-dev"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#kangaroo-v0-28-1-dev"}},[a._v("#")]),a._v(" "),t("a",{attrs:{href:"/en/download/v0.28.1.200629"}},[a._v("Kangaroo v0.28.1 (Dev)")])]),a._v(" "),t("ol",[t("li",[a._v("Implement search and replace function")]),a._v(" "),t("li",[a._v("Update the Chinese translation")])]),a._v(" "),t("div",[t("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),a._v(" "),t("script2",{attrs:{type:"text/javascript"}},[a._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),a._v(" "),t("h2",{attrs:{id:"kangaroo-v0-27-1-beta"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#kangaroo-v0-27-1-beta"}},[a._v("#")]),a._v(" "),t("a",{attrs:{href:"/en/download/v0.27.1.200622"}},[a._v("Kangaroo v0.27.1 (Beta)")])]),a._v(" "),t("ol",[t("li",[a._v("Improve intellisense data for PostgreSQL")]),a._v(" "),t("li",[a._v("Improve auto-completion style(icon/filter by input)")]),a._v(" "),t("li",[a._v("Add function's call tip(highlighting/bold/auto location/data)")]),a._v(" "),t("li",[a._v("Implement copy focused column name(short/full)")]),a._v(" "),t("li",[a._v("Implement copy datagrid column name(TSV/CSV)")]),a._v(" "),t("li",[a._v("Update package name")]),a._v(" "),t("li",[a._v("Update the Chinese translation")])]),a._v(" "),t("h2",{attrs:{id:"kangaroo-v0-26-1-dev"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#kangaroo-v0-26-1-dev"}},[a._v("#")]),a._v(" "),t("a",{attrs:{href:"/en/download/v0.26.1.200615"}},[a._v("Kangaroo v0.26.1 (Dev)")])]),a._v(" "),t("ol",[t("li",[a._v("Add intellisense data support(SQLite/MySQL/PostgreSQL)")]),a._v(" "),t("li",[a._v("Add auto completion for code view(v1)")])]),a._v(" "),t("h2",{attrs:{id:"kangaroo-v0-25-1-beta"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#kangaroo-v0-25-1-beta"}},[a._v("#")]),a._v(" "),t("a",{attrs:{href:"/en/download/v0.25.1.200601"}},[a._v("Kangaroo v0.25.1 (Beta)")])]),a._v(" "),t("ol",[t("li",[a._v("Add context menu for workspace notebook widget")]),a._v(" "),t("li",[a._v("Add new query menu for object tree item(database/schema).")]),a._v(" "),t("li",[a._v("Update the Chinese translation(zh-CN/zh-TW/zh-HK/zh-SG).")]),a._v(" "),t("li",[a._v("Fixed: PostgreSQL 12: tables not visible #46")]),a._v(" "),t("li",[a._v("Fixed: MariaDB 10.5: Unknown column 'cons.ENFORCED' in 'field list' #47")]),a._v(" "),t("li",[a._v("Fixed: PostgreSQL 12: column c.consrc does not exist #48")]),a._v(" "),t("li",[a._v("Fixed: PostgreSQL 11.7 / 9.6: row 1 out of range(0-0) #49")]),a._v(" "),t("li",[a._v("Fixed: MySQL 5.7.30: Unknown table 'CHECK_CONSTRAINTS' in information_schema #50")]),a._v(" "),t("li",[a._v("Fixed: PostgreSQL 9.6: column c.relispartition does not exist #51")]),a._v(" "),t("li",[a._v("Fixed: PostgreSQL: invalid schemas in database")]),a._v(" "),t("li",[a._v("Fixed: display invalid while column name has underline(_)")])]),a._v(" "),t("h2",{attrs:{id:"kangaroo-v0-24-1-dev"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#kangaroo-v0-24-1-dev"}},[a._v("#")]),a._v(" "),t("a",{attrs:{href:"/en/download/v0.24.1.200525"}},[a._v("Kangaroo v0.24.1 (Dev)")])]),a._v(" "),t("ol",[t("li",[a._v("Add SQL Formatter to beautify and minify sql code.")]),a._v(" "),t("li",[a._v("Add archlinux installer(based on HowardZorn's working).")]),a._v(" "),t("li",[a._v("Add macos installer")])]),a._v(" "),t("div",[t("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),a._v(" "),t("script2",{attrs:{type:"text/javascript"}},[a._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),a._v(" "),t("h2",{attrs:{id:"kangaroo-v0-23-1-beta"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#kangaroo-v0-23-1-beta"}},[a._v("#")]),a._v(" "),t("a",{attrs:{href:"/en/download/v0.23.1.200518"}},[a._v("Kangaroo v0.23.1 (Beta)")])]),a._v(" "),t("ol",[t("li",[a._v("Improve date / datetime picker widget.")]),a._v(" "),t("li",[a._v("Improve app title bar to add background image(color).")]),a._v(" "),t("li",[a._v("Improve data grid column title.")]),a._v(" "),t("li",[a._v("Improve Chinese translations.")]),a._v(" "),t("li",[a._v("Fixed: can't update date/time/datetime type.")]),a._v(" "),t("li",[a._v("Fixed: can't update float value")]),a._v(" "),t("li",[a._v("Fixed: can't update numeric value")]),a._v(" "),t("li",[a._v("Fixed: MySQL: can't save char column data")]),a._v(" "),t("li",[a._v("Fixed: PostgreSQL: invalid object name in sql")]),a._v(" "),t("li",[a._v("Fixed: invalid toolbar state while swtich to grid.")])]),a._v(" "),t("h2",{attrs:{id:"kangaroo-v0-22-1-beta"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#kangaroo-v0-22-1-beta"}},[a._v("#")]),a._v(" "),t("a",{attrs:{href:"/en/download/v0.22.1.200511"}},[a._v("Kangaroo v0.22.1 (Beta)")])]),a._v(" "),t("ol",[t("li",[a._v("Add Chinese(zh-CN/zh-TW/zh-HK/zh-SG) translation.")]),a._v(" "),t("li",[a._v("SQLite: add file extension(.sqlite) for new database.")]),a._v(" "),t("li",[a._v("Improve experience for designer / fresh / delete operation")]),a._v(" "),t("li",[a._v("Improve deploy and installer script for automation.")]),a._v(" "),t("li",[a._v("Fixed: crash while renaming object.")]),a._v(" "),t("li",[a._v("Fixed: crash while deleting object.")]),a._v(" "),t("li",[a._v("Fixed: crash while saving schema for sqlite")]),a._v(" "),t("li",[a._v("Fixed: can't append row on the empty table")]),a._v(" "),t("li",[a._v("Fixed: can't save appended row in live mode")])]),a._v(" "),t("h2",{attrs:{id:"kangaroo-v0-21-1-beta"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#kangaroo-v0-21-1-beta"}},[a._v("#")]),a._v(" "),t("a",{attrs:{href:"/en/download/v0.21.1.200504"}},[a._v("Kangaroo v0.21.1 (Beta)")])]),a._v(" "),t("ol",[t("li",[a._v("Refactor the entire datagrid to make great experience.")]),a._v(" "),t("li",[a._v("Support 3 kind of mode: LIVE / CACHE / TRANSACTION")]),a._v(" "),t("li",[a._v("Support copy and paste multi rows in data grid.")]),a._v(" "),t("li",[a._v("Chnage mode automatically while paste multi rows.")]),a._v(" "),t("li",[a._v("fixed: where statement error in query builder")])]),a._v(" "),t("h2",{attrs:{id:"kangaroo-v0-20-1-dev"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#kangaroo-v0-20-1-dev"}},[a._v("#")]),a._v(" "),t("a",{attrs:{href:"/en/download/v0.20.1.200420"}},[a._v("Kangaroo v0.20.1 (Dev)")])]),a._v(" "),t("ol",[t("li",[a._v("Implement copy function in the datagrid.")]),a._v(" "),t("li",[a._v("refactor context menu of structure designer.")]),a._v(" "),t("li",[a._v("Implement clone function for designer form.")]),a._v(" "),t("li",[a._v("Implement append function for designer form.")]),a._v(" "),t("li",[a._v("Support multi rows of delete/move up/move down function.")]),a._v(" "),t("li",[a._v("Implement copy function for designer form.")]),a._v(" "),t("li",[a._v("Implement cut function for designer form.")]),a._v(" "),t("li",[a._v("Implement paste function for designer form.")]),a._v(" "),t("li",[a._v("Improve text performance of datagrid.")])]),a._v(" "),t("div",[t("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),a._v(" "),t("script2",{attrs:{type:"text/javascript"}},[a._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),a._v(" "),t("h2",{attrs:{id:"kangaroo-v0-19-1-dev"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#kangaroo-v0-19-1-dev"}},[a._v("#")]),a._v(" "),t("a",{attrs:{href:"/en/download/v0.19.1.200413"}},[a._v("Kangaroo v0.19.1 (Dev)")])]),a._v(" "),t("ol",[t("li",[a._v("Implement copy object name menu on dbtree.")]),a._v(" "),t("li",[a._v("Implement copy as SQL(Insert/Update/Delete) in the datagrid.")]),a._v(" "),t("li",[a._v("Implement copy as TSV in the datagrid")]),a._v(" "),t("li",[a._v("Implement copy as CSV in the datagrid")]),a._v(" "),t("li",[a._v("Implement copy as PHP array in the datagrid")]),a._v(" "),t("li",[a._v("Implement copy as JSON in the datagrid")]),a._v(" "),t("li",[a._v("Improve paned widget border style.")]),a._v(" "),t("li",[a._v("fixed: crashed while stringize the blob column")]),a._v(" "),t("li",[a._v("fixed: crashed while no primary key")]),a._v(" "),t("li",[a._v("fixed: crashed while primary key contain character(_)")]),a._v(" "),t("li",[a._v("fixed: warning message while column with empty value")]),a._v(" "),t("li",[a._v("fixed: warning message while invalid calling(to_string)")])]),a._v(" "),t("h2",{attrs:{id:"kangaroo-v0-18-1-dev"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#kangaroo-v0-18-1-dev"}},[a._v("#")]),a._v(" "),t("a",{attrs:{href:"/en/download/v0.18.1.200406"}},[a._v("Kangaroo v0.18.1 (Dev)")])]),a._v(" "),t("ol",[t("li",[a._v("encrypt user password to keep user passwords safe.")]),a._v(" "),t("li",[a._v("Implement insert, clone and delete functionality in the datagrid.")]),a._v(" "),t("li",[a._v("Implement connection clone functionality in the start view")]),a._v(" "),t("li",[a._v("Implement dump sql functionality on the dbtree")]),a._v(" "),t("li",[a._v("Implement table schema editor on the dbtree")]),a._v(" "),t("li",[a._v("Implement refresh functionality on the dbtree")]),a._v(" "),t("li",[a._v("Improve workspace tab behavior(auto hide for one)")]),a._v(" "),t("li",[a._v("fixed: return key behavior invalid on the dbtree")]),a._v(" "),t("li",[a._v("fixed: crashed while open table with null value")])]),a._v(" "),t("h2",{attrs:{id:"kangaroo-v0-17-0-dev"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#kangaroo-v0-17-0-dev"}},[a._v("#")]),a._v(" "),t("a",{attrs:{href:"/en/download/v0.17.0.200323"}},[a._v("Kangaroo v0.17.0 (Dev)")])]),a._v(" "),t("ol",[t("li",[a._v("Support connection over SSH tunnel (Windows, Linux/Unix and MacOS)")]),a._v(" "),t("li",[a._v("Add testing support for connection dialog")]),a._v(" "),t("li",[a._v("Refactor context menu of datagrid")]),a._v(" "),t("li",[a._v("Add dump sql (file and text) menu for dbtree")]),a._v(" "),t("li",[a._v("Implement selection menu of datagrid")]),a._v(" "),t("li",[a._v("Implement goto cell menu of datagrid")]),a._v(" "),t("li",[a._v("Fixed: crashed while switching grid to form.")])]),a._v(" "),t("h2",{attrs:{id:"kangaroo-v0-16-0-dev"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#kangaroo-v0-16-0-dev"}},[a._v("#")]),a._v(" "),t("a",{attrs:{href:"/en/download/v0.16.0.200316"}},[a._v("Kangaroo v0.16.0 (Dev)")])]),a._v(" "),t("ol",[t("li",[a._v("Support SSH tunnel(Windows not yet pass test).")]),a._v(" "),t("li",[a._v("Support input page number to switch page")]),a._v(" "),t("li",[a._v("Improve: update layout of switch widget on dialog")]),a._v(" "),t("li",[a._v("Fixed: can't open link on windows")]),a._v(" "),t("li",[a._v("Fixed: log file index error")])]),a._v(" "),t("div",[t("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),a._v(" "),t("script2",{attrs:{type:"text/javascript"}},[a._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),a._v(" "),t("h2",{attrs:{id:"kangaroo-v0-15-0-dev"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#kangaroo-v0-15-0-dev"}},[a._v("#")]),a._v(" "),t("a",{attrs:{href:"/en/download/v0.15.0.200302"}},[a._v("Kangaroo v0.15.0 (Dev)")])]),a._v(" "),t("ol",[t("li",[a._v("Update and share openssl.vapi to keep user data safe.")]),a._v(" "),t("li",[a._v("Improve language support(kangaroo.pot, zh_Hans and zh_Hant)")]),a._v(" "),t("li",[a._v("Improve home view's web resource load performance")]),a._v(" "),t("li",[a._v("Apply proxy setting for loading web resource")]),a._v(" "),t("li",[a._v("Linux: change browser view to timeline text view")]),a._v(" "),t("li",[a._v("Use combobox widget instead entry for log file size")])]),a._v(" "),t("h2",{attrs:{id:"kangaroo-v0-14-0-dev"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#kangaroo-v0-14-0-dev"}},[a._v("#")]),a._v(" "),t("a",{attrs:{href:"/en/download/v0.14.0.200217"}},[a._v("Kangaroo v0.14.0 (Dev)")])]),a._v(" "),t("ol",[t("li",[a._v("SQLite: support to create new database")]),a._v(" "),t("li",[a._v("refactor database tree context menu")]),a._v(" "),t("li",[a._v("integrated with openssl to keep user's password safe")]),a._v(" "),t("li",[a._v("add pointer cursor for right panel icon")]),a._v(" "),t("li",[a._v("fixed: update workbench default size while first run")])]),a._v(" "),t("h2",{attrs:{id:"kangaroo-v0-13-0-dev"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#kangaroo-v0-13-0-dev"}},[a._v("#")]),a._v(" "),t("a",{attrs:{href:"/en/download/v0.13.0.200210"}},[a._v("Kangaroo v0.13.0 (Dev)")])]),a._v(" "),t("ol",[t("li",[a._v("apply data grid style setting")]),a._v(" "),t("li",[a._v("apply sql editor style setting")]),a._v(" "),t("li",[a._v("windows 32bit version support")]),a._v(" "),t("li",[a._v("implement SSH tunnel support(not yet integrate)")]),a._v(" "),t("li",[a._v("minor change for connection dialog UI")]),a._v(" "),t("li",[a._v("fixed: tool's icon incorrect on release version")])]),a._v(" "),t("h2",{attrs:{id:"kangaroo-v0-12-1-dev"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#kangaroo-v0-12-1-dev"}},[a._v("#")]),a._v(" "),t("a",{attrs:{href:"/en/download/v0.12.1.200120"}},[a._v("Kangaroo v0.12.1 (Dev)")])]),a._v(" "),t("ol",[t("li",[a._v("add setting dialog")]),a._v(" "),t("li",[a._v("add dark theme support")]),a._v(" "),t("li",[a._v("bind connection dialog with new setting model")]),a._v(" "),t("li",[a._v("update start view with new setting model")])]),a._v(" "),t("div",[t("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),a._v(" "),t("script2",{attrs:{type:"text/javascript"}},[a._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),a._v(" "),t("h2",{attrs:{id:"kangaroo-v0-11-1-dev"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#kangaroo-v0-11-1-dev"}},[a._v("#")]),a._v(" "),t("a",{attrs:{href:"/en/download/v0.11.1.200113"}},[a._v("Kangaroo v0.11.1 (Dev)")])]),a._v(" "),t("ol",[t("li",[a._v("redesign connection dialog to support SSH and SSL")]),a._v(" "),t("li",[a._v("add donate icon on home page(Paypal/Wechat/Alipay)")]),a._v(" "),t("li",[a._v("redesign configuration model and file(init --\x3e json)")]),a._v(" "),t("li",[a._v("Use symbolic icons in the Header Bar(#25)")]),a._v(" "),t("li",[a._v("fixed: edit data in grid will update all rows")])]),a._v(" "),t("h2",{attrs:{id:"kangaroo-v0-11-0-dev"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#kangaroo-v0-11-0-dev"}},[a._v("#")]),a._v(" "),t("a",{attrs:{href:"/en/download/v0.11.0.200106"}},[a._v("Kangaroo v0.11.0 (Dev)")])]),a._v(" "),t("ol",[t("li",[a._v("add app home page")]),a._v(" "),t("li",[a._v("reimplement DSV format engine")]),a._v(" "),t("li",[a._v("improve DSV compatible with other tools.")]),a._v(" "),t("li",[a._v("improve DSV option UI layout")]),a._v(" "),t("li",[a._v("improve date column editting support")]),a._v(" "),t("li",[a._v("fixed: generate sql statement incorrect.")]),a._v(" "),t("li",[a._v("fixed: crash while importing data")]),a._v(" "),t("li",[a._v("fixed: can't save data while editting on data grid")]),a._v(" "),t("li",[a._v("fixed: warning message about db tree")])]),a._v(" "),t("h2",{attrs:{id:"kangaroo-v0-10-0-dev"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#kangaroo-v0-10-0-dev"}},[a._v("#")]),a._v(" "),t("a",{attrs:{href:"/en/download/v0.10.0.191223"}},[a._v("Kangaroo v0.10.0 (Dev)")])]),a._v(" "),t("ol",[t("li",[a._v("add export assistant UI")]),a._v(" "),t("li",[a._v("batch export table to file.")]),a._v(" "),t("li",[a._v("support data formats(DSV/JSON/XML/HTML/Markdown/SQL)")]),a._v(" "),t("li",[a._v("support title for column(rename)")])]),a._v(" "),t("h2",{attrs:{id:"kangaroo-v0-9-5-dev"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#kangaroo-v0-9-5-dev"}},[a._v("#")]),a._v(" "),t("a",{attrs:{href:"/en/download/v0.9.5.191216"}},[a._v("Kangaroo v0.9.5 (Dev)")])]),a._v(" "),t("ol",[t("li",[a._v("import data from DSV format")]),a._v(" "),t("li",[a._v("import data from JSON format")]),a._v(" "),t("li",[a._v("import data from XML format")]),a._v(" "),t("li",[a._v("Rewritten export data as XML format with libxml2;")]),a._v(" "),t("li",[a._v("add export modules assistant UI")]),a._v(" "),t("li",[a._v("implement export format and table selection page")])]),a._v(" "),t("div",[t("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),a._v(" "),t("script2",{attrs:{type:"text/javascript"}},[a._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),a._v(" "),t("h2",{attrs:{id:"kangaroo-v0-9-4-dev"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#kangaroo-v0-9-4-dev"}},[a._v("#")]),a._v(" "),t("a",{attrs:{href:"/en/download/v0.9.4.191209"}},[a._v("Kangaroo v0.9.4 (Dev)")])]),a._v(" "),t("ol",[t("li",[a._v("add import summary page")]),a._v(" "),t("li",[a._v("add five kinds of import mode")]),a._v(" "),t("li",[a._v("import csv format data to table")]),a._v(" "),t("li",[a._v("fixed logo can't show on linux and macos platform")])]),a._v(" "),t("h2",{attrs:{id:"kangaroo-v0-9-3-dev"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#kangaroo-v0-9-3-dev"}},[a._v("#")]),a._v(" "),t("a",{attrs:{href:"/en/download/v0.9.3.191202"}},[a._v("Kangaroo v0.9.3 (Dev)")])]),a._v(" "),t("ol",[t("li",[a._v("implement column mapping function")])]),a._v(" "),t("h2",{attrs:{id:"kangaroo-v0-9-2-dev"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#kangaroo-v0-9-2-dev"}},[a._v("#")]),a._v(" "),t("a",{attrs:{href:"/en/download/v0.9.2.191125"}},[a._v("Kangaroo v0.9.2 (Dev)")])]),a._v(" "),t("ol",[t("li",[a._v("Import data from file(dsv/xml/json) #19\n"),t("ul",[t("li",[a._v("implement the import UI(format, encoding and preview)")]),a._v(" "),t("li",[a._v("implement the import UI(DSV format option)")]),a._v(" "),t("li",[a._v("implement the import UI(data preview)")]),a._v(" "),t("li",[a._v("implement the import UI(column mapping)")]),a._v(" "),t("li",[a._v("implement the import UI(process progress)")]),a._v(" "),t("li",[a._v("implement DSV format parse and preview")])])])]),a._v(" "),t("h2",{attrs:{id:"kangaroo-v0-9-1-dev"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#kangaroo-v0-9-1-dev"}},[a._v("#")]),a._v(" "),t("a",{attrs:{href:"/en/download/v0.9.1.191118"}},[a._v("Kangaroo v0.9.1 (Dev)")])]),a._v(" "),t("ol",[t("li",[a._v("Export data to file(dsv(csv/tsv/...)/xml/json/sql/md/html) #18\n"),t("ul",[t("li",[a._v("Export data to DSV format(CSV/TSV/...)")]),a._v(" "),t("li",[a._v("Export data to JSON format")]),a._v(" "),t("li",[a._v("Export data to XML format")]),a._v(" "),t("li",[a._v("Export data to HTML format")]),a._v(" "),t("li",[a._v("Export data to SQL format(INSERT)")]),a._v(" "),t("li",[a._v("Export data to Markdown format")])])]),a._v(" "),t("li",[a._v("Improve file filter of save dialog")])]),a._v(" "),t("h2",{attrs:{id:"kangaroo-v0-9-0-dev"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#kangaroo-v0-9-0-dev"}},[a._v("#")]),a._v(" "),t("a",{attrs:{href:"/en/download/v0.9.0.191111"}},[a._v("Kangaroo v0.9.0 (Dev)")])]),a._v(" "),t("ol",[t("li",[a._v("Edit table schema and save to database #5")]),a._v(" "),t("li",[a._v("Export data to JSON and DSV format")])]),a._v(" "),t("div",[t("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),a._v(" "),t("script2",{attrs:{type:"text/javascript"}},[a._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),a._v(" "),t("h2",{attrs:{id:"kangaroo-v0-8-5-dev"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#kangaroo-v0-8-5-dev"}},[a._v("#")]),a._v(" "),t("a",{attrs:{href:"/en/download/v0.8.5.191104"}},[a._v("Kangaroo v0.8.5 (Dev)")])]),a._v(" "),t("ol",[t("li",[a._v("Edit table schema and save to database(SQLite and PostgreSQL preview) #5")]),a._v(" "),t("li",[a._v("Add export data formats UI and interfaces")]),a._v(" "),t("li",[a._v("Update tab's title while save the new table")])]),a._v(" "),t("h2",{attrs:{id:"kangaroo-v0-8-4-dev"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#kangaroo-v0-8-4-dev"}},[a._v("#")]),a._v(" "),t("a",{attrs:{href:"/en/download/v0.8.4.191028"}},[a._v("Kangaroo v0.8.4 (Dev)")])]),a._v(" "),t("ol",[t("li",[a._v("Rearrange db tree and UI #17")]),a._v(" "),t("li",[a._v("Add refresh menu on db tree")]),a._v(" "),t("li",[a._v("Implement multiple databases support")]),a._v(" "),t("li",[a._v("Edit table schema and save to database(MySQL Preview) #5")])]),a._v(" "),t("h2",{attrs:{id:"kangaroo-v0-8-3-dev"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#kangaroo-v0-8-3-dev"}},[a._v("#")]),a._v(" "),t("a",{attrs:{href:"/en/download/v0.8.3.191021"}},[a._v("Kangaroo v0.8.3 (Dev)")])]),a._v(" "),t("ol",[t("li",[a._v("新建连接时出现插件未加载错误 #12 "),t("br"),a._v("\nLoad plugin failed while create new connection #12")]),a._v(" "),t("li",[a._v("Add MacOS compilation support #13")]),a._v(" "),t("li",[a._v("refactor database model to improve interoperability")])]),a._v(" "),t("h2",{attrs:{id:"kangaroo-v0-8-2-dev"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#kangaroo-v0-8-2-dev"}},[a._v("#")]),a._v(" "),t("a",{attrs:{href:"/en/download/v0.8.2.191014"}},[a._v("Kangaroo v0.8.2 (Dev)")])]),a._v(" "),t("ol",[t("li",[a._v("improve: field selection dialog support to select fields by value(#9)")]),a._v(" "),t("li",[a._v("improve: schema designer support to navigate with Tab key(#3)")]),a._v(" "),t("li",[a._v("fixed: fields expression dialog reload value failed(#10)")]),a._v(" "),t("li",[a._v("fixed: missing windows shortcut icon(start menu and desktop) (#7)")]),a._v(" "),t("li",[a._v("fixed: missing syntax highlighting support(#8)")]),a._v(" "),t("li",[a._v("fixed: load data in form view failed(#11)")])]),a._v(" "),t("div",[t("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),a._v(" "),t("script2",{attrs:{type:"text/javascript"}},[a._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),a._v(" "),t("h2",{attrs:{id:"kangaroo-v0-8-1-dev"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#kangaroo-v0-8-1-dev"}},[a._v("#")]),a._v(" "),t("a",{attrs:{href:"/en/download/v0.8.1.190930"}},[a._v("Kangaroo v0.8.1 (Dev)")])]),a._v(" "),t("ol",[t("li",[a._v("improve: generate exact correct editing sql")]),a._v(" "),t("li",[a._v("refactor: add source code editor module")]),a._v(" "),t("li",[a._v("improve SQLite schema sql builder")]),a._v(" "),t("li",[a._v("fixed: text editor and code editor can't show blank line")]),a._v(" "),t("li",[a._v("fixed: get string failed while create data row(console)")]),a._v(" "),t("li",[a._v("fixed: console critical message while editing schema")])]),a._v(" "),t("h2",{attrs:{id:"kangaroo-v0-8-0-dev"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#kangaroo-v0-8-0-dev"}},[a._v("#")]),a._v(" "),t("a",{attrs:{href:"/en/download/v0.8.0.190923"}},[a._v("Kangaroo v0.8.0 (Dev)")])]),a._v(" "),t("ol",[t("li",[a._v("implement the builder of PostgreSQL(11.0)")]),a._v(" "),t("li",[a._v("save table schema to database(create only)")]),a._v(" "),t("li",[a._v("update build script: hide app console window")]),a._v(" "),t("li",[a._v("update windows installer: add MySQL and PostgreSQL client library")]),a._v(" "),t("li",[a._v("update the links on the about window")]),a._v(" "),t("li",[a._v("improve single line edit control(auto focus)")]),a._v(" "),t("li",[a._v("update gui cursor while busy")])]),a._v(" "),t("h2",{attrs:{id:"kangaroo-v0-7-2-dev"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#kangaroo-v0-7-2-dev"}},[a._v("#")]),a._v(" "),t("a",{attrs:{href:"/en/download/v0.7.2.190916"}},[a._v("Kangaroo v0.7.2 (Dev)")])]),a._v(" "),t("ol",[t("li",[a._v("Implement loader of PostgreSQL 11(full version)")]),a._v(" "),t("li",[a._v("Improve designer form of PostgreSQL 11")]),a._v(" "),t("li",[a._v("refactor content of Kangaroo repo")]),a._v(" "),t("li",[a._v("create new site: dbkangaroo.github.io")]),a._v(" "),t("li",[a._v("add windows installer script")])]),a._v(" "),t("h2",{attrs:{id:"kangaroo-v0-6-0-dev"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#kangaroo-v0-6-0-dev"}},[a._v("#")]),a._v(" Kangaroo v0.6.0 (Dev)")]),a._v(" "),t("ol",[t("li",[a._v("support edit and save in table")]),a._v(" "),t("li",[a._v("support edit and save in form")]),a._v(" "),t("li",[a._v("support i18n and l10n")]),a._v(" "),t("li",[a._v("support chinese language")])]),a._v(" "),t("h2",{attrs:{id:"kangaroo-v0-4-0-dev"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#kangaroo-v0-4-0-dev"}},[a._v("#")]),a._v(" Kangaroo v0.4.0 (Dev)")]),a._v(" "),t("ol",[t("li",[a._v("support data pagination")]),a._v(" "),t("li",[a._v("implemtnt query builder and apply it")]),a._v(" "),t("li",[a._v("export data to file(.csv)")]),a._v(" "),t("li",[a._v("show system log in output view")]),a._v(" "),t("li",[a._v("edit and execute sql")]),a._v(" "),t("li",[a._v("support multiple results")])]),a._v(" "),t("h2",{attrs:{id:"kangaroo-v0-2-0-dev"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#kangaroo-v0-2-0-dev"}},[a._v("#")]),a._v(" Kangaroo v0.2.0 (Dev)")]),a._v(" "),t("ol",[t("li",[a._v("add connection setup ui")]),a._v(" "),t("li",[a._v("add connection manager")]),a._v(" "),t("li",[a._v("show database structure tree in data panel")]),a._v(" "),t("li",[a._v("show data in tree view")])]),a._v(" "),t("div",[t("script2",{attrs:{type:"text/javascript",async:"true",src:"https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"}}),a._v(" "),t("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),a._v(" "),t("script2",{attrs:{type:"text/javascript"}},[a._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1)])}),[],!1,null,null,null);e.default=v.exports}}]); \ No newline at end of file diff --git a/assets/js/34.521e50c4.js b/assets/js/34.521e50c4.js new file mode 100644 index 000000000..7a6c62c90 --- /dev/null +++ b/assets/js/34.521e50c4.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[34],{613:function(t,e,s){"use strict";s.r(e);var a=s(13),l=Object(a.a)({},(function(){var t=this,e=t.$createElement,s=t._self._c||e;return s("ContentSlotsDistributor",{attrs:{"slot-key":t.$parent.slotKey}},[s("h1",{attrs:{id:"database-model"}},[s("a",{staticClass:"header-anchor",attrs:{href:"#database-model"}},[t._v("#")]),t._v(" Database model")]),t._v(" "),s("div",{staticClass:"custom-block danger"},[s("p",{staticClass:"custom-block-title"},[t._v("modeling is in developing")]),t._v(" "),s("p",[t._v("Due to the missing module of the SQL parser,can't rebuild ER model of structure exactly, it is on the way to developing.")])]),t._v(" "),s("Vssue",{attrs:{"issue-id":10,title:t.$title}})],1)}),[],!1,null,null,null);e.default=l.exports}}]); \ No newline at end of file diff --git a/assets/js/35.ad464003.js b/assets/js/35.ad464003.js new file mode 100644 index 000000000..96de485a9 --- /dev/null +++ b/assets/js/35.ad464003.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[35],{615:function(t,s,e){"use strict";e.r(s);var i=e(13),r=Object(i.a)({},(function(){var t=this.$createElement,s=this._self._c||t;return s("ContentSlotsDistributor",{attrs:{"slot-key":this.$parent.slotKey}},[s("h1",{attrs:{id:"schema-designer"}},[s("a",{staticClass:"header-anchor",attrs:{href:"#schema-designer"}},[this._v("#")]),this._v(" Schema designer")]),this._v(" "),s("Vssue",{attrs:{"issue-id":8,title:this.$title}})],1)}),[],!1,null,null,null);s.default=r.exports}}]); \ No newline at end of file diff --git a/assets/js/36.e60e9e84.js b/assets/js/36.e60e9e84.js new file mode 100644 index 000000000..55ab7b476 --- /dev/null +++ b/assets/js/36.e60e9e84.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[36],{616:function(t,s,e){"use strict";e.r(s);var i=e(13),r=Object(i.a)({},(function(){var t=this.$createElement,s=this._self._c||t;return s("ContentSlotsDistributor",{attrs:{"slot-key":this.$parent.slotKey}},[s("h1",{attrs:{id:"view-designer"}},[s("a",{staticClass:"header-anchor",attrs:{href:"#view-designer"}},[this._v("#")]),this._v(" View designer")]),this._v(" "),s("div",{staticClass:"custom-block danger"},[s("p",{staticClass:"custom-block-title"},[this._v("View designer features alert")]),this._v(" "),s("p",[this._v("Due to the missing module of the SQL parser, Minify / Beautify / Visual SQL not support.")])])])}),[],!1,null,null,null);s.default=r.exports}}]); \ No newline at end of file diff --git a/assets/js/37.63fba01d.js b/assets/js/37.63fba01d.js new file mode 100644 index 000000000..f270110d6 --- /dev/null +++ b/assets/js/37.63fba01d.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[37],{617:function(t,r,e){"use strict";e.r(r);var a=e(13),o=Object(a.a)({},(function(){var t=this,r=t.$createElement,e=t._self._c||r;return e("ContentSlotsDistributor",{attrs:{"slot-key":t.$parent.slotKey}},[e("h1",{attrs:{id:"odbc-drivers"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#odbc-drivers"}},[t._v("#")]),t._v(" ODBC drivers")]),t._v(" "),e("h2",{attrs:{id:"third-party-odbc-drivers-free"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#third-party-odbc-drivers-free"}},[t._v("#")]),t._v(" Third-party ODBC drivers(free)")]),t._v(" "),e("p",[t._v("List some ODBC drivers and it's download link")]),t._v(" "),e("table",[e("thead",[e("tr",[e("th",[t._v("ODBC Components")]),t._v(" "),e("th",[t._v("Windows")]),t._v(" "),e("th",[t._v("Linux")]),t._v(" "),e("th",[t._v("macOS")])])]),t._v(" "),e("tbody",[e("tr",[e("td",[t._v("ODBC Driver Manager")]),t._v(" "),e("td",[t._v("Built-in")]),t._v(" "),e("td",[e("a",{attrs:{href:"http://www.unixodbc.org/",target:"_blank",rel:"noopener noreferrer"}},[t._v("UnixODBC"),e("OutboundLink")],1),t._v(" / "),e("a",{attrs:{href:"http://www.iodbc.org/dataspace/doc/iodbc/wiki/iodbcWiki/Downloads",target:"_blank",rel:"noopener noreferrer"}},[t._v("iODBC"),e("OutboundLink")],1)]),t._v(" "),e("td",[e("a",{attrs:{href:"http://www.unixodbc.org/",target:"_blank",rel:"noopener noreferrer"}},[t._v("UnixODBC"),e("OutboundLink")],1),t._v(" / "),e("a",{attrs:{href:"http://www.iodbc.org/dataspace/doc/iodbc/wiki/iodbcWiki/Downloads",target:"_blank",rel:"noopener noreferrer"}},[t._v("iODBC"),e("OutboundLink")],1)])]),t._v(" "),e("tr",[e("td",[t._v("Access 2010")]),t._v(" "),e("td",[e("a",{attrs:{href:"https://www.microsoft.com/en-us/download/confirmation.aspx?id=13255&6B49FDFB-8E5B-4B07-BC31-15695C5A2143=1",target:"_blank",rel:"noopener noreferrer"}},[t._v("Official"),e("OutboundLink")],1)]),t._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/mdbtools/mdbtools",target:"_blank",rel:"noopener noreferrer"}},[t._v("LibMDBODBC"),e("OutboundLink")],1)]),t._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/mdbtools/mdbtools",target:"_blank",rel:"noopener noreferrer"}},[t._v("LibMDBODBC"),e("OutboundLink")],1)])]),t._v(" "),e("tr",[e("td",[t._v("Access 2016")]),t._v(" "),e("td",[e("a",{attrs:{href:"https://www.microsoft.com/en-us/download/confirmation.aspx?id=54920&6B49FDFB-8E5B-4B07-BC31-15695C5A2143=1",target:"_blank",rel:"noopener noreferrer"}},[t._v("Official"),e("OutboundLink")],1)]),t._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/mdbtools/mdbtools",target:"_blank",rel:"noopener noreferrer"}},[t._v("LibMDBODBC"),e("OutboundLink")],1)]),t._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/mdbtools/mdbtools",target:"_blank",rel:"noopener noreferrer"}},[t._v("LibMDBODBC"),e("OutboundLink")],1)])]),t._v(" "),e("tr",[e("td",[t._v("SQLite (x86-64)")]),t._v(" "),e("td",[e("a",{attrs:{href:"https://kangaroo.awaysoft.com/downloads/odbc/sqlite-odbc-x64.exe",target:"_blank",rel:"noopener noreferrer"}},[t._v("Server1"),e("OutboundLink")],1),t._v(" "),e("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/odbc/sqlite-odbc-x64.exe",target:"_blank",rel:"noopener noreferrer"}},[t._v("Server2"),e("OutboundLink")],1),t._v(" "),e("a",{attrs:{href:"http://www.ch-werner.de/sqliteodbc/sqliteodbc_w64.exe",target:"_blank",rel:"noopener noreferrer"}},[t._v("Official"),e("OutboundLink")],1)]),t._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/softace/sqliteodbc",target:"_blank",rel:"noopener noreferrer"}},[t._v("SQLite ODBC"),e("OutboundLink")],1)]),t._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/softace/sqliteodbc",target:"_blank",rel:"noopener noreferrer"}},[t._v("SQLite ODBC"),e("OutboundLink")],1)])]),t._v(" "),e("tr",[e("td",[t._v("MySQL (x86-64)")]),t._v(" "),e("td",[e("a",{attrs:{href:"https://kangaroo.awaysoft.com/downloads/odbc/mysql-odbc-x64.msi",target:"_blank",rel:"noopener noreferrer"}},[t._v("Server1"),e("OutboundLink")],1),t._v(" "),e("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/odbc/mysql-odbc-x64.msi",target:"_blank",rel:"noopener noreferrer"}},[t._v("Server2"),e("OutboundLink")],1),t._v(" "),e("a",{attrs:{href:"https://dev.mysql.com/downloads/connector/odbc/",target:"_blank",rel:"noopener noreferrer"}},[t._v("Official"),e("OutboundLink")],1)]),t._v(" "),e("td",[e("a",{attrs:{href:"https://dev.mysql.com/downloads/connector/odbc/",target:"_blank",rel:"noopener noreferrer"}},[t._v("Official"),e("OutboundLink")],1)]),t._v(" "),e("td",[e("a",{attrs:{href:"https://dev.mysql.com/downloads/connector/odbc/",target:"_blank",rel:"noopener noreferrer"}},[t._v("Official"),e("OutboundLink")],1)])]),t._v(" "),e("tr",[e("td",[t._v("MariaDB (x86-64)")]),t._v(" "),e("td",[e("a",{attrs:{href:"https://kangaroo.awaysoft.com/downloads/odbc/mariadb-odbc-x64.msi",target:"_blank",rel:"noopener noreferrer"}},[t._v("Server1"),e("OutboundLink")],1),t._v(" "),e("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/odbc/mariadb-odbc-x64.msi",target:"_blank",rel:"noopener noreferrer"}},[t._v("Server2"),e("OutboundLink")],1),t._v(" "),e("a",{attrs:{href:"https://mariadb.com/downloads/connectors/connectors-data-access/odbc-connector/",target:"_blank",rel:"noopener noreferrer"}},[t._v("Official"),e("OutboundLink")],1)]),t._v(" "),e("td",[e("a",{attrs:{href:"https://mariadb.com/downloads/connectors/connectors-data-access/odbc-connector/",target:"_blank",rel:"noopener noreferrer"}},[t._v("Official"),e("OutboundLink")],1)]),t._v(" "),e("td",[e("a",{attrs:{href:"https://mariadb.com/downloads/connectors/connectors-data-access/odbc-connector/",target:"_blank",rel:"noopener noreferrer"}},[t._v("Official"),e("OutboundLink")],1)])]),t._v(" "),e("tr",[e("td",[t._v("PostgreSQL (x86-64)")]),t._v(" "),e("td",[e("a",{attrs:{href:"https://kangaroo.awaysoft.com/downloads/odbc/postgresql-odbc-x64.msi",target:"_blank",rel:"noopener noreferrer"}},[t._v("Server1"),e("OutboundLink")],1),t._v(" "),e("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/odbc/postgresql-odbc-x64.msi",target:"_blank",rel:"noopener noreferrer"}},[t._v("Server2"),e("OutboundLink")],1),t._v(" "),e("a",{attrs:{href:"https://ftp.postgresql.org/pub/odbc/versions/msi/psqlodbc_13_02_0000-x64.zip",target:"_blank",rel:"noopener noreferrer"}},[t._v("Official"),e("OutboundLink")],1)]),t._v(" "),e("td",[e("a",{attrs:{href:"https://www.postgresql.org/ftp/odbc/versions/",target:"_blank",rel:"noopener noreferrer"}},[t._v("Official"),e("OutboundLink")],1)]),t._v(" "),e("td",[e("a",{attrs:{href:"https://www.postgresql.org/ftp/odbc/versions/",target:"_blank",rel:"noopener noreferrer"}},[t._v("Official"),e("OutboundLink")],1)])]),t._v(" "),e("tr",[e("td",[t._v("SQL Server")]),t._v(" "),e("td",[e("a",{attrs:{href:"https://download.microsoft.com/download/1/a/4/1a4a49b8-9fe6-4237-be0d-a6b8f2d559b5/en-US/18.0.1.1/x64/msodbcsql.msi",target:"_blank",rel:"noopener noreferrer"}},[t._v("Official"),e("OutboundLink")],1)]),t._v(" "),e("td",[e("a",{attrs:{href:"https://docs.microsoft.com/en-us/sql/connect/odbc/linux-mac/installing-the-microsoft-odbc-driver-for-sql-server",target:"_blank",rel:"noopener noreferrer"}},[t._v("Official"),e("OutboundLink")],1)]),t._v(" "),e("td",[e("a",{attrs:{href:"https://docs.microsoft.com/en-us/sql/connect/odbc/linux-mac/install-microsoft-odbc-driver-sql-server-macos?view=sql-server-ver16",target:"_blank",rel:"noopener noreferrer"}},[t._v("Official"),e("OutboundLink")],1)])]),t._v(" "),e("tr",[e("td",[t._v("Oracle")]),t._v(" "),e("td",[e("a",{attrs:{href:"https://www.oracle.com/database/technologies/dotnet-odacdeploy-downloads.html",target:"_blank",rel:"noopener noreferrer"}},[t._v("Official"),e("OutboundLink")],1)]),t._v(" "),e("td"),t._v(" "),e("td")])])]),t._v(" "),e("p",[e("a",{attrs:{href:"http://www.unixodbc.org/drivers.html",target:"_blank",rel:"noopener noreferrer"}},[t._v("UnixODBC drivers"),e("OutboundLink")],1)]),t._v(" "),e("h2",{attrs:{id:"third-party-odbc-drivers-charged"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#third-party-odbc-drivers-charged"}},[t._v("#")]),t._v(" Third-party ODBC drivers(charged)")]),t._v(" "),e("p",[e("a",{attrs:{href:"https://www.easysoft.com/products/data_access/index.html#odbc-drivers",target:"_blank",rel:"noopener noreferrer"}},[t._v("Easysoft ODBC Drivers"),e("OutboundLink")],1),e("br"),t._v(" "),e("a",{attrs:{href:"https://www.cdata.com/odbc/",target:"_blank",rel:"noopener noreferrer"}},[t._v("CData Software ODBC Drivers"),e("OutboundLink")],1),e("br"),t._v(" "),e("a",{attrs:{href:"https://www.devart.com/odbc/",target:"_blank",rel:"noopener noreferrer"}},[t._v("Devart ODBC Drivers"),e("OutboundLink")],1)]),t._v(" "),e("div",[e("script2",{attrs:{type:"text/javascript",async:"true",src:"https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"}}),t._v(" "),e("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),t._v(" "),e("script2",{attrs:{type:"text/javascript"}},[t._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),t._v(" "),e("h2",{attrs:{id:"unixodbc-iodbc-install-and-setup"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#unixodbc-iodbc-install-and-setup"}},[t._v("#")]),t._v(" UnixODBC / iODBC install and setup")]),t._v(" "),e("ol",[e("li",[t._v("Install UnixODBC / iODBC")])]),t._v(" "),e("div",{staticClass:"language-bash extra-class"},[e("pre",{pre:!0,attrs:{class:"language-bash"}},[e("code",[t._v("yum "),e("span",{pre:!0,attrs:{class:"token function"}},[t._v("install")]),t._v(" -y "),e("span",{pre:!0,attrs:{class:"token operator"}},[t._v("<")]),t._v("unixodbc "),e("span",{pre:!0,attrs:{class:"token operator"}},[t._v("|")]),t._v(" iodbc"),e("span",{pre:!0,attrs:{class:"token operator"}},[t._v(">")]),t._v("\nyum "),e("span",{pre:!0,attrs:{class:"token function"}},[t._v("install")]),t._v(" mysql-connector-odbc mariadb-connector-odbc pgodbc "),e("span",{pre:!0,attrs:{class:"token operator"}},[t._v("<")]),t._v("ODBC driver package"),e("span",{pre:!0,attrs:{class:"token operator"}},[t._v(">")]),t._v("\n")])])]),e("ol",{attrs:{start:"2"}},[e("li",[t._v("Setup ODBC drivers"),e("br"),t._v("\ndefault path: "),e("code",[t._v("/etc/odbcinst.ini")]),t._v(", the ODBC driver template as follow:")])]),t._v(" "),e("div",{staticClass:"language- extra-class"},[e("pre",{pre:!0,attrs:{class:"language-text"}},[e("code",[t._v("[DRIVER_NAME]\n Description = description of the ODBC driver\n Driver = path_to_odbc_driver_shared_object\n Setup = path_to_driver_setup_shared_object\n")])])]),e("p",[t._v("after that, You can list all installed ODBC drivers with: "),e("code",[t._v("odbcinst -q -d")])]),t._v(" "),e("ol",{attrs:{start:"3"}},[e("li",[t._v("Setup system data sources"),e("br"),t._v("\ndefault path: "),e("code",[t._v("/etc/odbc.ini")]),t._v(", the data source template as follow")])]),t._v(" "),e("div",{staticClass:"language- extra-class"},[e("pre",{pre:!0,attrs:{class:"language-text"}},[e("code",[t._v("[my_datasource]\nDriver = OOB\nDescription = description_of_data_source\nServerPort = myoobserver:8888\nTargetDSN = mytargetdsn\nLogonUser = server_username\nLogonAuth = password_for_LogonUser\n")])])]),e("p",[t._v("The most important is that the driver name in datasource should be same as the driver name in the file: "),e("code",[t._v("odbcinst.ini")])]),t._v(" "),e("ol",{attrs:{start:"3"}},[e("li",[e("p",[t._v("Setup file data sources"),e("br"),t._v("\ndefault path: "),e("code",[t._v("/etc/ODBCDataSources")]),t._v(", the syntax same as")])]),t._v(" "),e("li",[e("p",[t._v("Setup user data sources"),e("br"),t._v("\ndefault path: "),e("code",[t._v("/home/auser/.odbc.ini")])])])]),t._v(" "),e("p",[t._v("finaly, You can list user and system data sources with:\n"),e("code",[t._v("odbcinst -q -s")])]),t._v(" "),e("div",[e("script2",{attrs:{type:"text/javascript",async:"true",src:"https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"}}),t._v(" "),e("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),t._v(" "),e("script2",{attrs:{type:"text/javascript"}},[t._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1)])}),[],!1,null,null,null);r.default=o.exports}}]); \ No newline at end of file diff --git a/assets/js/38.c740006c.js b/assets/js/38.c740006c.js new file mode 100644 index 000000000..28651c853 --- /dev/null +++ b/assets/js/38.c740006c.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[38],{622:function(t,o,e){"use strict";e.r(o);var s=e(13),n=Object(s.a)({},(function(){var t=this,o=t.$createElement,e=t._self._c||o;return e("ContentSlotsDistributor",{attrs:{"slot-key":t.$parent.slotKey}},[e("h1",{attrs:{id:"code-editor"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#code-editor"}},[t._v("#")]),t._v(" Code editor")]),t._v(" "),e("h2",{attrs:{id:"why-auto-completion-window-show-messy-code-on-the-button"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#why-auto-completion-window-show-messy-code-on-the-button"}},[t._v("#")]),t._v(" Why auto-completion window show messy code on the button?")]),t._v(" "),e("p",[t._v("The font of code editor does not support chars encoded with current locale, to solve this problem, you shoud:")]),t._v(" "),e("ol",[e("li",[t._v("Open "),e("strong",[t._v("setting")]),t._v(' dialog and switch tab "Editor"')]),t._v(" "),e("li",[t._v("Navigate to item "),e("strong",[t._v("Font name & size")])]),t._v(" "),e("li",[t._v("Choose the font that could display the text with current locale correctly.")])])])}),[],!1,null,null,null);o.default=n.exports}}]); \ No newline at end of file diff --git a/assets/js/39.e3b221dd.js b/assets/js/39.e3b221dd.js new file mode 100644 index 000000000..b5fe17349 --- /dev/null +++ b/assets/js/39.e3b221dd.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[39],{618:function(e,t,a){"use strict";a.r(t);var r=a(13),o=Object(r.a)({},(function(){var e=this,t=e.$createElement,a=e._self._c||t;return a("ContentSlotsDistributor",{attrs:{"slot-key":e.$parent.slotKey}},[a("h1",{attrs:{id:"frequently-asked-questions"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#frequently-asked-questions"}},[e._v("#")]),e._v(" Frequently Asked Questions")]),e._v(" "),a("h2",{attrs:{id:"license"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#license"}},[e._v("#")]),e._v(" License")]),e._v(" "),a("h3",{attrs:{id:"is-kangaroo-free"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#is-kangaroo-free"}},[e._v("#")]),e._v(" Is Kangaroo free?")]),e._v(" "),a("p",[e._v("February 1st, 2022, Kangaroo upgrade its "),a("strong",[e._v("End User License Agreemen")]),e._v(" (a.k.a “EULA”, “License Agreement”), based on this license agreement, the versions marked with "),a("Badge",{attrs:{text:"Dev"}}),e._v(" "),a("Badge",{attrs:{text:"Beta"}}),e._v(" are free for private or commercial use, "),a("strong",[e._v("others shoud be paid")]),e._v(". See the "),a("RouterLink",{attrs:{to:"/en/license/service-agreement.html"}},[e._v("product license")]),e._v(" for details.")],1),e._v(" "),a("h3",{attrs:{id:"is-kangaroo-open-source"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#is-kangaroo-open-source"}},[e._v("#")]),e._v(" Is Kangaroo open source?")]),e._v(" "),a("p",[e._v("We will put it as a priority task if the project gain donation and support enough to make it be sustainable development.")]),e._v(" "),a("h2",{attrs:{id:"version"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#version"}},[e._v("#")]),e._v(" Version")]),e._v(" "),a("h3",{attrs:{id:"how-do-i-find-the-version"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#how-do-i-find-the-version"}},[e._v("#")]),e._v(" How do I find the version?")]),e._v(" "),a("p",[e._v("You can find the Kangaroo version information in the About dialog box.")]),e._v(" "),a("p",[e._v("On right of Kangaroo title bar, click the main menu button, then go to Help > About.")]),e._v(" "),a("p",[e._v("The Kangaroo version is the first Version number listed and has the version format 'major.minor.release.build', for example '0.8.5.191108'")]),e._v(" "),a("h2",{attrs:{id:"when-to-release-stable-version"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#when-to-release-stable-version"}},[e._v("#")]),e._v(" When to release stable version?")]),e._v(" "),a("p",[e._v("Kangaroo is working hard to make it be done, the stable version depends two point:")]),e._v(" "),a("ol",[a("li",[e._v("Dependencies(GLib/GTK4)'s maturity and stability;")]),e._v(" "),a("li",[e._v("Kangaroo's features' maturity and stability;")])]),e._v(" "),a("p",[e._v("Based on all the information, the first stable version to be released at the fourth anniversary of the Kangaroo (2023.4.1).")]),e._v(" "),a("h2",{attrs:{id:"language"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#language"}},[e._v("#")]),e._v(" Language")]),e._v(" "),a("h3",{attrs:{id:"what-languages-does-kangaroo-support"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#what-languages-does-kangaroo-support"}},[e._v("#")]),e._v(" What languages does Kangaroo support?")]),e._v(" "),a("p",[e._v("English, Chinese will be support default, other languages depend on user contributation.")]),e._v(" "),a("h3",{attrs:{id:"how-to-switch-for-other-languages"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#how-to-switch-for-other-languages"}},[e._v("#")]),e._v(" How to switch for other languages?")]),e._v(" "),a("p",[e._v("Setting the environment variables first, then start the application. please refer to the platform documentation for the environment variables.\n【Tip】The complete list of localized variables is as follows")]),e._v(" "),a("div",{staticClass:"language- extra-class"},[a("pre",{pre:!0,attrs:{class:"language-text"}},[a("code",[e._v("LANG=zh_CN.UTF-8\nLC_CTYPE=zh_CN.UTF-8\nLC_NUMERIC=zh_CN.UTF-8\nLC_TIME=zh_CN.UTF-8\nLC_COLLATE=zh_CN.UTF-8\nLC_MONETARY=zh_CN.UTF-8\nLC_MESSAGES=zh_CN.UTF-8\nLC_ALL=zh_CN.UTF-8\n\nLC_PAPER=zh_CN.UTF-8\nLC_MEASUREMENT=zh_CN.UTF-8\n")])])]),a("h2",{attrs:{id:"verify-package"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#verify-package"}},[e._v("#")]),e._v(" Verify package")]),e._v(" "),a("h3",{attrs:{id:"how-to-verify-the-downloaded-package"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#how-to-verify-the-downloaded-package"}},[e._v("#")]),e._v(" How to verify the downloaded package?")]),e._v(" "),a("p",[e._v("Follow the steps:")]),e._v(" "),a("ol",[a("li",[a("p",[e._v("Download SHA256SUM and SHA256SUM.asc")])]),e._v(" "),a("li",[a("p",[e._v("Get the key used for the signature"),a("br"),e._v(" "),a("strong",[e._v("apply for 1.6.1 and new versions")]),a("br"),e._v("\nThe key ID is: 8C0C55F7DEC8FC52 (generated in 2021, current)"),a("br"),e._v("\nThe public key is: E4F02524471B195CCEFBD7158C0C55F7DEC8FC52 "),a("br")]),e._v(" "),a("p",[a("strong",[e._v("apply for old versions before 1.6.1")]),a("br"),e._v("\nThe key ID is: 702F717E0A17659D (generated in 2020, archived)"),a("br"),e._v("\nThe public key is: 33E5119C5781C1B37E56E580702F717E0A17659D "),a("br"),e._v(" "),a("code",[e._v("gpg --keyserver hkp://hkps.pool.sks-keyservers.net --receive-keys 8C0C55F7DEC8FC52")])])]),e._v(" "),a("li",[a("p",[e._v("Verify the signature"),a("br"),e._v(" "),a("code",[e._v("gpg --verify kangaroo-1.6.1.210131.sha256sum.asc")])])]),e._v(" "),a("li",[a("p",[e._v("Check the package with sha256sum"),a("br"),e._v("\nrun the following command from within the download directory to get SHA256 hash:"),a("br"),e._v(" "),a("code",[e._v("sha256sum kangaroo-1.6.1.")]),e._v(" "),a("br"),e._v("\nthen search the hash in the SHA256SUM file:"),a("br"),e._v(" "),a("code",[e._v("grep kangaroo-1.6.1.sha256sum")])])])]),e._v(" "),a("h2",{attrs:{id:"support"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#support"}},[e._v("#")]),e._v(" Support")]),e._v(" "),a("h3",{attrs:{id:"how-track-the-changes"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#how-track-the-changes"}},[e._v("#")]),e._v(" How track the changes?")]),e._v(" "),a("p",[e._v("you can put your eyes on follow ways:\n"),a("a",{attrs:{href:"https://twitter.com/Kangaroo",target:"_blank",rel:"noopener noreferrer"}},[e._v("Twitter"),a("OutboundLink")],1),e._v(" "),a("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo",target:"_blank",rel:"noopener noreferrer"}},[e._v("Github"),a("OutboundLink")],1),e._v(" "),a("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo",target:"_blank",rel:"noopener noreferrer"}},[e._v("Gitee"),a("OutboundLink")],1),e._v(" "),a("a",{attrs:{href:"https://www.datatable.online/",target:"_blank",rel:"noopener noreferrer"}},[e._v("Official (here)"),a("OutboundLink")],1)]),e._v(" "),a("h3",{attrs:{id:"technical-support"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#technical-support"}},[e._v("#")]),e._v(" Technical Support")]),e._v(" "),a("p",[e._v("You could submit your issues and requirements on the repository "),a("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo",target:"_blank",rel:"noopener noreferrer"}},[e._v("Github"),a("OutboundLink")],1),e._v(" /\n"),a("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo",target:"_blank",rel:"noopener noreferrer"}},[e._v("Gitee"),a("OutboundLink")],1),e._v(", or share your solutions about the trouble you've met.")]),e._v(" "),a("Vssue",{attrs:{"issue-id":3,title:e.$title}})],1)}),[],!1,null,null,null);t.default=o.exports}}]); \ No newline at end of file diff --git a/assets/js/4.6f7551af.js b/assets/js/4.6f7551af.js new file mode 100644 index 000000000..17747c997 --- /dev/null +++ b/assets/js/4.6f7551af.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[4],{542:function(t,a,s){t.exports=s.p+"assets/img/kangaroo-start.870926ae.png"},543:function(t,a,s){t.exports=s.p+"assets/img/kangaroo-explorer.fee693df.png"},544:function(t,a,s){t.exports=s.p+"assets/img/kangaroo-search.fdc5052b.png"},545:function(t,a,s){t.exports=s.p+"assets/img/kangaroo-workspace.de367f1b.png"},546:function(t,a,s){t.exports=s.p+"assets/img/kangaroo-grid.4621185f.png"},547:function(t,a,s){t.exports=s.p+"assets/img/kangaroo-grid2.d6646d83.png"},548:function(t,a,s){t.exports=s.p+"assets/img/kangaroo-form.85f37fb8.png"},549:function(t,a,s){t.exports=s.p+"assets/img/kangaroo-query.3f71aaa4.png"},550:function(t,a,s){t.exports=s.p+"assets/img/kangaroo-designer.8d04d91b.png"},551:function(t,a,s){t.exports=s.p+"assets/img/kangaroo-view.e72fe9fc.png"},552:function(t,a,s){t.exports=s.p+"assets/img/kangaroo-function.48ce7bf9.png"},553:function(t,a,s){t.exports=s.p+"assets/img/kangaroo-sql-builder.26ae43db.png"},554:function(t,a,s){t.exports=s.p+"assets/img/kangaroo-export.9cb15f01.png"},555:function(t,a,s){t.exports=s.p+"assets/img/kangaroo-import.4d98afab.png"},556:function(t,a,s){t.exports=s.p+"assets/img/kangaroo-setting.64c3f8ad.png"},557:function(t,a,s){t.exports=s.p+"assets/img/kangaroo-shortcut.247a63fa.png"},625:function(t,a,s){"use strict";s.r(a);var o=s(13),r=Object(o.a)({},(function(){var t=this,a=t.$createElement,o=t._self._c||a;return o("ContentSlotsDistributor",{attrs:{"slot-key":t.$parent.slotKey}},[o("h1",{attrs:{id:"screenshots"}},[o("a",{staticClass:"header-anchor",attrs:{href:"#screenshots"}},[t._v("#")]),t._v(" Screenshots")]),t._v(" "),o("p",[o("img",{attrs:{src:s(542),alt:"Start page"}}),t._v(" "),o("img",{attrs:{src:s(543),alt:"Object explorer"}}),t._v(" "),o("img",{attrs:{src:s(544),alt:"Object search"}}),t._v(" "),o("img",{attrs:{src:s(545),alt:"Workspace split view"}})]),t._v(" "),o("div",[o("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),t._v(" "),o("script2",{attrs:{type:"text/javascript"}},[t._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),t._v(" "),o("p",[o("img",{attrs:{src:s(546),alt:"Kangaroo grid view in table with custom columns"}}),t._v(" "),o("img",{attrs:{src:s(547),alt:"Kangaroo grid view in table with where statement"}}),t._v(" "),o("img",{attrs:{src:s(548),alt:"Kangaroo grid view in form"}})]),t._v(" "),o("div",[o("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),t._v(" "),o("script2",{attrs:{type:"text/javascript"}},[t._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),t._v(" "),o("p",[o("img",{attrs:{src:s(549),alt:"Kangaroo query view"}}),t._v(" "),o("img",{attrs:{src:s(550),alt:"Kangaroo schema designer form"}}),t._v(" "),o("img",{attrs:{src:s(551),alt:"Kangaroo view designer"}})]),t._v(" "),o("div",[o("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),t._v(" "),o("script2",{attrs:{type:"text/javascript"}},[t._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),t._v(" "),o("p",[o("img",{attrs:{src:s(552),alt:"Kangaroo function designer"}}),t._v(" "),o("img",{attrs:{src:s(553),alt:"Kangaroo visual builder"}}),t._v(" "),o("img",{attrs:{src:s(554),alt:"Kangaroo export assistant"}})]),t._v(" "),o("div",[o("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),t._v(" "),o("script2",{attrs:{type:"text/javascript"}},[t._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),t._v(" "),o("p",[o("img",{attrs:{src:s(555),alt:"Kangaroo import assistant"}}),t._v(" "),o("img",{attrs:{src:s(556),alt:"Kangaroo setting dialog with dark theme"}}),t._v(" "),o("img",{attrs:{src:s(557),alt:"Kangaroo shortcut setting dialog"}})]),t._v(" "),o("div",[o("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),t._v(" "),o("script2",{attrs:{type:"text/javascript"}},[t._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1)])}),[],!1,null,null,null);a.default=r.exports}}]); \ No newline at end of file diff --git a/assets/js/40.6ab42036.js b/assets/js/40.6ab42036.js new file mode 100644 index 000000000..6ffda17e3 --- /dev/null +++ b/assets/js/40.6ab42036.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[40],{619:function(t,e,i){"use strict";i.r(e);var s=i(13),a=Object(s.a)({},(function(){var t=this,e=t.$createElement,i=t._self._c||e;return i("ContentSlotsDistributor",{attrs:{"slot-key":t.$parent.slotKey}},[i("h1",{attrs:{id:"feature-list"}},[i("a",{staticClass:"header-anchor",attrs:{href:"#feature-list"}},[t._v("#")]),t._v(" Feature List")]),t._v(" "),i("div",[i("table",[i("tbody",[i("tr",[i("td",[t._v("Kangaroo features")]),t._v(" "),i("td",{staticStyle:{"text-align":"center"}},[i("a",{attrs:{target:"_blank",href:"/en/download/v1.0.6.201109.html"}},[t._v("v2021")])]),t._v(" "),i("td",{staticStyle:{"text-align":"center"}},[i("a",{attrs:{target:"_blank",href:"/en/download/v1.10.2.220701.html"}},[t._v("v2022")])]),t._v(" "),i("td",{staticStyle:{"text-align":"center"}},[i("a",{attrs:{target:"_blank",href:"/en/download/v2.3.1.230201.html"}},[t._v("v2023")])]),t._v(" "),i("td",{staticStyle:{"text-align":"center"}},[t._v("v2024")]),t._v(" "),i("td",{staticStyle:{"text-align":"center"}},[t._v("v2025")])]),t._v(" "),i("tr",{staticStyle:{"background-color":"#67C23A"}},[i("td",[i("b",[t._v("General")])]),t._v(" "),i("td"),t._v(" "),i("td"),t._v(" "),i("td"),t._v(" "),i("td"),t._v(" "),i("td")]),t._v(" "),i("tr",[i("td",[t._v("MySQL 5.1 or later")]),t._v(" "),i("td",{staticStyle:{"text-align":"center"}},[i("img",{attrs:{src:"/images/icon-2021.svg"}})]),t._v(" "),i("td",{staticStyle:{"text-align":"center"}},[i("img",{attrs:{src:"/images/icon-2022.svg"}})]),t._v(" "),i("td",{staticStyle:{"text-align":"center"}},[i("img",{attrs:{src:"/images/icon-2023.svg"}})]),t._v(" "),i("td",{staticStyle:{"text-align":"center"}},[i("img",{attrs:{src:"/images/icon-2024.svg"}})]),t._v(" "),i("td")]),t._v(" "),i("tr",[i("td",[t._v("MariaDB 10.0 or later")]),t._v(" "),i("td",{staticStyle:{"text-align":"center"}},[i("img",{attrs:{src:"/images/icon-2021.svg"}})]),t._v(" "),i("td",{staticStyle:{"text-align":"center"}},[i("img",{attrs:{src:"/images/icon-2022.svg"}})]),t._v(" "),i("td",{staticStyle:{"text-align":"center"}},[i("img",{attrs:{src:"/images/icon-2023.svg"}})]),t._v(" "),i("td",{staticStyle:{"text-align":"center"}},[i("img",{attrs:{src:"/images/icon-2024.svg"}})]),t._v(" "),i("td")]),t._v(" "),i("tr",[i("td",[t._v("PostgreSQL 9.5 or later")]),t._v(" "),i("td",{staticStyle:{"text-align":"center"}},[i("img",{attrs:{src:"/images/icon-2021.svg"}})]),t._v(" "),i("td",{staticStyle:{"text-align":"center"}},[i("img",{attrs:{src:"/images/icon-2022.svg"}})]),t._v(" "),i("td",{staticStyle:{"text-align":"center"}},[i("img",{attrs:{src:"/images/icon-2023.svg"}})]),t._v(" "),i("td",{staticStyle:{"text-align":"center"}},[i("img",{attrs:{src:"/images/icon-2024.svg"}})]),t._v(" "),i("td")]),t._v(" "),i("tr",[i("td",[t._v("SQLite 3.0")]),t._v(" "),i("td",{staticStyle:{"text-align":"center"}},[i("img",{attrs:{src:"/images/icon-2021.svg"}})]),t._v(" "),i("td",{staticStyle:{"text-align":"center"}},[i("img",{attrs:{src:"/images/icon-2022.svg"}})]),t._v(" "),i("td",{staticStyle:{"text-align":"center"}},[i("img",{attrs:{src:"/images/icon-2023.svg"}})]),t._v(" "),i("td",{staticStyle:{"text-align":"center"}},[i("img",{attrs:{src:"/images/icon-2024.svg"}})]),t._v(" "),i("td")]),t._v(" "),i("tr",{staticStyle:{"background-color":"#67C23A"}},[i("td",[i("b",[t._v("Connection")])]),t._v(" "),i("td"),t._v(" "),i("td"),t._v(" "),i("td"),t._v(" "),i("td"),t._v(" "),i("td")]),t._v(" "),i("tr",[i("td",[t._v("Secure connection: SSH/SSL")]),t._v(" "),i("td",{staticStyle:{"text-align":"center"}},[i("img",{attrs:{src:"/images/icon-2021.svg"}})]),t._v(" "),i("td",{staticStyle:{"text-align":"center"}},[i("img",{attrs:{src:"/images/icon-2022.svg"}})]),t._v(" "),i("td",{staticStyle:{"text-align":"center"}},[i("img",{attrs:{src:"/images/icon-2023.svg"}})]),t._v(" "),i("td",{staticStyle:{"text-align":"center"}},[i("img",{attrs:{src:"/images/icon-2024.svg"}})]),t._v(" "),i("td")]),t._v(" "),i("tr",[i("td",[t._v("Export/import connection settings")]),t._v(" "),i("td",{staticStyle:{"text-align":"center"}},[i("img",{attrs:{src:"/images/icon-2021.svg"}})]),t._v(" "),i("td",{staticStyle:{"text-align":"center"}},[i("img",{attrs:{src:"/images/icon-2022.svg"}})]),t._v(" "),i("td",{staticStyle:{"text-align":"center"}},[i("img",{attrs:{src:"/images/icon-2023.svg"}})]),t._v(" "),i("td",{staticStyle:{"text-align":"center"}},[i("img",{attrs:{src:"/images/icon-2024.svg"}})]),t._v(" "),i("td")]),t._v(" "),i("tr",{staticStyle:{"background-color":"#67C23A"}},[i("td",[i("b",[t._v("Database object support")])]),t._v(" "),i("td"),t._v(" "),i("td"),t._v(" "),i("td"),t._v(" "),i("td"),t._v(" "),i("td")]),t._v(" "),i("tr",[i("td",[t._v("Database")]),t._v(" "),i("td"),t._v(" "),i("td"),t._v(" "),i("td",{staticStyle:{"text-align":"center"}},[i("img",{attrs:{src:"/images/icon-2023.svg"}})]),t._v(" "),i("td",{staticStyle:{"text-align":"center"}},[i("img",{attrs:{src:"/images/icon-2024.svg"}})]),t._v(" "),i("td")]),t._v(" "),i("tr",[i("td",[t._v("Schema")]),t._v(" "),i("td"),t._v(" "),i("td"),t._v(" "),i("td",{staticStyle:{"text-align":"center"}},[i("img",{attrs:{src:"/images/icon-2023.svg"}})]),t._v(" "),i("td",{staticStyle:{"text-align":"center"}},[i("img",{attrs:{src:"/images/icon-2024.svg"}})]),t._v(" "),i("td")]),t._v(" "),i("tr",[i("td",[t._v("Table")]),t._v(" "),i("td"),t._v(" "),i("td"),t._v(" "),i("td",{staticStyle:{"text-align":"center"}},[i("img",{attrs:{src:"/images/icon-2023.svg"}})]),t._v(" "),i("td",{staticStyle:{"text-align":"center"}},[i("img",{attrs:{src:"/images/icon-2024.svg"}})]),t._v(" "),i("td")]),t._v(" "),i("tr",[i("td",[t._v("View")]),t._v(" "),i("td"),t._v(" "),i("td"),t._v(" "),i("td",{staticStyle:{"text-align":"center"}},[i("img",{attrs:{src:"/images/icon-2023.svg"}})]),t._v(" "),i("td",{staticStyle:{"text-align":"center"}},[i("img",{attrs:{src:"/images/icon-2024.svg"}})]),t._v(" "),i("td")]),t._v(" "),i("tr",[i("td",[t._v("Index")]),t._v(" "),i("td"),t._v(" "),i("td"),t._v(" "),i("td",{staticStyle:{"text-align":"center"}},[i("img",{attrs:{src:"/images/icon-2023.svg"}})]),t._v(" "),i("td",{staticStyle:{"text-align":"center"}},[i("img",{attrs:{src:"/images/icon-2024.svg"}})]),t._v(" "),i("td")]),t._v(" "),i("tr",[i("td",[t._v("Trigger")]),t._v(" "),i("td"),t._v(" "),i("td"),t._v(" "),i("td",{staticStyle:{"text-align":"center"}},[i("img",{attrs:{src:"/images/icon-2023.svg"}})]),t._v(" "),i("td",{staticStyle:{"text-align":"center"}},[i("img",{attrs:{src:"/images/icon-2024.svg"}})]),t._v(" "),i("td")]),t._v(" "),i("tr",[i("td",[t._v("Function/procedure")]),t._v(" "),i("td"),t._v(" "),i("td"),t._v(" "),i("td",{staticStyle:{"text-align":"center"}},[i("img",{attrs:{src:"/images/icon-2023.svg"}})]),t._v(" "),i("td",{staticStyle:{"text-align":"center"}},[i("img",{attrs:{src:"/images/icon-2024.svg"}})]),t._v(" "),i("td")]),t._v(" "),i("tr",{staticStyle:{"background-color":"#67C23A"}},[i("td",[i("b",[t._v("Data Viewer and Editor")])]),t._v(" "),i("td"),t._v(" "),i("td"),t._v(" "),i("td"),t._v(" "),i("td"),t._v(" "),i("td")]),t._v(" "),i("tr",[i("td",[t._v("Grid view")]),t._v(" "),i("td",{staticStyle:{"text-align":"center"}},[i("img",{attrs:{src:"/images/icon-2021.svg"}})]),t._v(" "),i("td",{staticStyle:{"text-align":"center"}},[i("img",{attrs:{src:"/images/icon-2022.svg"}})]),t._v(" "),i("td",{staticStyle:{"text-align":"center"}},[i("img",{attrs:{src:"/images/icon-2023.svg"}})]),t._v(" "),i("td",{staticStyle:{"text-align":"center"}},[i("img",{attrs:{src:"/images/icon-2024.svg"}})]),t._v(" "),i("td")]),t._v(" "),i("tr",[i("td",[t._v("Form view")]),t._v(" "),i("td",{staticStyle:{"text-align":"center"}},[i("img",{attrs:{src:"/images/icon-2021.svg"}})]),t._v(" "),i("td",{staticStyle:{"text-align":"center"}},[i("img",{attrs:{src:"/images/icon-2022.svg"}})]),t._v(" "),i("td",{staticStyle:{"text-align":"center"}},[i("img",{attrs:{src:"/images/icon-2023.svg"}})]),t._v(" "),i("td",{staticStyle:{"text-align":"center"}},[i("img",{attrs:{src:"/images/icon-2024.svg"}})]),t._v(" "),i("td")]),t._v(" "),i("tr",[i("td",[t._v("Chart view")]),t._v(" "),i("td"),t._v(" "),i("td"),t._v(" "),i("td",{staticStyle:{"text-align":"center"}}),t._v(" "),i("td",{staticStyle:{"text-align":"center"}}),t._v(" "),i("td")]),t._v(" "),i("tr",[i("td",[t._v("Map view")]),t._v(" "),i("td"),t._v(" "),i("td"),t._v(" "),i("td",{staticStyle:{"text-align":"center"}}),t._v(" "),i("td",{staticStyle:{"text-align":"center"}}),t._v(" "),i("td")]),t._v(" "),i("tr",[i("td",[t._v("Generate cell value")]),t._v(" "),i("td",{staticStyle:{"text-align":"center"}},[i("img",{attrs:{src:"/images/icon-2021.svg"}})]),t._v(" "),i("td",{staticStyle:{"text-align":"center"}},[i("img",{attrs:{src:"/images/icon-2022.svg"}})]),t._v(" "),i("td",{staticStyle:{"text-align":"center"}},[i("img",{attrs:{src:"/images/icon-2023.svg"}})]),t._v(" "),i("td",{staticStyle:{"text-align":"center"}},[i("img",{attrs:{src:"/images/icon-2024.svg"}})]),t._v(" "),i("td")]),t._v(" "),i("tr",[i("td",{staticStyle:{color:"#ffd700"}},[t._v("Update cell value with algorithm")]),t._v(" "),i("td",{staticStyle:{"text-align":"center"}}),t._v(" "),i("td",{staticStyle:{"text-align":"center"}},[i("img",{attrs:{src:"/images/icon-2022.svg"}})]),t._v(" "),i("td",{staticStyle:{"text-align":"center"}},[i("img",{attrs:{src:"/images/icon-2023.svg"}})]),t._v(" "),i("td",{staticStyle:{"text-align":"center"}},[i("img",{attrs:{src:"/images/icon-2024.svg"}})]),t._v(" "),i("td")]),t._v(" "),i("tr",[i("td",{staticStyle:{color:"#ffd700"}},[t._v("Copy cell value with algorithm")]),t._v(" "),i("td",{staticStyle:{"text-align":"center"}}),t._v(" "),i("td",{staticStyle:{"text-align":"center"}},[i("img",{attrs:{src:"/images/icon-2022.svg"}})]),t._v(" "),i("td",{staticStyle:{"text-align":"center"}},[i("img",{attrs:{src:"/images/icon-2023.svg"}})]),t._v(" "),i("td",{staticStyle:{"text-align":"center"}},[i("img",{attrs:{src:"/images/icon-2024.svg"}})]),t._v(" "),i("td")]),t._v(" "),i("tr",[i("td",[t._v("Text, Image viewer/editor")]),t._v(" "),i("td",{staticStyle:{"text-align":"center"}},[i("img",{attrs:{src:"/images/icon-2021.svg"}})]),t._v(" "),i("td",{staticStyle:{"text-align":"center"}},[i("img",{attrs:{src:"/images/icon-2022.svg"}})]),t._v(" "),i("td",{staticStyle:{"text-align":"center"}},[i("img",{attrs:{src:"/images/icon-2023.svg"}})]),t._v(" "),i("td",{staticStyle:{"text-align":"center"}},[i("img",{attrs:{src:"/images/icon-2024.svg"}})]),t._v(" "),i("td")]),t._v(" "),i("tr",[i("td",[t._v("Hex, Web viewer/editor")]),t._v(" "),i("td",{staticStyle:{"text-align":"center"}},[i("img",{attrs:{src:""}})]),t._v(" "),i("td",{staticStyle:{"text-align":"center"}},[i("img",{attrs:{src:"/images/icon-2022.svg"}})]),t._v(" "),i("td",{staticStyle:{"text-align":"center"}},[i("img",{attrs:{src:"/images/icon-2023.svg"}})]),t._v(" "),i("td",{staticStyle:{"text-align":"center"}},[i("img",{attrs:{src:"/images/icon-2024.svg"}})]),t._v(" "),i("td")]),t._v(" "),i("tr",[i("td",[t._v("Raw mode editing")]),t._v(" "),i("td",{staticStyle:{"text-align":"center"}},[i("img",{attrs:{src:"/images/icon-2021.svg"}})]),t._v(" "),i("td",{staticStyle:{"text-align":"center"}},[i("img",{attrs:{src:"/images/icon-2022.svg"}})]),t._v(" "),i("td",{staticStyle:{"text-align":"center"}},[i("img",{attrs:{src:"/images/icon-2023.svg"}})]),t._v(" "),i("td",{staticStyle:{"text-align":"center"}},[i("img",{attrs:{src:"/images/icon-2024.svg"}})]),t._v(" "),i("td")]),t._v(" "),i("tr",[i("td",[t._v("Customize data type colorings")]),t._v(" "),i("td",{staticStyle:{"text-align":"center"}},[i("img",{attrs:{src:"/images/icon-2021.svg"}})]),t._v(" "),i("td",{staticStyle:{"text-align":"center"}},[i("img",{attrs:{src:"/images/icon-2022.svg"}})]),t._v(" "),i("td",{staticStyle:{"text-align":"center"}},[i("img",{attrs:{src:"/images/icon-2023.svg"}})]),t._v(" "),i("td",{staticStyle:{"text-align":"center"}},[i("img",{attrs:{src:"/images/icon-2024.svg"}})]),t._v(" "),i("td")]),t._v(" "),i("tr",[i("td",[t._v("Filter records")]),t._v(" "),i("td",{staticStyle:{"text-align":"center"}},[i("img",{attrs:{src:"/images/icon-2021.svg"}})]),t._v(" "),i("td",{staticStyle:{"text-align":"center"}},[i("img",{attrs:{src:"/images/icon-2022.svg"}})]),t._v(" "),i("td",{staticStyle:{"text-align":"center"}},[i("img",{attrs:{src:"/images/icon-2023.svg"}})]),t._v(" "),i("td",{staticStyle:{"text-align":"center"}},[i("img",{attrs:{src:"/images/icon-2024.svg"}})]),t._v(" "),i("td")]),t._v(" "),i("tr",{staticStyle:{"background-color":"#67C23A"}},[i("td",[i("b",[t._v("SQL/Script Processing")])]),t._v(" "),i("td"),t._v(" "),i("td"),t._v(" "),i("td"),t._v(" "),i("td"),t._v(" "),i("td")]),t._v(" "),i("tr",[i("td",[t._v("SQL/Script Editor")]),t._v(" "),i("td",{staticStyle:{"text-align":"center"}},[i("img",{attrs:{src:"/images/icon-2021.svg"}})]),t._v(" "),i("td",{staticStyle:{"text-align":"center"}},[i("img",{attrs:{src:"/images/icon-2022.svg"}})]),t._v(" "),i("td",{staticStyle:{"text-align":"center"}},[i("img",{attrs:{src:"/images/icon-2023.svg"}})]),t._v(" "),i("td",{staticStyle:{"text-align":"center"}},[i("img",{attrs:{src:"/images/icon-2024.svg"}})]),t._v(" "),i("td")]),t._v(" "),i("tr",[i("td",[t._v("SQL keyword auto-completion")]),t._v(" "),i("td",{staticStyle:{"text-align":"center"}},[i("img",{attrs:{src:"/images/icon-2021.svg"}})]),t._v(" "),i("td",{staticStyle:{"text-align":"center"}},[i("img",{attrs:{src:"/images/icon-2022.svg"}})]),t._v(" "),i("td",{staticStyle:{"text-align":"center"}},[i("img",{attrs:{src:"/images/icon-2023.svg"}})]),t._v(" "),i("td",{staticStyle:{"text-align":"center"}},[i("img",{attrs:{src:"/images/icon-2024.svg"}})]),t._v(" "),i("td")]),t._v(" "),i("tr",[i("td",[t._v("User schema auto-completion")]),t._v(" "),i("td",{staticStyle:{"text-align":"center"}},[i("img",{attrs:{src:"/images/icon-2021.svg"}})]),t._v(" "),i("td",{staticStyle:{"text-align":"center"}},[i("img",{attrs:{src:"/images/icon-2022.svg"}})]),t._v(" "),i("td",{staticStyle:{"text-align":"center"}},[i("img",{attrs:{src:"/images/icon-2023.svg"}})]),t._v(" "),i("td",{staticStyle:{"text-align":"center"}},[i("img",{attrs:{src:"/images/icon-2024.svg"}})]),t._v(" "),i("td")]),t._v(" "),i("tr",[i("td",[t._v("Visual SQL/Script Builder")]),t._v(" "),i("td",{staticStyle:{"text-align":"center"}},[i("img",{attrs:{src:""}})]),t._v(" "),i("td",{staticStyle:{"text-align":"center"}},[i("img",{attrs:{src:"/images/icon-2022.svg"}})]),t._v(" "),i("td",{staticStyle:{"text-align":"center"}},[i("img",{attrs:{src:"/images/icon-2023.svg"}})]),t._v(" "),i("td",{staticStyle:{"text-align":"center"}},[i("img",{attrs:{src:"/images/icon-2024.svg"}})]),t._v(" "),i("td")]),t._v(" "),i("tr",[i("td",[t._v("SQL/Script Beautifier and Minifier")]),t._v(" "),i("td",{staticStyle:{"text-align":"center"}},[i("img",{attrs:{src:""}})]),t._v(" "),i("td",{staticStyle:{"text-align":"center"}},[i("img",{attrs:{src:"/images/icon-2022.svg"}})]),t._v(" "),i("td",{staticStyle:{"text-align":"center"}},[i("img",{attrs:{src:"/images/icon-2023.svg"}})]),t._v(" "),i("td",{staticStyle:{"text-align":"center"}},[i("img",{attrs:{src:"/images/icon-2024.svg"}})]),t._v(" "),i("td")]),t._v(" "),i("tr",[i("td",[t._v("Find and replace")]),t._v(" "),i("td",{staticStyle:{"text-align":"center"}},[i("img",{attrs:{src:"/images/icon-2021.svg"}})]),t._v(" "),i("td",{staticStyle:{"text-align":"center"}},[i("img",{attrs:{src:"/images/icon-2022.svg"}})]),t._v(" "),i("td",{staticStyle:{"text-align":"center"}},[i("img",{attrs:{src:"/images/icon-2023.svg"}})]),t._v(" "),i("td",{staticStyle:{"text-align":"center"}},[i("img",{attrs:{src:"/images/icon-2024.svg"}})]),t._v(" "),i("td")]),t._v(" "),i("tr",[i("td",[t._v("Open query files in an external editor")]),t._v(" "),i("td"),t._v(" "),i("td"),t._v(" "),i("td",{staticStyle:{"text-align":"center"}},[i("img",{attrs:{src:"/images/icon-2023.svg"}})]),t._v(" "),i("td",{staticStyle:{"text-align":"center"}},[i("img",{attrs:{src:"/images/icon-2024.svg"}})]),t._v(" "),i("td")]),t._v(" "),i("tr",{staticStyle:{"background-color":"#67C23A"}},[i("td",[i("b",[t._v("Data Modeling")])]),t._v(" "),i("td"),t._v(" "),i("td"),t._v(" "),i("td"),t._v(" "),i("td"),t._v(" "),i("td")]),t._v(" "),i("tr",[i("td",[t._v("Conceptual, Logical and Physical model")]),t._v(" "),i("td",{staticStyle:{"text-align":"center"}}),t._v(" "),i("td",{staticStyle:{"text-align":"center"}},[i("img",{attrs:{src:"/images/icon-2022.svg"}})]),t._v(" "),i("td",{staticStyle:{"text-align":"center"}},[i("img",{attrs:{src:"/images/icon-2023.svg"}})]),t._v(" "),i("td",{staticStyle:{"text-align":"center"}},[i("img",{attrs:{src:"/images/icon-2024.svg"}})]),t._v(" "),i("td")]),t._v(" "),i("tr",[i("td",[t._v("Reverse/forward engineering")]),t._v(" "),i("td",{staticStyle:{"text-align":"center"}}),t._v(" "),i("td",{staticStyle:{"text-align":"center"}},[i("img",{attrs:{src:"/images/icon-2022.svg"}})]),t._v(" "),i("td",{staticStyle:{"text-align":"center"}},[i("img",{attrs:{src:"/images/icon-2023.svg"}})]),t._v(" "),i("td",{staticStyle:{"text-align":"center"}},[i("img",{attrs:{src:"/images/icon-2024.svg"}})]),t._v(" "),i("td")]),t._v(" "),i("tr",[i("td",[t._v("Add lines, layers, images, notes, art-texts and shapes")]),t._v(" "),i("td",{staticStyle:{"text-align":"center"}}),t._v(" "),i("td",{staticStyle:{"text-align":"center"}},[i("img",{attrs:{src:"/images/icon-2022.svg"}})]),t._v(" "),i("td",{staticStyle:{"text-align":"center"}},[i("img",{attrs:{src:"/images/icon-2023.svg"}})]),t._v(" "),i("td",{staticStyle:{"text-align":"center"}},[i("img",{attrs:{src:"/images/icon-2024.svg"}})]),t._v(" "),i("td")]),t._v(" "),i("tr",[i("td",[t._v("Export database diagrams to PDF and graphic files")]),t._v(" "),i("td",{staticStyle:{"text-align":"center"}}),t._v(" "),i("td",{staticStyle:{"text-align":"center"}},[i("img",{attrs:{src:"/images/icon-2022.svg"}})]),t._v(" "),i("td",{staticStyle:{"text-align":"center"}},[i("img",{attrs:{src:"/images/icon-2023.svg"}})]),t._v(" "),i("td",{staticStyle:{"text-align":"center"}},[i("img",{attrs:{src:"/images/icon-2024.svg"}})]),t._v(" "),i("td")]),t._v(" "),i("tr",{staticStyle:{"background-color":"#67C23A"}},[i("td",[i("b",[t._v("Import/Export")])]),t._v(" "),i("td"),t._v(" "),i("td"),t._v(" "),i("td"),t._v(" "),i("td"),t._v(" "),i("td")]),t._v(" "),i("tr",[i("td",[t._v("Import from file formats: TXT, CSV, XML, JSON")]),t._v(" "),i("td",{staticStyle:{"text-align":"center"}},[i("img",{attrs:{src:"/images/icon-2021.svg"}})]),t._v(" "),i("td",{staticStyle:{"text-align":"center"}},[i("img",{attrs:{src:"/images/icon-2022.svg"}})]),t._v(" "),i("td",{staticStyle:{"text-align":"center"}},[i("img",{attrs:{src:"/images/icon-2023.svg"}})]),t._v(" "),i("td",{staticStyle:{"text-align":"center"}},[i("img",{attrs:{src:"/images/icon-2024.svg"}})]),t._v(" "),i("td")]),t._v(" "),i("tr",[i("td",[t._v("Export to file formats: TXT, CSV, XML, JSON")]),t._v(" "),i("td",{staticStyle:{"text-align":"center"}},[i("img",{attrs:{src:"/images/icon-2021.svg"}})]),t._v(" "),i("td",{staticStyle:{"text-align":"center"}},[i("img",{attrs:{src:"/images/icon-2022.svg"}})]),t._v(" "),i("td",{staticStyle:{"text-align":"center"}},[i("img",{attrs:{src:"/images/icon-2023.svg"}})]),t._v(" "),i("td",{staticStyle:{"text-align":"center"}},[i("img",{attrs:{src:"/images/icon-2024.svg"}})]),t._v(" "),i("td")]),t._v(" "),i("tr",[i("td",[t._v("Export data to Markdown, HTML")]),t._v(" "),i("td",{staticStyle:{"text-align":"center"}},[i("img",{attrs:{src:"/images/icon-2021.svg"}})]),t._v(" "),i("td",{staticStyle:{"text-align":"center"}},[i("img",{attrs:{src:"/images/icon-2022.svg"}})]),t._v(" "),i("td",{staticStyle:{"text-align":"center"}},[i("img",{attrs:{src:"/images/icon-2023.svg"}})]),t._v(" "),i("td",{staticStyle:{"text-align":"center"}},[i("img",{attrs:{src:"/images/icon-2024.svg"}})]),t._v(" "),i("td")]),t._v(" "),i("tr",[i("td",[t._v("Generate design document(Markdown, HTML)")]),t._v(" "),i("td",{staticStyle:{"text-align":"center"}},[i("img",{attrs:{src:"/images/icon-2021.svg"}})]),t._v(" "),i("td",{staticStyle:{"text-align":"center"}},[i("img",{attrs:{src:"/images/icon-2022.svg"}})]),t._v(" "),i("td",{staticStyle:{"text-align":"center"}},[i("img",{attrs:{src:"/images/icon-2023.svg"}})]),t._v(" "),i("td",{staticStyle:{"text-align":"center"}},[i("img",{attrs:{src:"/images/icon-2024.svg"}})]),t._v(" "),i("td")]),t._v(" "),i("tr",{staticStyle:{"background-color":"#67C23A"}},[i("td",[i("b",[t._v("Data Manipulation")])]),t._v(" "),i("td"),t._v(" "),i("td"),t._v(" "),i("td"),t._v(" "),i("td"),t._v(" "),i("td")]),t._v(" "),i("tr",[i("td",[t._v("Dump/Execute SQL file")]),t._v(" "),i("td"),t._v(" "),i("td"),t._v(" "),i("td",{staticStyle:{"text-align":"center"}},[i("img",{attrs:{src:"/images/icon-2023.svg"}})]),t._v(" "),i("td",{staticStyle:{"text-align":"center"}},[i("img",{attrs:{src:"/images/icon-2024.svg"}})]),t._v(" "),i("td")]),t._v(" "),i("tr",{staticStyle:{"background-color":"#67C23A"}},[i("td",[i("b",[t._v("Server Security")])]),t._v(" "),i("td"),t._v(" "),i("td"),t._v(" "),i("td"),t._v(" "),i("td"),t._v(" "),i("td")]),t._v(" "),i("tr",[i("td",[t._v("Manage role")]),t._v(" "),i("td"),t._v(" "),i("td"),t._v(" "),i("td",{staticStyle:{"text-align":"center"}},[i("img",{attrs:{src:"/images/icon-2023.svg"}})]),t._v(" "),i("td",{staticStyle:{"text-align":"center"}},[i("img",{attrs:{src:"/images/icon-2024.svg"}})]),t._v(" "),i("td")]),t._v(" "),i("tr",[i("td",[t._v("Manage user")]),t._v(" "),i("td"),t._v(" "),i("td"),t._v(" "),i("td",{staticStyle:{"text-align":"center"}},[i("img",{attrs:{src:"/images/icon-2023.svg"}})]),t._v(" "),i("td",{staticStyle:{"text-align":"center"}},[i("img",{attrs:{src:"/images/icon-2024.svg"}})]),t._v(" "),i("td")]),t._v(" "),i("tr",{staticStyle:{"background-color":"#67C23A"}},[i("td",[i("b",[t._v("Other Useful Features")])]),t._v(" "),i("td"),t._v(" "),i("td"),t._v(" "),i("td"),t._v(" "),i("td"),t._v(" "),i("td")]),t._v(" "),i("tr",[i("td",[t._v("Database wide search")]),t._v(" "),i("td"),t._v(" "),i("td"),t._v(" "),i("td",{staticStyle:{"text-align":"center"}},[i("img",{attrs:{src:"/images/icon-2023.svg"}})]),t._v(" "),i("td",{staticStyle:{"text-align":"center"}},[i("img",{attrs:{src:"/images/icon-2024.svg"}})]),t._v(" "),i("td")]),t._v(" "),i("tr",[i("td",[t._v("Dark mode")]),t._v(" "),i("td"),t._v(" "),i("td",{staticStyle:{"text-align":"center"}},[i("img",{attrs:{src:"/images/icon-2022.svg"}})]),t._v(" "),i("td",{staticStyle:{"text-align":"center"}},[i("img",{attrs:{src:"/images/icon-2023.svg"}})]),t._v(" "),i("td",{staticStyle:{"text-align":"center"}},[i("img",{attrs:{src:"/images/icon-2024.svg"}})]),t._v(" "),i("td")]),t._v(" "),i("tr",[i("td",{staticStyle:{color:"#ffd700"}},[t._v("Shortcut customize")]),t._v(" "),i("td"),t._v(" "),i("td",{staticStyle:{"text-align":"center"}},[i("img",{attrs:{src:"/images/icon-2022.svg"}})]),t._v(" "),i("td",{staticStyle:{"text-align":"center"}},[i("img",{attrs:{src:"/images/icon-2023.svg"}})]),t._v(" "),i("td",{staticStyle:{"text-align":"center"}},[i("img",{attrs:{src:"/images/icon-2024.svg"}})]),t._v(" "),i("td")]),t._v(" "),i("tr",[i("td",{staticStyle:{color:"#ffd700"}},[t._v("Editor scheme")]),t._v(" "),i("td"),t._v(" "),i("td"),t._v(" "),i("td",{staticStyle:{"text-align":"center"}},[i("img",{attrs:{src:"/images/icon-2023.svg"}})]),t._v(" "),i("td",{staticStyle:{"text-align":"center"}},[i("img",{attrs:{src:"/images/icon-2024.svg"}})]),t._v(" "),i("td")]),t._v(" "),i("tr",[i("td",{staticStyle:{color:"#ffd700"}},[t._v("Split view")]),t._v(" "),i("td"),t._v(" "),i("td"),t._v(" "),i("td",{staticStyle:{"text-align":"center"}},[i("img",{attrs:{src:"/images/icon-2023.svg"}})]),t._v(" "),i("td",{staticStyle:{"text-align":"center"}},[i("img",{attrs:{src:"/images/icon-2024.svg"}})]),t._v(" "),i("td")])])])]),t._v(" "),i("div",[i("script2",{attrs:{type:"text/javascript",async:"true",src:"https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"}}),t._v(" "),i("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),t._v(" "),i("script2",{attrs:{type:"text/javascript"}},[t._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1)])}),[],!1,null,null,null);e.default=a.exports}}]); \ No newline at end of file diff --git a/assets/js/41.b2d107c2.js b/assets/js/41.b2d107c2.js new file mode 100644 index 000000000..5748b3a85 --- /dev/null +++ b/assets/js/41.b2d107c2.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[41],{620:function(a,t,n){"use strict";n.r(t);var s=n(13),e=Object(s.a)({},(function(){var a=this,t=a.$createElement,n=a._self._c||t;return n("ContentSlotsDistributor",{attrs:{"slot-key":a.$parent.slotKey}},[n("h1",{attrs:{id:"install-on-linux"}},[n("a",{staticClass:"header-anchor",attrs:{href:"#install-on-linux"}},[a._v("#")]),a._v(" Install on Linux")]),a._v(" "),n("h2",{attrs:{id:"download-kangaroo"}},[n("a",{staticClass:"header-anchor",attrs:{href:"#download-kangaroo"}},[a._v("#")]),a._v(" Download Kangaroo")]),a._v(" "),n("p",[a._v("Download the latest version of Kangaroo from "),n("a",{attrs:{href:"../download"}},[a._v("Download")]),a._v(".")]),a._v(" "),n("h2",{attrs:{id:"install-on-debian-ubuntu"}},[n("a",{staticClass:"header-anchor",attrs:{href:"#install-on-debian-ubuntu"}},[a._v("#")]),a._v(" Install on Debian/Ubuntu")]),a._v(" "),n("p",[a._v("Download the Debian/Ubuntu package (*.deb) from the official website, then execute the command:")]),a._v(" "),n("div",{staticClass:"language-bash extra-class"},[n("pre",{pre:!0,attrs:{class:"language-bash"}},[n("code",[n("span",{pre:!0,attrs:{class:"token comment"}},[a._v("# For Ubuntu")]),a._v("\n"),n("span",{pre:!0,attrs:{class:"token function"}},[a._v("sudo")]),a._v(" "),n("span",{pre:!0,attrs:{class:"token function"}},[a._v("apt")]),a._v(" "),n("span",{pre:!0,attrs:{class:"token function"}},[a._v("install")]),a._v(" kangaroo-max-3.92.1.230901-x86_64.deb\n\n"),n("span",{pre:!0,attrs:{class:"token comment"}},[a._v("# For Debian")]),a._v("\n"),n("span",{pre:!0,attrs:{class:"token function"}},[a._v("sudo")]),a._v(" dpkg -i kangaroo-max-3.92.1.230901-x86_64.deb\n")])])]),n("h2",{attrs:{id:"install-on-rhel-centos-fedora"}},[n("a",{staticClass:"header-anchor",attrs:{href:"#install-on-rhel-centos-fedora"}},[a._v("#")]),a._v(" Install on RHEL/CentOS/Fedora")]),a._v(" "),n("p",[a._v("Download the RHEL/CentOS/Fedora package (*.rpm) from the official website, then execute the command:")]),a._v(" "),n("div",{staticClass:"language-bash extra-class"},[n("pre",{pre:!0,attrs:{class:"language-bash"}},[n("code",[n("span",{pre:!0,attrs:{class:"token comment"}},[a._v("# For Fedora")]),a._v("\n"),n("span",{pre:!0,attrs:{class:"token function"}},[a._v("sudo")]),a._v(" dnf "),n("span",{pre:!0,attrs:{class:"token function"}},[a._v("install")]),a._v(" kangaroo-max-3.92.1.230901-x86_64.rpm\n\n"),n("span",{pre:!0,attrs:{class:"token comment"}},[a._v("# For RHEL/CentOS")]),a._v("\n"),n("span",{pre:!0,attrs:{class:"token function"}},[a._v("sudo")]),a._v(" yum "),n("span",{pre:!0,attrs:{class:"token function"}},[a._v("install")]),a._v(" kangaroo-max-3.92.1.230901-x86_64.rpm\n")])])]),n("h2",{attrs:{id:"install-on-arch-linux"}},[n("a",{staticClass:"header-anchor",attrs:{href:"#install-on-arch-linux"}},[a._v("#")]),a._v(" Install on Arch Linux")]),a._v(" "),n("p",[a._v("Download the Arch Linux package (*.pkg.tar.zst) from the official website, then execute the command:")]),a._v(" "),n("div",{staticClass:"language-bash extra-class"},[n("pre",{pre:!0,attrs:{class:"language-bash"}},[n("code",[n("span",{pre:!0,attrs:{class:"token function"}},[a._v("sudo")]),a._v(" pacman -U kangaroo-max-3.92.1.230901-1-x86_64.pkg.tar.zst\n")])])]),n("Vssue",{attrs:{"issue-id":5,title:a.$title}})],1)}),[],!1,null,null,null);t.default=e.exports}}]); \ No newline at end of file diff --git a/assets/js/42.ee1b18b3.js b/assets/js/42.ee1b18b3.js new file mode 100644 index 000000000..02f8d0535 --- /dev/null +++ b/assets/js/42.ee1b18b3.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[42],{636:function(t,e,n){"use strict";n.r(e);var a=n(13),i=Object(a.a)({},(function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("ContentSlotsDistributor",{attrs:{"slot-key":t.$parent.slotKey}},[n("h1",{attrs:{id:"kangaroo-pricing-plan"}},[n("a",{staticClass:"header-anchor",attrs:{href:"#kangaroo-pricing-plan"}},[t._v("#")]),t._v(" Kangaroo pricing plan")]),t._v(" "),n("h2",{attrs:{id:"features-pricing-plan"}},[n("a",{staticClass:"header-anchor",attrs:{href:"#features-pricing-plan"}},[t._v("#")]),t._v(" Features pricing plan")]),t._v(" "),n("p",[t._v("The prices below are annual subscription prices and include one year of free upgrades and support.")]),t._v(" "),n("table",[n("thead",[n("tr",[n("th",[t._v("Features plan")]),t._v(" "),n("th",{staticStyle:{"text-align":"center"}},[t._v("Enterprise license")]),t._v(" "),n("th",{staticStyle:{"text-align":"center"}},[t._v("Non-commercial license")]),t._v(" "),n("th",[t._v("License extension")])])]),t._v(" "),n("tbody",[n("tr",[n("td",[t._v("Multiple database")]),t._v(" "),n("td",{staticStyle:{"text-align":"center"}},[t._v("USD 249")]),t._v(" "),n("td",{staticStyle:{"text-align":"center"}},[t._v("USD 99")]),t._v(" "),n("td",[t._v("20% discount")])]),t._v(" "),n("tr",[n("td",[t._v("Single database")]),t._v(" "),n("td",{staticStyle:{"text-align":"center"}},[t._v("USD 66")]),t._v(" "),n("td",{staticStyle:{"text-align":"center"}},[t._v("USD 29")]),t._v(" "),n("td",[t._v("20% discount")])])])]),t._v(" "),n("h2",{attrs:{id:"license-with-devices-support"}},[n("a",{staticClass:"header-anchor",attrs:{href:"#license-with-devices-support"}},[t._v("#")]),t._v(" License with devices support")]),t._v(" "),n("ol",[n("li",[t._v("One license, one user, connect with mobile phone.")]),t._v(" "),n("li",[t._v("One license support three devices(Windows / MacOS / Linux).")])])])}),[],!1,null,null,null);e.default=i.exports}}]); \ No newline at end of file diff --git a/assets/js/43.303082f4.js b/assets/js/43.303082f4.js new file mode 100644 index 000000000..050e636bd --- /dev/null +++ b/assets/js/43.303082f4.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[43],{624:function(a,t,s){"use strict";s.r(t);var e=s(13),n=Object(e.a)({},(function(){var a=this,t=a.$createElement,s=a._self._c||t;return s("ContentSlotsDistributor",{attrs:{"slot-key":a.$parent.slotKey}},[s("h1",{attrs:{id:"hi-dpi-scale-setting"}},[s("a",{staticClass:"header-anchor",attrs:{href:"#hi-dpi-scale-setting"}},[a._v("#")]),a._v(" Hi-DPI scale setting")]),a._v(" "),s("p",[a._v("GTK4 has HiDPI support on all platforms, all GTK4 app will scale with system scale setting automatically. sometimes, the scaling will not be working, so you should try another way to do it:")]),a._v(" "),s("h2",{attrs:{id:"_4k-monitor-scale-200"}},[s("a",{staticClass:"header-anchor",attrs:{href:"#_4k-monitor-scale-200"}},[a._v("#")]),a._v(" 4K monitor scale(200%)")]),a._v(" "),s("h3",{attrs:{id:"windows"}},[s("a",{staticClass:"header-anchor",attrs:{href:"#windows"}},[a._v("#")]),a._v(" Windows")]),a._v(" "),s("div",{staticClass:"language- extra-class"},[s("pre",{pre:!0,attrs:{class:"language-text"}},[s("code",[a._v("// Environment variables(integer)\nGDK_SCALE = 2\n// GDK_DPI_SCALE=96\n")])])]),s("h3",{attrs:{id:"macos"}},[s("a",{staticClass:"header-anchor",attrs:{href:"#macos"}},[a._v("#")]),a._v(" macOS")]),a._v(" "),s("div",{staticClass:"language- extra-class"},[s("pre",{pre:!0,attrs:{class:"language-text"}},[s("code",[a._v("// Shell environments \nGDK_SCALE = 2\n// GDK_DPI_SCALE = 96\n")])])]),s("h3",{attrs:{id:"linux-gtk"}},[s("a",{staticClass:"header-anchor",attrs:{href:"#linux-gtk"}},[a._v("#")]),a._v(" Linux / GTK")]),a._v(" "),s("div",{staticClass:"language- extra-class"},[s("pre",{pre:!0,attrs:{class:"language-text"}},[s("code",[a._v("// Shell environments \nGDK_SCALE = 2\n// GDK_DPI_SCALE = 96\n\nor\n\n// (X11 Server) XSettings value\nGdk/WindowScalingFactor = 2\nGdk/UnscaledDPI = 98340\n")])])]),s("h3",{attrs:{id:"linux-kde"}},[s("a",{staticClass:"header-anchor",attrs:{href:"#linux-kde"}},[a._v("#")]),a._v(" Linux / KDE")]),a._v(" "),s("div",{staticClass:"language- extra-class"},[s("pre",{pre:!0,attrs:{class:"language-text"}},[s("code",[a._v("// Shell environments \nunset GDK_SCALE\nunset GDK_DPI_SCALE\n\n// (X11 Server) XSettings value: ~/.config/xsettingsd/xsettingsd.conf\nGdk/WindowScalingFactor = 2\nGdk/UnscaledDPI = 98340\n")])])]),s("h2",{attrs:{id:"_8k-monitor-scale-400"}},[s("a",{staticClass:"header-anchor",attrs:{href:"#_8k-monitor-scale-400"}},[a._v("#")]),a._v(" 8K monitor scale(400%)")]),a._v(" "),s("h3",{attrs:{id:"windows-2"}},[s("a",{staticClass:"header-anchor",attrs:{href:"#windows-2"}},[a._v("#")]),a._v(" Windows")]),a._v(" "),s("div",{staticClass:"language- extra-class"},[s("pre",{pre:!0,attrs:{class:"language-text"}},[s("code",[a._v("GDK_SCALE = 4\n// GDK_DPI_SCALE=96\n")])])]),s("h3",{attrs:{id:"macos-2"}},[s("a",{staticClass:"header-anchor",attrs:{href:"#macos-2"}},[a._v("#")]),a._v(" macOS")]),a._v(" "),s("div",{staticClass:"language- extra-class"},[s("pre",{pre:!0,attrs:{class:"language-text"}},[s("code",[a._v("// Shell environments \nGDK_SCALE = 4\n// GDK_DPI_SCALE = 96\n")])])]),s("h3",{attrs:{id:"linux-gtk-2"}},[s("a",{staticClass:"header-anchor",attrs:{href:"#linux-gtk-2"}},[a._v("#")]),a._v(" Linux / GTK")]),a._v(" "),s("div",{staticClass:"language- extra-class"},[s("pre",{pre:!0,attrs:{class:"language-text"}},[s("code",[a._v("// Shell environments \nGDK_SCALE = 4\n// GDK_DPI_SCALE = 96\n\nor\n\n// (X11 Server) XSettings value\nGdk/WindowScalingFactor = 4\nGdk/UnscaledDPI = 98340\n")])])]),s("h3",{attrs:{id:"linux-kde-2"}},[s("a",{staticClass:"header-anchor",attrs:{href:"#linux-kde-2"}},[a._v("#")]),a._v(" Linux / KDE")]),a._v(" "),s("div",{staticClass:"language- extra-class"},[s("pre",{pre:!0,attrs:{class:"language-text"}},[s("code",[a._v("// Shell environments \nunset GDK_SCALE\nunset GDK_DPI_SCALE\n\n// (X11 Server) XSettings value: ~/.config/xsettingsd/xsettingsd.conf\nGdk/WindowScalingFactor = 4\nGdk/UnscaledDPI = 98340\n")])])])])}),[],!1,null,null,null);t.default=n.exports}}]); \ No newline at end of file diff --git a/assets/js/44.7f3efdfe.js b/assets/js/44.7f3efdfe.js new file mode 100644 index 000000000..1f0e110ec --- /dev/null +++ b/assets/js/44.7f3efdfe.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[44],{626:function(e,t,r){"use strict";r.r(t);var s=r(13),a=Object(s.a)({},(function(){var e=this,t=e.$createElement,r=e._self._c||t;return r("ContentSlotsDistributor",{attrs:{"slot-key":e.$parent.slotKey}},[r("h1",{attrs:{id:"system-requirements"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#system-requirements"}},[e._v("#")]),e._v(" System Requirements")]),e._v(" "),r("h2",{attrs:{id:"operation-system"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#operation-system"}},[e._v("#")]),e._v(" Operation System")]),e._v(" "),r("ul",[r("li",[e._v("macOS: ≥ v10.14 (For older macOS, please see here)")]),e._v(" "),r("li",[e._v("Linux: tested on Ubuntu 18.04 and 20.04, support (x64) architecture.")]),e._v(" "),r("li",[e._v("Windows: require Windows 7, Windows 8, Windows 10 or Windows 11, support x86 and amd64 (x64) architecture.")])]),e._v(" "),r("h2",{attrs:{id:"hardware"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#hardware"}},[e._v("#")]),e._v(" Hardware")]),e._v(" "),r("ul",[r("li",[e._v("Windows 1G of RAM")]),e._v(" "),r("li",[e._v("Mac 1G of RAM")]),e._v(" "),r("li",[e._v("Linux 1G of RAM")])])])}),[],!1,null,null,null);t.default=a.exports}}]); \ No newline at end of file diff --git a/assets/js/45.9b3b120c.js b/assets/js/45.9b3b120c.js new file mode 100644 index 000000000..62dfda292 --- /dev/null +++ b/assets/js/45.9b3b120c.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[45],{627:function(t,s,e){"use strict";e.r(s);var i=e(13),a=Object(i.a)({},(function(){var t=this.$createElement,s=this._self._c||t;return s("ContentSlotsDistributor",{attrs:{"slot-key":this.$parent.slotKey}},[s("h1",{attrs:{id:"visual-sql-builder"}},[s("a",{staticClass:"header-anchor",attrs:{href:"#visual-sql-builder"}},[this._v("#")]),this._v(" Visual sql builder")]),this._v(" "),s("div",{staticClass:"custom-block danger"},[s("p",{staticClass:"custom-block-title"},[this._v("The bracket statement does not support")]),this._v(" "),s("p",[this._v("GTK ListBox widget can't build statements with brackets exactly,others are OK。")])])])}),[],!1,null,null,null);s.default=a.exports}}]); \ No newline at end of file diff --git a/assets/js/46.fa8cde19.js b/assets/js/46.fa8cde19.js new file mode 100644 index 000000000..bce4a8de8 --- /dev/null +++ b/assets/js/46.fa8cde19.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[46],{628:function(v,t,_){"use strict";_.r(t);var a=_(13),r=Object(a.a)({},(function(){var v=this,t=v.$createElement,_=v._self._c||t;return _("ContentSlotsDistributor",{attrs:{"slot-key":v.$parent.slotKey}},[_("h1",{attrs:{id:"download-kangaroo"}},[_("a",{staticClass:"header-anchor",attrs:{href:"#download-kangaroo"}},[v._v("#")]),v._v(" Download Kangaroo")]),v._v(" "),_("p",[v._v("Recommend all users to download or upgrade the latest version always, new features and bug fixed will landing the new version. "),_("strong",[v._v("Some servers have space limitation, only the latest version is available for download.")])]),v._v(" "),_("div",{staticClass:"custom-block danger"},[_("p",{staticClass:"custom-block-title"},[v._v("Important information")]),v._v(" "),_("p",[v._v("Versions marked with "),_("Badge",{attrs:{text:"Dev"}}),v._v(" "),_("Badge",{attrs:{text:"Beta"}}),v._v(" are free for commercial use, others require payment.")],1)]),v._v(" "),_("h2",{attrs:{id:"kangaroo-versions"}},[_("a",{staticClass:"header-anchor",attrs:{href:"#kangaroo-versions"}},[v._v("#")]),v._v(" Kangaroo versions")]),v._v(" "),_("table",[_("thead",[_("tr",[_("th",[v._v("Release date")]),v._v(" "),_("th",[v._v("Windows")]),v._v(" "),_("th",[v._v("Linux")]),v._v(" "),_("th",[v._v("MacOS")]),v._v(" "),_("th",[v._v("iOS")]),v._v(" "),_("th",[v._v("Android")])])]),v._v(" "),_("tbody",[_("tr",[_("td",[v._v("2023-09-01")]),v._v(" "),_("td",[_("a",{attrs:{href:"./v3.92.1.230901"}},[v._v("v3.92.1")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v3.92.1.230901"}},[v._v("v3.92.1")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v3.92.1.230901"}},[v._v("v3.92.1")])]),v._v(" "),_("td"),v._v(" "),_("td")]),v._v(" "),_("tr",[_("td",[v._v("2023-08-01")]),v._v(" "),_("td",[_("a",{attrs:{href:"./v3.91.1.230801"}},[v._v("v3.91.1 (Beta)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v3.91.1.230801"}},[v._v("v3.91.1 (Beta)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v3.91.1.230801"}},[v._v("v3.91.1 (Beta)")])]),v._v(" "),_("td"),v._v(" "),_("td")]),v._v(" "),_("tr",[_("td",[v._v("2023-07-01")]),v._v(" "),_("td",[_("a",{attrs:{href:"./v3.90.1.230701"}},[v._v("v3.90.1 (Beta)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v3.90.1.230701"}},[v._v("v3.90.1 (Beta)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v3.90.1.230701"}},[v._v("v3.90.1 (Beta)")])]),v._v(" "),_("td"),v._v(" "),_("td")]),v._v(" "),_("tr",[_("td",[v._v("2023-06-02")]),v._v(" "),_("td",[_("a",{attrs:{href:"./v2.99.3.230602"}},[v._v("v2.99.3 (Beta)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v2.99.3.230602"}},[v._v("v2.99.3 (Beta)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v2.99.3.230602"}},[v._v("v2.99.3 (Beta)")])]),v._v(" "),_("td"),v._v(" "),_("td")]),v._v(" "),_("tr",[_("td",[v._v("2023-05-08")]),v._v(" "),_("td",[_("a",{attrs:{href:"./v1.10.3.230508"}},[v._v("v1.10.3 (Beta)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v1.10.3.230508"}},[v._v("v1.10.3 (Beta)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v1.10.3.230508"}},[v._v("v1.10.3 (Beta)")])]),v._v(" "),_("td"),v._v(" "),_("td")]),v._v(" "),_("tr",[_("td",[v._v("2023-04-28")]),v._v(" "),_("td",[_("a",{attrs:{href:"./v2.99.2.230428"}},[v._v("v2.99.2 (Beta)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v2.99.2.230428"}},[v._v("v2.99.2 (Beta)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v2.99.2.230428"}},[v._v("v2.99.2 (Beta)")])]),v._v(" "),_("td"),v._v(" "),_("td")]),v._v(" "),_("tr",[_("td",[v._v("2023-04-02")]),v._v(" "),_("td",[_("a",{attrs:{href:"./v2.99.1.230331"}},[v._v("v2.99.1 (Beta)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v2.99.1.230331"}},[v._v("v2.99.1 (Beta)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v2.99.1.230331"}},[v._v("v2.99.1 (Beta)")])]),v._v(" "),_("td"),v._v(" "),_("td")]),v._v(" "),_("tr",[_("td",[v._v("2023-03-01")]),v._v(" "),_("td",[_("a",{attrs:{href:"./v2.3.2.230301"}},[v._v("v2.3.2 (Beta)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v2.3.2.230301"}},[v._v("v2.3.2 (Beta)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v2.3.2.230301"}},[v._v("v2.3.2 (Beta)")])]),v._v(" "),_("td"),v._v(" "),_("td")]),v._v(" "),_("tr",[_("td",[v._v("2023-02-01")]),v._v(" "),_("td",[_("a",{attrs:{href:"./v2.3.1.230201"}},[v._v("v2.3.1 (Beta)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v2.3.1.230201"}},[v._v("v2.3.1 (Beta)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v2.3.1.230201"}},[v._v("v2.3.1 (Beta)")])]),v._v(" "),_("td"),v._v(" "),_("td")]),v._v(" "),_("tr",[_("td",[v._v("2023-01-01")]),v._v(" "),_("td",[_("a",{attrs:{href:"./v2.2.1.230101"}},[v._v("v2.2.1 (Beta)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v2.2.1.230101"}},[v._v("v2.2.1 (Beta)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v2.2.1.230101"}},[v._v("v2.2.1 (Beta)")])]),v._v(" "),_("td"),v._v(" "),_("td")]),v._v(" "),_("tr",[_("td",[v._v("2022-12-01")]),v._v(" "),_("td",[_("a",{attrs:{href:"./v2.1.1.221201"}},[v._v("v2.1.1 (Beta)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v2.1.1.221201"}},[v._v("v2.1.1 (Beta)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v2.1.1.221201"}},[v._v("v2.1.1 (Beta)")])]),v._v(" "),_("td"),v._v(" "),_("td")]),v._v(" "),_("tr",[_("td",[v._v("2022-11-01")]),v._v(" "),_("td",[_("a",{attrs:{href:"./v2.0.0.221101"}},[v._v("v2.0.0 (Beta)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v2.0.0.221101"}},[v._v("v2.0.0 (Beta)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v2.0.0.221101"}},[v._v("v2.0.0 (Beta)")])]),v._v(" "),_("td"),v._v(" "),_("td")]),v._v(" "),_("tr",[_("td",[v._v("2022-10-01")]),v._v(" "),_("td",[_("a",{attrs:{href:"./v1.99.1.221001"}},[v._v("v1.99.1 (Dev)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v1.99.1.221001"}},[v._v("v1.99.1 (Dev)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v1.99.1.221001"}},[v._v("v1.99.1 (Dev)")])]),v._v(" "),_("td"),v._v(" "),_("td")]),v._v(" "),_("tr",[_("td",[v._v("2022-09-04")]),v._v(" "),_("td",[_("a",{attrs:{href:"./v1.98.1.220904"}},[v._v("v1.98.1 (Dev)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v1.98.1.220904"}},[v._v("v1.98.1 (Dev)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v1.98.1.220904"}},[v._v("v1.98.1 (Dev)")])]),v._v(" "),_("td"),v._v(" "),_("td")]),v._v(" "),_("tr",[_("td",[v._v("2022-07-31")]),v._v(" "),_("td",[_("a",{attrs:{href:"./v1.97.1.220731"}},[v._v("v1.97.1 (Dev)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v1.97.1.220731"}},[v._v("v1.97.1 (Dev)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v1.97.1.220731"}},[v._v("v1.97.1 (Dev)")])]),v._v(" "),_("td"),v._v(" "),_("td")]),v._v(" "),_("tr",[_("td",[v._v("2022-07-01")]),v._v(" "),_("td",[_("a",{attrs:{href:"./v1.10.2.220701"}},[v._v("v1.10.2 (Beta)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v1.10.2.220701"}},[v._v("v1.10.2 (Beta)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v1.10.2.220701"}},[v._v("v1.10.2 (Beta)")])]),v._v(" "),_("td"),v._v(" "),_("td")]),v._v(" "),_("tr",[_("td",[v._v("2022-07-01")]),v._v(" "),_("td",[_("a",{attrs:{href:"./v1.96.1.220701"}},[v._v("v1.96.1 (Dev)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v1.96.1.220701"}},[v._v("v1.96.1 (Dev)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v1.96.1.220701"}},[v._v("v1.96.1 (Dev)")])]),v._v(" "),_("td"),v._v(" "),_("td")]),v._v(" "),_("tr",[_("td",[v._v("2022-06-01")]),v._v(" "),_("td",[_("a",{attrs:{href:"./v1.95.1.220601"}},[v._v("v1.95.1 (Dev)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v1.95.1.220601"}},[v._v("v1.95.1 (Dev)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v1.95.1.220601"}},[v._v("v1.95.1 (Dev)")])]),v._v(" "),_("td"),v._v(" "),_("td")]),v._v(" "),_("tr",[_("td",[v._v("2022-05-01")]),v._v(" "),_("td",[_("a",{attrs:{href:"./v1.94.1.220501"}},[v._v("v1.94.1 (Dev)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v1.94.1.220501"}},[v._v("v1.94.1 (Dev)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v1.94.1.220501"}},[v._v("v1.94.1 (Dev)")])]),v._v(" "),_("td"),v._v(" "),_("td")]),v._v(" "),_("tr",[_("td",[v._v("2022-04-01")]),v._v(" "),_("td",[_("a",{attrs:{href:"./v1.93.1.220401"}},[v._v("v1.93.1 (Dev)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v1.93.1.220401"}},[v._v("v1.93.1 (Dev)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v1.93.1.220401"}},[v._v("v1.93.1 (Dev)")])]),v._v(" "),_("td"),v._v(" "),_("td")]),v._v(" "),_("tr",[_("td",[v._v("2022-02-28")]),v._v(" "),_("td",[_("a",{attrs:{href:"./v1.92.1.220228"}},[v._v("v1.92.1 (Dev)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v1.92.1.220228"}},[v._v("v1.92.1 (Dev)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v1.92.1.220228"}},[v._v("v1.92.1 (Dev)")])]),v._v(" "),_("td"),v._v(" "),_("td")]),v._v(" "),_("tr",[_("td",[v._v("2022-01-28")]),v._v(" "),_("td",[_("a",{attrs:{href:"./v1.91.1.220128"}},[v._v("v1.91.1 (Dev)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v1.91.1.220128"}},[v._v("v1.91.1 (Dev)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v1.91.1.220128"}},[v._v("v1.91.1 (Dev)")])]),v._v(" "),_("td"),v._v(" "),_("td")]),v._v(" "),_("tr",[_("td",[v._v("2021-12-31")]),v._v(" "),_("td",[_("a",{attrs:{href:"./v1.90.1.211231"}},[v._v("v1.90.1 (Dev)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v1.90.1.211231"}},[v._v("v1.90.1 (Dev)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v1.90.1.211231"}},[v._v("v1.90.1 (Dev)")])]),v._v(" "),_("td"),v._v(" "),_("td")]),v._v(" "),_("tr",[_("td",[v._v("2021-07-31")]),v._v(" "),_("td",[_("a",{attrs:{href:"./v1.10.1.210731"}},[v._v("v1.10.1 (Beta)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v1.10.1.210731"}},[v._v("v1.10.1 (Beta)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v1.10.1.210731"}},[v._v("v1.10.1 (Beta)")])]),v._v(" "),_("td"),v._v(" "),_("td")]),v._v(" "),_("tr",[_("td",[v._v("2021-05-31")]),v._v(" "),_("td",[_("a",{attrs:{href:"./v1.9.1.210531"}},[v._v("v1.9.1 (Dev)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v1.9.1.210531"}},[v._v("v1.9.1 (Dev)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v1.9.1.210531"}},[v._v("v1.9.1 (Dev)")])]),v._v(" "),_("td"),v._v(" "),_("td")]),v._v(" "),_("tr",[_("td",[v._v("2021-04-30")]),v._v(" "),_("td",[_("a",{attrs:{href:"./v1.8.1.210430"}},[v._v("v1.8.1 (Dev)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v1.8.1.210430"}},[v._v("v1.8.1 (Dev)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v1.8.1.210430"}},[v._v("v1.8.1 (Dev)")])]),v._v(" "),_("td"),v._v(" "),_("td")]),v._v(" "),_("tr",[_("td",[v._v("2021-03-31")]),v._v(" "),_("td",[_("a",{attrs:{href:"./v1.7.1.210331"}},[v._v("v1.7.1 (Dev)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v1.7.1.210331"}},[v._v("v1.7.1 (Dev)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v1.7.1.210331"}},[v._v("v1.7.1 (Dev)")])]),v._v(" "),_("td"),v._v(" "),_("td")]),v._v(" "),_("tr",[_("td",[v._v("2021-01-31")]),v._v(" "),_("td",[_("a",{attrs:{href:"./v1.6.1.210131"}},[v._v("v1.6.1 (Dev)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v1.6.1.210131"}},[v._v("v1.6.1 (Dev)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v1.6.1.210131"}},[v._v("v1.6.1 (Dev)")])]),v._v(" "),_("td"),v._v(" "),_("td")]),v._v(" "),_("tr",[_("td",[v._v("2020-12-31")]),v._v(" "),_("td",[_("a",{attrs:{href:"./v1.5.1.201231"}},[v._v("v1.5.1 (Dev)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v1.5.1.201231"}},[v._v("v1.5.1 (Dev)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v1.5.1.201231"}},[v._v("v1.5.1 (Dev)")])]),v._v(" "),_("td"),v._v(" "),_("td")]),v._v(" "),_("tr",[_("td",[v._v("2020-11-09")]),v._v(" "),_("td",[_("a",{attrs:{href:"./v1.0.6.201109"}},[v._v("v1.0.6 (Beta)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v1.0.6.201109"}},[v._v("v1.0.6 (Beta)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v1.0.6.201109"}},[v._v("v1.0.6 (Beta)")])]),v._v(" "),_("td"),v._v(" "),_("td")]),v._v(" "),_("tr",[_("td",[v._v("2020-11-02")]),v._v(" "),_("td",[_("a",{attrs:{href:"./v1.3.1.201102"}},[v._v("v1.3.1 (Dev)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v1.3.1.201102"}},[v._v("v1.3.1 (Dev)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v1.3.1.201102"}},[v._v("v1.3.1 (Dev)")])]),v._v(" "),_("td"),v._v(" "),_("td")]),v._v(" "),_("tr",[_("td",[v._v("2020-10-19")]),v._v(" "),_("td",[_("a",{attrs:{href:"./v1.0.5.201019"}},[v._v("v1.0.5 (Beta)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v1.0.5.201019"}},[v._v("v1.0.5 (Beta)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v1.0.5.201019"}},[v._v("v1.0.5 (Beta)")])]),v._v(" "),_("td"),v._v(" "),_("td")]),v._v(" "),_("tr",[_("td",[v._v("2020-09-21")]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.99.3.200921"}},[v._v("v0.99.3 (Beta)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.99.3.200921"}},[v._v("v0.99.3 (Beta)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.99.3.200921"}},[v._v("v0.99.3 (Beta)")])]),v._v(" "),_("td"),v._v(" "),_("td")]),v._v(" "),_("tr",[_("td",[v._v("2020-09-07")]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.99.2.200907"}},[v._v("v0.99.2 (Beta)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.99.2.200907"}},[v._v("v0.99.2 (Beta)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.99.2.200907"}},[v._v("v0.99.2 (Beta)")])]),v._v(" "),_("td"),v._v(" "),_("td")]),v._v(" "),_("tr",[_("td",[v._v("2020-08-24")]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.99.1.200824"}},[v._v("v0.99.1 (Beta)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.99.1.200824"}},[v._v("v0.99.1 (Beta)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.99.1.200824"}},[v._v("v0.99.1 (Beta)")])]),v._v(" "),_("td"),v._v(" "),_("td")]),v._v(" "),_("tr",[_("td",[v._v("2020-08-17")]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.33.1.200817"}},[v._v("v0.33.1 (Dev)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.33.1.200817"}},[v._v("v0.33.1 (Dev)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.33.1.200817"}},[v._v("v0.33.1 (Dev)")])]),v._v(" "),_("td"),v._v(" "),_("td")]),v._v(" "),_("tr",[_("td",[v._v("2020-08-10")]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.32.1.200810"}},[v._v("v0.32.1 (Dev)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.32.1.200810"}},[v._v("v0.32.1 (Dev)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.32.1.200810"}},[v._v("v0.32.1 (Dev)")])]),v._v(" "),_("td"),v._v(" "),_("td")]),v._v(" "),_("tr",[_("td",[v._v("2020-08-03")]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.31.1.200803"}},[v._v("v0.31.1 (Dev)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.31.1.200803"}},[v._v("v0.31.1 (Dev)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.31.1.200803"}},[v._v("v0.31.1 (Dev)")])]),v._v(" "),_("td"),v._v(" "),_("td")]),v._v(" "),_("tr",[_("td",[v._v("2020-07-27")]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.30.1.200727"}},[v._v("v0.30.1 (Dev)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.30.1.200727"}},[v._v("v0.30.1 (Dev)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.30.1.200727"}},[v._v("v0.30.1 (Dev)")])]),v._v(" "),_("td"),v._v(" "),_("td")]),v._v(" "),_("tr",[_("td",[v._v("2020-07-13")]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.29.1.200713"}},[v._v("v0.29.1 (Dev)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.29.1.200713"}},[v._v("v0.29.1 (Dev)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.29.1.200713"}},[v._v("v0.29.1 (Dev)")])]),v._v(" "),_("td"),v._v(" "),_("td")]),v._v(" "),_("tr",[_("td",[v._v("2020-06-29")]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.28.1.200629"}},[v._v("v0.28.1 (Dev)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.28.1.200629"}},[v._v("v0.28.1 (Dev)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.28.1.200629"}},[v._v("v0.28.1 (Dev)")])]),v._v(" "),_("td"),v._v(" "),_("td")]),v._v(" "),_("tr",[_("td",[v._v("2020-06-22")]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.27.1.200622"}},[v._v("v0.27.1 (Beta)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.27.1.200622"}},[v._v("v0.27.1 (Beta)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.27.1.200622"}},[v._v("v0.27.1 (Beta)")])]),v._v(" "),_("td"),v._v(" "),_("td")]),v._v(" "),_("tr",[_("td",[v._v("2020-06-15")]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.26.1.200615"}},[v._v("v0.26.1 (Dev)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.26.1.200615"}},[v._v("v0.26.1 (Dev)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.26.1.200615"}},[v._v("v0.26.1 (Dev)")])]),v._v(" "),_("td"),v._v(" "),_("td")]),v._v(" "),_("tr",[_("td",[v._v("2020-06-01")]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.25.1.200601"}},[v._v("v0.25.1 (Beta)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.25.1.200601"}},[v._v("v0.25.1 (Beta)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.25.1.200601"}},[v._v("v0.25.1 (Beta)")])]),v._v(" "),_("td"),v._v(" "),_("td")]),v._v(" "),_("tr",[_("td",[v._v("2020-05-25")]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.24.1.200525"}},[v._v("v0.24.1 (Dev)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.24.1.200525"}},[v._v("v0.24.1 (Dev)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.24.1.200525"}},[v._v("v0.24.1 (Dev)")])]),v._v(" "),_("td"),v._v(" "),_("td")]),v._v(" "),_("tr",[_("td",[v._v("2020-05-18")]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.23.1.200518"}},[v._v("v0.23.1 (Beta)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.23.1.200518"}},[v._v("v0.23.1 (Beta)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.23.1.200518"}},[v._v("v0.23.1 (Beta)")])]),v._v(" "),_("td"),v._v(" "),_("td")]),v._v(" "),_("tr",[_("td",[v._v("2020-05-11")]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.22.1.200511"}},[v._v("v0.22.1 (Beta)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.22.1.200511"}},[v._v("v0.22.1 (Beta)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.22.1.200511"}},[v._v("v0.22.1 (Beta)")])]),v._v(" "),_("td"),v._v(" "),_("td")]),v._v(" "),_("tr",[_("td",[v._v("2020-05-04")]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.21.1.200504"}},[v._v("v0.21.1 (Beta)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.21.1.200504"}},[v._v("v0.21.1 (Beta)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.21.1.200504"}},[v._v("v0.21.1 (Beta)")])]),v._v(" "),_("td"),v._v(" "),_("td")]),v._v(" "),_("tr",[_("td",[v._v("2020-04-20")]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.20.1.200420"}},[v._v("v0.20.1 (Dev)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.20.1.200420"}},[v._v("v0.20.1 (Dev)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.20.1.200420"}},[v._v("v0.20.1 (Dev)")])]),v._v(" "),_("td"),v._v(" "),_("td")]),v._v(" "),_("tr",[_("td",[v._v("2020-04-13")]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.19.1.200413"}},[v._v("v0.19.1 (Dev)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.19.1.200413"}},[v._v("v0.19.1 (Dev)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.19.1.200413"}},[v._v("v0.19.1 (Dev)")])]),v._v(" "),_("td"),v._v(" "),_("td")]),v._v(" "),_("tr",[_("td",[v._v("2020-04-06")]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.18.1.200406"}},[v._v("v0.18.1 (Dev)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.18.1.200406"}},[v._v("v0.18.1 (Dev)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.18.1.200406"}},[v._v("v0.18.1 (Dev)")])]),v._v(" "),_("td"),v._v(" "),_("td")]),v._v(" "),_("tr",[_("td",[v._v("2020-03-23")]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.17.0.200323"}},[v._v("v0.17.0 (Dev)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.17.0.200323"}},[v._v("v0.17.0 (Dev)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.17.0.200323"}},[v._v("v0.17.0 (Dev)")])]),v._v(" "),_("td"),v._v(" "),_("td")]),v._v(" "),_("tr",[_("td",[v._v("2020-03-16")]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.16.0.200316"}},[v._v("v0.16.0 (Dev)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.16.0.200316"}},[v._v("v0.16.0 (Dev)")])]),v._v(" "),_("td"),v._v(" "),_("td"),v._v(" "),_("td")]),v._v(" "),_("tr",[_("td",[v._v("2020-03-02")]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.15.0.200302"}},[v._v("v0.15.0 (Dev)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.15.0.200302"}},[v._v("v0.15.0 (Dev)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.15.0.200302"}},[v._v("v0.15.0 (Dev)")])]),v._v(" "),_("td"),v._v(" "),_("td")]),v._v(" "),_("tr",[_("td",[v._v("2020-02-17")]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.14.0.200217"}},[v._v("v0.14.0 (Dev)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.14.0.200217"}},[v._v("v0.14.0 (Dev)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.14.0.200217"}},[v._v("v0.14.0 (Dev)")])]),v._v(" "),_("td"),v._v(" "),_("td")]),v._v(" "),_("tr",[_("td",[v._v("2020-02-10")]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.13.0.200210"}},[v._v("v0.13.0 (Dev)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.13.0.200210"}},[v._v("v0.13.0 (Dev)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.13.0.200210"}},[v._v("v0.13.0 (Dev)")])]),v._v(" "),_("td"),v._v(" "),_("td")]),v._v(" "),_("tr",[_("td",[v._v("2020-01-20")]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.12.1.200120"}},[v._v("v0.12.1 (Dev)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.12.1.200120"}},[v._v("v0.12.1 (Dev)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.12.1.200120"}},[v._v("v0.12.1 (Dev)")])]),v._v(" "),_("td"),v._v(" "),_("td")]),v._v(" "),_("tr",[_("td",[v._v("2020-01-13")]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.11.1.200113"}},[v._v("v0.11.1 (Dev)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.11.1.200113"}},[v._v("v0.11.1 (Dev)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.11.1.200113"}},[v._v("v0.11.1 (Dev)")])]),v._v(" "),_("td"),v._v(" "),_("td")]),v._v(" "),_("tr",[_("td",[v._v("2020-01-06")]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.11.0.200106"}},[v._v("v0.11.0 (Dev)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.11.0.200106"}},[v._v("v0.11.0 (Dev)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.11.0.200106"}},[v._v("v0.11.0 (Dev)")])]),v._v(" "),_("td"),v._v(" "),_("td")]),v._v(" "),_("tr",[_("td",[v._v("2019-12-23")]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.10.0.191223"}},[v._v("v0.10.0 (Dev)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.10.0.191223"}},[v._v("v0.10.0 (Dev)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.10.0.191223"}},[v._v("v0.10.0 (Dev)")])]),v._v(" "),_("td"),v._v(" "),_("td")]),v._v(" "),_("tr",[_("td",[v._v("2019-12-16")]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.9.5.191216"}},[v._v("v0.9.5 (Dev)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.9.5.191216"}},[v._v("v0.9.5 (Dev)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.9.5.191216"}},[v._v("v0.9.5 (Dev)")])]),v._v(" "),_("td"),v._v(" "),_("td")]),v._v(" "),_("tr",[_("td",[v._v("2019-12-09")]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.9.4.191209"}},[v._v("v0.9.4 (Dev)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.9.4.191209"}},[v._v("v0.9.4 (Dev)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.9.4.191209"}},[v._v("v0.9.4 (Dev)")])]),v._v(" "),_("td"),v._v(" "),_("td")]),v._v(" "),_("tr",[_("td",[v._v("2019-12-02")]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.9.3.191202"}},[v._v("v0.9.3 (Dev)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.9.3.191202"}},[v._v("v0.9.3 (Dev)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.9.3.191202"}},[v._v("v0.9.3 (Dev)")])]),v._v(" "),_("td"),v._v(" "),_("td")]),v._v(" "),_("tr",[_("td",[v._v("2019-11-25")]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.9.2.191125"}},[v._v("v0.9.2 (Dev)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.9.2.191125"}},[v._v("v0.9.2 (Dev)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.9.2.191125"}},[v._v("v0.9.2 (Dev)")])]),v._v(" "),_("td"),v._v(" "),_("td")]),v._v(" "),_("tr",[_("td",[v._v("2019-11-18")]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.9.1.191118"}},[v._v("v0.9.1 (Dev)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.9.1.191118"}},[v._v("v0.9.1 (Dev)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.9.1.191118"}},[v._v("v0.9.1 (Dev)")])]),v._v(" "),_("td"),v._v(" "),_("td")]),v._v(" "),_("tr",[_("td",[v._v("2019-11-11")]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.9.0.191111"}},[v._v("v0.9.0 (Dev)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.9.0.191111"}},[v._v("v0.9.0 (Dev)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.9.0.191111"}},[v._v("v0.9.0 (Dev)")])]),v._v(" "),_("td"),v._v(" "),_("td")]),v._v(" "),_("tr",[_("td",[v._v("2019-11-04")]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.8.5.191104"}},[v._v("v0.8.5 (Dev)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.8.5.191104"}},[v._v("v0.8.5 (Dev)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.8.5.191104"}},[v._v("v0.8.5 (Dev)")])]),v._v(" "),_("td"),v._v(" "),_("td")]),v._v(" "),_("tr",[_("td",[v._v("2019-10-28")]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.8.4.191028"}},[v._v("v0.8.4 (Dev)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.8.4.191028"}},[v._v("v0.8.4 (Dev)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.8.4.191028"}},[v._v("v0.8.4 (Dev)")])]),v._v(" "),_("td"),v._v(" "),_("td")]),v._v(" "),_("tr",[_("td",[v._v("2019-10-21")]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.8.3.191021"}},[v._v("v0.8.3 (Dev)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.8.3.191021"}},[v._v("v0.8.3 (Dev)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.8.3.191021"}},[v._v("v0.8.3 (Dev)")])]),v._v(" "),_("td"),v._v(" "),_("td")]),v._v(" "),_("tr",[_("td",[v._v("2019-10-14")]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.8.2.191014"}},[v._v("v0.8.2 (Dev)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.8.2.191014"}},[v._v("v0.8.2 (Dev)")])]),v._v(" "),_("td"),v._v(" "),_("td"),v._v(" "),_("td")]),v._v(" "),_("tr",[_("td",[v._v("2019-09-30")]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.8.1.190930"}},[v._v("v0.8.1 (Dev)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.8.1.190930"}},[v._v("v0.8.1 (Dev)")])]),v._v(" "),_("td"),v._v(" "),_("td"),v._v(" "),_("td")]),v._v(" "),_("tr",[_("td",[v._v("2019-09-23")]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.8.0.190923"}},[v._v("v0.8.0 (Dev)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.8.0.190923"}},[v._v("v0.8.0 (Dev)")])]),v._v(" "),_("td"),v._v(" "),_("td"),v._v(" "),_("td")]),v._v(" "),_("tr",[_("td",[v._v("2019-09-16")]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.7.2.190916"}},[v._v("v0.7.2 (Dev)")])]),v._v(" "),_("td",[_("a",{attrs:{href:"./v0.7.2.190916"}},[v._v("v0.7.2 (Dev)")])]),v._v(" "),_("td"),v._v(" "),_("td"),v._v(" "),_("td")])])]),v._v(" "),_("div",[_("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),v._v(" "),_("script2",{attrs:{type:"text/javascript"}},[v._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1)])}),[],!1,null,null,null);t.default=r.exports}}]); \ No newline at end of file diff --git a/assets/js/47.13dfbb3d.js b/assets/js/47.13dfbb3d.js new file mode 100644 index 000000000..e7893cecd --- /dev/null +++ b/assets/js/47.13dfbb3d.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[47],{629:function(t,a,e){"use strict";e.r(a);var r=e(13),o=Object(r.a)({},(function(){var t=this,a=t.$createElement,e=t._self._c||a;return e("ContentSlotsDistributor",{attrs:{"slot-key":t.$parent.slotKey}},[e("h1",{attrs:{id:"kangaroo-v0-10-0-dev"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#kangaroo-v0-10-0-dev"}},[t._v("#")]),t._v(" Kangaroo v0.10.0 (Dev)")]),t._v(" "),e("h2",{attrs:{id:"new-features-bug-fixes"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#new-features-bug-fixes"}},[t._v("#")]),t._v(" New features & bug-fixes")]),t._v(" "),e("ol",[e("li",[t._v("add export assistant UI")]),t._v(" "),e("li",[t._v("batch export table to file.")]),t._v(" "),e("li",[t._v("support data formats(DSV/JSON/XML/HTML/Markdown/SQL)")]),t._v(" "),e("li",[t._v("support title for column(rename)")])]),t._v(" "),e("div",[e("script2",{attrs:{type:"text/javascript",async:"true",src:"https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"}}),t._v(" "),e("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),t._v(" "),e("script2",{attrs:{type:"text/javascript"}},[t._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),t._v(" "),e("h2",{attrs:{id:"installer-portable-packages"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#installer-portable-packages"}},[t._v("#")]),t._v(" Installer & Portable packages "),e("Badge",{attrs:{text:"link expired",type:"warning"}})],1),t._v(" "),e("table",[e("thead",[e("tr",[e("th",[t._v("Install Packages")]),t._v(" "),e("th",[t._v("Windows (64 bit)")]),t._v(" "),e("th",[t._v("Linux (64 bit)")]),t._v(" "),e("th",[t._v("MacOS (64 bit)")])])]),t._v(" "),e("tbody",[e("tr",[e("td",[t._v("Installer (Github.com)")]),t._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.10.0.191223/Kangaroo_0.10.0.191223_win64.exe",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows Installer"),e("OutboundLink")],1)]),t._v(" "),e("td"),t._v(" "),e("td")]),t._v(" "),e("tr",[e("td",[t._v("Portable (Github.com)")]),t._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.10.0.191223/Kangaroo_0.10.0.191223_win64.7z",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows Portable"),e("OutboundLink")],1)]),t._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.10.0.191223/Kangaroo_0.10.0.191223_ubuntu.zip",target:"_blank",rel:"noopener noreferrer"}},[t._v("Ubuntu Portable"),e("OutboundLink")],1)]),t._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.10.0.191223/Kangaroo_0.10.0.191223_macos.zip",target:"_blank",rel:"noopener noreferrer"}},[t._v("MacOS Portable"),e("OutboundLink")],1)])]),t._v(" "),e("tr",[e("td",[t._v("Installer (Gitee.com)")]),t._v(" "),e("td",[e("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/316332/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows Installer"),e("OutboundLink")],1)]),t._v(" "),e("td"),t._v(" "),e("td")]),t._v(" "),e("tr",[e("td",[t._v("Portable (Gitee.com)")]),t._v(" "),e("td",[e("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/316333/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows Portable"),e("OutboundLink")],1)]),t._v(" "),e("td",[e("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/316330/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("Ubuntu Portable"),e("OutboundLink")],1)]),t._v(" "),e("td",[e("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/316329/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("MacOS Portable"),e("OutboundLink")],1)])])])])])}),[],!1,null,null,null);a.default=o.exports}}]); \ No newline at end of file diff --git a/assets/js/48.ea1a2ff0.js b/assets/js/48.ea1a2ff0.js new file mode 100644 index 000000000..32d63649d --- /dev/null +++ b/assets/js/48.ea1a2ff0.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[48],{630:function(t,a,e){"use strict";e.r(a);var r=e(13),o=Object(r.a)({},(function(){var t=this,a=t.$createElement,e=t._self._c||a;return e("ContentSlotsDistributor",{attrs:{"slot-key":t.$parent.slotKey}},[e("h1",{attrs:{id:"kangaroo-v0-11-0-dev"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#kangaroo-v0-11-0-dev"}},[t._v("#")]),t._v(" Kangaroo v0.11.0 (Dev)")]),t._v(" "),e("h2",{attrs:{id:"new-features-bug-fixes"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#new-features-bug-fixes"}},[t._v("#")]),t._v(" New features & bug-fixes")]),t._v(" "),e("ol",[e("li",[t._v("add app home page")]),t._v(" "),e("li",[t._v("reimplement DSV format engine")]),t._v(" "),e("li",[t._v("improve DSV compatible with other tools.")]),t._v(" "),e("li",[t._v("improve DSV option UI layout")]),t._v(" "),e("li",[t._v("improve date column editting support")]),t._v(" "),e("li",[t._v("fixed: generate sql statement incorrect.")]),t._v(" "),e("li",[t._v("fixed: crash while importing data")]),t._v(" "),e("li",[t._v("fixed: can't save data while editting on data grid")]),t._v(" "),e("li",[t._v("fixed: warning message about db tree")])]),t._v(" "),e("div",[e("script2",{attrs:{type:"text/javascript",async:"true",src:"https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"}}),t._v(" "),e("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),t._v(" "),e("script2",{attrs:{type:"text/javascript"}},[t._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),t._v(" "),e("h2",{attrs:{id:"installer-portable-packages"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#installer-portable-packages"}},[t._v("#")]),t._v(" Installer & Portable packages "),e("Badge",{attrs:{text:"link expired",type:"warning"}})],1),t._v(" "),e("table",[e("thead",[e("tr",[e("th",[t._v("Install Packages")]),t._v(" "),e("th",[t._v("Windows (64 bit)")]),t._v(" "),e("th",[t._v("Linux (64 bit)")]),t._v(" "),e("th",[t._v("MacOS (64 bit)")])])]),t._v(" "),e("tbody",[e("tr",[e("td",[t._v("Installer (Github.com)")]),t._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.11.0.200106/Kangaroo_0.11.0.200106_win64.exe",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows Installer"),e("OutboundLink")],1)]),t._v(" "),e("td"),t._v(" "),e("td")]),t._v(" "),e("tr",[e("td",[t._v("Portable (Github.com)")]),t._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.11.0.200106/Kangaroo_0.11.0.200106_win64.7z",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows Portable"),e("OutboundLink")],1)]),t._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.11.0.200106/Kangaroo_0.11.0.200106_ubuntu.zip",target:"_blank",rel:"noopener noreferrer"}},[t._v("Ubuntu Portable"),e("OutboundLink")],1)]),t._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.11.0.200106/Kangaroo_0.11.0.200106_macos.zip",target:"_blank",rel:"noopener noreferrer"}},[t._v("MacOS Portable"),e("OutboundLink")],1)])]),t._v(" "),e("tr",[e("td",[t._v("Installer (Gitee.com)")]),t._v(" "),e("td",[e("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/322206/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows Installer"),e("OutboundLink")],1)]),t._v(" "),e("td"),t._v(" "),e("td")]),t._v(" "),e("tr",[e("td",[t._v("Portable (Gitee.com)")]),t._v(" "),e("td",[e("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/322207/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows Portable"),e("OutboundLink")],1)]),t._v(" "),e("td",[e("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/322000/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("Ubuntu Portable"),e("OutboundLink")],1)]),t._v(" "),e("td",[e("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/321999/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("MacOS Portable"),e("OutboundLink")],1)])])])])])}),[],!1,null,null,null);a.default=o.exports}}]); \ No newline at end of file diff --git a/assets/js/49.359791a5.js b/assets/js/49.359791a5.js new file mode 100644 index 000000000..5f003135c --- /dev/null +++ b/assets/js/49.359791a5.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[49],{632:function(t,a,e){"use strict";e.r(a);var r=e(13),o=Object(r.a)({},(function(){var t=this,a=t.$createElement,e=t._self._c||a;return e("ContentSlotsDistributor",{attrs:{"slot-key":t.$parent.slotKey}},[e("h1",{attrs:{id:"kangaroo-v0-11-1-dev"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#kangaroo-v0-11-1-dev"}},[t._v("#")]),t._v(" Kangaroo v0.11.1 (Dev)")]),t._v(" "),e("h2",{attrs:{id:"new-features-bug-fixes"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#new-features-bug-fixes"}},[t._v("#")]),t._v(" New features & bug-fixes")]),t._v(" "),e("ol",[e("li",[t._v("redesign connection dialog to support SSH and SSL")]),t._v(" "),e("li",[t._v("add donate icon on home page(Paypal/Wechat/Alipay)")]),t._v(" "),e("li",[t._v("redesign configuration model and file(init --\x3e json)")]),t._v(" "),e("li",[t._v("Use symbolic icons in the Header Bar(#25)")]),t._v(" "),e("li",[t._v("fixed: edit data in grid will update all rows")])]),t._v(" "),e("div",[e("script2",{attrs:{type:"text/javascript",async:"true",src:"https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"}}),t._v(" "),e("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),t._v(" "),e("script2",{attrs:{type:"text/javascript"}},[t._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),t._v(" "),e("h2",{attrs:{id:"installer-portable-packages"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#installer-portable-packages"}},[t._v("#")]),t._v(" Installer & Portable packages "),e("Badge",{attrs:{text:"link expired",type:"warning"}})],1),t._v(" "),e("table",[e("thead",[e("tr",[e("th",[t._v("Install Packages")]),t._v(" "),e("th",[t._v("Windows (64 bit)")]),t._v(" "),e("th",[t._v("Linux (64 bit)")]),t._v(" "),e("th",[t._v("MacOS (64 bit)")])])]),t._v(" "),e("tbody",[e("tr",[e("td",[t._v("Installer (Github.com)")]),t._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.11.1.200113/Kangaroo_0.11.1.200113_win64.exe",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows Installer"),e("OutboundLink")],1)]),t._v(" "),e("td"),t._v(" "),e("td")]),t._v(" "),e("tr",[e("td",[t._v("Portable (Github.com)")]),t._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.11.1.200113/Kangaroo_0.11.1.200113_win64.7z",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows Portable"),e("OutboundLink")],1)]),t._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.11.1.200113/Kangaroo_0.11.1.200113_ubuntu.zip",target:"_blank",rel:"noopener noreferrer"}},[t._v("Ubuntu Portable"),e("OutboundLink")],1)]),t._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.11.1.200113/Kangaroo_0.11.1.200113_macos.zip",target:"_blank",rel:"noopener noreferrer"}},[t._v("MacOS Portable"),e("OutboundLink")],1)])]),t._v(" "),e("tr",[e("td",[t._v("Installer (Gitee.com)")]),t._v(" "),e("td",[e("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/326642/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows Installer"),e("OutboundLink")],1)]),t._v(" "),e("td"),t._v(" "),e("td")]),t._v(" "),e("tr",[e("td",[t._v("Portable (Gitee.com)")]),t._v(" "),e("td",[e("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/326643/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows Portable"),e("OutboundLink")],1)]),t._v(" "),e("td",[e("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/326641/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("Ubuntu Portable"),e("OutboundLink")],1)]),t._v(" "),e("td",[e("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/326644/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("MacOS Portable"),e("OutboundLink")],1)])])])])])}),[],!1,null,null,null);a.default=o.exports}}]); \ No newline at end of file diff --git a/assets/js/5.a2b84a1c.js b/assets/js/5.a2b84a1c.js new file mode 100644 index 000000000..08068ab69 --- /dev/null +++ b/assets/js/5.a2b84a1c.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[5],{565:function(t,a,s){t.exports=s.p+"assets/img/kangaroo-start.0a124f8a.png"},566:function(t,a,s){t.exports=s.p+"assets/img/kangaroo-explorer.9acb1194.png"},567:function(t,a,s){t.exports=s.p+"assets/img/kangaroo-search.ca9a0987.png"},568:function(t,a,s){t.exports=s.p+"assets/img/kangaroo-workspace.c330b5d3.png"},569:function(t,a,s){t.exports=s.p+"assets/img/kangaroo-grid.867ad913.png"},570:function(t,a,s){t.exports=s.p+"assets/img/kangaroo-grid2.9abc5d45.png"},571:function(t,a,s){t.exports=s.p+"assets/img/kangaroo-form.89d98c9c.png"},572:function(t,a,s){t.exports=s.p+"assets/img/kangaroo-query.8b4b7339.png"},573:function(t,a,s){t.exports=s.p+"assets/img/kangaroo-designer.4995d831.png"},574:function(t,a,s){t.exports=s.p+"assets/img/kangaroo-view.913c3289.png"},575:function(t,a,s){t.exports=s.p+"assets/img/kangaroo-function.049d88b3.png"},576:function(t,a,s){t.exports=s.p+"assets/img/kangaroo-sql-builder.9579f7ec.png"},577:function(t,a,s){t.exports=s.p+"assets/img/kangaroo-export.3124be3c.png"},578:function(t,a,s){t.exports=s.p+"assets/img/kangaroo-import.34a61527.png"},579:function(t,a,s){t.exports=s.p+"assets/img/kangaroo-setting.0614d4db.png"},580:function(t,a,s){t.exports=s.p+"assets/img/kangaroo-shortcut.66417ce8.png"},734:function(t,a,s){"use strict";s.r(a);var o=s(13),i=Object(o.a)({},(function(){var t=this,a=t.$createElement,o=t._self._c||a;return o("ContentSlotsDistributor",{attrs:{"slot-key":t.$parent.slotKey}},[o("h1",{attrs:{id:"工具界面快照"}},[o("a",{staticClass:"header-anchor",attrs:{href:"#工具界面快照"}},[t._v("#")]),t._v(" 工具界面快照")]),t._v(" "),o("p",[o("img",{attrs:{src:s(565),alt:"袋鼠首页"}}),t._v(" "),o("img",{attrs:{src:s(566),alt:"对象浏览视图"}}),t._v(" "),o("img",{attrs:{src:s(567),alt:"对象搜索视图"}}),t._v(" "),o("img",{attrs:{src:s(568),alt:"工作空间分割视图"}})]),t._v(" "),o("div",[o("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),t._v(" "),o("script2",{attrs:{type:"text/javascript"}},[t._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),t._v(" "),o("p",[o("img",{attrs:{src:s(569),alt:"数据网格(自定义列)"}}),t._v(" "),o("img",{attrs:{src:s(570),alt:"数据网格(条件查询)"}}),t._v(" "),o("img",{attrs:{src:s(571),alt:"数据编辑表单"}})]),t._v(" "),o("div",[o("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),t._v(" "),o("script2",{attrs:{type:"text/javascript"}},[t._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),t._v(" "),o("p",[o("img",{attrs:{src:s(572),alt:"查询界面"}}),t._v(" "),o("img",{attrs:{src:s(573),alt:"表设计器"}}),t._v(" "),o("img",{attrs:{src:s(574),alt:"视图设计器"}})]),t._v(" "),o("div",[o("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),t._v(" "),o("script2",{attrs:{type:"text/javascript"}},[t._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),t._v(" "),o("p",[o("img",{attrs:{src:s(575),alt:"函数设计器"}}),t._v(" "),o("img",{attrs:{src:s(576),alt:"可视化SQL构建器"}}),t._v(" "),o("img",{attrs:{src:s(577),alt:"数据导出界面"}})]),t._v(" "),o("div",[o("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),t._v(" "),o("script2",{attrs:{type:"text/javascript"}},[t._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),t._v(" "),o("p",[o("img",{attrs:{src:s(578),alt:"数据导入界面"}}),t._v(" "),o("img",{attrs:{src:s(579),alt:"工具配置界面"}}),t._v(" "),o("img",{attrs:{src:s(580),alt:"快捷键配置"}})]),t._v(" "),o("div",[o("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),t._v(" "),o("script2",{attrs:{type:"text/javascript"}},[t._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1)])}),[],!1,null,null,null);a.default=i.exports}}]); \ No newline at end of file diff --git a/assets/js/50.f1578834.js b/assets/js/50.f1578834.js new file mode 100644 index 000000000..505e81207 --- /dev/null +++ b/assets/js/50.f1578834.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[50],{633:function(t,a,e){"use strict";e.r(a);var r=e(13),o=Object(r.a)({},(function(){var t=this,a=t.$createElement,e=t._self._c||a;return e("ContentSlotsDistributor",{attrs:{"slot-key":t.$parent.slotKey}},[e("h1",{attrs:{id:"kangaroo-v0-12-1-dev"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#kangaroo-v0-12-1-dev"}},[t._v("#")]),t._v(" Kangaroo v0.12.1 (Dev)")]),t._v(" "),e("h2",{attrs:{id:"new-features-bug-fixes"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#new-features-bug-fixes"}},[t._v("#")]),t._v(" New features & bug-fixes")]),t._v(" "),e("ol",[e("li",[t._v("add setting dialog")]),t._v(" "),e("li",[t._v("add dark theme support")]),t._v(" "),e("li",[t._v("bind connection dialog with new setting model")]),t._v(" "),e("li",[t._v("update start view with new setting model")])]),t._v(" "),e("div",[e("script2",{attrs:{type:"text/javascript",async:"true",src:"https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"}}),t._v(" "),e("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),t._v(" "),e("script2",{attrs:{type:"text/javascript"}},[t._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),t._v(" "),e("h2",{attrs:{id:"installer-portable-packages"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#installer-portable-packages"}},[t._v("#")]),t._v(" Installer & Portable packages "),e("Badge",{attrs:{text:"link expired",type:"warning"}})],1),t._v(" "),e("table",[e("thead",[e("tr",[e("th",[t._v("Install Packages")]),t._v(" "),e("th",[t._v("Windows (64 bit)")]),t._v(" "),e("th",[t._v("Linux (64 bit)")]),t._v(" "),e("th",[t._v("MacOS (64 bit)")])])]),t._v(" "),e("tbody",[e("tr",[e("td",[t._v("Installer (Github.com)")]),t._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.12.1.200120/Kangaroo_0.12.1.200120_win64.exe",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows Installer"),e("OutboundLink")],1)]),t._v(" "),e("td"),t._v(" "),e("td")]),t._v(" "),e("tr",[e("td",[t._v("Portable (Github.com)")]),t._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.12.1.200120/Kangaroo_0.12.1.200120_win64.7z",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows Portable"),e("OutboundLink")],1)]),t._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.12.1.200120/Kangaroo_0.12.1.200120_ubuntu.zip",target:"_blank",rel:"noopener noreferrer"}},[t._v("Ubuntu Portable"),e("OutboundLink")],1)]),t._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.12.1.200120/Kangaroo_0.12.1.200120_macos.zip",target:"_blank",rel:"noopener noreferrer"}},[t._v("MacOS Portable"),e("OutboundLink")],1)])]),t._v(" "),e("tr",[e("td",[t._v("Installer (Gitee.com)")]),t._v(" "),e("td",[e("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/328533/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows Installer"),e("OutboundLink")],1)]),t._v(" "),e("td"),t._v(" "),e("td")]),t._v(" "),e("tr",[e("td",[t._v("Portable (Gitee.com)")]),t._v(" "),e("td",[e("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/328534/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows Portable"),e("OutboundLink")],1)]),t._v(" "),e("td",[e("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/328536/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("Ubuntu Portable"),e("OutboundLink")],1)]),t._v(" "),e("td",[e("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/328535/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("MacOS Portable"),e("OutboundLink")],1)])])])])])}),[],!1,null,null,null);a.default=o.exports}}]); \ No newline at end of file diff --git a/assets/js/51.d758ac88.js b/assets/js/51.d758ac88.js new file mode 100644 index 000000000..16446fcf1 --- /dev/null +++ b/assets/js/51.d758ac88.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[51],{637:function(t,a,e){"use strict";e.r(a);var r=e(13),o=Object(r.a)({},(function(){var t=this,a=t.$createElement,e=t._self._c||a;return e("ContentSlotsDistributor",{attrs:{"slot-key":t.$parent.slotKey}},[e("h1",{attrs:{id:"kangaroo-v0-13-0-dev"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#kangaroo-v0-13-0-dev"}},[t._v("#")]),t._v(" Kangaroo v0.13.0 (Dev)")]),t._v(" "),e("h2",{attrs:{id:"new-features-bug-fixes"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#new-features-bug-fixes"}},[t._v("#")]),t._v(" New features & bug-fixes")]),t._v(" "),e("ol",[e("li",[t._v("apply data grid style setting")]),t._v(" "),e("li",[t._v("apply sql editor style setting")]),t._v(" "),e("li",[t._v("windows 32bit version support")]),t._v(" "),e("li",[t._v("implement SSH tunnel support(not yet integrate)")]),t._v(" "),e("li",[t._v("minor change for connection dialog UI")]),t._v(" "),e("li",[t._v("fixed: tool's icon incorrect on release version")])]),t._v(" "),e("div",[e("script2",{attrs:{type:"text/javascript",async:"true",src:"https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"}}),t._v(" "),e("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),t._v(" "),e("script2",{attrs:{type:"text/javascript"}},[t._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),t._v(" "),e("h2",{attrs:{id:"installer-portable-packages"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#installer-portable-packages"}},[t._v("#")]),t._v(" Installer & Portable packages "),e("Badge",{attrs:{text:"link expired",type:"warning"}})],1),t._v(" "),e("table",[e("thead",[e("tr",[e("th",[t._v("Packages")]),t._v(" "),e("th",[t._v("Windows(32 bit)")]),t._v(" "),e("th",[t._v("Windows(64 bit)")]),t._v(" "),e("th",[t._v("Linux(64 bit)")]),t._v(" "),e("th",[t._v("MacOS(64 bit)")])])]),t._v(" "),e("tbody",[e("tr",[e("td",[t._v("Installer (Github.com)")]),t._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.13.0.200210/Kangaroo_0.13.0.200210_win32.exe",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows Installer"),e("OutboundLink")],1)]),t._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.13.0.200210/Kangaroo_0.13.0.200210_win64.exe",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows Installer"),e("OutboundLink")],1)]),t._v(" "),e("td"),t._v(" "),e("td")]),t._v(" "),e("tr",[e("td",[t._v("Portable (Github.com)")]),t._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.13.0.200210/Kangaroo_0.13.0.200210_win32.7z",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows Portable"),e("OutboundLink")],1)]),t._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.13.0.200210/Kangaroo_0.13.0.200210_win64.7z",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows Portable"),e("OutboundLink")],1)]),t._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.13.0.200210/Kangaroo_0.13.0.200210_ubuntu.zip",target:"_blank",rel:"noopener noreferrer"}},[t._v("Ubuntu Portable"),e("OutboundLink")],1)]),t._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.13.0.200210/Kangaroo_0.13.0.200210_macos.zip",target:"_blank",rel:"noopener noreferrer"}},[t._v("MacOS Portable"),e("OutboundLink")],1)])]),t._v(" "),e("tr",[e("td",[t._v("Installer (Gitee.com)")]),t._v(" "),e("td",[e("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/332466/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows Installer"),e("OutboundLink")],1)]),t._v(" "),e("td",[e("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/332454/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows Installer"),e("OutboundLink")],1)]),t._v(" "),e("td"),t._v(" "),e("td")]),t._v(" "),e("tr",[e("td",[t._v("Portable (Gitee.com)")]),t._v(" "),e("td",[e("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/332461/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows Portable"),e("OutboundLink")],1)]),t._v(" "),e("td",[e("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/332456/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows Portable"),e("OutboundLink")],1)]),t._v(" "),e("td",[e("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/332485/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("Ubuntu Portable"),e("OutboundLink")],1)]),t._v(" "),e("td",[e("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/332484/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("MacOS Portable"),e("OutboundLink")],1)])])])])])}),[],!1,null,null,null);a.default=o.exports}}]); \ No newline at end of file diff --git a/assets/js/52.1c39f8d5.js b/assets/js/52.1c39f8d5.js new file mode 100644 index 000000000..76dd363e1 --- /dev/null +++ b/assets/js/52.1c39f8d5.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[52],{634:function(t,a,e){"use strict";e.r(a);var r=e(13),o=Object(r.a)({},(function(){var t=this,a=t.$createElement,e=t._self._c||a;return e("ContentSlotsDistributor",{attrs:{"slot-key":t.$parent.slotKey}},[e("h1",{attrs:{id:"kangaroo-v0-14-0-dev"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#kangaroo-v0-14-0-dev"}},[t._v("#")]),t._v(" Kangaroo v0.14.0 (Dev)")]),t._v(" "),e("h2",{attrs:{id:"new-features-bug-fixes"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#new-features-bug-fixes"}},[t._v("#")]),t._v(" New features & bug-fixes")]),t._v(" "),e("ol",[e("li",[t._v("SQLite: support to create new database")]),t._v(" "),e("li",[t._v("refactor database tree context menu")]),t._v(" "),e("li",[t._v("integrated with openssl to keep user's password safe")]),t._v(" "),e("li",[t._v("add pointer cursor for right panel icon")]),t._v(" "),e("li",[t._v("fixed: update workbench default size while first run")])]),t._v(" "),e("div",[e("script2",{attrs:{type:"text/javascript",async:"true",src:"https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"}}),t._v(" "),e("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),t._v(" "),e("script2",{attrs:{type:"text/javascript"}},[t._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),t._v(" "),e("h2",{attrs:{id:"installer-portable-packages"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#installer-portable-packages"}},[t._v("#")]),t._v(" Installer & Portable packages "),e("Badge",{attrs:{text:"link expired",type:"warning"}})],1),t._v(" "),e("table",[e("thead",[e("tr",[e("th",[t._v("Packages")]),t._v(" "),e("th",[t._v("Windows(32 bit)")]),t._v(" "),e("th",[t._v("Windows(64 bit)")]),t._v(" "),e("th",[t._v("Linux(64 bit)")]),t._v(" "),e("th",[t._v("MacOS(64 bit)")])])]),t._v(" "),e("tbody",[e("tr",[e("td",[t._v("Installer (Github.com)")]),t._v(" "),e("td"),t._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.14.0.200217/Kangaroo_0.14.0.200217_win64.exe",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows Installer"),e("OutboundLink")],1)]),t._v(" "),e("td"),t._v(" "),e("td")]),t._v(" "),e("tr",[e("td",[t._v("Portable (Github.com)")]),t._v(" "),e("td"),t._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.14.0.200217/Kangaroo_0.14.0.200217_win64.7z",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows Portable"),e("OutboundLink")],1)]),t._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.14.0.200217/Kangaroo_0.14.0.200217_ubuntu.zip",target:"_blank",rel:"noopener noreferrer"}},[t._v("Ubuntu Portable"),e("OutboundLink")],1)]),t._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.14.0.200217/Kangaroo_0.14.0.200217_macos.zip",target:"_blank",rel:"noopener noreferrer"}},[t._v("MacOS Portable"),e("OutboundLink")],1)])]),t._v(" "),e("tr",[e("td",[t._v("Installer (Gitee.com)")]),t._v(" "),e("td"),t._v(" "),e("td",[e("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/335051/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows Installer"),e("OutboundLink")],1)]),t._v(" "),e("td"),t._v(" "),e("td")]),t._v(" "),e("tr",[e("td",[t._v("Portable (Gitee.com)")]),t._v(" "),e("td"),t._v(" "),e("td",[e("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/335052/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows Portable"),e("OutboundLink")],1)]),t._v(" "),e("td",[e("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/335048/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("Ubuntu Portable"),e("OutboundLink")],1)]),t._v(" "),e("td",[e("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/335053/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("MacOS Portable"),e("OutboundLink")],1)])])])])])}),[],!1,null,null,null);a.default=o.exports}}]); \ No newline at end of file diff --git a/assets/js/53.784b7d43.js b/assets/js/53.784b7d43.js new file mode 100644 index 000000000..b1777bba3 --- /dev/null +++ b/assets/js/53.784b7d43.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[53],{635:function(t,a,e){"use strict";e.r(a);var r=e(13),o=Object(r.a)({},(function(){var t=this,a=t.$createElement,e=t._self._c||a;return e("ContentSlotsDistributor",{attrs:{"slot-key":t.$parent.slotKey}},[e("h1",{attrs:{id:"kangaroo-v0-15-0-dev"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#kangaroo-v0-15-0-dev"}},[t._v("#")]),t._v(" Kangaroo v0.15.0 (Dev)")]),t._v(" "),e("h2",{attrs:{id:"new-features-bug-fixes"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#new-features-bug-fixes"}},[t._v("#")]),t._v(" New features & bug-fixes")]),t._v(" "),e("ol",[e("li",[t._v("Update and share openssl.vapi to keep user data safe.")]),t._v(" "),e("li",[t._v("Improve language support(kangaroo.pot, zh_Hans and zh_Hant)")]),t._v(" "),e("li",[t._v("Improve home view's web resource load performance")]),t._v(" "),e("li",[t._v("Apply proxy setting for loading web resource")]),t._v(" "),e("li",[t._v("Linux: change browser view to timeline text view")]),t._v(" "),e("li",[t._v("Use combobox widget instead entry for log file size")])]),t._v(" "),e("div",[e("script2",{attrs:{type:"text/javascript",async:"true",src:"https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"}}),t._v(" "),e("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),t._v(" "),e("script2",{attrs:{type:"text/javascript"}},[t._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),t._v(" "),e("h2",{attrs:{id:"installer-portable-packages"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#installer-portable-packages"}},[t._v("#")]),t._v(" Installer & Portable packages "),e("Badge",{attrs:{text:"link expired",type:"warning"}})],1),t._v(" "),e("table",[e("thead",[e("tr",[e("th",[t._v("Packages")]),t._v(" "),e("th",[t._v("Windows(32 bit)")]),t._v(" "),e("th",[t._v("Windows(64 bit)")]),t._v(" "),e("th",[t._v("Linux(64 bit)")]),t._v(" "),e("th",[t._v("MacOS(64 bit)")])])]),t._v(" "),e("tbody",[e("tr",[e("td",[t._v("Installer"),e("br"),t._v("(Github.com)")]),t._v(" "),e("td"),t._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.15.0.200302/Kangaroo_0.15.0.200302_win64.exe",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows Installer"),e("OutboundLink")],1)]),t._v(" "),e("td"),t._v(" "),e("td")]),t._v(" "),e("tr",[e("td",[t._v("Portable"),e("br"),t._v("(Github.com)")]),t._v(" "),e("td"),t._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.15.0.200302/Kangaroo_0.15.0.200302_win64.7z",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows"),e("OutboundLink")],1)]),t._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.15.0.200302/Kangaroo_0.15.0.200302_arch.zip",target:"_blank",rel:"noopener noreferrer"}},[t._v("Arch"),e("OutboundLink")],1),t._v(" "),e("br"),t._v(" "),e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.15.0.200302/Kangaroo_0.15.0.200302_ubuntu.zip",target:"_blank",rel:"noopener noreferrer"}},[t._v("Ubuntu"),e("OutboundLink")],1)]),t._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.15.0.200302/Kangaroo_0.15.0.200302_macos.zip",target:"_blank",rel:"noopener noreferrer"}},[t._v("MacOS"),e("OutboundLink")],1)])]),t._v(" "),e("tr",[e("td",[t._v("Installer"),e("br"),t._v("(Gitee.com)")]),t._v(" "),e("td"),t._v(" "),e("td",[e("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/341170/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows Installer"),e("OutboundLink")],1)]),t._v(" "),e("td"),t._v(" "),e("td")]),t._v(" "),e("tr",[e("td",[t._v("Portable"),e("br"),t._v("(Gitee.com)")]),t._v(" "),e("td"),t._v(" "),e("td",[e("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/341171/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows"),e("OutboundLink")],1)]),t._v(" "),e("td",[e("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/341177/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("Arch"),e("OutboundLink")],1),t._v(" "),e("br"),t._v(" "),e("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/341176/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("Ubuntu"),e("OutboundLink")],1)]),t._v(" "),e("td",[e("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/341175/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("MacOS"),e("OutboundLink")],1)])])])])])}),[],!1,null,null,null);a.default=o.exports}}]); \ No newline at end of file diff --git a/assets/js/54.6135012c.js b/assets/js/54.6135012c.js new file mode 100644 index 000000000..3b7c43354 --- /dev/null +++ b/assets/js/54.6135012c.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[54],{638:function(t,a,e){"use strict";e.r(a);var r=e(13),o=Object(r.a)({},(function(){var t=this,a=t.$createElement,e=t._self._c||a;return e("ContentSlotsDistributor",{attrs:{"slot-key":t.$parent.slotKey}},[e("h1",{attrs:{id:"kangaroo-v0-16-0-dev"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#kangaroo-v0-16-0-dev"}},[t._v("#")]),t._v(" Kangaroo v0.16.0 (Dev)")]),t._v(" "),e("h2",{attrs:{id:"new-features-bug-fixes"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#new-features-bug-fixes"}},[t._v("#")]),t._v(" New features & bug-fixes")]),t._v(" "),e("ol",[e("li",[t._v("Support SSH tunnel(Windows not yet pass test).")]),t._v(" "),e("li",[t._v("Support input page number to switch page")]),t._v(" "),e("li",[t._v("Improve: update layout of switch widget on dialog")]),t._v(" "),e("li",[t._v("Fixed: can't open link on windows")]),t._v(" "),e("li",[t._v("Fixed: log file index error")])]),t._v(" "),e("div",[e("script2",{attrs:{type:"text/javascript",async:"true",src:"https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"}}),t._v(" "),e("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),t._v(" "),e("script2",{attrs:{type:"text/javascript"}},[t._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),t._v(" "),e("h2",{attrs:{id:"installer-portable-packages"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#installer-portable-packages"}},[t._v("#")]),t._v(" Installer & Portable packages "),e("Badge",{attrs:{text:"link expired",type:"warning"}})],1),t._v(" "),e("table",[e("thead",[e("tr",[e("th",[t._v("Packages")]),t._v(" "),e("th",[t._v("Windows(32 bit)")]),t._v(" "),e("th",[t._v("Windows(64 bit)")]),t._v(" "),e("th",[t._v("Linux(64 bit)")]),t._v(" "),e("th",[t._v("MacOS(64 bit)")])])]),t._v(" "),e("tbody",[e("tr",[e("td",[t._v("Installer"),e("br"),t._v("(Github.com)")]),t._v(" "),e("td"),t._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.16.0.200316/Kangaroo_0.16.0.200316_win64.exe",target:"_blank",rel:"noopener noreferrer"}},[t._v("Installer"),e("OutboundLink")],1)]),t._v(" "),e("td"),t._v(" "),e("td")]),t._v(" "),e("tr",[e("td",[t._v("Portable"),e("br"),t._v("(Github.com)")]),t._v(" "),e("td"),t._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.16.0.200316/Kangaroo_0.16.0.200316_win64.7z",target:"_blank",rel:"noopener noreferrer"}},[t._v("Portable"),e("OutboundLink")],1)]),t._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.16.0.200316/Kangaroo_0.16.0.200316_arch.zip",target:"_blank",rel:"noopener noreferrer"}},[t._v("Arch"),e("OutboundLink")],1)]),t._v(" "),e("td")]),t._v(" "),e("tr",[e("td",[t._v("Installer"),e("br"),t._v("(Gitee.com)")]),t._v(" "),e("td"),t._v(" "),e("td",[e("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/349488/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("Installer"),e("OutboundLink")],1)]),t._v(" "),e("td"),t._v(" "),e("td")]),t._v(" "),e("tr",[e("td",[t._v("Portable"),e("br"),t._v("(Gitee.com)")]),t._v(" "),e("td"),t._v(" "),e("td",[e("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/349487/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("Portable"),e("OutboundLink")],1)]),t._v(" "),e("td",[e("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/349489/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("Arch"),e("OutboundLink")],1)]),t._v(" "),e("td")])])])])}),[],!1,null,null,null);a.default=o.exports}}]); \ No newline at end of file diff --git a/assets/js/55.ee348b1e.js b/assets/js/55.ee348b1e.js new file mode 100644 index 000000000..d6592e99e --- /dev/null +++ b/assets/js/55.ee348b1e.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[55],{639:function(t,a,e){"use strict";e.r(a);var r=e(13),o=Object(r.a)({},(function(){var t=this,a=t.$createElement,e=t._self._c||a;return e("ContentSlotsDistributor",{attrs:{"slot-key":t.$parent.slotKey}},[e("h1",{attrs:{id:"kangaroo-v0-17-0-dev"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#kangaroo-v0-17-0-dev"}},[t._v("#")]),t._v(" Kangaroo v0.17.0 (Dev)")]),t._v(" "),e("h2",{attrs:{id:"new-features-bug-fixes"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#new-features-bug-fixes"}},[t._v("#")]),t._v(" New features & bug-fixes")]),t._v(" "),e("ol",[e("li",[t._v("Support connection over SSH tunnel (Windows, Linux/Unix and MacOS)")]),t._v(" "),e("li",[t._v("Add testing support for connection dialog")]),t._v(" "),e("li",[t._v("Refactor context menu of datagrid")]),t._v(" "),e("li",[t._v("Add dump sql (file and text) menu for dbtree")]),t._v(" "),e("li",[t._v("Implement selection menu of datagrid")]),t._v(" "),e("li",[t._v("Implement goto cell menu of datagrid")]),t._v(" "),e("li",[t._v("Fixed: crashed while switching grid to form.")])]),t._v(" "),e("div",[e("script2",{attrs:{type:"text/javascript",async:"true",src:"https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"}}),t._v(" "),e("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),t._v(" "),e("script2",{attrs:{type:"text/javascript"}},[t._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),t._v(" "),e("h2",{attrs:{id:"installer-portable-packages"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#installer-portable-packages"}},[t._v("#")]),t._v(" Installer & Portable packages "),e("Badge",{attrs:{text:"link expired",type:"warning"}})],1),t._v(" "),e("table",[e("thead",[e("tr",[e("th",[t._v("Packages")]),t._v(" "),e("th",[t._v("Windows(32 bit)")]),t._v(" "),e("th",[t._v("Windows(64 bit)")]),t._v(" "),e("th",[t._v("Linux(64 bit)")]),t._v(" "),e("th",[t._v("MacOS(64 bit)")])])]),t._v(" "),e("tbody",[e("tr",[e("td",[t._v("Installer"),e("br"),t._v("(Github.com)")]),t._v(" "),e("td"),t._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.17.0.200323/Kangaroo_0.17.0.200323_win64.exe",target:"_blank",rel:"noopener noreferrer"}},[t._v("Installer"),e("OutboundLink")],1)]),t._v(" "),e("td"),t._v(" "),e("td")]),t._v(" "),e("tr",[e("td",[t._v("Portable"),e("br"),t._v("(Github.com)")]),t._v(" "),e("td"),t._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.17.0.200323/Kangaroo_0.17.0.200323_win64.7z",target:"_blank",rel:"noopener noreferrer"}},[t._v("Portable"),e("OutboundLink")],1)]),t._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.17.0.200323/Kangaroo_0.17.0.200323_arch.zip",target:"_blank",rel:"noopener noreferrer"}},[t._v("Arch"),e("OutboundLink")],1)]),t._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.17.0.200323/Kangaroo_0.17.0.200323_macos.zip",target:"_blank",rel:"noopener noreferrer"}},[t._v("MacOS"),e("OutboundLink")],1)])]),t._v(" "),e("tr",[e("td",[t._v("Installer"),e("br"),t._v("(Gitee.com)")]),t._v(" "),e("td"),t._v(" "),e("td",[e("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/354379/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("Installer"),e("OutboundLink")],1)]),t._v(" "),e("td"),t._v(" "),e("td")]),t._v(" "),e("tr",[e("td",[t._v("Portable"),e("br"),t._v("(Gitee.com)")]),t._v(" "),e("td"),t._v(" "),e("td",[e("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/354378/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("Portable"),e("OutboundLink")],1)]),t._v(" "),e("td",[e("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/354377/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("Arch"),e("OutboundLink")],1)]),t._v(" "),e("td",[e("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/354376/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("MacOS"),e("OutboundLink")],1)])])])])])}),[],!1,null,null,null);a.default=o.exports}}]); \ No newline at end of file diff --git a/assets/js/56.95264e4d.js b/assets/js/56.95264e4d.js new file mode 100644 index 000000000..8bc4e4089 --- /dev/null +++ b/assets/js/56.95264e4d.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[56],{643:function(t,e,a){"use strict";a.r(e);var r=a(13),o=Object(r.a)({},(function(){var t=this,e=t.$createElement,a=t._self._c||e;return a("ContentSlotsDistributor",{attrs:{"slot-key":t.$parent.slotKey}},[a("h1",{attrs:{id:"kangaroo-v0-18-1-dev"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#kangaroo-v0-18-1-dev"}},[t._v("#")]),t._v(" Kangaroo v0.18.1 (Dev)")]),t._v(" "),a("h2",{attrs:{id:"new-features-bug-fixes"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#new-features-bug-fixes"}},[t._v("#")]),t._v(" New features & bug-fixes")]),t._v(" "),a("ol",[a("li",[t._v("encrypt user password to keep user passwords safe.")]),t._v(" "),a("li",[t._v("Implement insert, clone and delete functionality in the datagrid.")]),t._v(" "),a("li",[t._v("Implement connection clone functionality in the start view")]),t._v(" "),a("li",[t._v("Implement dump sql functionality on the dbtree")]),t._v(" "),a("li",[t._v("Implement table schema editor on the dbtree")]),t._v(" "),a("li",[t._v("Implement refresh functionality on the dbtree")]),t._v(" "),a("li",[t._v("Improve workspace tab behavior(auto hide for one)")]),t._v(" "),a("li",[t._v("fixed: return key behavior invalid on the dbtree")]),t._v(" "),a("li",[t._v("fixed: crashed while open table with null value")])]),t._v(" "),a("div",[a("script2",{attrs:{type:"text/javascript",async:"true",src:"https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"}}),t._v(" "),a("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),t._v(" "),a("script2",{attrs:{type:"text/javascript"}},[t._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),t._v(" "),a("h2",{attrs:{id:"installer-portable-packages"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#installer-portable-packages"}},[t._v("#")]),t._v(" Installer & Portable packages "),a("Badge",{attrs:{text:"link expired",type:"warning"}})],1),t._v(" "),a("table",[a("thead",[a("tr",[a("th",[t._v("Packages")]),t._v(" "),a("th",[t._v("Windows(32 bit)")]),t._v(" "),a("th",[t._v("Windows(64 bit)")]),t._v(" "),a("th",[t._v("Linux(64 bit)")]),t._v(" "),a("th",[t._v("MacOS(64 bit)")])])]),t._v(" "),a("tbody",[a("tr",[a("td",[t._v("Installer"),a("br"),t._v("(Github.com)")]),t._v(" "),a("td"),t._v(" "),a("td",[a("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.18.1.200406/Kangaroo_0.18.1.200406_win64.exe",target:"_blank",rel:"noopener noreferrer"}},[t._v("Installer"),a("OutboundLink")],1)]),t._v(" "),a("td"),t._v(" "),a("td")]),t._v(" "),a("tr",[a("td",[t._v("Portable"),a("br"),t._v("(Github.com)")]),t._v(" "),a("td"),t._v(" "),a("td",[a("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.18.1.200406/Kangaroo_0.18.1.200406_win64.7z",target:"_blank",rel:"noopener noreferrer"}},[t._v("Portable"),a("OutboundLink")],1)]),t._v(" "),a("td",[a("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.18.1.200406/Kangaroo_0.18.1.200406_arch.zip",target:"_blank",rel:"noopener noreferrer"}},[t._v("Arch"),a("OutboundLink")],1)]),t._v(" "),a("td",[a("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.18.1.200406/Kangaroo_0.18.1.200406_macos.zip",target:"_blank",rel:"noopener noreferrer"}},[t._v("MacOS"),a("OutboundLink")],1)])]),t._v(" "),a("tr",[a("td",[t._v("Installer"),a("br"),t._v("(Gitee.com)")]),t._v(" "),a("td"),t._v(" "),a("td",[a("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/368199/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("Installer"),a("OutboundLink")],1)]),t._v(" "),a("td"),t._v(" "),a("td")]),t._v(" "),a("tr",[a("td",[t._v("Portable"),a("br"),t._v("(Gitee.com)")]),t._v(" "),a("td"),t._v(" "),a("td",[a("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/368198/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("Portable"),a("OutboundLink")],1)]),t._v(" "),a("td",[a("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/368200/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("Arch"),a("OutboundLink")],1)]),t._v(" "),a("td",[a("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/368196/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("MacOS"),a("OutboundLink")],1)])])])])])}),[],!1,null,null,null);e.default=o.exports}}]); \ No newline at end of file diff --git a/assets/js/57.601ed076.js b/assets/js/57.601ed076.js new file mode 100644 index 000000000..f6b7c9dbe --- /dev/null +++ b/assets/js/57.601ed076.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[57],{640:function(t,a,e){"use strict";e.r(a);var r=e(13),o=Object(r.a)({},(function(){var t=this,a=t.$createElement,e=t._self._c||a;return e("ContentSlotsDistributor",{attrs:{"slot-key":t.$parent.slotKey}},[e("h1",{attrs:{id:"kangaroo-v0-19-1-dev"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#kangaroo-v0-19-1-dev"}},[t._v("#")]),t._v(" Kangaroo v0.19.1 (Dev)")]),t._v(" "),e("h2",{attrs:{id:"new-features-bug-fixes"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#new-features-bug-fixes"}},[t._v("#")]),t._v(" New features & bug-fixes")]),t._v(" "),e("ol",[e("li",[t._v("Implement copy object name menu on dbtree.")]),t._v(" "),e("li",[t._v("Implement copy as SQL(Insert/Update/Delete) in the datagrid.")]),t._v(" "),e("li",[t._v("Implement copy as TSV in the datagrid")]),t._v(" "),e("li",[t._v("Implement copy as CSV in the datagrid")]),t._v(" "),e("li",[t._v("Implement copy as PHP array in the datagrid")]),t._v(" "),e("li",[t._v("Implement copy as JSON in the datagrid")]),t._v(" "),e("li",[t._v("Improve paned widget border style.")]),t._v(" "),e("li",[t._v("fixed: crashed while stringize the blob column")]),t._v(" "),e("li",[t._v("fixed: crashed while no primary key")]),t._v(" "),e("li",[t._v("fixed: crashed while primary key contain character(_)")]),t._v(" "),e("li",[t._v("fixed: warning message while column with empty value")]),t._v(" "),e("li",[t._v("fixed: warning message while invalid calling(to_string)")])]),t._v(" "),e("div",[e("script2",{attrs:{type:"text/javascript",async:"true",src:"https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"}}),t._v(" "),e("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),t._v(" "),e("script2",{attrs:{type:"text/javascript"}},[t._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),t._v(" "),e("h2",{attrs:{id:"installer-portable-packages"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#installer-portable-packages"}},[t._v("#")]),t._v(" Installer & Portable packages "),e("Badge",{attrs:{text:"link expired",type:"warning"}})],1),t._v(" "),e("table",[e("thead",[e("tr",[e("th",[t._v("Packages")]),t._v(" "),e("th",[t._v("Windows(32 bit)")]),t._v(" "),e("th",[t._v("Windows(64 bit)")]),t._v(" "),e("th",[t._v("Linux(64 bit)")]),t._v(" "),e("th",[t._v("MacOS(64 bit)")])])]),t._v(" "),e("tbody",[e("tr",[e("td",[t._v("Installer"),e("br"),t._v("(Github.com)")]),t._v(" "),e("td"),t._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.19.1.200413B/Kangaroo_0.19.1.200413_win64.exe",target:"_blank",rel:"noopener noreferrer"}},[t._v("Installer"),e("OutboundLink")],1)]),t._v(" "),e("td"),t._v(" "),e("td")]),t._v(" "),e("tr",[e("td",[t._v("Portable"),e("br"),t._v("(Github.com)")]),t._v(" "),e("td"),t._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.19.1.200413B/Kangaroo_0.19.1.200413_win64.7z",target:"_blank",rel:"noopener noreferrer"}},[t._v("Portable"),e("OutboundLink")],1)]),t._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.19.1.200413B/Kangaroo_0.19.1.200413_arch.zip",target:"_blank",rel:"noopener noreferrer"}},[t._v("Arch"),e("OutboundLink")],1)]),t._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.19.1.200413B/Kangaroo_0.19.1.200413_macos.zip",target:"_blank",rel:"noopener noreferrer"}},[t._v("MacOS"),e("OutboundLink")],1)])]),t._v(" "),e("tr",[e("td",[t._v("Installer"),e("br"),t._v("(Gitee.com)")]),t._v(" "),e("td"),t._v(" "),e("td",[e("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/372122/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("Installer"),e("OutboundLink")],1)]),t._v(" "),e("td"),t._v(" "),e("td")]),t._v(" "),e("tr",[e("td",[t._v("Portable"),e("br"),t._v("(Gitee.com)")]),t._v(" "),e("td"),t._v(" "),e("td",[e("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/372123/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("Portable"),e("OutboundLink")],1)]),t._v(" "),e("td",[e("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/372126/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("Arch"),e("OutboundLink")],1)]),t._v(" "),e("td",[e("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/372125/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("MacOS"),e("OutboundLink")],1)])])])])])}),[],!1,null,null,null);a.default=o.exports}}]); \ No newline at end of file diff --git a/assets/js/58.7b5c3d91.js b/assets/js/58.7b5c3d91.js new file mode 100644 index 000000000..1b1f341b7 --- /dev/null +++ b/assets/js/58.7b5c3d91.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[58],{641:function(t,e,a){"use strict";a.r(e);var r=a(13),o=Object(r.a)({},(function(){var t=this,e=t.$createElement,a=t._self._c||e;return a("ContentSlotsDistributor",{attrs:{"slot-key":t.$parent.slotKey}},[a("h1",{attrs:{id:"kangaroo-v0-20-1-dev"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#kangaroo-v0-20-1-dev"}},[t._v("#")]),t._v(" Kangaroo v0.20.1 (Dev)")]),t._v(" "),a("h2",{attrs:{id:"new-features-bug-fixes"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#new-features-bug-fixes"}},[t._v("#")]),t._v(" New features & bug-fixes")]),t._v(" "),a("ol",[a("li",[t._v("Implement copy function in the datagrid.")]),t._v(" "),a("li",[t._v("refactor context menu of structure designer.")]),t._v(" "),a("li",[t._v("Implement clone function for designer form.")]),t._v(" "),a("li",[t._v("Implement append function for designer form.")]),t._v(" "),a("li",[t._v("Support multi rows of delete/move up/move down function.")]),t._v(" "),a("li",[t._v("Implement copy function for designer form.")]),t._v(" "),a("li",[t._v("Implement cut function for designer form.")]),t._v(" "),a("li",[t._v("Implement paste function for designer form.")]),t._v(" "),a("li",[t._v("Improve text performance of datagrid.")])]),t._v(" "),a("div",[a("script2",{attrs:{type:"text/javascript",async:"true",src:"https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"}}),t._v(" "),a("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),t._v(" "),a("script2",{attrs:{type:"text/javascript"}},[t._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),t._v(" "),a("h2",{attrs:{id:"installer-portable-packages"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#installer-portable-packages"}},[t._v("#")]),t._v(" Installer & Portable packages "),a("Badge",{attrs:{text:"link expired",type:"warning"}})],1),t._v(" "),a("table",[a("thead",[a("tr",[a("th",[t._v("Packages")]),t._v(" "),a("th",[t._v("Windows(32 bit)")]),t._v(" "),a("th",[t._v("Windows(64 bit)")]),t._v(" "),a("th",[t._v("Linux(64 bit)")]),t._v(" "),a("th",[t._v("MacOS(64 bit)")])])]),t._v(" "),a("tbody",[a("tr",[a("td",[t._v("Installer"),a("br"),t._v("(Github.com)")]),t._v(" "),a("td"),t._v(" "),a("td",[a("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.20.1.200420/Kangaroo_0.20.1.200420_win64.exe",target:"_blank",rel:"noopener noreferrer"}},[t._v("Installer"),a("OutboundLink")],1)]),t._v(" "),a("td"),t._v(" "),a("td")]),t._v(" "),a("tr",[a("td",[t._v("Portable"),a("br"),t._v("(Github.com)")]),t._v(" "),a("td"),t._v(" "),a("td",[a("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.20.1.200420/Kangaroo_0.20.1.200420_win64.7z",target:"_blank",rel:"noopener noreferrer"}},[t._v("Portable"),a("OutboundLink")],1)]),t._v(" "),a("td",[a("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.20.1.200420/Kangaroo_0.20.1.200420_arch.zip",target:"_blank",rel:"noopener noreferrer"}},[t._v("Arch"),a("OutboundLink")],1)]),t._v(" "),a("td",[a("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.20.1.200420/Kangaroo_0.20.1.200420_macos.zip",target:"_blank",rel:"noopener noreferrer"}},[t._v("MacOS"),a("OutboundLink")],1)])]),t._v(" "),a("tr",[a("td",[t._v("Installer"),a("br"),t._v("(Gitee.com)")]),t._v(" "),a("td"),t._v(" "),a("td",[a("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/377250/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("Installer"),a("OutboundLink")],1)]),t._v(" "),a("td"),t._v(" "),a("td")]),t._v(" "),a("tr",[a("td",[t._v("Portable"),a("br"),t._v("(Gitee.com)")]),t._v(" "),a("td"),t._v(" "),a("td",[a("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/377256/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("Portable"),a("OutboundLink")],1)]),t._v(" "),a("td",[a("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/377248/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("Arch"),a("OutboundLink")],1)]),t._v(" "),a("td",[a("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/377249/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("MacOS"),a("OutboundLink")],1)])])])])])}),[],!1,null,null,null);e.default=o.exports}}]); \ No newline at end of file diff --git a/assets/js/59.3be36d95.js b/assets/js/59.3be36d95.js new file mode 100644 index 000000000..615447764 --- /dev/null +++ b/assets/js/59.3be36d95.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[59],{642:function(t,a,e){"use strict";e.r(a);var r=e(13),o=Object(r.a)({},(function(){var t=this,a=t.$createElement,e=t._self._c||a;return e("ContentSlotsDistributor",{attrs:{"slot-key":t.$parent.slotKey}},[e("h1",{attrs:{id:"kangaroo-v0-21-1-beta"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#kangaroo-v0-21-1-beta"}},[t._v("#")]),t._v(" Kangaroo v0.21.1 (Beta)")]),t._v(" "),e("h2",{attrs:{id:"new-features-bug-fixes"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#new-features-bug-fixes"}},[t._v("#")]),t._v(" New features & bug-fixes")]),t._v(" "),e("ol",[e("li",[t._v("Refactor the entire datagrid to make great experience.")]),t._v(" "),e("li",[t._v("Support 3 kind of mode: LIVE / CACHE / TRANSACTION")]),t._v(" "),e("li",[t._v("Support copy and paste multi rows in data grid.")]),t._v(" "),e("li",[t._v("Chnage mode automatically while paste multi rows.")]),t._v(" "),e("li",[t._v("fixed: where statement error in query builder")])]),t._v(" "),e("div",[e("script2",{attrs:{type:"text/javascript",async:"true",src:"https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"}}),t._v(" "),e("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),t._v(" "),e("script2",{attrs:{type:"text/javascript"}},[t._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),t._v(" "),e("h2",{attrs:{id:"installer-portable-packages"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#installer-portable-packages"}},[t._v("#")]),t._v(" Installer & Portable packages "),e("Badge",{attrs:{text:"link expired",type:"warning"}})],1),t._v(" "),e("table",[e("thead",[e("tr",[e("th",[t._v("Packages")]),t._v(" "),e("th",[t._v("Windows(32 bit)")]),t._v(" "),e("th",[t._v("Windows(64 bit)")]),t._v(" "),e("th",[t._v("Linux(64 bit)")]),t._v(" "),e("th",[t._v("MacOS(64 bit)")])])]),t._v(" "),e("tbody",[e("tr",[e("td",[t._v("Installer"),e("br"),t._v("(Github.com)")]),t._v(" "),e("td"),t._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.21.1.200504/Kangaroo_0.21.1.200504_win64.exe",target:"_blank",rel:"noopener noreferrer"}},[t._v("Installer"),e("OutboundLink")],1)]),t._v(" "),e("td"),t._v(" "),e("td")]),t._v(" "),e("tr",[e("td",[t._v("Portable"),e("br"),t._v("(Github.com)")]),t._v(" "),e("td"),t._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.21.1.200504/Kangaroo_0.21.1.200504_win64.7z",target:"_blank",rel:"noopener noreferrer"}},[t._v("Portable"),e("OutboundLink")],1)]),t._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.21.1.200504/Kangaroo_0.21.1.200504_arch.zip",target:"_blank",rel:"noopener noreferrer"}},[t._v("Arch"),e("OutboundLink")],1)]),t._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.21.1.200504/Kangaroo_0.21.1.200504_macos.zip",target:"_blank",rel:"noopener noreferrer"}},[t._v("MacOS"),e("OutboundLink")],1)])]),t._v(" "),e("tr",[e("td",[t._v("Installer"),e("br"),t._v("(Gitee.com)")]),t._v(" "),e("td"),t._v(" "),e("td",[e("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/385678/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("Installer"),e("OutboundLink")],1)]),t._v(" "),e("td"),t._v(" "),e("td")]),t._v(" "),e("tr",[e("td",[t._v("Portable"),e("br"),t._v("(Gitee.com)")]),t._v(" "),e("td"),t._v(" "),e("td",[e("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/385679/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("Portable"),e("OutboundLink")],1)]),t._v(" "),e("td",[e("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/385466/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("Arch"),e("OutboundLink")],1)]),t._v(" "),e("td",[e("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/385467/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("MacOS"),e("OutboundLink")],1)])])])])])}),[],!1,null,null,null);a.default=o.exports}}]); \ No newline at end of file diff --git a/assets/js/6.05b8241b.js b/assets/js/6.05b8241b.js new file mode 100644 index 000000000..9d2569f66 --- /dev/null +++ b/assets/js/6.05b8241b.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[6],{507:function(t,e,n){},582:function(t,e,n){"use strict";n(507)},817:function(t,e,n){"use strict";n.r(e);var i={functional:!0,props:{type:{type:String,default:"tip"},text:String,vertical:{type:String,default:"top"}},render:function(t,e){var n=e.props,i=e.slots;return t("span",{class:["badge",n.type],style:{verticalAlign:n.vertical}},n.text||i().default)}},r=(n(582),n(13)),p=Object(r.a)(i,void 0,void 0,!1,null,"15b7b770",null);e.default=p.exports}}]); \ No newline at end of file diff --git a/assets/js/60.23976368.js b/assets/js/60.23976368.js new file mode 100644 index 000000000..77daf454d --- /dev/null +++ b/assets/js/60.23976368.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[60],{644:function(t,a,e){"use strict";e.r(a);var r=e(13),o=Object(r.a)({},(function(){var t=this,a=t.$createElement,e=t._self._c||a;return e("ContentSlotsDistributor",{attrs:{"slot-key":t.$parent.slotKey}},[e("h1",{attrs:{id:"kangaroo-v0-22-1-beta"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#kangaroo-v0-22-1-beta"}},[t._v("#")]),t._v(" Kangaroo v0.22.1 (Beta)")]),t._v(" "),e("h2",{attrs:{id:"new-features-bug-fixes"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#new-features-bug-fixes"}},[t._v("#")]),t._v(" New features & bug-fixes")]),t._v(" "),e("ol",[e("li",[t._v("Add Chinese(zh-CN/zh-TW/zh-HK/zh-SG) translation.")]),t._v(" "),e("li",[t._v("SQLite: add file extension(.sqlite) for new database.")]),t._v(" "),e("li",[t._v("Improve experience for designer / fresh / delete operation")]),t._v(" "),e("li",[t._v("Improve deploy and installer script for automation.")]),t._v(" "),e("li",[t._v("Fixed: crash while renaming object.")]),t._v(" "),e("li",[t._v("Fixed: crash while deleting object.")]),t._v(" "),e("li",[t._v("Fixed: crash while saving schema for sqlite")]),t._v(" "),e("li",[t._v("Fixed: can't append row on the empty table")]),t._v(" "),e("li",[t._v("Fixed: can't save appended row in live mode")])]),t._v(" "),e("div",[e("script2",{attrs:{type:"text/javascript",async:"true",src:"https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"}}),t._v(" "),e("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),t._v(" "),e("script2",{attrs:{type:"text/javascript"}},[t._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),t._v(" "),e("h2",{attrs:{id:"installer-portable-packages"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#installer-portable-packages"}},[t._v("#")]),t._v(" Installer & Portable packages "),e("Badge",{attrs:{text:"link expired",type:"warning"}})],1),t._v(" "),e("table",[e("thead",[e("tr",[e("th",[t._v("Packages")]),t._v(" "),e("th",[t._v("Windows(32 bit)")]),t._v(" "),e("th",[t._v("Windows(64 bit)")]),t._v(" "),e("th",[t._v("Linux(64 bit)")]),t._v(" "),e("th",[t._v("MacOS(64 bit)")])])]),t._v(" "),e("tbody",[e("tr",[e("td",[t._v("Installer"),e("br"),t._v("(Github.com)")]),t._v(" "),e("td"),t._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.22.1.200511/kangaroo_0.22.1.200511_AMD64.exe",target:"_blank",rel:"noopener noreferrer"}},[t._v("Installer"),e("OutboundLink")],1)]),t._v(" "),e("td"),t._v(" "),e("td")]),t._v(" "),e("tr",[e("td",[t._v("Portable"),e("br"),t._v("(Github.com)")]),t._v(" "),e("td"),t._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.22.1.200511/kangaroo_0.22.1.200511_AMD64.7z",target:"_blank",rel:"noopener noreferrer"}},[t._v("Portable"),e("OutboundLink")],1)]),t._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.22.1.200511/kangaroo_0.22.1.200511_arch.zip",target:"_blank",rel:"noopener noreferrer"}},[t._v("Arch"),e("OutboundLink")],1)]),t._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.22.1.200511/kangaroo_0.22.1.200511_macos.zip",target:"_blank",rel:"noopener noreferrer"}},[t._v("MacOS"),e("OutboundLink")],1)])]),t._v(" "),e("tr",[e("td",[t._v("Installer"),e("br"),t._v("(Gitee.com)")]),t._v(" "),e("td"),t._v(" "),e("td",[e("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/389721/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("Installer"),e("OutboundLink")],1)]),t._v(" "),e("td"),t._v(" "),e("td")]),t._v(" "),e("tr",[e("td",[t._v("Portable"),e("br"),t._v("(Gitee.com)")]),t._v(" "),e("td"),t._v(" "),e("td",[e("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/389725/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("Portable"),e("OutboundLink")],1)]),t._v(" "),e("td",[e("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/389722/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("Arch"),e("OutboundLink")],1)]),t._v(" "),e("td",[e("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/389723/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("MacOS"),e("OutboundLink")],1)])])])])])}),[],!1,null,null,null);a.default=o.exports}}]); \ No newline at end of file diff --git a/assets/js/61.0be0dc44.js b/assets/js/61.0be0dc44.js new file mode 100644 index 000000000..9eacef413 --- /dev/null +++ b/assets/js/61.0be0dc44.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[61],{645:function(t,a,e){"use strict";e.r(a);var r=e(13),o=Object(r.a)({},(function(){var t=this,a=t.$createElement,e=t._self._c||a;return e("ContentSlotsDistributor",{attrs:{"slot-key":t.$parent.slotKey}},[e("h1",{attrs:{id:"kangaroo-v0-23-1-beta"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#kangaroo-v0-23-1-beta"}},[t._v("#")]),t._v(" Kangaroo v0.23.1 (Beta)")]),t._v(" "),e("h2",{attrs:{id:"new-features-bug-fixes"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#new-features-bug-fixes"}},[t._v("#")]),t._v(" New features & bug-fixes")]),t._v(" "),e("ol",[e("li",[t._v("Improve date / datetime picker widget.")]),t._v(" "),e("li",[t._v("Improve app title bar to add background image(color).")]),t._v(" "),e("li",[t._v("Improve data grid column title.")]),t._v(" "),e("li",[t._v("Improve Chinese translations.")]),t._v(" "),e("li",[t._v("Fixed: can't update date/time/datetime type.")]),t._v(" "),e("li",[t._v("Fixed: can't update float value")]),t._v(" "),e("li",[t._v("Fixed: can't update numeric value")]),t._v(" "),e("li",[t._v("Fixed: MySQL: can't save char column data")]),t._v(" "),e("li",[t._v("Fixed: PostgreSQL: invalid object name in sql")]),t._v(" "),e("li",[t._v("Fixed: invalid toolbar state while swtich to grid.")])]),t._v(" "),e("div",[e("script2",{attrs:{type:"text/javascript",async:"true",src:"https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"}}),t._v(" "),e("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),t._v(" "),e("script2",{attrs:{type:"text/javascript"}},[t._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),t._v(" "),e("h2",{attrs:{id:"installer-portable-packages"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#installer-portable-packages"}},[t._v("#")]),t._v(" Installer & Portable packages "),e("Badge",{attrs:{text:"link expired",type:"warning"}})],1),t._v(" "),e("table",[e("thead",[e("tr",[e("th",[t._v("Packages")]),t._v(" "),e("th",[t._v("Windows(32 bit)")]),t._v(" "),e("th",[t._v("Windows(64 bit)")]),t._v(" "),e("th",[t._v("Linux(64 bit)")]),t._v(" "),e("th",[t._v("MacOS(64 bit)")])])]),t._v(" "),e("tbody",[e("tr",[e("td",[t._v("Installer"),e("br"),t._v("(Github.com)")]),t._v(" "),e("td"),t._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.23.1.200518/kangaroo_0.23.1.200518_AMD64.exe",target:"_blank",rel:"noopener noreferrer"}},[t._v("Installer"),e("OutboundLink")],1)]),t._v(" "),e("td"),t._v(" "),e("td")]),t._v(" "),e("tr",[e("td",[t._v("Portable"),e("br"),t._v("(Github.com)")]),t._v(" "),e("td"),t._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.23.1.200518/kangaroo_0.23.1.200518_AMD64.7z",target:"_blank",rel:"noopener noreferrer"}},[t._v("Portable"),e("OutboundLink")],1)]),t._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.23.1.200518/kangaroo_0.23.1.200518_arch.zip",target:"_blank",rel:"noopener noreferrer"}},[t._v("Arch"),e("OutboundLink")],1)]),t._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.23.1.200518/kangaroo_0.23.1.200518_macos.zip",target:"_blank",rel:"noopener noreferrer"}},[t._v("MacOS"),e("OutboundLink")],1)])]),t._v(" "),e("tr",[e("td",[t._v("Installer"),e("br"),t._v("(Gitee.com)")]),t._v(" "),e("td"),t._v(" "),e("td",[e("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/394608/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("Installer"),e("OutboundLink")],1)]),t._v(" "),e("td"),t._v(" "),e("td")]),t._v(" "),e("tr",[e("td",[t._v("Portable"),e("br"),t._v("(Gitee.com)")]),t._v(" "),e("td"),t._v(" "),e("td",[e("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/394611/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("Portable"),e("OutboundLink")],1)]),t._v(" "),e("td",[e("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/394610/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("Arch"),e("OutboundLink")],1)]),t._v(" "),e("td",[e("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/394721/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("MacOS"),e("OutboundLink")],1)])])])])])}),[],!1,null,null,null);a.default=o.exports}}]); \ No newline at end of file diff --git a/assets/js/62.26698f3b.js b/assets/js/62.26698f3b.js new file mode 100644 index 000000000..d3b48c156 --- /dev/null +++ b/assets/js/62.26698f3b.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[62],{646:function(a,t,r){"use strict";r.r(t);var e=r(13),o=Object(e.a)({},(function(){var a=this,t=a.$createElement,r=a._self._c||t;return r("ContentSlotsDistributor",{attrs:{"slot-key":a.$parent.slotKey}},[r("h1",{attrs:{id:"kangaroo-v0-24-1-dev"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#kangaroo-v0-24-1-dev"}},[a._v("#")]),a._v(" Kangaroo v0.24.1 (Dev)")]),a._v(" "),r("h2",{attrs:{id:"new-features-bug-fixes"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#new-features-bug-fixes"}},[a._v("#")]),a._v(" New features & bug-fixes")]),a._v(" "),r("ol",[r("li",[a._v("Add SQL Formatter to beautify and minify sql code.")]),a._v(" "),r("li",[a._v("Add archlinux installer(based on HowardZorn's PR #45).")]),a._v(" "),r("li",[a._v("Add macos installer")])]),a._v(" "),r("div",[r("script2",{attrs:{type:"text/javascript",async:"true",src:"https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"}}),a._v(" "),r("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),a._v(" "),r("script2",{attrs:{type:"text/javascript"}},[a._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),a._v(" "),r("h2",{attrs:{id:"installer-portable-packages"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#installer-portable-packages"}},[a._v("#")]),a._v(" Installer & Portable packages "),r("Badge",{attrs:{text:"link expired",type:"warning"}})],1),a._v(" "),r("table",[r("thead",[r("tr",[r("th",[a._v("Packages")]),a._v(" "),r("th",[a._v("Windows(32 bit)")]),a._v(" "),r("th",[a._v("Windows(64 bit)")]),a._v(" "),r("th",[a._v("Linux(64 bit)")]),a._v(" "),r("th",[a._v("MacOS(64 bit)")])])]),a._v(" "),r("tbody",[r("tr",[r("td",[a._v("Installer"),r("br"),a._v("(Github.com)")]),a._v(" "),r("td"),a._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.24.1.200525/kangaroo_0.24.1.200525_AMD64.exe",target:"_blank",rel:"noopener noreferrer"}},[a._v("win64"),r("OutboundLink")],1)]),a._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.24.1.200525/kangaroo-0.24.1.200525-1-x86_64.pkg.tar.xz",target:"_blank",rel:"noopener noreferrer"}},[a._v("Arch"),r("OutboundLink")],1)]),a._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.24.1.200525/kangaroo_0.24.1.200525_macos.dmg",target:"_blank",rel:"noopener noreferrer"}},[a._v("MacOS"),r("OutboundLink")],1)])]),a._v(" "),r("tr",[r("td",[a._v("Portable"),r("br"),a._v("(Github.com)")]),a._v(" "),r("td"),a._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.24.1.200525/kangaroo_0.24.1.200525_AMD64.7z",target:"_blank",rel:"noopener noreferrer"}},[a._v("win64"),r("OutboundLink")],1)]),a._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.24.1.200525/kangaroo_0.24.1.200525_arch.tar.gz",target:"_blank",rel:"noopener noreferrer"}},[a._v("Arch"),r("OutboundLink")],1)]),a._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.24.1.200525/kangaroo_0.24.1.200525_macos.tar.gz",target:"_blank",rel:"noopener noreferrer"}},[a._v("MacOS"),r("OutboundLink")],1)])]),a._v(" "),r("tr",[r("td",[a._v("Installer"),r("br"),a._v("(Gitee.com)")]),a._v(" "),r("td"),a._v(" "),r("td",[r("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/399960/download",target:"_blank",rel:"noopener noreferrer"}},[a._v("win64"),r("OutboundLink")],1)]),a._v(" "),r("td",[r("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/399956/download",target:"_blank",rel:"noopener noreferrer"}},[a._v("Arch"),r("OutboundLink")],1)]),a._v(" "),r("td",[r("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/399953/download",target:"_blank",rel:"noopener noreferrer"}},[a._v("MacOS"),r("OutboundLink")],1)])]),a._v(" "),r("tr",[r("td",[a._v("Portable"),r("br"),a._v("(Gitee.com)")]),a._v(" "),r("td"),a._v(" "),r("td",[r("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/399969/download",target:"_blank",rel:"noopener noreferrer"}},[a._v("win64"),r("OutboundLink")],1)]),a._v(" "),r("td",[r("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/399952/download",target:"_blank",rel:"noopener noreferrer"}},[a._v("Arch"),r("OutboundLink")],1)]),a._v(" "),r("td",[r("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/399955/download",target:"_blank",rel:"noopener noreferrer"}},[a._v("MacOS"),r("OutboundLink")],1)])])])])])}),[],!1,null,null,null);t.default=o.exports}}]); \ No newline at end of file diff --git a/assets/js/63.3b230f3f.js b/assets/js/63.3b230f3f.js new file mode 100644 index 000000000..820946686 --- /dev/null +++ b/assets/js/63.3b230f3f.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[63],{647:function(a,t,e){"use strict";e.r(t);var r=e(13),o=Object(r.a)({},(function(){var a=this,t=a.$createElement,e=a._self._c||t;return e("ContentSlotsDistributor",{attrs:{"slot-key":a.$parent.slotKey}},[e("h1",{attrs:{id:"kangaroo-v0-25-1-beta"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#kangaroo-v0-25-1-beta"}},[a._v("#")]),a._v(" Kangaroo v0.25.1 (Beta)")]),a._v(" "),e("h2",{attrs:{id:"new-features-bug-fixes"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#new-features-bug-fixes"}},[a._v("#")]),a._v(" New features & bug-fixes")]),a._v(" "),e("ol",[e("li",[a._v("Add context menu for workspace notebook widget")]),a._v(" "),e("li",[a._v("Add new query menu for object tree item(database/schema).")]),a._v(" "),e("li",[a._v("Update the Chinese translation(zh-CN/zh-TW/zh-HK/zh-SG).")]),a._v(" "),e("li",[a._v("Fixed: PostgreSQL 12: tables not visible #46")]),a._v(" "),e("li",[a._v("Fixed: MariaDB 10.5: Unknown column 'cons.ENFORCED' in 'field list' #47")]),a._v(" "),e("li",[a._v("Fixed: PostgreSQL 12: column c.consrc does not exist #48")]),a._v(" "),e("li",[a._v("Fixed: PostgreSQL 11.7 / 9.6: row 1 out of range(0-0) #49")]),a._v(" "),e("li",[a._v("Fixed: MySQL 5.7.30: Unknown table 'CHECK_CONSTRAINTS' in information_schema #50")]),a._v(" "),e("li",[a._v("Fixed: PostgreSQL 9.6: column c.relispartition does not exist #51")]),a._v(" "),e("li",[a._v("Fixed: PostgreSQL: invalid schemas in database")]),a._v(" "),e("li",[a._v("Fixed: display invalid while column name has underline(_)")])]),a._v(" "),e("div",[e("script2",{attrs:{type:"text/javascript",async:"true",src:"https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"}}),a._v(" "),e("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),a._v(" "),e("script2",{attrs:{type:"text/javascript"}},[a._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),a._v(" "),e("h2",{attrs:{id:"installer-portable-packages"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#installer-portable-packages"}},[a._v("#")]),a._v(" Installer & Portable packages "),e("Badge",{attrs:{text:"link expired",type:"warning"}})],1),a._v(" "),e("table",[e("thead",[e("tr",[e("th",[a._v("Packages")]),a._v(" "),e("th",[a._v("Windows(64 bit)")]),a._v(" "),e("th",[a._v("Linux(64 bit)")]),a._v(" "),e("th",[a._v("MacOS(64 bit)")])])]),a._v(" "),e("tbody",[e("tr",[e("td",[a._v("Installer"),e("br"),a._v("(Github.com)")]),a._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.25.1.200601/kangaroo_0.25.1.200601_AMD64.exe",target:"_blank",rel:"noopener noreferrer"}},[a._v("win64"),e("OutboundLink")],1)]),a._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.25.1.200601/kangaroo-0.25.1.200601-1-x86_64.pkg.tar.xz",target:"_blank",rel:"noopener noreferrer"}},[a._v("Arch"),e("OutboundLink")],1)]),a._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.25.1.200601/kangaroo_0.25.1.200601_macos.dmg",target:"_blank",rel:"noopener noreferrer"}},[a._v("MacOS"),e("OutboundLink")],1)])]),a._v(" "),e("tr",[e("td",[a._v("Portable"),e("br"),a._v("(Github.com)")]),a._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.25.1.200601/kangaroo_0.25.1.200601_AMD64.7z",target:"_blank",rel:"noopener noreferrer"}},[a._v("win64"),e("OutboundLink")],1)]),a._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.25.1.200601/kangaroo_0.25.1.200601_arch.tar.gz",target:"_blank",rel:"noopener noreferrer"}},[a._v("Arch"),e("OutboundLink")],1),a._v(" "),e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.25.1.200601/kangaroo_0.25.1.200601_ubuntu.tar.gz",target:"_blank",rel:"noopener noreferrer"}},[a._v("Ubuntu"),e("OutboundLink")],1)]),a._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.25.1.200601/kangaroo_0.25.1.200601_macos.tar.gz",target:"_blank",rel:"noopener noreferrer"}},[a._v("MacOS"),e("OutboundLink")],1)])]),a._v(" "),e("tr",[e("td",[a._v("Installer"),e("br"),a._v("(Gitee.com)")]),a._v(" "),e("td",[e("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/404585/download",target:"_blank",rel:"noopener noreferrer"}},[a._v("win64"),e("OutboundLink")],1)]),a._v(" "),e("td",[e("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/404583/download",target:"_blank",rel:"noopener noreferrer"}},[a._v("Arch"),e("OutboundLink")],1)]),a._v(" "),e("td",[e("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/404581/download",target:"_blank",rel:"noopener noreferrer"}},[a._v("MacOS"),e("OutboundLink")],1)])]),a._v(" "),e("tr",[e("td",[a._v("Portable"),e("br"),a._v("(Gitee.com)")]),a._v(" "),e("td",[e("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/404586/download",target:"_blank",rel:"noopener noreferrer"}},[a._v("win64"),e("OutboundLink")],1)]),a._v(" "),e("td",[e("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/404580/download",target:"_blank",rel:"noopener noreferrer"}},[a._v("Arch"),e("OutboundLink")],1),a._v(" "),e("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/404584/download",target:"_blank",rel:"noopener noreferrer"}},[a._v("Ubuntu"),e("OutboundLink")],1)]),a._v(" "),e("td",[e("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/404582/download",target:"_blank",rel:"noopener noreferrer"}},[a._v("MacOS"),e("OutboundLink")],1)])])])])])}),[],!1,null,null,null);t.default=o.exports}}]); \ No newline at end of file diff --git a/assets/js/64.481b9dd0.js b/assets/js/64.481b9dd0.js new file mode 100644 index 000000000..1a8a519ea --- /dev/null +++ b/assets/js/64.481b9dd0.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[64],{648:function(a,t,e){"use strict";e.r(t);var r=e(13),o=Object(r.a)({},(function(){var a=this,t=a.$createElement,e=a._self._c||t;return e("ContentSlotsDistributor",{attrs:{"slot-key":a.$parent.slotKey}},[e("h1",{attrs:{id:"kangaroo-v0-26-1-dev"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#kangaroo-v0-26-1-dev"}},[a._v("#")]),a._v(" Kangaroo v0.26.1 (Dev)")]),a._v(" "),e("h2",{attrs:{id:"new-features-bug-fixes"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#new-features-bug-fixes"}},[a._v("#")]),a._v(" New features & bug-fixes")]),a._v(" "),e("ol",[e("li",[a._v("Add intellisense data support(SQLite/MySQL/PostgreSQL)")]),a._v(" "),e("li",[a._v("Add auto completion for code view(v1)")])]),a._v(" "),e("div",[e("script2",{attrs:{type:"text/javascript",async:"true",src:"https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"}}),a._v(" "),e("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),a._v(" "),e("script2",{attrs:{type:"text/javascript"}},[a._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),a._v(" "),e("h2",{attrs:{id:"installer-portable-packages"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#installer-portable-packages"}},[a._v("#")]),a._v(" Installer & Portable packages "),e("Badge",{attrs:{text:"link expired",type:"warning"}})],1),a._v(" "),e("table",[e("thead",[e("tr",[e("th",[a._v("Packages")]),a._v(" "),e("th",[a._v("Windows(64 bit)")]),a._v(" "),e("th",[a._v("Linux(64 bit)")]),a._v(" "),e("th",[a._v("MacOS(64 bit)")])])]),a._v(" "),e("tbody",[e("tr",[e("td",[a._v("Installer"),e("br"),a._v("(Github.com)")]),a._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.26.1.200615/kangaroo_0.26.1.200615_AMD64.exe",target:"_blank",rel:"noopener noreferrer"}},[a._v("win64"),e("OutboundLink")],1)]),a._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.26.1.200615/kangaroo-0.26.1.200615-1-x86_64.pkg.tar.xz",target:"_blank",rel:"noopener noreferrer"}},[a._v("Arch"),e("OutboundLink")],1)]),a._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.26.1.200615/kangaroo_0.26.1.200615_macos.dmg",target:"_blank",rel:"noopener noreferrer"}},[a._v("MacOS"),e("OutboundLink")],1)])]),a._v(" "),e("tr",[e("td",[a._v("Portable"),e("br"),a._v("(Github.com)")]),a._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.26.1.200615/kangaroo_0.26.1.200615_AMD64.7z",target:"_blank",rel:"noopener noreferrer"}},[a._v("win64"),e("OutboundLink")],1)]),a._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.26.1.200615/kangaroo_0.26.1.200615_arch.tar.gz",target:"_blank",rel:"noopener noreferrer"}},[a._v("Arch"),e("OutboundLink")],1),a._v(" "),e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.26.1.200615/kangaroo_0.26.1.200615_ubuntu.tar.gz",target:"_blank",rel:"noopener noreferrer"}},[a._v("Ubuntu"),e("OutboundLink")],1)]),a._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.26.1.200615/kangaroo_0.26.1.200615_macos.tar.gz",target:"_blank",rel:"noopener noreferrer"}},[a._v("MacOS"),e("OutboundLink")],1)])]),a._v(" "),e("tr",[e("td",[a._v("Installer"),e("br"),a._v("(Gitee.com)")]),a._v(" "),e("td",[e("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/415203/download",target:"_blank",rel:"noopener noreferrer"}},[a._v("win64"),e("OutboundLink")],1)]),a._v(" "),e("td",[e("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/415200/download",target:"_blank",rel:"noopener noreferrer"}},[a._v("Arch"),e("OutboundLink")],1)]),a._v(" "),e("td",[e("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/415198/download",target:"_blank",rel:"noopener noreferrer"}},[a._v("MacOS"),e("OutboundLink")],1)])]),a._v(" "),e("tr",[e("td",[a._v("Portable"),e("br"),a._v("(Gitee.com)")]),a._v(" "),e("td",[e("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/415201/download",target:"_blank",rel:"noopener noreferrer"}},[a._v("win64"),e("OutboundLink")],1)]),a._v(" "),e("td",[e("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/415202/download",target:"_blank",rel:"noopener noreferrer"}},[a._v("Arch"),e("OutboundLink")],1),a._v(" "),e("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/415199/download",target:"_blank",rel:"noopener noreferrer"}},[a._v("Ubuntu"),e("OutboundLink")],1)]),a._v(" "),e("td",[e("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/415197/download",target:"_blank",rel:"noopener noreferrer"}},[a._v("MacOS"),e("OutboundLink")],1)])])])])])}),[],!1,null,null,null);t.default=o.exports}}]); \ No newline at end of file diff --git a/assets/js/65.e1bfb094.js b/assets/js/65.e1bfb094.js new file mode 100644 index 000000000..b77ddb8ee --- /dev/null +++ b/assets/js/65.e1bfb094.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[65],{649:function(a,t,e){"use strict";e.r(t);var r=e(13),o=Object(r.a)({},(function(){var a=this,t=a.$createElement,e=a._self._c||t;return e("ContentSlotsDistributor",{attrs:{"slot-key":a.$parent.slotKey}},[e("h1",{attrs:{id:"kangaroo-v0-27-1-beta"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#kangaroo-v0-27-1-beta"}},[a._v("#")]),a._v(" Kangaroo v0.27.1 (Beta)")]),a._v(" "),e("h2",{attrs:{id:"new-features-bug-fixes"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#new-features-bug-fixes"}},[a._v("#")]),a._v(" New features & bug-fixes")]),a._v(" "),e("ol",[e("li",[a._v("Improve intellisense data for PostgreSQL")]),a._v(" "),e("li",[a._v("Improve auto-completion style(icon/filter by input)")]),a._v(" "),e("li",[a._v("Add function's call tip(highlighting/bold/auto location/data)")]),a._v(" "),e("li",[a._v("Implement copy focused column name(short/full)")]),a._v(" "),e("li",[a._v("Implement copy datagrid column name(TSV/CSV)")]),a._v(" "),e("li",[a._v("Update package name")]),a._v(" "),e("li",[a._v("Update the Chinese translation")])]),a._v(" "),e("div",[e("script2",{attrs:{type:"text/javascript",async:"true",src:"https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"}}),a._v(" "),e("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),a._v(" "),e("script2",{attrs:{type:"text/javascript"}},[a._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),a._v(" "),e("h2",{attrs:{id:"installer-portable-packages"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#installer-portable-packages"}},[a._v("#")]),a._v(" Installer & Portable packages "),e("Badge",{attrs:{text:"link expired",type:"warning"}})],1),a._v(" "),e("table",[e("thead",[e("tr",[e("th",[a._v("Packages")]),a._v(" "),e("th",[a._v("Windows(64 bit)")]),a._v(" "),e("th",[a._v("Linux(64 bit)")]),a._v(" "),e("th",[a._v("MacOS(64 bit)")])])]),a._v(" "),e("tbody",[e("tr",[e("td",[a._v("Installer"),e("br"),a._v("(Github.com)")]),a._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.27.1.200622/kangaroo-0.27.1.200622-AMD64.exe",target:"_blank",rel:"noopener noreferrer"}},[a._v("Windows"),e("OutboundLink")],1)]),a._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.27.1.200622/kangaroo-0.27.1.200622-1-x86_64.pkg.tar.xz",target:"_blank",rel:"noopener noreferrer"}},[a._v("Arch"),e("OutboundLink")],1)]),a._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.27.1.200622/kangaroo-0.27.1.200622-macos.dmg",target:"_blank",rel:"noopener noreferrer"}},[a._v("MacOS"),e("OutboundLink")],1)])]),a._v(" "),e("tr",[e("td",[a._v("Portable"),e("br"),a._v("(Github.com)")]),a._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.27.1.200622/kangaroo-0.27.1.200622-AMD64.7z",target:"_blank",rel:"noopener noreferrer"}},[a._v("Windows"),e("OutboundLink")],1)]),a._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.27.1.200622/kangaroo-0.27.1.200622-arch.tar.gz",target:"_blank",rel:"noopener noreferrer"}},[a._v("Arch"),e("OutboundLink")],1),a._v(" "),e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.27.1.200622/kangaroo-0.27.1.200622-ubuntu.tar.gz",target:"_blank",rel:"noopener noreferrer"}},[a._v("Ubuntu"),e("OutboundLink")],1)]),a._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.27.1.200622/kangaroo-0.27.1.200622-macos.tar.gz",target:"_blank",rel:"noopener noreferrer"}},[a._v("MacOS"),e("OutboundLink")],1)])]),a._v(" "),e("tr",[e("td",[a._v("Installer"),e("br"),a._v("(Gitee.com)")]),a._v(" "),e("td",[e("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/419723/download",target:"_blank",rel:"noopener noreferrer"}},[a._v("Windows"),e("OutboundLink")],1)]),a._v(" "),e("td",[e("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/419721/download",target:"_blank",rel:"noopener noreferrer"}},[a._v("Arch"),e("OutboundLink")],1)]),a._v(" "),e("td",[e("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/419725/download",target:"_blank",rel:"noopener noreferrer"}},[a._v("MacOS"),e("OutboundLink")],1)])]),a._v(" "),e("tr",[e("td",[a._v("Portable"),e("br"),a._v("(Gitee.com)")]),a._v(" "),e("td",[e("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/419722/download",target:"_blank",rel:"noopener noreferrer"}},[a._v("Windows"),e("OutboundLink")],1)]),a._v(" "),e("td",[e("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/419724/download",target:"_blank",rel:"noopener noreferrer"}},[a._v("Arch"),e("OutboundLink")],1),a._v(" "),e("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/419720/download",target:"_blank",rel:"noopener noreferrer"}},[a._v("Ubuntu"),e("OutboundLink")],1)]),a._v(" "),e("td",[e("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/419719/download",target:"_blank",rel:"noopener noreferrer"}},[a._v("MacOS"),e("OutboundLink")],1)])])])])])}),[],!1,null,null,null);t.default=o.exports}}]); \ No newline at end of file diff --git a/assets/js/66.1b241264.js b/assets/js/66.1b241264.js new file mode 100644 index 000000000..206957526 --- /dev/null +++ b/assets/js/66.1b241264.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[66],{650:function(a,t,e){"use strict";e.r(t);var r=e(13),o=Object(r.a)({},(function(){var a=this,t=a.$createElement,e=a._self._c||t;return e("ContentSlotsDistributor",{attrs:{"slot-key":a.$parent.slotKey}},[e("h1",{attrs:{id:"kangaroo-v0-28-1-dev"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#kangaroo-v0-28-1-dev"}},[a._v("#")]),a._v(" Kangaroo v0.28.1 (Dev)")]),a._v(" "),e("h2",{attrs:{id:"new-features-bug-fixes"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#new-features-bug-fixes"}},[a._v("#")]),a._v(" New features & bug-fixes")]),a._v(" "),e("ol",[e("li",[a._v("Implement search and replace function")]),a._v(" "),e("li",[a._v("Update the Chinese translation")])]),a._v(" "),e("div",[e("script2",{attrs:{type:"text/javascript",async:"true",src:"https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"}}),a._v(" "),e("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),a._v(" "),e("script2",{attrs:{type:"text/javascript"}},[a._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),a._v(" "),e("h2",{attrs:{id:"installer-portable-packages"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#installer-portable-packages"}},[a._v("#")]),a._v(" Installer & Portable packages "),e("Badge",{attrs:{text:"link expired",type:"warning"}})],1),a._v(" "),e("table",[e("thead",[e("tr",[e("th",[a._v("Packages")]),a._v(" "),e("th",[a._v("Windows(64 bit)")]),a._v(" "),e("th",[a._v("Linux(64 bit)")]),a._v(" "),e("th",[a._v("MacOS(64 bit)")])])]),a._v(" "),e("tbody",[e("tr",[e("td",[a._v("Installer"),e("br"),a._v("(Github.com)")]),a._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.28.1.200629/kangaroo-0.28.1.200629-AMD64.exe",target:"_blank",rel:"noopener noreferrer"}},[a._v("Windows"),e("OutboundLink")],1)]),a._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.28.1.200629/kangaroo-0.28.1.200629-1-x86_64.pkg.tar.xz",target:"_blank",rel:"noopener noreferrer"}},[a._v("Arch"),e("OutboundLink")],1)]),a._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.28.1.200629/kangaroo-0.28.1.200629-macos.dmg",target:"_blank",rel:"noopener noreferrer"}},[a._v("MacOS"),e("OutboundLink")],1)])]),a._v(" "),e("tr",[e("td",[a._v("Portable"),e("br"),a._v("(Github.com)")]),a._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.28.1.200629/kangaroo-0.28.1.200629-AMD64.7z",target:"_blank",rel:"noopener noreferrer"}},[a._v("Windows"),e("OutboundLink")],1)]),a._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.28.1.200629/kangaroo-0.28.1.200629-arch.tar.gz",target:"_blank",rel:"noopener noreferrer"}},[a._v("Arch"),e("OutboundLink")],1),a._v(" "),e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.28.1.200629/kangaroo-0.28.1.200629-ubuntu.tar.gz",target:"_blank",rel:"noopener noreferrer"}},[a._v("Ubuntu"),e("OutboundLink")],1)]),a._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.28.1.200629/kangaroo-0.28.1.200629-macos.tar.gz",target:"_blank",rel:"noopener noreferrer"}},[a._v("MacOS"),e("OutboundLink")],1)])]),a._v(" "),e("tr",[e("td",[a._v("Installer"),e("br"),a._v("(Gitee.com)")]),a._v(" "),e("td",[e("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/423543/download",target:"_blank",rel:"noopener noreferrer"}},[a._v("Windows"),e("OutboundLink")],1)]),a._v(" "),e("td",[e("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/423542/download",target:"_blank",rel:"noopener noreferrer"}},[a._v("Arch"),e("OutboundLink")],1)]),a._v(" "),e("td",[e("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/423539/download",target:"_blank",rel:"noopener noreferrer"}},[a._v("MacOS"),e("OutboundLink")],1)])]),a._v(" "),e("tr",[e("td",[a._v("Portable"),e("br"),a._v("(Gitee.com)")]),a._v(" "),e("td",[e("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/423541/download",target:"_blank",rel:"noopener noreferrer"}},[a._v("Windows"),e("OutboundLink")],1)]),a._v(" "),e("td",[e("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/423537/download",target:"_blank",rel:"noopener noreferrer"}},[a._v("Arch"),e("OutboundLink")],1),a._v(" "),e("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/423538/download",target:"_blank",rel:"noopener noreferrer"}},[a._v("Ubuntu"),e("OutboundLink")],1)]),a._v(" "),e("td",[e("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/423536/download",target:"_blank",rel:"noopener noreferrer"}},[a._v("MacOS"),e("OutboundLink")],1)])])])])])}),[],!1,null,null,null);t.default=o.exports}}]); \ No newline at end of file diff --git a/assets/js/67.b42c4edc.js b/assets/js/67.b42c4edc.js new file mode 100644 index 000000000..ed5afc9cd --- /dev/null +++ b/assets/js/67.b42c4edc.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[67],{651:function(a,t,e){"use strict";e.r(t);var r=e(13),o=Object(r.a)({},(function(){var a=this,t=a.$createElement,e=a._self._c||t;return e("ContentSlotsDistributor",{attrs:{"slot-key":a.$parent.slotKey}},[e("h1",{attrs:{id:"kangaroo-v0-29-1-dev"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#kangaroo-v0-29-1-dev"}},[a._v("#")]),a._v(" Kangaroo v0.29.1 (Dev)")]),a._v(" "),e("h2",{attrs:{id:"new-features-bug-fixes"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#new-features-bug-fixes"}},[a._v("#")]),a._v(" New features & bug-fixes")]),a._v(" "),e("ol",[e("li",[a._v("Implement plugin system")]),a._v(" "),e("li",[a._v("Implement a example plugin")]),a._v(" "),e("li",[a._v("Update ArchLinux and MacOSX installer")]),a._v(" "),e("li",[a._v("Update protable package(more *nixable)")])]),a._v(" "),e("div",[e("script2",{attrs:{type:"text/javascript",async:"true",src:"https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"}}),a._v(" "),e("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),a._v(" "),e("script2",{attrs:{type:"text/javascript"}},[a._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),a._v(" "),e("h2",{attrs:{id:"installer-portable-packages"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#installer-portable-packages"}},[a._v("#")]),a._v(" Installer & Portable packages "),e("Badge",{attrs:{text:"link expired",type:"warning"}})],1),a._v(" "),e("table",[e("thead",[e("tr",[e("th",[a._v("Packages")]),a._v(" "),e("th",[a._v("Windows(64 bit)")]),a._v(" "),e("th",[a._v("Linux(64 bit)")]),a._v(" "),e("th",[a._v("MacOS(64 bit)")])])]),a._v(" "),e("tbody",[e("tr",[e("td",[a._v("Installer"),e("br"),a._v("(Github.com)")]),a._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.29.1.200713/kangaroo-0.29.1.200713-AMD64.exe",target:"_blank",rel:"noopener noreferrer"}},[a._v("Windows"),e("OutboundLink")],1)]),a._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.29.1.200713/kangaroo-0.29.1.200713-1-x86_64.pkg.tar.xz",target:"_blank",rel:"noopener noreferrer"}},[a._v("Arch"),e("OutboundLink")],1)]),a._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.29.1.200713/kangaroo-0.29.1.200713-macos.dmg",target:"_blank",rel:"noopener noreferrer"}},[a._v("MacOS"),e("OutboundLink")],1)])]),a._v(" "),e("tr",[e("td",[a._v("Portable"),e("br"),a._v("(Github.com)")]),a._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.29.1.200713/kangaroo-0.29.1.200713-AMD64.7z",target:"_blank",rel:"noopener noreferrer"}},[a._v("Windows"),e("OutboundLink")],1)]),a._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.29.1.200713/kangaroo-0.29.1.200713-arch.tar.gz",target:"_blank",rel:"noopener noreferrer"}},[a._v("Arch"),e("OutboundLink")],1),a._v(" "),e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.29.1.200713/kangaroo-0.29.1.200713-ubuntu.tar.gz",target:"_blank",rel:"noopener noreferrer"}},[a._v("Ubuntu"),e("OutboundLink")],1)]),a._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.29.1.200713/kangaroo-0.29.1.200713-macos.tar.gz",target:"_blank",rel:"noopener noreferrer"}},[a._v("MacOS"),e("OutboundLink")],1)])]),a._v(" "),e("tr",[e("td",[a._v("Installer"),e("br"),a._v("(Gitee.com)")]),a._v(" "),e("td",[e("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/432588/download",target:"_blank",rel:"noopener noreferrer"}},[a._v("Windows"),e("OutboundLink")],1)]),a._v(" "),e("td",[e("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/432571/download",target:"_blank",rel:"noopener noreferrer"}},[a._v("Arch"),e("OutboundLink")],1)]),a._v(" "),e("td",[e("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/432607/download",target:"_blank",rel:"noopener noreferrer"}},[a._v("MacOS"),e("OutboundLink")],1)])]),a._v(" "),e("tr",[e("td",[a._v("Portable"),e("br"),a._v("(Gitee.com)")]),a._v(" "),e("td",[e("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/432588/download",target:"_blank",rel:"noopener noreferrer"}},[a._v("Windows"),e("OutboundLink")],1)]),a._v(" "),e("td",[e("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/432572/download",target:"_blank",rel:"noopener noreferrer"}},[a._v("Arch"),e("OutboundLink")],1),a._v(" "),e("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/432574/download",target:"_blank",rel:"noopener noreferrer"}},[a._v("Ubuntu"),e("OutboundLink")],1)]),a._v(" "),e("td",[e("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/432573/download",target:"_blank",rel:"noopener noreferrer"}},[a._v("MacOS"),e("OutboundLink")],1)])])])])])}),[],!1,null,null,null);t.default=o.exports}}]); \ No newline at end of file diff --git a/assets/js/68.3b2ab93c.js b/assets/js/68.3b2ab93c.js new file mode 100644 index 000000000..aa60ae206 --- /dev/null +++ b/assets/js/68.3b2ab93c.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[68],{652:function(a,t,e){"use strict";e.r(t);var r=e(13),o=Object(r.a)({},(function(){var a=this,t=a.$createElement,e=a._self._c||t;return e("ContentSlotsDistributor",{attrs:{"slot-key":a.$parent.slotKey}},[e("h1",{attrs:{id:"kangaroo-v0-30-1-dev"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#kangaroo-v0-30-1-dev"}},[a._v("#")]),a._v(" Kangaroo v0.30.1 (Dev)")]),a._v(" "),e("h2",{attrs:{id:"new-features-bug-fixes"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#new-features-bug-fixes"}},[a._v("#")]),a._v(" New features & bug-fixes")]),a._v(" "),e("ol",[e("li",[a._v("Add app relate plugin search path")]),a._v(" "),e("li",[a._v("Add data viewer pane and button")]),a._v(" "),e("li",[a._v("Implement text and image vierer")]),a._v(" "),e("li",[a._v("Update button with flat style")])]),a._v(" "),e("div",[e("script2",{attrs:{type:"text/javascript",async:"true",src:"https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"}}),a._v(" "),e("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),a._v(" "),e("script2",{attrs:{type:"text/javascript"}},[a._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),a._v(" "),e("h2",{attrs:{id:"installer-portable-packages"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#installer-portable-packages"}},[a._v("#")]),a._v(" Installer & Portable packages "),e("Badge",{attrs:{text:"link expired",type:"warning"}})],1),a._v(" "),e("table",[e("thead",[e("tr",[e("th",[a._v("Packages")]),a._v(" "),e("th",[a._v("Windows(64 bit)")]),a._v(" "),e("th",[a._v("Linux(64 bit)")]),a._v(" "),e("th",[a._v("MacOS(64 bit)")])])]),a._v(" "),e("tbody",[e("tr",[e("td",[a._v("Installer"),e("br"),a._v("(Github.com)")]),a._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.30.1.200727/kangaroo-0.30.1.200727-AMD64.exe",target:"_blank",rel:"noopener noreferrer"}},[a._v("Windows"),e("OutboundLink")],1)]),a._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.30.1.200727/kangaroo-0.30.1.200727-1-x86_64.pkg.tar.xz",target:"_blank",rel:"noopener noreferrer"}},[a._v("Arch"),e("OutboundLink")],1)]),a._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.30.1.200727/kangaroo-0.30.1.200727-macos.dmg",target:"_blank",rel:"noopener noreferrer"}},[a._v("MacOS"),e("OutboundLink")],1)])]),a._v(" "),e("tr",[e("td",[a._v("Portable"),e("br"),a._v("(Github.com)")]),a._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.30.1.200727/kangaroo-0.30.1.200727-AMD64.7z",target:"_blank",rel:"noopener noreferrer"}},[a._v("Windows"),e("OutboundLink")],1)]),a._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.30.1.200727/kangaroo-0.30.1.200727-arch.tar.gz",target:"_blank",rel:"noopener noreferrer"}},[a._v("Arch"),e("OutboundLink")],1),a._v(" "),e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.30.1.200727/kangaroo-0.30.1.200727-ubuntu.tar.gz",target:"_blank",rel:"noopener noreferrer"}},[a._v("Ubuntu"),e("OutboundLink")],1)]),a._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.30.1.200727/kangaroo-0.30.1.200727-macos.tar.gz",target:"_blank",rel:"noopener noreferrer"}},[a._v("MacOS"),e("OutboundLink")],1)])]),a._v(" "),e("tr",[e("td",[a._v("Installer"),e("br"),a._v("(Gitee.com)")]),a._v(" "),e("td",[e("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/442683/download",target:"_blank",rel:"noopener noreferrer"}},[a._v("Windows"),e("OutboundLink")],1)]),a._v(" "),e("td",[e("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/442678/download",target:"_blank",rel:"noopener noreferrer"}},[a._v("Arch"),e("OutboundLink")],1)]),a._v(" "),e("td",[e("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/442684/download",target:"_blank",rel:"noopener noreferrer"}},[a._v("MacOS"),e("OutboundLink")],1)])]),a._v(" "),e("tr",[e("td",[a._v("Portable"),e("br"),a._v("(Gitee.com)")]),a._v(" "),e("td",[e("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/442682/download",target:"_blank",rel:"noopener noreferrer"}},[a._v("Windows"),e("OutboundLink")],1)]),a._v(" "),e("td",[e("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/442677/download",target:"_blank",rel:"noopener noreferrer"}},[a._v("Arch"),e("OutboundLink")],1),a._v(" "),e("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/442676/download",target:"_blank",rel:"noopener noreferrer"}},[a._v("Ubuntu"),e("OutboundLink")],1)]),a._v(" "),e("td",[e("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/442685/download",target:"_blank",rel:"noopener noreferrer"}},[a._v("MacOS"),e("OutboundLink")],1)])])])])])}),[],!1,null,null,null);t.default=o.exports}}]); \ No newline at end of file diff --git a/assets/js/69.f236f4f2.js b/assets/js/69.f236f4f2.js new file mode 100644 index 000000000..e1728f5b8 --- /dev/null +++ b/assets/js/69.f236f4f2.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[69],{653:function(t,a,e){"use strict";e.r(a);var r=e(13),o=Object(r.a)({},(function(){var t=this,a=t.$createElement,e=t._self._c||a;return e("ContentSlotsDistributor",{attrs:{"slot-key":t.$parent.slotKey}},[e("h1",{attrs:{id:"kangaroo-v0-31-1-dev"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#kangaroo-v0-31-1-dev"}},[t._v("#")]),t._v(" Kangaroo v0.31.1 (Dev)")]),t._v(" "),e("h2",{attrs:{id:"new-features-bug-fixes"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#new-features-bug-fixes"}},[t._v("#")]),t._v(" New features & bug-fixes")]),t._v(" "),e("ol",[e("li",[t._v("Implement BLOB content identity")]),t._v(" "),e("li",[t._v("Implement SQLite BLOB column handle(import / export / set null)")]),t._v(" "),e("li",[t._v("Implement MySQL BLOB column handle(import / export / set null)")]),t._v(" "),e("li",[t._v("Implement PostgreSQL BLOB column handle(import / export / set null)")]),t._v(" "),e("li",[t._v("Implement view BLOB data as string")]),t._v(" "),e("li",[t._v("Apply tight style for find and replace box")])]),t._v(" "),e("div",[e("script2",{attrs:{type:"text/javascript",async:"true",src:"https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"}}),t._v(" "),e("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),t._v(" "),e("script2",{attrs:{type:"text/javascript"}},[t._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),t._v(" "),e("h2",{attrs:{id:"installer-portable-packages"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#installer-portable-packages"}},[t._v("#")]),t._v(" Installer & Portable packages "),e("Badge",{attrs:{text:"link expired",type:"warning"}})],1),t._v(" "),e("table",[e("thead",[e("tr",[e("th",[t._v("Packages")]),t._v(" "),e("th",[t._v("Windows(64 bit)")]),t._v(" "),e("th",[t._v("Linux(64 bit)")]),t._v(" "),e("th",[t._v("MacOS(64 bit)")])])]),t._v(" "),e("tbody",[e("tr",[e("td",[t._v("Installer"),e("br"),t._v("(Github.com)")]),t._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.31.1.200803/kangaroo-0.31.1.200803-AMD64.exe",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows"),e("OutboundLink")],1)]),t._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.31.1.200803/kangaroo-0.31.1.200803-1-x86_64.pkg.tar.xz",target:"_blank",rel:"noopener noreferrer"}},[t._v("Arch"),e("OutboundLink")],1)]),t._v(" "),e("td",[t._v("MacOS")])]),t._v(" "),e("tr",[e("td",[t._v("Portable"),e("br"),t._v("(Github.com)")]),t._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.31.1.200803/kangaroo-0.31.1.200803-AMD64.7z",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows"),e("OutboundLink")],1)]),t._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.31.1.200803/kangaroo-0.31.1.200803-arch.tar.gz",target:"_blank",rel:"noopener noreferrer"}},[t._v("Arch"),e("OutboundLink")],1),t._v(" "),e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.31.1.200803/kangaroo-0.31.1.200803-ubuntu.tar.gz",target:"_blank",rel:"noopener noreferrer"}},[t._v("Ubuntu"),e("OutboundLink")],1)]),t._v(" "),e("td",[t._v("MacOS")])]),t._v(" "),e("tr",[e("td",[t._v("Installer"),e("br"),t._v("(Gitee.com)")]),t._v(" "),e("td",[e("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/446400/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows"),e("OutboundLink")],1)]),t._v(" "),e("td",[e("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/446402/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("Arch"),e("OutboundLink")],1)]),t._v(" "),e("td",[t._v("MacOS")])]),t._v(" "),e("tr",[e("td",[t._v("Portable"),e("br"),t._v("(Gitee.com)")]),t._v(" "),e("td",[e("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/446401/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows"),e("OutboundLink")],1)]),t._v(" "),e("td",[e("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/446403/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("Arch"),e("OutboundLink")],1),t._v(" "),e("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/446404/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("Ubuntu"),e("OutboundLink")],1)]),t._v(" "),e("td",[t._v("MacOS")])])])])])}),[],!1,null,null,null);a.default=o.exports}}]); \ No newline at end of file diff --git a/assets/js/7.7f48dd3f.js b/assets/js/7.7f48dd3f.js new file mode 100644 index 000000000..ac210c259 --- /dev/null +++ b/assets/js/7.7f48dd3f.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[7],{508:function(t,e,a){},583:function(t,e,a){"use strict";a(508)},598:function(t,e,a){"use strict";a.r(e);var n={name:"CodeBlock",props:{title:{type:String,required:!0},active:{type:Boolean,default:!1}},mounted:function(){this.$parent&&this.$parent.loadTabs&&this.$parent.loadTabs()}},i=(a(583),a(13)),s=Object(i.a)(n,(function(){var t=this.$createElement;return(this._self._c||t)("div",{staticClass:"theme-code-block",class:{"theme-code-block__active":this.active}},[this._t("default")],2)}),[],!1,null,"759a7d02",null);e.default=s.exports}}]); \ No newline at end of file diff --git a/assets/js/70.6884743f.js b/assets/js/70.6884743f.js new file mode 100644 index 000000000..331af88bc --- /dev/null +++ b/assets/js/70.6884743f.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[70],{654:function(t,a,e){"use strict";e.r(a);var r=e(13),o=Object(r.a)({},(function(){var t=this,a=t.$createElement,e=t._self._c||a;return e("ContentSlotsDistributor",{attrs:{"slot-key":t.$parent.slotKey}},[e("h1",{attrs:{id:"kangaroo-v0-32-1-dev"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#kangaroo-v0-32-1-dev"}},[t._v("#")]),t._v(" Kangaroo v0.32.1 (Dev)")]),t._v(" "),e("h2",{attrs:{id:"new-features-bug-fixes"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#new-features-bug-fixes"}},[t._v("#")]),t._v(" New features & bug-fixes")]),t._v(" "),e("ol",[e("li",[t._v("Implement to generate W3C html document")]),t._v(" "),e("li",[t._v("Implement to generate markdown document")]),t._v(" "),e("li",[t._v("Update import/export icon image")])]),t._v(" "),e("div",[e("script2",{attrs:{type:"text/javascript",async:"true",src:"https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"}}),t._v(" "),e("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),t._v(" "),e("script2",{attrs:{type:"text/javascript"}},[t._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),t._v(" "),e("h2",{attrs:{id:"installer-portable-packages"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#installer-portable-packages"}},[t._v("#")]),t._v(" Installer & Portable packages "),e("Badge",{attrs:{text:"link expired",type:"warning"}})],1),t._v(" "),e("table",[e("thead",[e("tr",[e("th",[t._v("Packages")]),t._v(" "),e("th",[t._v("Windows(64 bit)")]),t._v(" "),e("th",[t._v("Linux(64 bit)")]),t._v(" "),e("th",[t._v("MacOS(64 bit)")])])]),t._v(" "),e("tbody",[e("tr",[e("td",[t._v("Installer"),e("br"),t._v("(Github.com)")]),t._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.32.1.200810/kangaroo-0.32.1.200810-AMD64.exe",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows"),e("OutboundLink")],1)]),t._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.32.1.200810/kangaroo-0.32.1.200810-1-x86_64.pkg.tar.xz",target:"_blank",rel:"noopener noreferrer"}},[t._v("Arch"),e("OutboundLink")],1)]),t._v(" "),e("td",[t._v("MacOS")])]),t._v(" "),e("tr",[e("td",[t._v("Portable"),e("br"),t._v("(Github.com)")]),t._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.32.1.200810/kangaroo-0.32.1.200810-AMD64.7z",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows"),e("OutboundLink")],1)]),t._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.32.1.200810/kangaroo-0.32.1.200810-arch.tar.gz",target:"_blank",rel:"noopener noreferrer"}},[t._v("Arch"),e("OutboundLink")],1),t._v(" "),e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.32.1.200810/kangaroo-0.32.1.200810-ubuntu.tar.gz",target:"_blank",rel:"noopener noreferrer"}},[t._v("Ubuntu"),e("OutboundLink")],1)]),t._v(" "),e("td",[t._v("MacOS")])]),t._v(" "),e("tr",[e("td",[t._v("Installer"),e("br"),t._v("(Gitee.com)")]),t._v(" "),e("td",[e("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/450511/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows"),e("OutboundLink")],1)]),t._v(" "),e("td",[e("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/450508/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("Arch"),e("OutboundLink")],1)]),t._v(" "),e("td",[t._v("MacOS")])]),t._v(" "),e("tr",[e("td",[t._v("Portable"),e("br"),t._v("(Gitee.com)")]),t._v(" "),e("td",[e("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/450512/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows"),e("OutboundLink")],1)]),t._v(" "),e("td",[e("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/450509/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("Arch"),e("OutboundLink")],1),t._v(" "),e("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/450510/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("Ubuntu"),e("OutboundLink")],1)]),t._v(" "),e("td",[t._v("MacOS")])])])])])}),[],!1,null,null,null);a.default=o.exports}}]); \ No newline at end of file diff --git a/assets/js/71.dbf8bd83.js b/assets/js/71.dbf8bd83.js new file mode 100644 index 000000000..9c3a71070 --- /dev/null +++ b/assets/js/71.dbf8bd83.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[71],{655:function(t,a,e){"use strict";e.r(a);var r=e(13),o=Object(r.a)({},(function(){var t=this,a=t.$createElement,e=t._self._c||a;return e("ContentSlotsDistributor",{attrs:{"slot-key":t.$parent.slotKey}},[e("h1",{attrs:{id:"kangaroo-v0-33-1-dev"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#kangaroo-v0-33-1-dev"}},[t._v("#")]),t._v(" Kangaroo v0.33.1 (Dev)")]),t._v(" "),e("h2",{attrs:{id:"new-features-bug-fixes"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#new-features-bug-fixes"}},[t._v("#")]),t._v(" New features & bug-fixes")]),t._v(" "),e("ol",[e("li",[t._v("Update title bar and tab bar CSS style")]),t._v(" "),e("li",[t._v("Improve date&time picker")]),t._v(" "),e("li",[t._v("Improve date&time renderer")]),t._v(" "),e("li",[t._v("Implement date&time editing in grid and form")]),t._v(" "),e("li",[t._v("Update windows deploy script to include libpeas loaders")]),t._v(" "),e("li",[t._v("Update meson script to add dependencies(pdf/draw/map)")]),t._v(" "),e("li",[t._v("Update meson script to improve debug support")]),t._v(" "),e("li",[t._v("Fixed: can't show animation image(.gif)")])]),t._v(" "),e("div",[e("script2",{attrs:{type:"text/javascript",async:"true",src:"https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"}}),t._v(" "),e("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),t._v(" "),e("script2",{attrs:{type:"text/javascript"}},[t._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),t._v(" "),e("h2",{attrs:{id:"installer-portable-packages"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#installer-portable-packages"}},[t._v("#")]),t._v(" Installer & Portable packages "),e("Badge",{attrs:{text:"link expired",type:"warning"}})],1),t._v(" "),e("p",[t._v("It is a very good idea to use sha256sum and GnuPG command to verify the sums and signature of your packages that download from the internet, make sure they are 100% correct.")]),t._v(" "),e("table",[e("thead",[e("tr",[e("th",[t._v("Packages")]),t._v(" "),e("th",[t._v("Windows(64 bit)")]),t._v(" "),e("th",[t._v("Linux(64 bit)")]),t._v(" "),e("th",[t._v("MacOS(64 bit)")])])]),t._v(" "),e("tbody",[e("tr",[e("td",[t._v("Installer"),e("br"),t._v("(Github.com)")]),t._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.33.1.200817/kangaroo-0.33.1.200817-AMD64.exe",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows"),e("OutboundLink")],1)]),t._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.33.1.200817/kangaroo-0.33.1.200817-1-x86_64.pkg.tar.xz",target:"_blank",rel:"noopener noreferrer"}},[t._v("Arch"),e("OutboundLink")],1)]),t._v(" "),e("td",[t._v("MacOS")])]),t._v(" "),e("tr",[e("td",[t._v("Portable"),e("br"),t._v("(Github.com)")]),t._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.33.1.200817/kangaroo-0.33.1.200817-AMD64.7z",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows"),e("OutboundLink")],1)]),t._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.33.1.200817/kangaroo-0.33.1.200817-arch.tar.gz",target:"_blank",rel:"noopener noreferrer"}},[t._v("Arch"),e("OutboundLink")],1),t._v(" "),e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.33.1.200817/kangaroo-0.33.1.200817-ubuntu.tar.gz",target:"_blank",rel:"noopener noreferrer"}},[t._v("Ubuntu"),e("OutboundLink")],1)]),t._v(" "),e("td",[t._v("MacOS")])]),t._v(" "),e("tr",[e("td",[t._v("SHA256SUM"),e("br"),t._v("(Github.com)")]),t._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.33.1.200817/kangaroo-0.33.1.200817.sha256sum",target:"_blank",rel:"noopener noreferrer"}},[t._v("SHA256SUM"),e("OutboundLink")],1)]),t._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.33.1.200817/kangaroo-0.33.1.200817.sha256sum.asc",target:"_blank",rel:"noopener noreferrer"}},[t._v("SHA256SUM.GPG"),e("OutboundLink")],1)]),t._v(" "),e("td")]),t._v(" "),e("tr",[e("td",[t._v("Installer"),e("br"),t._v("(Gitee.com)")]),t._v(" "),e("td",[e("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/455480/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows"),e("OutboundLink")],1)]),t._v(" "),e("td",[e("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/455476/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("Arch"),e("OutboundLink")],1)]),t._v(" "),e("td",[t._v("MacOS")])]),t._v(" "),e("tr",[e("td",[t._v("Portable"),e("br"),t._v("(Gitee.com)")]),t._v(" "),e("td",[e("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/455482/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows"),e("OutboundLink")],1)]),t._v(" "),e("td",[e("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/455477/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("Arch"),e("OutboundLink")],1),t._v(" "),e("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/455478/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("Ubuntu"),e("OutboundLink")],1)]),t._v(" "),e("td",[t._v("MacOS")])]),t._v(" "),e("tr",[e("td",[t._v("SHA256SUM"),e("br"),t._v("(Gitee.com)")]),t._v(" "),e("td",[e("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/455474/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("SHA256SUM"),e("OutboundLink")],1)]),t._v(" "),e("td",[e("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/455475/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("SHA256SUM.GPG"),e("OutboundLink")],1)]),t._v(" "),e("td")])])])])}),[],!1,null,null,null);a.default=o.exports}}]); \ No newline at end of file diff --git a/assets/js/72.f7a0a2b2.js b/assets/js/72.f7a0a2b2.js new file mode 100644 index 000000000..ca55e8303 --- /dev/null +++ b/assets/js/72.f7a0a2b2.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[72],{656:function(t,a,e){"use strict";e.r(a);var r=e(13),o=Object(r.a)({},(function(){var t=this,a=t.$createElement,e=t._self._c||a;return e("ContentSlotsDistributor",{attrs:{"slot-key":t.$parent.slotKey}},[e("h1",{attrs:{id:"kangaroo-v0-7-2-dev"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#kangaroo-v0-7-2-dev"}},[t._v("#")]),t._v(" Kangaroo v0.7.2 (Dev)")]),t._v(" "),e("h2",{attrs:{id:"new-features-bug-fixes"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#new-features-bug-fixes"}},[t._v("#")]),t._v(" New features & bug-fixes")]),t._v(" "),e("ol",[e("li",[t._v("Implement loader of PostgreSQL 11(full version)")]),t._v(" "),e("li",[t._v("Improve designer form of PostgreSQL 11")]),t._v(" "),e("li",[t._v("refactor content of Kangaroo repo")]),t._v(" "),e("li",[t._v("create new site: dbkangaroo.github.io")]),t._v(" "),e("li",[t._v("add windows installer script")])]),t._v(" "),e("div",[e("script2",{attrs:{type:"text/javascript",async:"true",src:"https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"}}),t._v(" "),e("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),t._v(" "),e("script2",{attrs:{type:"text/javascript"}},[t._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),t._v(" "),e("h2",{attrs:{id:"installer-portable-packages"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#installer-portable-packages"}},[t._v("#")]),t._v(" Installer & Portable packages "),e("Badge",{attrs:{text:"link expired",type:"warning"}})],1),t._v(" "),e("table",[e("thead",[e("tr",[e("th",[t._v("Platform")]),t._v(" "),e("th",[t._v("Installer(64 bit)")]),t._v(" "),e("th",[t._v("Portable(64 bit)")])])]),t._v(" "),e("tbody",[e("tr",[e("td",[t._v("Windows")]),t._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.7.2.190916/Kangaroo_0.7.2.190916_x64.exe",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows installer"),e("OutboundLink")],1)]),t._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.7.2.190916/Kangaroo_win64_0.7.2.190916.zip",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows portable"),e("OutboundLink")],1)])]),t._v(" "),e("tr",[e("td",[t._v("Linux")]),t._v(" "),e("td"),t._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.7.2.190916/Kangaroo_ubuntu_0.7.2.190916.zip",target:"_blank",rel:"noopener noreferrer"}},[t._v("Ubuntu portable"),e("OutboundLink")],1)])])])])])}),[],!1,null,null,null);a.default=o.exports}}]); \ No newline at end of file diff --git a/assets/js/73.50af08fb.js b/assets/js/73.50af08fb.js new file mode 100644 index 000000000..3eb3e06d6 --- /dev/null +++ b/assets/js/73.50af08fb.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[73],{657:function(t,a,e){"use strict";e.r(a);var r=e(13),o=Object(r.a)({},(function(){var t=this,a=t.$createElement,e=t._self._c||a;return e("ContentSlotsDistributor",{attrs:{"slot-key":t.$parent.slotKey}},[e("h1",{attrs:{id:"kangaroo-v0-8-0-dev"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#kangaroo-v0-8-0-dev"}},[t._v("#")]),t._v(" Kangaroo v0.8.0 (Dev)")]),t._v(" "),e("h2",{attrs:{id:"new-features-bug-fixes"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#new-features-bug-fixes"}},[t._v("#")]),t._v(" New features & bug-fixes")]),t._v(" "),e("ol",[e("li",[t._v("implement the builder of PostgreSQL(11.0)")]),t._v(" "),e("li",[t._v("save table schema to database(create only)")]),t._v(" "),e("li",[t._v("update build script: hide app console window")]),t._v(" "),e("li",[t._v("update windows installer: add MySQL and PostgreSQL client library")]),t._v(" "),e("li",[t._v("update the links on the about window")]),t._v(" "),e("li",[t._v("improve single line edit control(auto focus)")]),t._v(" "),e("li",[t._v("update gui cursor while busy")])]),t._v(" "),e("div",[e("script2",{attrs:{type:"text/javascript",async:"true",src:"https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"}}),t._v(" "),e("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),t._v(" "),e("script2",{attrs:{type:"text/javascript"}},[t._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),t._v(" "),e("h2",{attrs:{id:"installer-portable-packages"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#installer-portable-packages"}},[t._v("#")]),t._v(" Installer & Portable packages "),e("Badge",{attrs:{text:"link expired",type:"warning"}})],1),t._v(" "),e("table",[e("thead",[e("tr",[e("th",[t._v("Platform")]),t._v(" "),e("th",[t._v("Installer(64 bit)")]),t._v(" "),e("th",[t._v("Portable(64 bit)")])])]),t._v(" "),e("tbody",[e("tr",[e("td",[t._v("Windows")]),t._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.8.0.190923/Kangaroo_0.8.0.190923_win64.exe",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows Installer"),e("OutboundLink")],1)]),t._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.8.0.190923/Kangaroo_0.8.0.190923_win64.7z",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows Portable"),e("OutboundLink")],1)])]),t._v(" "),e("tr",[e("td",[t._v("Linux")]),t._v(" "),e("td"),t._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.8.0.190923/Kangaroo_0.8.0.190923_ubuntu.zip",target:"_blank",rel:"noopener noreferrer"}},[t._v("Ubuntu Portable"),e("OutboundLink")],1)])])])])])}),[],!1,null,null,null);a.default=o.exports}}]); \ No newline at end of file diff --git a/assets/js/74.2ff917d1.js b/assets/js/74.2ff917d1.js new file mode 100644 index 000000000..27a8c458b --- /dev/null +++ b/assets/js/74.2ff917d1.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[74],{658:function(t,a,e){"use strict";e.r(a);var r=e(13),o=Object(r.a)({},(function(){var t=this,a=t.$createElement,e=t._self._c||a;return e("ContentSlotsDistributor",{attrs:{"slot-key":t.$parent.slotKey}},[e("h1",{attrs:{id:"kangaroo-v0-8-1-dev"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#kangaroo-v0-8-1-dev"}},[t._v("#")]),t._v(" Kangaroo v0.8.1 (Dev)")]),t._v(" "),e("h2",{attrs:{id:"new-features-bug-fixes"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#new-features-bug-fixes"}},[t._v("#")]),t._v(" New features & bug-fixes")]),t._v(" "),e("ol",[e("li",[t._v("improve: generate exact correct editing sql")]),t._v(" "),e("li",[t._v("refactor: add source code editor module")]),t._v(" "),e("li",[t._v("improve SQLite schema sql builder")]),t._v(" "),e("li",[t._v("fixed: text editor and code editor can't show blank line")]),t._v(" "),e("li",[t._v("fixed: get string failed while create data row(console)")]),t._v(" "),e("li",[t._v("fixed: console critical message while editing schema")])]),t._v(" "),e("div",[e("script2",{attrs:{type:"text/javascript",async:"true",src:"https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"}}),t._v(" "),e("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),t._v(" "),e("script2",{attrs:{type:"text/javascript"}},[t._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),t._v(" "),e("h2",{attrs:{id:"installer-portable-packages"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#installer-portable-packages"}},[t._v("#")]),t._v(" Installer & Portable packages "),e("Badge",{attrs:{text:"link expired",type:"warning"}})],1),t._v(" "),e("table",[e("thead",[e("tr",[e("th",[t._v("Platform")]),t._v(" "),e("th",[t._v("Installer(64 bit)")]),t._v(" "),e("th",[t._v("Portable(64 bit)")])])]),t._v(" "),e("tbody",[e("tr",[e("td",[t._v("Windows")]),t._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.8.1.190930/Kangaroo_0.8.1.190930_win64.exe",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows Installer"),e("OutboundLink")],1)]),t._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.8.1.190930/Kangaroo_0.8.1.190930_win64.7z",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows Portable"),e("OutboundLink")],1)])]),t._v(" "),e("tr",[e("td",[t._v("Linux")]),t._v(" "),e("td"),t._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.8.1.190930/Kangaroo_0.8.1.190930_ubuntu.zip",target:"_blank",rel:"noopener noreferrer"}},[t._v("Ubuntu Portable"),e("OutboundLink")],1)])])])])])}),[],!1,null,null,null);a.default=o.exports}}]); \ No newline at end of file diff --git a/assets/js/75.2095ac19.js b/assets/js/75.2095ac19.js new file mode 100644 index 000000000..6ab252e5c --- /dev/null +++ b/assets/js/75.2095ac19.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[75],{659:function(t,a,e){"use strict";e.r(a);var r=e(13),o=Object(r.a)({},(function(){var t=this,a=t.$createElement,e=t._self._c||a;return e("ContentSlotsDistributor",{attrs:{"slot-key":t.$parent.slotKey}},[e("h1",{attrs:{id:"kangaroo-v0-8-2-dev"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#kangaroo-v0-8-2-dev"}},[t._v("#")]),t._v(" Kangaroo v0.8.2 (Dev)")]),t._v(" "),e("h2",{attrs:{id:"new-features-bug-fixes"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#new-features-bug-fixes"}},[t._v("#")]),t._v(" New features & bug-fixes")]),t._v(" "),e("ol",[e("li",[t._v("improve: field selection dialog support to select fields by value(#9)")]),t._v(" "),e("li",[t._v("improve: schema designer support to navigate with Tab key(#3)")]),t._v(" "),e("li",[t._v("fixed: fields expression dialog reload value failed(#10)")]),t._v(" "),e("li",[t._v("fixed: missing windows shortcut icon(start menu and desktop) (#7)")]),t._v(" "),e("li",[t._v("fixed: missing syntax highlighting support(#8)")]),t._v(" "),e("li",[t._v("fixed: load data in form view failed(#11)")])]),t._v(" "),e("div",[e("script2",{attrs:{type:"text/javascript",async:"true",src:"https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"}}),t._v(" "),e("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),t._v(" "),e("script2",{attrs:{type:"text/javascript"}},[t._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),t._v(" "),e("h2",{attrs:{id:"installer-portable-packages"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#installer-portable-packages"}},[t._v("#")]),t._v(" Installer & Portable packages "),e("Badge",{attrs:{text:"link expired",type:"warning"}})],1),t._v(" "),e("table",[e("thead",[e("tr",[e("th",[t._v("Platform")]),t._v(" "),e("th",[t._v("Installer(64 bit)")]),t._v(" "),e("th",[t._v("Portable(64 bit)")])])]),t._v(" "),e("tbody",[e("tr",[e("td",[t._v("Windows")]),t._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.8.2.191014/Kangaroo_0.8.2.191014_win64.exe",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows Installer"),e("OutboundLink")],1)]),t._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.8.2.191014/Kangaroo_0.8.2.191014_win64.7z",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows Portable"),e("OutboundLink")],1)])]),t._v(" "),e("tr",[e("td",[t._v("Linux")]),t._v(" "),e("td"),t._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.8.2.191014/Kangaroo_0.8.2.191014_ubuntu.zip",target:"_blank",rel:"noopener noreferrer"}},[t._v("Ubuntu Portable"),e("OutboundLink")],1)])]),t._v(" "),e("tr",[e("td",[t._v("MacOS")]),t._v(" "),e("td"),t._v(" "),e("td")])])])])}),[],!1,null,null,null);a.default=o.exports}}]); \ No newline at end of file diff --git a/assets/js/76.cb6c62f0.js b/assets/js/76.cb6c62f0.js new file mode 100644 index 000000000..a3fbb2097 --- /dev/null +++ b/assets/js/76.cb6c62f0.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[76],{665:function(a,t,e){"use strict";e.r(t);var r=e(13),o=Object(r.a)({},(function(){var a=this,t=a.$createElement,e=a._self._c||t;return e("ContentSlotsDistributor",{attrs:{"slot-key":a.$parent.slotKey}},[e("h1",{attrs:{id:"kangaroo-v0-8-3-dev"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#kangaroo-v0-8-3-dev"}},[a._v("#")]),a._v(" Kangaroo v0.8.3 (Dev)")]),a._v(" "),e("h2",{attrs:{id:"new-features-bug-fixes"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#new-features-bug-fixes"}},[a._v("#")]),a._v(" New features & bug-fixes")]),a._v(" "),e("p",[a._v("New features & bug-fixes")]),a._v(" "),e("ol",[e("li",[e("p",[a._v("新建连接时出现插件未加载错误 #12 "),e("br"),a._v("\nLoad plugin failed while create new connection #12")])]),a._v(" "),e("li",[e("p",[a._v("Add MacOS compilation support #13")])]),a._v(" "),e("li",[e("p",[a._v("refactor database model to improve interoperability")])])]),a._v(" "),e("div",[e("script2",{attrs:{type:"text/javascript",async:"true",src:"https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"}}),a._v(" "),e("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),a._v(" "),e("script2",{attrs:{type:"text/javascript"}},[a._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),a._v(" "),e("h2",{attrs:{id:"installer-portable-packages"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#installer-portable-packages"}},[a._v("#")]),a._v(" Installer & Portable packages "),e("Badge",{attrs:{text:"link expired",type:"warning"}})],1),a._v(" "),e("table",[e("thead",[e("tr",[e("th",[a._v("Platform")]),a._v(" "),e("th",[a._v("Installer(64 bit)")]),a._v(" "),e("th",[a._v("Portable(64 bit)")])])]),a._v(" "),e("tbody",[e("tr",[e("td",[a._v("Windows")]),a._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.8.3.191021/Kangaroo_0.8.3.191021_win64.exe",target:"_blank",rel:"noopener noreferrer"}},[a._v("Windows Installer"),e("OutboundLink")],1)]),a._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.8.3.191021/Kangaroo_0.8.3.191021_win64.7z",target:"_blank",rel:"noopener noreferrer"}},[a._v("Windows Portable"),e("OutboundLink")],1)])]),a._v(" "),e("tr",[e("td",[a._v("Linux")]),a._v(" "),e("td"),a._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.8.3.191021/Kangaroo_0.8.3.191021_ubuntu.zip",target:"_blank",rel:"noopener noreferrer"}},[a._v("Ubuntu Portable"),e("OutboundLink")],1)])]),a._v(" "),e("tr",[e("td",[a._v("MacOS")]),a._v(" "),e("td"),a._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.8.3.191021/Kangaroo_0.8.3.191021_macos.zip",target:"_blank",rel:"noopener noreferrer"}},[a._v("MacOS Portable"),e("OutboundLink")],1)])])])])])}),[],!1,null,null,null);t.default=o.exports}}]); \ No newline at end of file diff --git a/assets/js/77.7141c822.js b/assets/js/77.7141c822.js new file mode 100644 index 000000000..87fc3e76e --- /dev/null +++ b/assets/js/77.7141c822.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[77],{660:function(a,t,e){"use strict";e.r(t);var r=e(13),o=Object(r.a)({},(function(){var a=this,t=a.$createElement,e=a._self._c||t;return e("ContentSlotsDistributor",{attrs:{"slot-key":a.$parent.slotKey}},[e("h1",{attrs:{id:"kangaroo-v0-8-4-dev"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#kangaroo-v0-8-4-dev"}},[a._v("#")]),a._v(" Kangaroo v0.8.4 (Dev)")]),a._v(" "),e("h2",{attrs:{id:"new-features-bug-fixes"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#new-features-bug-fixes"}},[a._v("#")]),a._v(" New features & bug-fixes")]),a._v(" "),e("p",[a._v("New features & bug-fixes")]),a._v(" "),e("ol",[e("li",[a._v("Rearrange db tree and UI #17")]),a._v(" "),e("li",[a._v("Add refresh menu on db tree")]),a._v(" "),e("li",[a._v("Implement multiple databases support")]),a._v(" "),e("li",[a._v("Edit table schema and save to database(MySQL Preview) #5")])]),a._v(" "),e("div",[e("script2",{attrs:{type:"text/javascript",async:"true",src:"https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"}}),a._v(" "),e("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),a._v(" "),e("script2",{attrs:{type:"text/javascript"}},[a._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),a._v(" "),e("h2",{attrs:{id:"installer-portable-packages"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#installer-portable-packages"}},[a._v("#")]),a._v(" Installer & Portable packages "),e("Badge",{attrs:{text:"link expired",type:"warning"}})],1),a._v(" "),e("table",[e("thead",[e("tr",[e("th",[a._v("Platform")]),a._v(" "),e("th",[a._v("Installer(64 bit)")]),a._v(" "),e("th",[a._v("Portable(64 bit)")])])]),a._v(" "),e("tbody",[e("tr",[e("td",[a._v("Windows")]),a._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.8.4.191028/Kangaroo_0.8.4.191028_win64.exe",target:"_blank",rel:"noopener noreferrer"}},[a._v("Windows Installer"),e("OutboundLink")],1)]),a._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.8.4.191028/Kangaroo_0.8.4.191028_win64.7z",target:"_blank",rel:"noopener noreferrer"}},[a._v("Windows Portable"),e("OutboundLink")],1)])]),a._v(" "),e("tr",[e("td",[a._v("Linux")]),a._v(" "),e("td"),a._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.8.4.191028/Kangaroo_0.8.4.191028_ubuntu.zip",target:"_blank",rel:"noopener noreferrer"}},[a._v("Ubuntu Portable"),e("OutboundLink")],1)])]),a._v(" "),e("tr",[e("td",[a._v("MacOS")]),a._v(" "),e("td"),a._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.8.4.191028/Kangaroo_0.8.4.191028_macos.zip",target:"_blank",rel:"noopener noreferrer"}},[a._v("MacOS Portable"),e("OutboundLink")],1)])])])])])}),[],!1,null,null,null);t.default=o.exports}}]); \ No newline at end of file diff --git a/assets/js/78.1a199a18.js b/assets/js/78.1a199a18.js new file mode 100644 index 000000000..fdbc63386 --- /dev/null +++ b/assets/js/78.1a199a18.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[78],{662:function(a,t,e){"use strict";e.r(t);var r=e(13),o=Object(r.a)({},(function(){var a=this,t=a.$createElement,e=a._self._c||t;return e("ContentSlotsDistributor",{attrs:{"slot-key":a.$parent.slotKey}},[e("h1",{attrs:{id:"kangaroo-v0-8-5-dev"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#kangaroo-v0-8-5-dev"}},[a._v("#")]),a._v(" Kangaroo v0.8.5 (Dev)")]),a._v(" "),e("h2",{attrs:{id:"new-features-bug-fixes"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#new-features-bug-fixes"}},[a._v("#")]),a._v(" New features & bug-fixes")]),a._v(" "),e("ol",[e("li",[a._v("Edit table schema and save to database(SQLite and PostgreSQL preview) #5")]),a._v(" "),e("li",[a._v("Add export data formats UI and interfaces")]),a._v(" "),e("li",[a._v("Update tab's title while save the new table")])]),a._v(" "),e("div",[e("script2",{attrs:{type:"text/javascript",async:"true",src:"https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"}}),a._v(" "),e("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),a._v(" "),e("script2",{attrs:{type:"text/javascript"}},[a._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),a._v(" "),e("h2",{attrs:{id:"installer-portable-packages"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#installer-portable-packages"}},[a._v("#")]),a._v(" Installer & Portable packages "),e("Badge",{attrs:{text:"link expired",type:"warning"}})],1),a._v(" "),e("table",[e("thead",[e("tr",[e("th",[a._v("Platform")]),a._v(" "),e("th",[a._v("Installer(64 bit)")]),a._v(" "),e("th",[a._v("Portable(64 bit)")])])]),a._v(" "),e("tbody",[e("tr",[e("td",[a._v("Windows")]),a._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.8.5.191104/Kangaroo_0.8.5.191104_win64.exe",target:"_blank",rel:"noopener noreferrer"}},[a._v("Windows Installer"),e("OutboundLink")],1)]),a._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.8.5.191104/Kangaroo_0.8.5.191104_win64.7z",target:"_blank",rel:"noopener noreferrer"}},[a._v("Windows Portable"),e("OutboundLink")],1)])]),a._v(" "),e("tr",[e("td",[a._v("Linux")]),a._v(" "),e("td"),a._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.8.5.191104/Kangaroo_0.8.5.191104_ubuntu.zip",target:"_blank",rel:"noopener noreferrer"}},[a._v("Ubuntu Portable"),e("OutboundLink")],1)])]),a._v(" "),e("tr",[e("td",[a._v("MacOS")]),a._v(" "),e("td"),a._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.8.5.191104/Kangaroo_0.8.5.191104_macos.zip",target:"_blank",rel:"noopener noreferrer"}},[a._v("MacOS Portable"),e("OutboundLink")],1)])])])])])}),[],!1,null,null,null);t.default=o.exports}}]); \ No newline at end of file diff --git a/assets/js/79.7617d3c8.js b/assets/js/79.7617d3c8.js new file mode 100644 index 000000000..263b7d3f7 --- /dev/null +++ b/assets/js/79.7617d3c8.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[79],{661:function(a,t,e){"use strict";e.r(t);var r=e(13),o=Object(r.a)({},(function(){var a=this,t=a.$createElement,e=a._self._c||t;return e("ContentSlotsDistributor",{attrs:{"slot-key":a.$parent.slotKey}},[e("h1",{attrs:{id:"kangaroo-v0-9-0-dev"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#kangaroo-v0-9-0-dev"}},[a._v("#")]),a._v(" Kangaroo v0.9.0 (Dev)")]),a._v(" "),e("h2",{attrs:{id:"new-features-bug-fixes"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#new-features-bug-fixes"}},[a._v("#")]),a._v(" New features & bug-fixes")]),a._v(" "),e("ol",[e("li",[a._v("Edit table schema and save to database #5")]),a._v(" "),e("li",[a._v("Export data to JSON and DSV format")])]),a._v(" "),e("div",[e("script2",{attrs:{type:"text/javascript",async:"true",src:"https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"}}),a._v(" "),e("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),a._v(" "),e("script2",{attrs:{type:"text/javascript"}},[a._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),a._v(" "),e("h2",{attrs:{id:"installer-portable-packages"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#installer-portable-packages"}},[a._v("#")]),a._v(" Installer & Portable packages "),e("Badge",{attrs:{text:"link expired",type:"warning"}})],1),a._v(" "),e("table",[e("thead",[e("tr",[e("th",[a._v("Platform")]),a._v(" "),e("th",[a._v("Installer(64 bit)")]),a._v(" "),e("th",[a._v("Portable(64 bit)")])])]),a._v(" "),e("tbody",[e("tr",[e("td",[a._v("Windows")]),a._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.9.0.191111/Kangaroo_0.9.0.191111_win64.exe",target:"_blank",rel:"noopener noreferrer"}},[a._v("Windows Installer"),e("OutboundLink")],1)]),a._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.9.0.191111/Kangaroo_0.9.0.191111_win64.7z",target:"_blank",rel:"noopener noreferrer"}},[a._v("Windows Portable"),e("OutboundLink")],1)])]),a._v(" "),e("tr",[e("td",[a._v("Linux")]),a._v(" "),e("td"),a._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.9.0.191111/Kangaroo_0.9.0.191111_ubuntu.zip",target:"_blank",rel:"noopener noreferrer"}},[a._v("Ubuntu Portable"),e("OutboundLink")],1)])]),a._v(" "),e("tr",[e("td",[a._v("MacOS")]),a._v(" "),e("td"),a._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.9.0.191111/Kangaroo_0.9.0.191111_macos.zip",target:"_blank",rel:"noopener noreferrer"}},[a._v("MacOS Portable"),e("OutboundLink")],1)])])])])])}),[],!1,null,null,null);t.default=o.exports}}]); \ No newline at end of file diff --git a/assets/js/8.882b76de.js b/assets/js/8.882b76de.js new file mode 100644 index 000000000..2df80d38c --- /dev/null +++ b/assets/js/8.882b76de.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[8],{509:function(e,t,a){},584:function(e,t,a){"use strict";a(509)},599:function(e,t,a){"use strict";a.r(t);a(59),a(47),a(5),a(149),a(150);var o={name:"CodeGroup",data:function(){return{codeTabs:[],activeCodeTabIndex:-1}},watch:{activeCodeTabIndex:function(e){this.activateCodeTab(e)}},mounted:function(){this.loadTabs()},methods:{changeCodeTab:function(e){this.activeCodeTabIndex=e},loadTabs:function(){var e=this;this.codeTabs=(this.$slots.default||[]).filter((function(e){return Boolean(e.componentOptions)})).map((function(t,a){return""===t.componentOptions.propsData.active&&(e.activeCodeTabIndex=a),{title:t.componentOptions.propsData.title,elm:t.elm}})),-1===this.activeCodeTabIndex&&this.codeTabs.length>0&&(this.activeCodeTabIndex=0),this.activateCodeTab(0)},activateCodeTab:function(e){this.codeTabs.forEach((function(e){e.elm&&e.elm.classList.remove("theme-code-block__active")})),this.codeTabs[e].elm&&this.codeTabs[e].elm.classList.add("theme-code-block__active")}}},n=(a(584),a(13)),c=Object(n.a)(o,(function(){var e=this,t=e.$createElement,a=e._self._c||t;return a("ClientOnly",[a("div",{staticClass:"theme-code-group"},[a("div",{staticClass:"theme-code-group__nav"},[a("ul",{staticClass:"theme-code-group__ul"},e._l(e.codeTabs,(function(t,o){return a("li",{key:t.title,staticClass:"theme-code-group__li"},[a("button",{staticClass:"theme-code-group__nav-tab",class:{"theme-code-group__nav-tab-active":o===e.activeCodeTabIndex},on:{click:function(t){return e.changeCodeTab(o)}}},[e._v("\n "+e._s(t.title)+"\n ")])])})),0)]),e._v(" "),e._t("default"),e._v(" "),e.codeTabs.length<1?a("pre",{staticClass:"pre-blank"},[e._v("// Make sure to add code blocks to your code group")]):e._e()],2)])}),[],!1,null,"deefee04",null);t.default=c.exports}}]); \ No newline at end of file diff --git a/assets/js/80.a515b3be.js b/assets/js/80.a515b3be.js new file mode 100644 index 000000000..02609d2cb --- /dev/null +++ b/assets/js/80.a515b3be.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[80],{663:function(t,a,r){"use strict";r.r(a);var e=r(13),o=Object(e.a)({},(function(){var t=this,a=t.$createElement,r=t._self._c||a;return r("ContentSlotsDistributor",{attrs:{"slot-key":t.$parent.slotKey}},[r("h1",{attrs:{id:"kangaroo-v0-9-1-dev"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#kangaroo-v0-9-1-dev"}},[t._v("#")]),t._v(" Kangaroo v0.9.1 (Dev)")]),t._v(" "),r("h2",{attrs:{id:"new-features-bug-fixes"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#new-features-bug-fixes"}},[t._v("#")]),t._v(" New features & bug-fixes")]),t._v(" "),r("ol",[r("li",[t._v("Export data to file(dsv(csv/tsv/...)/xml/json/sql/md/html) #18\n"),r("ul",[r("li",[t._v("Export data to DSV format(CSV/TSV/...)")]),t._v(" "),r("li",[t._v("Export data to JSON format")]),t._v(" "),r("li",[t._v("Export data to XML format")]),t._v(" "),r("li",[t._v("Export data to HTML format")]),t._v(" "),r("li",[t._v("Export data to SQL format(INSERT)")]),t._v(" "),r("li",[t._v("Export data to Markdown format")])])]),t._v(" "),r("li",[t._v("Improve file filter of save dialog")])]),t._v(" "),r("div",[r("script2",{attrs:{type:"text/javascript",async:"true",src:"https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"}}),t._v(" "),r("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),t._v(" "),r("script2",{attrs:{type:"text/javascript"}},[t._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),t._v(" "),r("h2",{attrs:{id:"installer-portable-packages"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#installer-portable-packages"}},[t._v("#")]),t._v(" Installer & Portable packages "),r("Badge",{attrs:{text:"link expired",type:"warning"}})],1),t._v(" "),r("table",[r("thead",[r("tr",[r("th",[t._v("Platform")]),t._v(" "),r("th",[t._v("Installer(64 bit)")]),t._v(" "),r("th",[t._v("Portable(64 bit)")])])]),t._v(" "),r("tbody",[r("tr",[r("td",[t._v("Windows")]),t._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.9.1.191118/Kangaroo_0.9.1.191118_win64.exe",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows Installer"),r("OutboundLink")],1)]),t._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.9.1.191118/Kangaroo_0.9.1.191118_win64.7z",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows Portable"),r("OutboundLink")],1)])]),t._v(" "),r("tr",[r("td",[t._v("Linux")]),t._v(" "),r("td"),t._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.9.1.191118/Kangaroo_0.9.1.191118_ubuntu.zip",target:"_blank",rel:"noopener noreferrer"}},[t._v("Ubuntu Portable"),r("OutboundLink")],1)])]),t._v(" "),r("tr",[r("td",[t._v("MacOS")]),t._v(" "),r("td"),t._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.9.1.191118/Kangaroo_0.9.1.191118_macos.zip",target:"_blank",rel:"noopener noreferrer"}},[t._v("MacOS Portable"),r("OutboundLink")],1)])])])])])}),[],!1,null,null,null);a.default=o.exports}}]); \ No newline at end of file diff --git a/assets/js/81.5a7959a0.js b/assets/js/81.5a7959a0.js new file mode 100644 index 000000000..bc8bbe8f9 --- /dev/null +++ b/assets/js/81.5a7959a0.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[81],{664:function(t,a,e){"use strict";e.r(a);var r=e(13),o=Object(r.a)({},(function(){var t=this,a=t.$createElement,e=t._self._c||a;return e("ContentSlotsDistributor",{attrs:{"slot-key":t.$parent.slotKey}},[e("h1",{attrs:{id:"kangaroo-v0-9-2-dev"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#kangaroo-v0-9-2-dev"}},[t._v("#")]),t._v(" Kangaroo v0.9.2 (Dev)")]),t._v(" "),e("h2",{attrs:{id:"new-features-bug-fixes"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#new-features-bug-fixes"}},[t._v("#")]),t._v(" New features & bug-fixes")]),t._v(" "),e("ol",[e("li",[t._v("Import data from file(dsv/xml/json) #19\n"),e("ul",[e("li",[t._v("implement the import UI(format, encoding and preview)")]),t._v(" "),e("li",[t._v("implement the import UI(DSV format option)")]),t._v(" "),e("li",[t._v("implement the import UI(data preview)")]),t._v(" "),e("li",[t._v("implement the import UI(column mapping)")]),t._v(" "),e("li",[t._v("implement the import UI(process progress)")]),t._v(" "),e("li",[t._v("implement DSV format parse and preview")])])])]),t._v(" "),e("div",[e("script2",{attrs:{type:"text/javascript",async:"true",src:"https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"}}),t._v(" "),e("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),t._v(" "),e("script2",{attrs:{type:"text/javascript"}},[t._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),t._v(" "),e("h2",{attrs:{id:"installer-portable-packages"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#installer-portable-packages"}},[t._v("#")]),t._v(" Installer & Portable packages "),e("Badge",{attrs:{text:"link expired",type:"warning"}})],1),t._v(" "),e("table",[e("thead",[e("tr",[e("th",[t._v("Platform")]),t._v(" "),e("th",[t._v("Installer(64 bit)")]),t._v(" "),e("th",[t._v("Portable(64 bit)")])])]),t._v(" "),e("tbody",[e("tr",[e("td",[t._v("Windows")]),t._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.9.2.191125/Kangaroo_0.9.2.191125_win64.exe",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows Installer"),e("OutboundLink")],1)]),t._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.9.2.191125/Kangaroo_0.9.2.191125_win64.7z",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows Portable"),e("OutboundLink")],1)])]),t._v(" "),e("tr",[e("td",[t._v("Linux")]),t._v(" "),e("td"),t._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.9.2.191125/Kangaroo_0.9.2.191125_ubuntu.zip",target:"_blank",rel:"noopener noreferrer"}},[t._v("Ubuntu Portable"),e("OutboundLink")],1)])]),t._v(" "),e("tr",[e("td",[t._v("MacOS")]),t._v(" "),e("td"),t._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.9.2.191125/Kangaroo_0.9.2.191125_macos.zip",target:"_blank",rel:"noopener noreferrer"}},[t._v("MacOS Portable"),e("OutboundLink")],1)])])])])])}),[],!1,null,null,null);a.default=o.exports}}]); \ No newline at end of file diff --git a/assets/js/82.e8fac2c1.js b/assets/js/82.e8fac2c1.js new file mode 100644 index 000000000..7d78ed64f --- /dev/null +++ b/assets/js/82.e8fac2c1.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[82],{666:function(t,a,e){"use strict";e.r(a);var r=e(13),o=Object(r.a)({},(function(){var t=this,a=t.$createElement,e=t._self._c||a;return e("ContentSlotsDistributor",{attrs:{"slot-key":t.$parent.slotKey}},[e("h1",{attrs:{id:"kangaroo-v0-9-2-dev"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#kangaroo-v0-9-2-dev"}},[t._v("#")]),t._v(" Kangaroo v0.9.2 (Dev)")]),t._v(" "),e("h2",{attrs:{id:"new-features-bug-fixes"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#new-features-bug-fixes"}},[t._v("#")]),t._v(" New features & bug-fixes")]),t._v(" "),e("ol",[e("li",[t._v("implement column mapping function")])]),t._v(" "),e("div",[e("script2",{attrs:{type:"text/javascript",async:"true",src:"https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"}}),t._v(" "),e("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),t._v(" "),e("script2",{attrs:{type:"text/javascript"}},[t._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),t._v(" "),e("h2",{attrs:{id:"installer-portable-packages"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#installer-portable-packages"}},[t._v("#")]),t._v(" Installer & Portable packages "),e("Badge",{attrs:{text:"link expired",type:"warning"}})],1),t._v(" "),e("table",[e("thead",[e("tr",[e("th",[t._v("Platform")]),t._v(" "),e("th",[t._v("Installer(64 bit)")]),t._v(" "),e("th",[t._v("Portable(64 bit)")])])]),t._v(" "),e("tbody",[e("tr",[e("td",[t._v("Windows")]),t._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.9.2.191202/Kangaroo_0.9.2.191202_win64.exe",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows Installer"),e("OutboundLink")],1)]),t._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.9.2.191202/Kangaroo_0.9.2.191202_win64.7z",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows Portable"),e("OutboundLink")],1)])]),t._v(" "),e("tr",[e("td",[t._v("Linux")]),t._v(" "),e("td"),t._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.9.2.191202/Kangaroo_0.9.2.191202_ubuntu.zip",target:"_blank",rel:"noopener noreferrer"}},[t._v("Ubuntu Portable"),e("OutboundLink")],1)])]),t._v(" "),e("tr",[e("td",[t._v("MacOS")]),t._v(" "),e("td"),t._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.9.2.191202/Kangaroo_0.9.2.191202_macos.zip",target:"_blank",rel:"noopener noreferrer"}},[t._v("MacOS Portable"),e("OutboundLink")],1)])])])])])}),[],!1,null,null,null);a.default=o.exports}}]); \ No newline at end of file diff --git a/assets/js/83.4459281d.js b/assets/js/83.4459281d.js new file mode 100644 index 000000000..4f8995cb8 --- /dev/null +++ b/assets/js/83.4459281d.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[83],{667:function(a,t,e){"use strict";e.r(t);var r=e(13),o=Object(r.a)({},(function(){var a=this,t=a.$createElement,e=a._self._c||t;return e("ContentSlotsDistributor",{attrs:{"slot-key":a.$parent.slotKey}},[e("h1",{attrs:{id:"kangaroo-v0-9-4-dev"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#kangaroo-v0-9-4-dev"}},[a._v("#")]),a._v(" Kangaroo v0.9.4 (Dev)")]),a._v(" "),e("h2",{attrs:{id:"new-features-bug-fixes"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#new-features-bug-fixes"}},[a._v("#")]),a._v(" New features & bug-fixes")]),a._v(" "),e("ol",[e("li",[a._v("add import summary page")]),a._v(" "),e("li",[a._v("add five kinds of import mode")]),a._v(" "),e("li",[a._v("import csv format data to table")]),a._v(" "),e("li",[a._v("fixed logo can't show on linux and macos platform")])]),a._v(" "),e("div",[e("script2",{attrs:{type:"text/javascript",async:"true",src:"https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"}}),a._v(" "),e("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),a._v(" "),e("script2",{attrs:{type:"text/javascript"}},[a._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),a._v(" "),e("h2",{attrs:{id:"installer-portable-packages"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#installer-portable-packages"}},[a._v("#")]),a._v(" Installer & Portable packages "),e("Badge",{attrs:{text:"link expired",type:"warning"}})],1),a._v(" "),e("table",[e("thead",[e("tr",[e("th",[a._v("Platform")]),a._v(" "),e("th",[a._v("Installer(64 bit)")]),a._v(" "),e("th",[a._v("Portable(64 bit)")])])]),a._v(" "),e("tbody",[e("tr",[e("td",[a._v("Windows")]),a._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.9.4.191209/Kangaroo_0.9.4.191209_win64.exe",target:"_blank",rel:"noopener noreferrer"}},[a._v("Windows Installer"),e("OutboundLink")],1)]),a._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.9.4.191209/Kangaroo_0.9.4.191209_win64.7z",target:"_blank",rel:"noopener noreferrer"}},[a._v("Windows Portable"),e("OutboundLink")],1)])]),a._v(" "),e("tr",[e("td",[a._v("Linux")]),a._v(" "),e("td"),a._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.9.4.191209/Kangaroo_0.9.4.191209_ubuntu.zip",target:"_blank",rel:"noopener noreferrer"}},[a._v("Ubuntu Portable"),e("OutboundLink")],1)])]),a._v(" "),e("tr",[e("td",[a._v("MacOS")]),a._v(" "),e("td"),a._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.9.4.191209/Kangaroo_0.9.4.191209_macos.zip",target:"_blank",rel:"noopener noreferrer"}},[a._v("MacOS Portable"),e("OutboundLink")],1)])])])])])}),[],!1,null,null,null);t.default=o.exports}}]); \ No newline at end of file diff --git a/assets/js/84.acef5f6e.js b/assets/js/84.acef5f6e.js new file mode 100644 index 000000000..9b7666ecf --- /dev/null +++ b/assets/js/84.acef5f6e.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[84],{668:function(t,a,e){"use strict";e.r(a);var r=e(13),o=Object(r.a)({},(function(){var t=this,a=t.$createElement,e=t._self._c||a;return e("ContentSlotsDistributor",{attrs:{"slot-key":t.$parent.slotKey}},[e("h1",{attrs:{id:"kangaroo-v0-9-5-dev"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#kangaroo-v0-9-5-dev"}},[t._v("#")]),t._v(" Kangaroo v0.9.5 (Dev)")]),t._v(" "),e("h2",{attrs:{id:"new-features-bug-fixes"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#new-features-bug-fixes"}},[t._v("#")]),t._v(" New features & bug-fixes")]),t._v(" "),e("ol",[e("li",[t._v("import data from DSV format")]),t._v(" "),e("li",[t._v("import data from JSON format")]),t._v(" "),e("li",[t._v("import data from XML format")]),t._v(" "),e("li",[t._v("Rewritten export data as XML format with libxml2;")]),t._v(" "),e("li",[t._v("add export modules assistant UI")]),t._v(" "),e("li",[t._v("implement export format and table selection page")])]),t._v(" "),e("div",[e("script2",{attrs:{type:"text/javascript",async:"true",src:"https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"}}),t._v(" "),e("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),t._v(" "),e("script2",{attrs:{type:"text/javascript"}},[t._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),t._v(" "),e("h2",{attrs:{id:"installer-portable-packages"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#installer-portable-packages"}},[t._v("#")]),t._v(" Installer & Portable packages "),e("Badge",{attrs:{text:"link expired",type:"warning"}})],1),t._v(" "),e("table",[e("thead",[e("tr",[e("th",[t._v("Install Packages")]),t._v(" "),e("th",[t._v("Windows (64 bit)")]),t._v(" "),e("th",[t._v("Linux (64 bit)")]),t._v(" "),e("th",[t._v("MacOS (64 bit)")])])]),t._v(" "),e("tbody",[e("tr",[e("td",[t._v("Installer (Github.com)")]),t._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.9.5.191216/Kangaroo_0.9.5.191216_win64.exe",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows Installer"),e("OutboundLink")],1)]),t._v(" "),e("td"),t._v(" "),e("td")]),t._v(" "),e("tr",[e("td",[t._v("Portable (Github.com)")]),t._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.9.5.191216/Kangaroo_0.9.5.191216_win64.7z",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows Portable"),e("OutboundLink")],1)]),t._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.9.5.191216/Kangaroo_0.9.5.191216_ubuntu.zip",target:"_blank",rel:"noopener noreferrer"}},[t._v("Ubuntu Portable"),e("OutboundLink")],1)]),t._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.9.5.191216/Kangaroo_0.9.5.191216_macos.zip",target:"_blank",rel:"noopener noreferrer"}},[t._v("MacOS Portable"),e("OutboundLink")],1)])]),t._v(" "),e("tr",[e("td",[t._v("Installer (Gitee.com)")]),t._v(" "),e("td",[e("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/312739/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows Installer"),e("OutboundLink")],1)]),t._v(" "),e("td"),t._v(" "),e("td")]),t._v(" "),e("tr",[e("td",[t._v("Portable (Gitee.com)")]),t._v(" "),e("td",[e("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/312740/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows Portable"),e("OutboundLink")],1)]),t._v(" "),e("td",[e("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/312737/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("Ubuntu Portable"),e("OutboundLink")],1)]),t._v(" "),e("td",[e("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/312736/download",target:"_blank",rel:"noopener noreferrer"}},[t._v("MacOS Portable"),e("OutboundLink")],1)])])])])])}),[],!1,null,null,null);a.default=o.exports}}]); \ No newline at end of file diff --git a/assets/js/85.c5546251.js b/assets/js/85.c5546251.js new file mode 100644 index 000000000..de7358eaa --- /dev/null +++ b/assets/js/85.c5546251.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[85],{669:function(a,t,e){"use strict";e.r(t);var r=e(13),o=Object(r.a)({},(function(){var a=this,t=a.$createElement,e=a._self._c||t;return e("ContentSlotsDistributor",{attrs:{"slot-key":a.$parent.slotKey}},[e("h1",{attrs:{id:"kangaroo-v0-99-1-beta"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#kangaroo-v0-99-1-beta"}},[a._v("#")]),a._v(" Kangaroo v0.99.1 (Beta)")]),a._v(" "),e("h2",{attrs:{id:"new-features-bug-fixes"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#new-features-bug-fixes"}},[a._v("#")]),a._v(" New features & bug-fixes")]),a._v(" "),e("ol",[e("li",[a._v("Improve designer to notify user save change")]),a._v(" "),e("li",[a._v("Improve message dialog to show title")]),a._v(" "),e("li",[a._v("Improve preview tab to show change only")]),a._v(" "),e("li",[a._v("Update SQLite/MySQL/PostgreSQL meta model")]),a._v(" "),e("li",[a._v("Improve windows installer to add license and language support")]),a._v(" "),e("li",[a._v("Make kangaroo portable #59")])]),a._v(" "),e("div",[e("script2",{attrs:{type:"text/javascript",async:"true",src:"https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"}}),a._v(" "),e("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),a._v(" "),e("script2",{attrs:{type:"text/javascript"}},[a._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),a._v(" "),e("h2",{attrs:{id:"installer-portable-packages"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#installer-portable-packages"}},[a._v("#")]),a._v(" Installer & Portable packages "),e("Badge",{attrs:{text:"link expired",type:"warning"}})],1),a._v(" "),e("p",[a._v("It is a very good idea to use sha256sum and GnuPG command to verify the sums and signature of your packages that download from the internet, make sure they are 100% correct.")]),a._v(" "),e("table",[e("thead",[e("tr",[e("th",[a._v("Packages")]),a._v(" "),e("th",[a._v("Windows(64 bit)")]),a._v(" "),e("th",[a._v("Linux(64 bit)")]),a._v(" "),e("th",[a._v("MacOS(64 bit)")])])]),a._v(" "),e("tbody",[e("tr",[e("td",[a._v("Installer"),e("br"),a._v("(Github.com)")]),a._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.99.1.200824/kangaroo-0.99.1.200824-AMD64.exe",target:"_blank",rel:"noopener noreferrer"}},[a._v("Windows"),e("OutboundLink")],1)]),a._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.99.1.200824/kangaroo-0.99.1.200824-1-x86_64.pkg.tar.xz",target:"_blank",rel:"noopener noreferrer"}},[a._v("Arch"),e("OutboundLink")],1)]),a._v(" "),e("td",[a._v("MacOS")])]),a._v(" "),e("tr",[e("td",[a._v("Portable"),e("br"),a._v("(Github.com)")]),a._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.99.1.200824/kangaroo-0.99.1.200824-AMD64.7z",target:"_blank",rel:"noopener noreferrer"}},[a._v("Windows"),e("OutboundLink")],1)]),a._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.99.1.200824/kangaroo-0.99.1.200824-arch.tar.gz",target:"_blank",rel:"noopener noreferrer"}},[a._v("Arch"),e("OutboundLink")],1),a._v(" "),e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.99.1.200824/kangaroo-0.99.1.200824-ubuntu.tar.gz",target:"_blank",rel:"noopener noreferrer"}},[a._v("Ubuntu"),e("OutboundLink")],1)]),a._v(" "),e("td",[a._v("MacOS")])]),a._v(" "),e("tr",[e("td",[a._v("SHA256SUM"),e("br"),a._v("(Github.com)")]),a._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.99.1.200824/kangaroo-0.99.1.200824.sha256sum",target:"_blank",rel:"noopener noreferrer"}},[a._v("SHA256SUM"),e("OutboundLink")],1)]),a._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.99.1.200824/kangaroo-0.99.1.200824.sha256sum.asc",target:"_blank",rel:"noopener noreferrer"}},[a._v("SHA256SUM.GPG"),e("OutboundLink")],1)]),a._v(" "),e("td")]),a._v(" "),e("tr",[e("td",[a._v("Installer"),e("br"),a._v("(Gitee.com)")]),a._v(" "),e("td",[e("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/460605/download",target:"_blank",rel:"noopener noreferrer"}},[a._v("Windows"),e("OutboundLink")],1)]),a._v(" "),e("td",[e("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/460602/download",target:"_blank",rel:"noopener noreferrer"}},[a._v("Arch"),e("OutboundLink")],1)]),a._v(" "),e("td",[a._v("MacOS")])]),a._v(" "),e("tr",[e("td",[a._v("Portable"),e("br"),a._v("(Gitee.com)")]),a._v(" "),e("td",[e("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/460612/download",target:"_blank",rel:"noopener noreferrer"}},[a._v("Windows"),e("OutboundLink")],1)]),a._v(" "),e("td",[e("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/460598/download",target:"_blank",rel:"noopener noreferrer"}},[a._v("Arch"),e("OutboundLink")],1),a._v(" "),e("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/460599/download",target:"_blank",rel:"noopener noreferrer"}},[a._v("Ubuntu"),e("OutboundLink")],1)]),a._v(" "),e("td",[a._v("MacOS")])]),a._v(" "),e("tr",[e("td",[a._v("SHA256SUM"),e("br"),a._v("(Gitee.com)")]),a._v(" "),e("td",[e("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/460600/download",target:"_blank",rel:"noopener noreferrer"}},[a._v("SHA256SUM"),e("OutboundLink")],1)]),a._v(" "),e("td",[e("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/460601/download",target:"_blank",rel:"noopener noreferrer"}},[a._v("SHA256SUM.GPG"),e("OutboundLink")],1)]),a._v(" "),e("td")])])])])}),[],!1,null,null,null);t.default=o.exports}}]); \ No newline at end of file diff --git a/assets/js/86.853a2ecc.js b/assets/js/86.853a2ecc.js new file mode 100644 index 000000000..75f762634 --- /dev/null +++ b/assets/js/86.853a2ecc.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[86],{673:function(a,r,t){"use strict";t.r(r);var e=t(13),o=Object(e.a)({},(function(){var a=this,r=a.$createElement,t=a._self._c||r;return t("ContentSlotsDistributor",{attrs:{"slot-key":a.$parent.slotKey}},[t("h1",{attrs:{id:"kangaroo-v0-99-2-beta"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#kangaroo-v0-99-2-beta"}},[a._v("#")]),a._v(" Kangaroo v0.99.2 (Beta)")]),a._v(" "),t("h2",{attrs:{id:"new-features-bug-fixes"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#new-features-bug-fixes"}},[a._v("#")]),a._v(" New features & bug-fixes")]),a._v(" "),t("ol",[t("li",[a._v("Improve Mac OS X installer and portable packages")]),a._v(" "),t("li",[a._v("Improve tools page locale support")]),a._v(" "),t("li",[a._v("Update Chinese(zh-CN/zh-TW/zh-HK/zh-SG)")]),a._v(" "),t("li",[a._v("Fixed: 提示 MySQL server has done away 后,没有自动\\手动重连 #63")]),a._v(" "),t("li",[a._v("Fixed: plugin caching sha2 password could not be loaded #64")]),a._v(" "),t("li",[a._v("Fixed: console warning message")])]),a._v(" "),t("div",[t("script2",{attrs:{type:"text/javascript",async:"true",src:"https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"}}),a._v(" "),t("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),a._v(" "),t("script2",{attrs:{type:"text/javascript"}},[a._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),a._v(" "),t("h2",{attrs:{id:"installer-portable-packages"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#installer-portable-packages"}},[a._v("#")]),a._v(" Installer & Portable packages "),t("Badge",{attrs:{text:"link expired",type:"warning"}})],1),a._v(" "),t("p",[a._v("It is a very good idea to use sha256sum and GnuPG command to verify the sums and signature of your packages that download from the internet, make sure they are 100% correct.")]),a._v(" "),t("table",[t("thead",[t("tr",[t("th",[a._v("Packages")]),a._v(" "),t("th",[a._v("Windows(64 bit)")]),a._v(" "),t("th",[a._v("Linux(64 bit)")]),a._v(" "),t("th",[a._v("MacOS(64 bit)")])])]),a._v(" "),t("tbody",[t("tr",[t("td",[a._v("Installer"),t("br"),a._v("(Github.com)")]),a._v(" "),t("td",[t("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.99.2.200907/kangaroo-0.99.2.200907-AMD64.exe",target:"_blank",rel:"noopener noreferrer"}},[a._v("Windows"),t("OutboundLink")],1)]),a._v(" "),t("td",[t("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.99.2.200907/kangaroo-0.99.2.200907-1-x86_64.pkg.tar.xz",target:"_blank",rel:"noopener noreferrer"}},[a._v("Arch"),t("OutboundLink")],1)]),a._v(" "),t("td",[t("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.99.2.200907/kangaroo-0.99.2.200907-macos.dmg",target:"_blank",rel:"noopener noreferrer"}},[a._v("MacOS"),t("OutboundLink")],1)])]),a._v(" "),t("tr",[t("td",[a._v("Portable"),t("br"),a._v("(Github.com)")]),a._v(" "),t("td",[t("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.99.2.200907/kangaroo-0.99.2.200907-AMD64.7z",target:"_blank",rel:"noopener noreferrer"}},[a._v("Windows"),t("OutboundLink")],1)]),a._v(" "),t("td",[t("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.99.2.200907/kangaroo-0.99.2.200907-arch.tar.gz",target:"_blank",rel:"noopener noreferrer"}},[a._v("Arch"),t("OutboundLink")],1),a._v(" "),t("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.99.2.200907/kangaroo-0.99.2.200907-ubuntu.tar.gz",target:"_blank",rel:"noopener noreferrer"}},[a._v("Ubuntu"),t("OutboundLink")],1)]),a._v(" "),t("td",[t("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.99.2.200907/kangaroo-0.99.2.200907-macos.tar.gz",target:"_blank",rel:"noopener noreferrer"}},[a._v("MacOS"),t("OutboundLink")],1)])]),a._v(" "),t("tr",[t("td",[a._v("SHA256SUM"),t("br"),a._v("(Github.com)")]),a._v(" "),t("td",[t("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.99.2.200907/kangaroo-0.99.2.200907.sha256sum",target:"_blank",rel:"noopener noreferrer"}},[a._v("SHA256SUM"),t("OutboundLink")],1)]),a._v(" "),t("td",[t("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.99.2.200907/kangaroo-0.99.2.200907.sha256sum.asc",target:"_blank",rel:"noopener noreferrer"}},[a._v("SHA256SUM.GPG"),t("OutboundLink")],1)]),a._v(" "),t("td")]),a._v(" "),t("tr",[t("td",[a._v("-----------------")]),a._v(" "),t("td",[a._v("-----------------")]),a._v(" "),t("td",[a._v("-----------------")]),a._v(" "),t("td",[a._v("-----------------")])]),a._v(" "),t("tr",[t("td",[a._v("Installer"),t("br"),a._v("(Injdk.cn)")]),a._v(" "),t("td",[t("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo//v0.99.2.200907/kangaroo-0.99.2.200907-AMD64.exe",target:"_blank",rel:"noopener noreferrer"}},[a._v("Windows"),t("OutboundLink")],1)]),a._v(" "),t("td",[t("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo//v0.99.2.200907/kangaroo-0.99.2.200907-1-x86_64.pkg.tar.xz",target:"_blank",rel:"noopener noreferrer"}},[a._v("Arch"),t("OutboundLink")],1)]),a._v(" "),t("td",[t("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo//v0.99.2.200907/kangaroo-0.99.2.200907-macos.dmg",target:"_blank",rel:"noopener noreferrer"}},[a._v("MacOS"),t("OutboundLink")],1)])]),a._v(" "),t("tr",[t("td",[a._v("Portable"),t("br"),a._v("(Injdk.cn)")]),a._v(" "),t("td",[t("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo//v0.99.2.200907/kangaroo-0.99.2.200907-AMD64.7z",target:"_blank",rel:"noopener noreferrer"}},[a._v("Windows"),t("OutboundLink")],1)]),a._v(" "),t("td",[t("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo//v0.99.2.200907/kangaroo-0.99.2.200907-arch.tar.gz",target:"_blank",rel:"noopener noreferrer"}},[a._v("Arch"),t("OutboundLink")],1),a._v(" "),t("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo//v0.99.2.200907/kangaroo-0.99.2.200907-ubuntu.tar.gz",target:"_blank",rel:"noopener noreferrer"}},[a._v("Ubuntu"),t("OutboundLink")],1)]),a._v(" "),t("td",[t("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo//v0.99.2.200907/kangaroo-0.99.2.200907-macos.tar.gz",target:"_blank",rel:"noopener noreferrer"}},[a._v("MacOS"),t("OutboundLink")],1)])]),a._v(" "),t("tr",[t("td",[a._v("SHA256SUM"),t("br"),a._v("(Injdk.cn)")]),a._v(" "),t("td",[t("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo//v0.99.2.200907/kangaroo-0.99.2.200907.sha256sum",target:"_blank",rel:"noopener noreferrer"}},[a._v("SHA256SUM"),t("OutboundLink")],1)]),a._v(" "),t("td",[t("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo//v0.99.2.200907/kangaroo-0.99.2.200907.sha256sum.asc",target:"_blank",rel:"noopener noreferrer"}},[a._v("SHA256SUM.GPG"),t("OutboundLink")],1)]),a._v(" "),t("td")]),a._v(" "),t("tr",[t("td",[a._v("-----------------")]),a._v(" "),t("td",[a._v("-----------------")]),a._v(" "),t("td",[a._v("-----------------")]),a._v(" "),t("td",[a._v("-----------------")])]),a._v(" "),t("tr",[t("td",[a._v("Installer"),t("br"),a._v("(Gitee.com)")]),a._v(" "),t("td",[t("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/471659/download",target:"_blank",rel:"noopener noreferrer"}},[a._v("Windows"),t("OutboundLink")],1)]),a._v(" "),t("td",[t("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/471654/download",target:"_blank",rel:"noopener noreferrer"}},[a._v("Arch"),t("OutboundLink")],1)]),a._v(" "),t("td",[t("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/471664/download",target:"_blank",rel:"noopener noreferrer"}},[a._v("MacOS"),t("OutboundLink")],1)])]),a._v(" "),t("tr",[t("td",[a._v("Portable"),t("br"),a._v("(Gitee.com)")]),a._v(" "),t("td",[t("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/471663/download",target:"_blank",rel:"noopener noreferrer"}},[a._v("Windows"),t("OutboundLink")],1)]),a._v(" "),t("td",[t("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/471651/download",target:"_blank",rel:"noopener noreferrer"}},[a._v("Arch"),t("OutboundLink")],1),a._v(" "),t("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/471652/download",target:"_blank",rel:"noopener noreferrer"}},[a._v("Ubuntu"),t("OutboundLink")],1)]),a._v(" "),t("td",[t("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/471666/download",target:"_blank",rel:"noopener noreferrer"}},[a._v("MacOS"),t("OutboundLink")],1)])]),a._v(" "),t("tr",[t("td",[a._v("SHA256SUM"),t("br"),a._v("(Gitee.com)")]),a._v(" "),t("td",[t("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/471660/download",target:"_blank",rel:"noopener noreferrer"}},[a._v("SHA256SUM"),t("OutboundLink")],1)]),a._v(" "),t("td",[t("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/471662/download",target:"_blank",rel:"noopener noreferrer"}},[a._v("SHA256SUM.GPG"),t("OutboundLink")],1)]),a._v(" "),t("td")])])]),a._v(" "),t("h2",{attrs:{id:"share-with-friends"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#share-with-friends"}},[a._v("#")]),a._v(" Share with friends")]),a._v(" "),t("social-share",{attrs:{networks:["facebook","twitter","whatsapp","telegram","linkedin","reddit","line","skype","pinterest"]}})],1)}),[],!1,null,null,null);r.default=o.exports}}]); \ No newline at end of file diff --git a/assets/js/87.91876fb0.js b/assets/js/87.91876fb0.js new file mode 100644 index 000000000..3aed6f78b --- /dev/null +++ b/assets/js/87.91876fb0.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[87],{670:function(a,t,r){"use strict";r.r(t);var e=r(13),o=Object(e.a)({},(function(){var a=this,t=a.$createElement,r=a._self._c||t;return r("ContentSlotsDistributor",{attrs:{"slot-key":a.$parent.slotKey}},[r("h1",{attrs:{id:"kangaroo-v0-99-3-beta"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#kangaroo-v0-99-3-beta"}},[a._v("#")]),a._v(" Kangaroo v0.99.3 (Beta)")]),a._v(" "),r("h2",{attrs:{id:"new-features-bug-fixes"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#new-features-bug-fixes"}},[a._v("#")]),a._v(" New features & bug-fixes")]),a._v(" "),r("ol",[r("li",[a._v("Refactor container and service module")]),a._v(" "),r("li",[a._v("Improve the performance of content and query view")]),a._v(" "),r("li",[a._v("Update datagrid toolbar icon")]),a._v(" "),r("li",[a._v("Fixed: can't open mariadb database")])]),a._v(" "),r("div",[r("script2",{attrs:{type:"text/javascript",async:"true",src:"https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"}}),a._v(" "),r("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),a._v(" "),r("script2",{attrs:{type:"text/javascript"}},[a._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),a._v(" "),r("h2",{attrs:{id:"installer-portable-packages"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#installer-portable-packages"}},[a._v("#")]),a._v(" Installer & Portable packages "),r("Badge",{attrs:{text:"link expired",type:"warning"}})],1),a._v(" "),r("p",[a._v("It is a very good idea to use sha256sum and GnuPG command to verify the sums and signature of your packages that download from the internet, make sure they are 100% correct.")]),a._v(" "),r("table",[r("thead",[r("tr",[r("th",[a._v("Packages")]),a._v(" "),r("th",[a._v("Windows(64 bit)")]),a._v(" "),r("th",[a._v("Linux(64 bit)")]),a._v(" "),r("th",[a._v("MacOS(64 bit)")])])]),a._v(" "),r("tbody",[r("tr",[r("td",[a._v("Installer"),r("br"),a._v("(Github.com)")]),a._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.99.3.200921/kangaroo-0.99.3.200921-AMD64.exe",target:"_blank",rel:"noopener noreferrer"}},[a._v("Windows"),r("OutboundLink")],1)]),a._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.99.3.200921/kangaroo-0.99.3.200921-1-x86_64.pkg.tar.xz",target:"_blank",rel:"noopener noreferrer"}},[a._v("Arch"),r("OutboundLink")],1)]),a._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.99.3.200921/kangaroo-0.99.3.200921-macos.dmg",target:"_blank",rel:"noopener noreferrer"}},[a._v("MacOS"),r("OutboundLink")],1)])]),a._v(" "),r("tr",[r("td",[a._v("Portable"),r("br"),a._v("(Github.com)")]),a._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.99.3.200921/kangaroo-0.99.3.200921-AMD64.7z",target:"_blank",rel:"noopener noreferrer"}},[a._v("Windows"),r("OutboundLink")],1)]),a._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.99.3.200921/kangaroo-0.99.3.200921-arch.tar.gz",target:"_blank",rel:"noopener noreferrer"}},[a._v("Arch"),r("OutboundLink")],1),a._v(" "),r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.99.3.200921/kangaroo-0.99.3.200921-ubuntu.tar.gz",target:"_blank",rel:"noopener noreferrer"}},[a._v("Ubuntu"),r("OutboundLink")],1)]),a._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.99.3.200921/kangaroo-0.99.3.200921-macos.tar.gz",target:"_blank",rel:"noopener noreferrer"}},[a._v("MacOS"),r("OutboundLink")],1)])]),a._v(" "),r("tr",[r("td",[a._v("SHA256SUM"),r("br"),a._v("(Github.com)")]),a._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.99.3.200921/kangaroo-0.99.3.200921.sha256sum",target:"_blank",rel:"noopener noreferrer"}},[a._v("SHA256SUM"),r("OutboundLink")],1)]),a._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v0.99.3.200921/kangaroo-0.99.3.200921.sha256sum.asc",target:"_blank",rel:"noopener noreferrer"}},[a._v("SHA256SUM.GPG"),r("OutboundLink")],1)]),a._v(" "),r("td")]),a._v(" "),r("tr",[r("td",[a._v("-----------------")]),a._v(" "),r("td",[a._v("-----------------")]),a._v(" "),r("td",[a._v("-----------------")]),a._v(" "),r("td",[a._v("-----------------")])]),a._v(" "),r("tr",[r("td",[a._v("Installer"),r("br"),a._v("(Injdk.cn)")]),a._v(" "),r("td",[r("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo//v0.99.3.200921/kangaroo-0.99.3.200921-AMD64.exe",target:"_blank",rel:"noopener noreferrer"}},[a._v("Windows"),r("OutboundLink")],1)]),a._v(" "),r("td",[r("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo//v0.99.3.200921/kangaroo-0.99.3.200921-1-x86_64.pkg.tar.xz",target:"_blank",rel:"noopener noreferrer"}},[a._v("Arch"),r("OutboundLink")],1)]),a._v(" "),r("td",[r("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo//v0.99.3.200921/kangaroo-0.99.3.200921-macos.dmg",target:"_blank",rel:"noopener noreferrer"}},[a._v("MacOS"),r("OutboundLink")],1)])]),a._v(" "),r("tr",[r("td",[a._v("Portable"),r("br"),a._v("(Injdk.cn)")]),a._v(" "),r("td",[r("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo//v0.99.3.200921/kangaroo-0.99.3.200921-AMD64.7z",target:"_blank",rel:"noopener noreferrer"}},[a._v("Windows"),r("OutboundLink")],1)]),a._v(" "),r("td",[r("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo//v0.99.3.200921/kangaroo-0.99.3.200921-arch.tar.gz",target:"_blank",rel:"noopener noreferrer"}},[a._v("Arch"),r("OutboundLink")],1),a._v(" "),r("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo//v0.99.3.200921/kangaroo-0.99.3.200921-ubuntu.tar.gz",target:"_blank",rel:"noopener noreferrer"}},[a._v("Ubuntu"),r("OutboundLink")],1)]),a._v(" "),r("td",[r("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo//v0.99.3.200921/kangaroo-0.99.3.200921-macos.tar.gz",target:"_blank",rel:"noopener noreferrer"}},[a._v("MacOS"),r("OutboundLink")],1)])]),a._v(" "),r("tr",[r("td",[a._v("SHA256SUM"),r("br"),a._v("(Injdk.cn)")]),a._v(" "),r("td",[r("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo//v0.99.3.200921/kangaroo-0.99.3.200921.sha256sum",target:"_blank",rel:"noopener noreferrer"}},[a._v("SHA256SUM"),r("OutboundLink")],1)]),a._v(" "),r("td",[r("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo//v0.99.3.200921/kangaroo-0.99.3.200921.sha256sum.asc",target:"_blank",rel:"noopener noreferrer"}},[a._v("SHA256SUM.GPG"),r("OutboundLink")],1)]),a._v(" "),r("td")]),a._v(" "),r("tr",[r("td",[a._v("-----------------")]),a._v(" "),r("td",[a._v("-----------------")]),a._v(" "),r("td",[a._v("-----------------")]),a._v(" "),r("td",[a._v("-----------------")])]),a._v(" "),r("tr",[r("td",[a._v("Installer"),r("br"),a._v("(Gitee.com)")]),a._v(" "),r("td",[r("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/481984/download",target:"_blank",rel:"noopener noreferrer"}},[a._v("Windows"),r("OutboundLink")],1)]),a._v(" "),r("td",[r("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/481732/download",target:"_blank",rel:"noopener noreferrer"}},[a._v("Arch"),r("OutboundLink")],1)]),a._v(" "),r("td",[r("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/481728/download",target:"_blank",rel:"noopener noreferrer"}},[a._v("MacOS"),r("OutboundLink")],1)])]),a._v(" "),r("tr",[r("td",[a._v("Portable"),r("br"),a._v("(Gitee.com)")]),a._v(" "),r("td",[r("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/481980/download",target:"_blank",rel:"noopener noreferrer"}},[a._v("Windows"),r("OutboundLink")],1)]),a._v(" "),r("td",[r("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/481731/download",target:"_blank",rel:"noopener noreferrer"}},[a._v("Arch"),r("OutboundLink")],1),a._v(" "),r("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/481730/download",target:"_blank",rel:"noopener noreferrer"}},[a._v("Ubuntu"),r("OutboundLink")],1)]),a._v(" "),r("td",[r("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/481727/download",target:"_blank",rel:"noopener noreferrer"}},[a._v("MacOS"),r("OutboundLink")],1)])]),a._v(" "),r("tr",[r("td",[a._v("SHA256SUM"),r("br"),a._v("(Gitee.com)")]),a._v(" "),r("td",[r("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/481916/download",target:"_blank",rel:"noopener noreferrer"}},[a._v("SHA256SUM"),r("OutboundLink")],1)]),a._v(" "),r("td",[r("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/attach_files/481917/download",target:"_blank",rel:"noopener noreferrer"}},[a._v("SHA256SUM.GPG"),r("OutboundLink")],1)]),a._v(" "),r("td")])])]),a._v(" "),r("h2",{attrs:{id:"share-with-friends"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#share-with-friends"}},[a._v("#")]),a._v(" Share with friends")]),a._v(" "),r("social-share",{attrs:{networks:["facebook","twitter","whatsapp","telegram","linkedin","reddit","line","skype","pinterest"]}})],1)}),[],!1,null,null,null);t.default=o.exports}}]); \ No newline at end of file diff --git a/assets/js/88.bc78b6c5.js b/assets/js/88.bc78b6c5.js new file mode 100644 index 000000000..e4d3c71ae --- /dev/null +++ b/assets/js/88.bc78b6c5.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[88],{671:function(a,t,r){"use strict";r.r(t);var e=r(13),o=Object(e.a)({},(function(){var a=this,t=a.$createElement,r=a._self._c||t;return r("ContentSlotsDistributor",{attrs:{"slot-key":a.$parent.slotKey}},[r("h1",{attrs:{id:"kangaroo-v1-0-5-beta"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#kangaroo-v1-0-5-beta"}},[a._v("#")]),a._v(" Kangaroo v1.0.5 (Beta)")]),a._v(" "),r("h2",{attrs:{id:"new-features-bug-fixes"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#new-features-bug-fixes"}},[a._v("#")]),a._v(" New features & bug-fixes")]),a._v(" "),r("ol",[r("li",[a._v("Implement context menu for cell value")]),a._v(" "),r("li",[a._v("Improve database null value support")]),a._v(" "),r("li",[a._v("Improve text view for cell value, support to detect charset and convert to UTF-8")]),a._v(" "),r("li",[a._v("Improve the China mainland user accessibility: show changelog")]),a._v(" "),r("li",[a._v("Improve mysql connection stability")]),a._v(" "),r("li",[a._v("Fixed: fail to change cell value viewer")]),a._v(" "),r("li",[a._v("Fixed: copy short and full name invalid")])]),a._v(" "),r("div",[r("script2",{attrs:{type:"text/javascript",async:"true",src:"https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"}}),a._v(" "),r("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),a._v(" "),r("script2",{attrs:{type:"text/javascript"}},[a._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),a._v(" "),r("h2",{attrs:{id:"installer-portable-packages"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#installer-portable-packages"}},[a._v("#")]),a._v(" Installer & Portable packages "),r("Badge",{attrs:{text:"link expired",type:"warning"}})],1),a._v(" "),r("p",[a._v("It is a very good idea to use sha256sum and GnuPG command to verify the sums and signature of your packages that download from the internet, make sure they are 100% correct.")]),a._v(" "),r("table",[r("thead",[r("tr",[r("th",[a._v("Packages")]),a._v(" "),r("th",[a._v("Windows(64 bit)")]),a._v(" "),r("th",[a._v("Linux(64 bit)")]),a._v(" "),r("th",[a._v("MacOS(64 bit)")])])]),a._v(" "),r("tbody",[r("tr",[r("td",[a._v("Installer"),r("br"),a._v("(Github.com)")]),a._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.0.5.201019/kangaroo-1.0.5.201019-AMD64.exe",target:"_blank",rel:"noopener noreferrer"}},[a._v("Windows"),r("OutboundLink")],1)]),a._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.0.5.201019/kangaroo-1.0.5.201019-1-x86_64.pkg.tar.xz",target:"_blank",rel:"noopener noreferrer"}},[a._v("Arch"),r("OutboundLink")],1)]),a._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.0.5.201019/kangaroo-1.0.5.201019-macos.dmg",target:"_blank",rel:"noopener noreferrer"}},[a._v("MacOS"),r("OutboundLink")],1)])]),a._v(" "),r("tr",[r("td",[a._v("Portable"),r("br"),a._v("(Github.com)")]),a._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.0.5.201019/kangaroo-1.0.5.201019-AMD64.7z",target:"_blank",rel:"noopener noreferrer"}},[a._v("Windows"),r("OutboundLink")],1)]),a._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.0.5.201019/kangaroo-1.0.5.201019-arch.tar.gz",target:"_blank",rel:"noopener noreferrer"}},[a._v("Arch"),r("OutboundLink")],1),a._v(" "),r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.0.5.201019/kangaroo-1.0.5.201019-ubuntu.tar.gz",target:"_blank",rel:"noopener noreferrer"}},[a._v("Ubuntu"),r("OutboundLink")],1)]),a._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.0.5.201019/kangaroo-1.0.5.201019-macos.tar.gz",target:"_blank",rel:"noopener noreferrer"}},[a._v("MacOS"),r("OutboundLink")],1)])]),a._v(" "),r("tr",[r("td",[a._v("SHA256SUM"),r("br"),a._v("(Github.com)")]),a._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.0.5.201019/kangaroo-1.0.5.201019.sha256sum",target:"_blank",rel:"noopener noreferrer"}},[a._v("SHA256SUM"),r("OutboundLink")],1)]),a._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.0.5.201019/kangaroo-1.0.5.201019.sha256sum.asc",target:"_blank",rel:"noopener noreferrer"}},[a._v("SHA256SUM.GPG"),r("OutboundLink")],1)]),a._v(" "),r("td")]),a._v(" "),r("tr",[r("td",[a._v("-----------------")]),a._v(" "),r("td",[a._v("-----------------")]),a._v(" "),r("td",[a._v("-----------------")]),a._v(" "),r("td",[a._v("-----------------")])]),a._v(" "),r("tr",[r("td",[a._v("Installer"),r("br"),a._v("(Injdk.cn)")]),a._v(" "),r("td",[r("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.0.5.201019/kangaroo-1.0.5.201019-AMD64.exe",target:"_blank",rel:"noopener noreferrer"}},[a._v("Windows"),r("OutboundLink")],1)]),a._v(" "),r("td",[r("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.0.5.201019/kangaroo-1.0.5.201019-1-x86_64.pkg.tar.xz",target:"_blank",rel:"noopener noreferrer"}},[a._v("Arch"),r("OutboundLink")],1)]),a._v(" "),r("td",[r("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.0.5.201019/kangaroo-1.0.5.201019-macos.dmg",target:"_blank",rel:"noopener noreferrer"}},[a._v("MacOS"),r("OutboundLink")],1)])]),a._v(" "),r("tr",[r("td",[a._v("Portable"),r("br"),a._v("(Injdk.cn)")]),a._v(" "),r("td",[r("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.0.5.201019/kangaroo-1.0.5.201019-AMD64.7z",target:"_blank",rel:"noopener noreferrer"}},[a._v("Windows"),r("OutboundLink")],1)]),a._v(" "),r("td",[r("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.0.5.201019/kangaroo-1.0.5.201019-arch.tar.gz",target:"_blank",rel:"noopener noreferrer"}},[a._v("Arch"),r("OutboundLink")],1),a._v(" "),r("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.0.5.201019/kangaroo-1.0.5.201019-ubuntu.tar.gz",target:"_blank",rel:"noopener noreferrer"}},[a._v("Ubuntu"),r("OutboundLink")],1)]),a._v(" "),r("td",[r("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.0.5.201019/kangaroo-1.0.5.201019-macos.tar.gz",target:"_blank",rel:"noopener noreferrer"}},[a._v("MacOS"),r("OutboundLink")],1)])]),a._v(" "),r("tr",[r("td",[a._v("SHA256SUM"),r("br"),a._v("(Injdk.cn)")]),a._v(" "),r("td",[r("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.0.5.201019/kangaroo-1.0.5.201019.sha256sum",target:"_blank",rel:"noopener noreferrer"}},[a._v("SHA256SUM"),r("OutboundLink")],1)]),a._v(" "),r("td",[r("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.0.5.201019/kangaroo-1.0.5.201019.sha256sum.asc",target:"_blank",rel:"noopener noreferrer"}},[a._v("SHA256SUM.GPG"),r("OutboundLink")],1)]),a._v(" "),r("td")])])]),a._v(" "),r("h2",{attrs:{id:"share-with-friends"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#share-with-friends"}},[a._v("#")]),a._v(" Share with friends")]),a._v(" "),r("social-share",{attrs:{networks:["facebook","twitter","whatsapp","telegram","linkedin","reddit","line","skype","pinterest"]}})],1)}),[],!1,null,null,null);t.default=o.exports}}]); \ No newline at end of file diff --git a/assets/js/89.35f48325.js b/assets/js/89.35f48325.js new file mode 100644 index 000000000..69e2aeb9c --- /dev/null +++ b/assets/js/89.35f48325.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[89],{672:function(a,r,t){"use strict";t.r(r);var e=t(13),o=Object(e.a)({},(function(){var a=this,r=a.$createElement,t=a._self._c||r;return t("ContentSlotsDistributor",{attrs:{"slot-key":a.$parent.slotKey}},[t("h1",{attrs:{id:"kangaroo-v1-0-6-beta"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#kangaroo-v1-0-6-beta"}},[a._v("#")]),a._v(" Kangaroo v1.0.6 (Beta)")]),a._v(" "),t("h2",{attrs:{id:"new-features-bug-fixes"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#new-features-bug-fixes"}},[a._v("#")]),a._v(" New features & bug-fixes")]),a._v(" "),t("ol",[t("li",[a._v("Update domain to www.datatable.online")])]),a._v(" "),t("div",[t("script2",{attrs:{type:"text/javascript",async:"true",src:"https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"}}),a._v(" "),t("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),a._v(" "),t("script2",{attrs:{type:"text/javascript"}},[a._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),a._v(" "),t("h2",{attrs:{id:"installer-portable-packages"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#installer-portable-packages"}},[a._v("#")]),a._v(" Installer & Portable packages "),t("Badge",{attrs:{text:"Windows only",type:"warning"}})],1),a._v(" "),t("p",[a._v("It is a very good idea to use sha256sum and GnuPG command to verify the sums and signature of your packages that download from the internet, make sure they are 100% correct.")]),a._v(" "),t("table",[t("thead",[t("tr",[t("th",[a._v("Packages")]),a._v(" "),t("th",[a._v("Windows(64 bit)")]),a._v(" "),t("th",[a._v("Linux(64 bit)")]),a._v(" "),t("th",[a._v("MacOS(64 bit)")])])]),a._v(" "),t("tbody",[t("tr",[t("td",[a._v("Installer"),t("br"),a._v("(Github.com)")]),a._v(" "),t("td",[t("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.0.6.201109/kangaroo-1.0.6.201109-AMD64.exe",target:"_blank",rel:"noopener noreferrer"}},[a._v("Windows"),t("OutboundLink")],1)]),a._v(" "),t("td",[t("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.0.6.201109/kangaroo-1.0.6.201109-1-x86_64.pkg.tar.xz",target:"_blank",rel:"noopener noreferrer"}},[a._v("Arch"),t("OutboundLink")],1)]),a._v(" "),t("td",[t("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.0.6.201109/kangaroo-1.0.6.201109-macos.dmg",target:"_blank",rel:"noopener noreferrer"}},[a._v("MacOS"),t("OutboundLink")],1)])]),a._v(" "),t("tr",[t("td",[a._v("Portable"),t("br"),a._v("(Github.com)")]),a._v(" "),t("td",[t("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.0.6.201109/kangaroo-1.0.6.201109-AMD64.7z",target:"_blank",rel:"noopener noreferrer"}},[a._v("Windows"),t("OutboundLink")],1)]),a._v(" "),t("td",[t("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.0.6.201109/kangaroo-1.0.6.201109-arch.tar.gz",target:"_blank",rel:"noopener noreferrer"}},[a._v("Arch"),t("OutboundLink")],1),a._v(" "),t("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.0.6.201109/kangaroo-1.0.6.201109-ubuntu.tar.gz",target:"_blank",rel:"noopener noreferrer"}},[a._v("Ubuntu"),t("OutboundLink")],1)]),a._v(" "),t("td",[t("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.0.6.201109/kangaroo-1.0.6.201109-macos.tar.gz",target:"_blank",rel:"noopener noreferrer"}},[a._v("MacOS"),t("OutboundLink")],1)])]),a._v(" "),t("tr",[t("td",[a._v("SHA256SUM"),t("br"),a._v("(Github.com)")]),a._v(" "),t("td",[t("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.0.6.201109/kangaroo-1.0.6.201109.sha256sum",target:"_blank",rel:"noopener noreferrer"}},[a._v("SHA256SUM"),t("OutboundLink")],1)]),a._v(" "),t("td",[t("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.0.6.201109/kangaroo-1.0.6.201109.sha256sum.asc",target:"_blank",rel:"noopener noreferrer"}},[a._v("SHA256SUM.GPG"),t("OutboundLink")],1)]),a._v(" "),t("td")]),a._v(" "),t("tr",[t("td",[a._v("-----------------")]),a._v(" "),t("td",[a._v("-----------------")]),a._v(" "),t("td",[a._v("-----------------")]),a._v(" "),t("td",[a._v("-----------------")])]),a._v(" "),t("tr",[t("td",[a._v("Installer"),t("br"),a._v("(Injdk.cn)")]),a._v(" "),t("td",[t("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.0.6.201109/kangaroo-1.0.6.201109-AMD64.exe",target:"_blank",rel:"noopener noreferrer"}},[a._v("Windows"),t("OutboundLink")],1)]),a._v(" "),t("td",[t("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.0.6.201109/kangaroo-1.0.6.201109-1-x86_64.pkg.tar.xz",target:"_blank",rel:"noopener noreferrer"}},[a._v("Arch"),t("OutboundLink")],1)]),a._v(" "),t("td",[t("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.0.6.201109/kangaroo-1.0.6.201109-macos.dmg",target:"_blank",rel:"noopener noreferrer"}},[a._v("MacOS"),t("OutboundLink")],1)])]),a._v(" "),t("tr",[t("td",[a._v("Portable"),t("br"),a._v("(Injdk.cn)")]),a._v(" "),t("td",[t("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.0.6.201109/kangaroo-1.0.6.201109-AMD64.7z",target:"_blank",rel:"noopener noreferrer"}},[a._v("Windows"),t("OutboundLink")],1)]),a._v(" "),t("td",[t("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.0.6.201109/kangaroo-1.0.6.201109-arch.tar.gz",target:"_blank",rel:"noopener noreferrer"}},[a._v("Arch"),t("OutboundLink")],1),a._v(" "),t("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.0.6.201109/kangaroo-1.0.6.201109-ubuntu.tar.gz",target:"_blank",rel:"noopener noreferrer"}},[a._v("Ubuntu"),t("OutboundLink")],1)]),a._v(" "),t("td",[t("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.0.6.201109/kangaroo-1.0.6.201109-macos.tar.gz",target:"_blank",rel:"noopener noreferrer"}},[a._v("MacOS"),t("OutboundLink")],1)])]),a._v(" "),t("tr",[t("td",[a._v("SHA256SUM"),t("br"),a._v("(Injdk.cn)")]),a._v(" "),t("td",[t("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.0.6.201109/kangaroo-1.0.6.201109.sha256sum",target:"_blank",rel:"noopener noreferrer"}},[a._v("SHA256SUM"),t("OutboundLink")],1)]),a._v(" "),t("td",[t("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.0.6.201109/kangaroo-1.0.6.201109.sha256sum.asc",target:"_blank",rel:"noopener noreferrer"}},[a._v("SHA256SUM.GPG"),t("OutboundLink")],1)]),a._v(" "),t("td")])])]),a._v(" "),t("h2",{attrs:{id:"share-with-friends"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#share-with-friends"}},[a._v("#")]),a._v(" Share with friends")]),a._v(" "),t("social-share",{attrs:{networks:["facebook","twitter","whatsapp","telegram","linkedin","reddit","line","skype","pinterest"]}})],1)}),[],!1,null,null,null);r.default=o.exports}}]); \ No newline at end of file diff --git a/assets/js/9.367e5cff.js b/assets/js/9.367e5cff.js new file mode 100644 index 000000000..84699b7b3 --- /dev/null +++ b/assets/js/9.367e5cff.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[9],{536:function(t,e,s){t.exports=s.p+"assets/img/kangaroo-connection-mysql.8c9f88d3.png"},537:function(t,e,s){t.exports=s.p+"assets/img/kangaroo-connection-ssh.1ebb9917.png"},611:function(t,e,s){"use strict";s.r(e);var n=s(13),a=Object(n.a)({},(function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("ContentSlotsDistributor",{attrs:{"slot-key":t.$parent.slotKey}},[n("h1",{attrs:{id:"connection-management"}},[n("a",{staticClass:"header-anchor",attrs:{href:"#connection-management"}},[t._v("#")]),t._v(" Connection management")]),t._v(" "),n("h2",{attrs:{id:"connection-limitations"}},[n("a",{staticClass:"header-anchor",attrs:{href:"#connection-limitations"}},[t._v("#")]),t._v(" Connection limitations")]),t._v(" "),n("p",[t._v("The connection have some limitations as follow:")]),t._v(" "),n("ul",[n("li",[t._v("connection with SSL not yet support.")]),t._v(" "),n("li",[t._v("connection with SSH with pass phrase not yet support")])]),t._v(" "),n("h2",{attrs:{id:"sqlite"}},[n("a",{staticClass:"header-anchor",attrs:{href:"#sqlite"}},[t._v("#")]),t._v(" SQLite")]),t._v(" "),n("p",[t._v("Make a SQLite connection is easy, just do as follow:")]),t._v(" "),n("ul",[n("li",[t._v("step 1: click "),n("strong",[t._v("New connection")]),t._v(" icon and name it")]),t._v(" "),n("li",[t._v("step 2: click left icon to create an new database, then click "),n("strong",[t._v("Test connection")]),t._v(" to test it")]),t._v(" "),n("li",[t._v("step 3: click right icon to load an exist database, then click "),n("strong",[t._v("Test connection")]),t._v(" to test it")]),t._v(" "),n("li",[t._v("step 4: make sure you have done these steps, then click "),n("strong",[t._v("Save")]),t._v(" icon to save it.")]),t._v(" "),n("li",[t._v("step 5: open your new connection to perform operations.")])]),t._v(" "),n("h2",{attrs:{id:"mysql-mariadb"}},[n("a",{staticClass:"header-anchor",attrs:{href:"#mysql-mariadb"}},[t._v("#")]),t._v(" MySQL / MariaDB")]),t._v(" "),n("p",[t._v("MySQL / PostgreSQL connnection is more complicate, because it support multi authentication methods, so you should prepare material before making connection, the best way is choose mysql native password plugin(mysql_native_password), just follow the guide:")]),t._v(" "),n("div",{staticClass:"language-sql extra-class"},[n("pre",{pre:!0,attrs:{class:"language-sql"}},[n("code",[n("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),n("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("Open")]),t._v(" terminal\n"),n("span",{pre:!0,attrs:{class:"token number"}},[t._v("2")]),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" mysql "),n("span",{pre:!0,attrs:{class:"token operator"}},[t._v("-")]),t._v("u root "),n("span",{pre:!0,attrs:{class:"token operator"}},[t._v("-")]),t._v("p\n"),n("span",{pre:!0,attrs:{class:"token number"}},[t._v("3")]),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" Enter your password\n"),n("span",{pre:!0,attrs:{class:"token number"}},[t._v("4")]),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v(" "),n("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("ALTER")]),t._v(" "),n("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("USER")]),t._v(" root"),n("span",{pre:!0,attrs:{class:"token variable"}},[t._v("@localhost")]),t._v(" IDENTIFIED "),n("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("WITH")]),t._v(" mysql_native_password "),n("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("BY")]),t._v(" "),n("span",{pre:!0,attrs:{class:"token string"}},[t._v("'password'")]),n("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(";")]),t._v("\n")])])]),n("p",[t._v("After that, you could make a connection easily:\n"),n("img",{attrs:{src:s(536),alt:"Make a MySQL connection"}})]),t._v(" "),n("p",[n("strong",[t._v("Follow the label and tooltip")]),t._v(", fill the data as right place, then test connection. Every thing will be ok if the data is valid.")]),t._v(" "),n("p",[n("img",{attrs:{src:s(537),alt:"Make a MySQL connection with SSH"}})]),t._v(" "),n("p",[t._v("Your connection could through the private network over SSH(and over proxy), the built-in SSH client could help you done it.")]),t._v(" "),n("h2",{attrs:{id:"postgresql"}},[n("a",{staticClass:"header-anchor",attrs:{href:"#postgresql"}},[t._v("#")]),t._v(" PostgreSQL")]),t._v(" "),n("p",[t._v("Just refer MySQL connection setting.")]),t._v(" "),n("Vssue",{attrs:{"issue-id":7,title:t.$title}})],1)}),[],!1,null,null,null);e.default=a.exports}}]); \ No newline at end of file diff --git a/assets/js/90.725df623.js b/assets/js/90.725df623.js new file mode 100644 index 000000000..79c0216bd --- /dev/null +++ b/assets/js/90.725df623.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[90],{674:function(t,a,r){"use strict";r.r(a);var e=r(13),o=Object(e.a)({},(function(){var t=this,a=t.$createElement,r=t._self._c||a;return r("ContentSlotsDistributor",{attrs:{"slot-key":t.$parent.slotKey}},[r("h1",{attrs:{id:"kangaroo-v1-10-1-beta"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#kangaroo-v1-10-1-beta"}},[t._v("#")]),t._v(" Kangaroo v1.10.1 (Beta)")]),t._v(" "),r("h2",{attrs:{id:"new-features-bug-fixes"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#new-features-bug-fixes"}},[t._v("#")]),t._v(" New features & bug-fixes")]),t._v(" "),r("ol",[r("li",[t._v("Add visual sql builder dialog")]),t._v(" "),r("li",[t._v("Add values window")]),t._v(" "),r("li",[t._v("Add icon for datagrid context menu")]),t._v(" "),r("li",[t._v("Add copy cell value with algorithm")]),t._v(" "),r("li",[t._v("Add update cell value with algorithm")]),t._v(" "),r("li",[t._v("Improve connection naming schema")]),t._v(" "),r("li",[t._v("Improve toolbar layout")]),t._v(" "),r("li",[t._v("Improve float type support")]),t._v(" "),r("li",[t._v("Update the Chinese translation")]),t._v(" "),r("li",[t._v("Fixed: invalid sql while large text type(PostgreSQL)")]),t._v(" "),r("li",[t._v("Fixed: designer's checkbox not response.")]),t._v(" "),r("li",[t._v("Fixed: connection crashed(MySQL/PostgreSQL)")]),t._v(" "),r("li",[t._v("Fixed: can't load source of view(PostgreSQL)")]),t._v(" "),r("li",[t._v("Fixed: MacOS Chinese not support")]),t._v(" "),r("li",[t._v("Fixed: invalid sql while meet the same cell value")])]),t._v(" "),r("div",[r("script2",{attrs:{type:"text/javascript",async:"true",src:"https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"}}),t._v(" "),r("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),t._v(" "),r("script2",{attrs:{type:"text/javascript"}},[t._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),t._v(" "),r("h2",{attrs:{id:"installer-portable-packages"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#installer-portable-packages"}},[t._v("#")]),t._v(" Installer & Portable packages "),r("Badge",{attrs:{text:"link expired",type:"warning"}})],1),t._v(" "),r("p",[t._v("Recommend to use tool "),r("code",[t._v("sha256sum")]),t._v(" to verify the sums and signature of your packages that download from the internet, make sure they are safe and 100% correct.")]),t._v(" "),r("table",[r("thead",[r("tr",[r("th",[t._v("Packages")]),t._v(" "),r("th",[t._v("Windows")]),t._v(" "),r("th",[t._v("Linux")]),t._v(" "),r("th",[t._v("MacOS")]),t._v(" "),r("th",[t._v("iOS")]),t._v(" "),r("th",[t._v("Android")])])]),t._v(" "),r("tbody",[r("tr",[r("td",[t._v("Installer"),r("br"),t._v("(Github.com)")]),t._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.10.1.210731/kangaroo-1.10.1.210731-AMD64.exe",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows"),r("OutboundLink")],1)]),t._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.10.1.210731/kangaroo-1.10.1.210731-1-x86_64.pkg.tar.xz",target:"_blank",rel:"noopener noreferrer"}},[t._v("Arch"),r("OutboundLink")],1)]),t._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.10.1.210731/kangaroo-1.10.1.210731-macos.dmg",target:"_blank",rel:"noopener noreferrer"}},[t._v("MacOS"),r("OutboundLink")],1)]),t._v(" "),r("td"),t._v(" "),r("td")]),t._v(" "),r("tr",[r("td",[t._v("Portable"),r("br"),t._v("(Github.com)")]),t._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.10.1.210731/kangaroo-1.10.1.210731-AMD64.7z",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows"),r("OutboundLink")],1)]),t._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.10.1.210731/kangaroo-1.10.1.210731-portable-x86_64.tar.gz",target:"_blank",rel:"noopener noreferrer"}},[t._v("Portable"),r("OutboundLink")],1),t._v(" "),r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.10.1.210731/kangaroo-1.10.1.210731-arch.tar.gz",target:"_blank",rel:"noopener noreferrer"}},[t._v("Arch"),r("OutboundLink")],1)]),t._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.10.1.210731/kangaroo-1.10.1.210731-macos.tar.gz",target:"_blank",rel:"noopener noreferrer"}},[t._v("MacOS"),r("OutboundLink")],1)]),t._v(" "),r("td"),t._v(" "),r("td")]),t._v(" "),r("tr",[r("td",[t._v("SHA256SUM"),r("br"),t._v("(Github.com)")]),t._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.10.1.210731/kangaroo-1.10.1.210731.sha256sum",target:"_blank",rel:"noopener noreferrer"}},[t._v("SHA256SUM"),r("OutboundLink")],1)]),t._v(" "),r("td"),t._v(" "),r("td"),t._v(" "),r("td"),t._v(" "),r("td")]),t._v(" "),r("tr",[r("td",[t._v("-----------------")]),t._v(" "),r("td",[t._v("-----------------")]),t._v(" "),r("td",[t._v("-----------------")]),t._v(" "),r("td",[t._v("-----------------")]),t._v(" "),r("td"),t._v(" "),r("td")]),t._v(" "),r("tr",[r("td",[t._v("Installer"),r("br"),t._v("(Injdk.cn)")]),t._v(" "),r("td",[r("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.10.1.210731/kangaroo-1.10.1.210731-AMD64.exe",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows"),r("OutboundLink")],1)]),t._v(" "),r("td",[r("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.10.1.210731/kangaroo-1.10.1.210731-1-x86_64.pkg.tar.xz",target:"_blank",rel:"noopener noreferrer"}},[t._v("Arch"),r("OutboundLink")],1)]),t._v(" "),r("td",[r("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.10.1.210731/kangaroo-1.10.1.210731-macos.dmg",target:"_blank",rel:"noopener noreferrer"}},[t._v("MacOS"),r("OutboundLink")],1)]),t._v(" "),r("td"),t._v(" "),r("td")]),t._v(" "),r("tr",[r("td",[t._v("Portable"),r("br"),t._v("(Injdk.cn)")]),t._v(" "),r("td",[r("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.10.1.210731/kangaroo-1.10.1.210731-AMD64.7z",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows"),r("OutboundLink")],1)]),t._v(" "),r("td",[r("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.10.1.210731/kangaroo-1.10.1.210731-portable-x86_64.tar.gz",target:"_blank",rel:"noopener noreferrer"}},[t._v("Portable"),r("OutboundLink")],1),t._v(" "),r("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.10.1.210731/kangaroo-1.10.1.210731-arch.tar.gz",target:"_blank",rel:"noopener noreferrer"}},[t._v("Arch"),r("OutboundLink")],1)]),t._v(" "),r("td",[r("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.10.1.210731/kangaroo-1.10.1.210731-macos.tar.gz",target:"_blank",rel:"noopener noreferrer"}},[t._v("MacOS"),r("OutboundLink")],1)]),t._v(" "),r("td"),t._v(" "),r("td")]),t._v(" "),r("tr",[r("td",[t._v("SHA256SUM"),r("br"),t._v("(Injdk.cn)")]),t._v(" "),r("td",[r("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.10.1.210731/kangaroo-1.10.1.210731.sha256sum",target:"_blank",rel:"noopener noreferrer"}},[t._v("SHA256SUM"),r("OutboundLink")],1)]),t._v(" "),r("td"),t._v(" "),r("td"),t._v(" "),r("td"),t._v(" "),r("td")])])]),t._v(" "),r("h2",{attrs:{id:"share-with-friends"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#share-with-friends"}},[t._v("#")]),t._v(" Share with friends")]),t._v(" "),r("social-share",{attrs:{networks:["facebook","twitter","whatsapp","telegram","linkedin","reddit","line","skype","pinterest"]}})],1)}),[],!1,null,null,null);a.default=o.exports}}]); \ No newline at end of file diff --git a/assets/js/91.d00cbd70.js b/assets/js/91.d00cbd70.js new file mode 100644 index 000000000..351af7e39 --- /dev/null +++ b/assets/js/91.d00cbd70.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[91],{675:function(t,a,r){"use strict";r.r(a);var e=r(13),o=Object(e.a)({},(function(){var t=this,a=t.$createElement,r=t._self._c||a;return r("ContentSlotsDistributor",{attrs:{"slot-key":t.$parent.slotKey}},[r("h1",{attrs:{id:"kangaroo-v1-10-2-beta"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#kangaroo-v1-10-2-beta"}},[t._v("#")]),t._v(" Kangaroo v1.10.2 (Beta)")]),t._v(" "),r("h2",{attrs:{id:"new-features-bug-fixes"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#new-features-bug-fixes"}},[t._v("#")]),t._v(" New features & bug-fixes")]),t._v(" "),r("ul",[r("li",[t._v("Remove app expire date")]),t._v(" "),r("li",[t._v("Windows: update library to the latest.")])]),t._v(" "),r("div",[r("script2",{attrs:{type:"text/javascript",async:"true",src:"https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"}}),t._v(" "),r("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),t._v(" "),r("script2",{attrs:{type:"text/javascript"}},[t._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),t._v(" "),r("h2",{attrs:{id:"installer-portable-packages"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#installer-portable-packages"}},[t._v("#")]),t._v(" Installer & Portable packages")]),t._v(" "),r("p",[t._v("Recommend to use tool "),r("code",[t._v("sha256sum")]),t._v(" to verify the sums and signature of your packages that download from the internet, make sure they are safe and 100% correct.")]),t._v(" "),r("table",[r("thead",[r("tr",[r("th",[t._v("Packages")]),t._v(" "),r("th",[t._v("Windows")]),t._v(" "),r("th",[t._v("Linux")]),t._v(" "),r("th",[t._v("MacOS")]),t._v(" "),r("th",[t._v("iOS")]),t._v(" "),r("th",[t._v("Android")])])]),t._v(" "),r("tbody",[r("tr",[r("td",[t._v("Installer"),r("br"),t._v("(Github.com)")]),t._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.10.2.220701/kangaroo-1.10.2.220701-AMD64.exe",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows"),r("OutboundLink")],1)]),t._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.10.2.220701/kangaroo-1.10.2.220701-1-x86_64.pkg.tar.zst",target:"_blank",rel:"noopener noreferrer"}},[t._v("Arch"),r("OutboundLink")],1)]),t._v(" "),r("td",[t._v("[MacOS]")]),t._v(" "),r("td"),t._v(" "),r("td")]),t._v(" "),r("tr",[r("td",[t._v("Portable"),r("br"),t._v("(Github.com)")]),t._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.10.2.220701/kangaroo-1.10.2.220701-AMD64.7z",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows"),r("OutboundLink")],1)]),t._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.10.2.220701/kangaroo-1.10.2.220701-arch.tar.gz",target:"_blank",rel:"noopener noreferrer"}},[t._v("Arch"),r("OutboundLink")],1)]),t._v(" "),r("td",[t._v("[MacOS]")]),t._v(" "),r("td"),t._v(" "),r("td")]),t._v(" "),r("tr",[r("td",[t._v("SHA256SUM"),r("br"),t._v("(Github.com)")]),t._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.10.2.220701/kangaroo-1.10.2.220701.sha256sum",target:"_blank",rel:"noopener noreferrer"}},[t._v("SHA256SUM"),r("OutboundLink")],1)]),t._v(" "),r("td"),t._v(" "),r("td"),t._v(" "),r("td"),t._v(" "),r("td")]),t._v(" "),r("tr",[r("td",[t._v("-----------------")]),t._v(" "),r("td",[t._v("-----------------")]),t._v(" "),r("td",[t._v("-----------------")]),t._v(" "),r("td",[t._v("-----------------")]),t._v(" "),r("td"),t._v(" "),r("td")]),t._v(" "),r("tr",[r("td",[t._v("Installer"),r("br"),t._v("(Injdk.cn)")]),t._v(" "),r("td",[r("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.10.2.220701/kangaroo-1.10.2.220701-AMD64.exe",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows"),r("OutboundLink")],1)]),t._v(" "),r("td",[r("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.10.2.220701/kangaroo-1.10.2.220701-1-x86_64.pkg.tar.zst",target:"_blank",rel:"noopener noreferrer"}},[t._v("Arch"),r("OutboundLink")],1)]),t._v(" "),r("td",[t._v("[MacOS]")]),t._v(" "),r("td"),t._v(" "),r("td")]),t._v(" "),r("tr",[r("td",[t._v("Portable"),r("br"),t._v("(Injdk.cn)")]),t._v(" "),r("td",[r("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.10.2.220701/kangaroo-1.10.2.220701-AMD64.7z",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows"),r("OutboundLink")],1)]),t._v(" "),r("td",[r("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.10.2.220701/kangaroo-1.10.2.220701-arch.tar.gz",target:"_blank",rel:"noopener noreferrer"}},[t._v("Arch"),r("OutboundLink")],1)]),t._v(" "),r("td",[t._v("[MacOS]")]),t._v(" "),r("td"),t._v(" "),r("td")]),t._v(" "),r("tr",[r("td",[t._v("SHA256SUM"),r("br"),t._v("(Injdk.cn)")]),t._v(" "),r("td",[r("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.10.2.220701/kangaroo-1.10.2.220701.sha256sum",target:"_blank",rel:"noopener noreferrer"}},[t._v("SHA256SUM"),r("OutboundLink")],1)]),t._v(" "),r("td"),t._v(" "),r("td"),t._v(" "),r("td"),t._v(" "),r("td")])])]),t._v(" "),r("h2",{attrs:{id:"share-with-friends"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#share-with-friends"}},[t._v("#")]),t._v(" Share with friends")]),t._v(" "),r("social-share",{attrs:{networks:["facebook","twitter","whatsapp","telegram","linkedin","reddit","line","skype","pinterest"]}})],1)}),[],!1,null,null,null);a.default=o.exports}}]); \ No newline at end of file diff --git a/assets/js/92.744991ba.js b/assets/js/92.744991ba.js new file mode 100644 index 000000000..551a27118 --- /dev/null +++ b/assets/js/92.744991ba.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[92],{676:function(t,a,e){"use strict";e.r(a);var r=e(13),v=Object(r.a)({},(function(){var t=this,a=t.$createElement,e=t._self._c||a;return e("ContentSlotsDistributor",{attrs:{"slot-key":t.$parent.slotKey}},[e("h1",{attrs:{id:"kangaroo-v1-10-3-beta"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#kangaroo-v1-10-3-beta"}},[t._v("#")]),t._v(" Kangaroo v1.10.3 (Beta)")]),t._v(" "),e("h2",{attrs:{id:"new-features-bug-fixes"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#new-features-bug-fixes"}},[t._v("#")]),t._v(" New features & bug-fixes")]),t._v(" "),e("ul",[e("li",[t._v("Windows: update library to the latest.")]),t._v(" "),e("li",[t._v("Fixed: Chinese support")])]),t._v(" "),e("div",[e("script2",{attrs:{type:"text/javascript",async:"true",src:"https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"}}),t._v(" "),e("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),t._v(" "),e("script2",{attrs:{type:"text/javascript"}},[t._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),t._v(" "),e("h2",{attrs:{id:"installer-portable-packages"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#installer-portable-packages"}},[t._v("#")]),t._v(" Installer & Portable packages")]),t._v(" "),e("p",[t._v("Windows users could install Kangaroo via winget tool directly, just run command: "),e("code",[t._v("winget install Taozuhong.Kangaroo")]),t._v(". Or download the package then install it manually.")]),t._v(" "),e("h3",{attrs:{id:"windows-platform"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#windows-platform"}},[t._v("#")]),t._v(" Windows platform")]),t._v(" "),e("table",[e("thead",[e("tr",[e("th",[t._v("Architect")]),t._v(" "),e("th",[t._v("All")]),t._v(" "),e("th",[t._v("SQLite")]),t._v(" "),e("th",[t._v("MariaDB")]),t._v(" "),e("th",[t._v("MySQL")]),t._v(" "),e("th",[t._v("PostgreSQL")])])]),t._v(" "),e("tbody",[e("tr",[e("td",[t._v("x86-64")]),t._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.10.3.230508/kangaroo-1.10.3.230508-AMD64.exe",target:"_blank",rel:"noopener noreferrer"}},[t._v("Github"),e("OutboundLink")],1),t._v(" "),e("br"),t._v(" "),e("a",{attrs:{href:"https://gitee.com/dbkangaroo/kangaroo/releases/download/v1.10.3.230508/kangaroo-1.10.3.230508-AMD64.exe",target:"_blank",rel:"noopener noreferrer"}},[t._v("GitEE"),e("OutboundLink")],1),t._v(" "),e("br"),t._v(" "),e("a",{attrs:{href:"https://kangaroo.awaysoft.com/downloads/v1.10.3.230508/kangaroo-1.10.3.230508-AMD64.exe",target:"_blank",rel:"noopener noreferrer"}},[t._v("Server 3"),e("OutboundLink")],1),t._v(" "),e("br"),t._v(" "),e("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.10.3.230508/kangaroo-1.10.3.230508-AMD64.exe",target:"_blank",rel:"noopener noreferrer"}},[t._v("Server 4"),e("OutboundLink")],1)]),t._v(" "),e("td"),t._v(" "),e("td"),t._v(" "),e("td"),t._v(" "),e("td")]),t._v(" "),e("tr",[e("td",[t._v("ARM64")]),t._v(" "),e("td"),t._v(" "),e("td"),t._v(" "),e("td"),t._v(" "),e("td"),t._v(" "),e("td")]),t._v(" "),e("tr",[e("td",[t._v("RISCV64")]),t._v(" "),e("td"),t._v(" "),e("td"),t._v(" "),e("td"),t._v(" "),e("td"),t._v(" "),e("td")])])]),t._v(" "),e("h3",{attrs:{id:"macos-platform"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#macos-platform"}},[t._v("#")]),t._v(" macOS platform")]),t._v(" "),e("table",[e("thead",[e("tr",[e("th",[t._v("Architect")]),t._v(" "),e("th",[t._v("All")]),t._v(" "),e("th",[t._v("SQLite")]),t._v(" "),e("th",[t._v("MariaDB")]),t._v(" "),e("th",[t._v("MySQL")]),t._v(" "),e("th",[t._v("PostgreSQL")])])]),t._v(" "),e("tbody",[e("tr",[e("td",[t._v("ARM64")]),t._v(" "),e("td"),t._v(" "),e("td"),t._v(" "),e("td"),t._v(" "),e("td"),t._v(" "),e("td")]),t._v(" "),e("tr",[e("td",[t._v("x86-64")]),t._v(" "),e("td"),t._v(" "),e("td"),t._v(" "),e("td"),t._v(" "),e("td"),t._v(" "),e("td")]),t._v(" "),e("tr",[e("td",[t._v("RISCV64")]),t._v(" "),e("td"),t._v(" "),e("td"),t._v(" "),e("td"),t._v(" "),e("td"),t._v(" "),e("td")])])]),t._v(" "),e("h3",{attrs:{id:"linux-platform"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#linux-platform"}},[t._v("#")]),t._v(" Linux platform")]),t._v(" "),e("table",[e("thead",[e("tr",[e("th",[t._v("Architect")]),t._v(" "),e("th",[t._v("All")]),t._v(" "),e("th",[t._v("SQLite")]),t._v(" "),e("th",[t._v("MariaDB")]),t._v(" "),e("th",[t._v("MySQL")]),t._v(" "),e("th",[t._v("PostgreSQL")])])]),t._v(" "),e("tbody",[e("tr",[e("td",[t._v("x86-64")]),t._v(" "),e("td"),t._v(" "),e("td"),t._v(" "),e("td"),t._v(" "),e("td"),t._v(" "),e("td")]),t._v(" "),e("tr",[e("td",[t._v("ARM64")]),t._v(" "),e("td"),t._v(" "),e("td"),t._v(" "),e("td"),t._v(" "),e("td"),t._v(" "),e("td")]),t._v(" "),e("tr",[e("td",[t._v("RISCV64")]),t._v(" "),e("td"),t._v(" "),e("td"),t._v(" "),e("td"),t._v(" "),e("td"),t._v(" "),e("td")])])]),t._v(" "),e("div",[e("script2",{attrs:{type:"text/javascript",async:"true",src:"https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"}}),t._v(" "),e("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),t._v(" "),e("script2",{attrs:{type:"text/javascript"}},[t._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),t._v(" "),e("h2",{attrs:{id:"sha256sum"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#sha256sum"}},[t._v("#")]),t._v(" SHA256SUM")]),t._v(" "),e("p",[t._v("Recommend to use tools like "),e("code",[t._v("sha256sum")]),t._v(" or "),e("code",[t._v("7-Zip")]),t._v(" to verify the checksum and signature of your packages, make sure they are safe and 100% correct.")]),t._v(" "),e("table",[e("thead",[e("tr",[e("th",[t._v("sha256sum checksum")]),t._v(" "),e("th",[t._v("Package name")])])]),t._v(" "),e("tbody",[e("tr",[e("td",[t._v("d908e5c64c5d4034e8a783961fabc5db2e8f0ea9e00e38668b474214c6286a7c")]),t._v(" "),e("td",[t._v("kangaroo-1.10.3.230508-AMD64.exe")])]),t._v(" "),e("tr",[e("td",[t._v("8a8a5bfa3199b3c4b9e52fb063457e10b1c6e29dd50e9fb34ae390fae42f1bb2")]),t._v(" "),e("td",[t._v("kangaroo-1.10.3.230508-AMD64.7z")])])])]),t._v(" "),e("h2",{attrs:{id:"share-with-friends"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#share-with-friends"}},[t._v("#")]),t._v(" Share with friends")]),t._v(" "),e("social-share",{attrs:{networks:["facebook","twitter","whatsapp","telegram","linkedin","reddit","line","skype","pinterest"]}})],1)}),[],!1,null,null,null);a.default=v.exports}}]); \ No newline at end of file diff --git a/assets/js/93.dbd6b39d.js b/assets/js/93.dbd6b39d.js new file mode 100644 index 000000000..d595326e1 --- /dev/null +++ b/assets/js/93.dbd6b39d.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[93],{677:function(a,r,t){"use strict";t.r(r);var e=t(13),o=Object(e.a)({},(function(){var a=this,r=a.$createElement,t=a._self._c||r;return t("ContentSlotsDistributor",{attrs:{"slot-key":a.$parent.slotKey}},[t("h1",{attrs:{id:"kangaroo-v1-3-1-dev"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#kangaroo-v1-3-1-dev"}},[a._v("#")]),a._v(" Kangaroo v1.3.1 (Dev)")]),a._v(" "),t("h2",{attrs:{id:"new-features-bug-fixes"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#new-features-bug-fixes"}},[a._v("#")]),a._v(" New features & bug-fixes")]),a._v(" "),t("ol",[t("li",[a._v("Implement hex editor (completed)")]),a._v(" "),t("li",[a._v("Add data chart support(in progress)")]),a._v(" "),t("li",[a._v("Add workspace tab ui support(in progress)")])]),a._v(" "),t("div",[t("script2",{attrs:{type:"text/javascript",async:"true",src:"https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"}}),a._v(" "),t("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),a._v(" "),t("script2",{attrs:{type:"text/javascript"}},[a._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),a._v(" "),t("h2",{attrs:{id:"installer-portable-packages"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#installer-portable-packages"}},[a._v("#")]),a._v(" Installer & Portable packages "),t("Badge",{attrs:{text:"link expired",type:"warning"}})],1),a._v(" "),t("p",[a._v("It is a very good idea to use sha256sum and GnuPG command to verify the sums and signature of your packages that download from the internet, make sure they are 100% correct.")]),a._v(" "),t("table",[t("thead",[t("tr",[t("th",[a._v("Packages")]),a._v(" "),t("th",[a._v("Windows(64 bit)")]),a._v(" "),t("th",[a._v("Linux(64 bit)")]),a._v(" "),t("th",[a._v("MacOS(64 bit)")])])]),a._v(" "),t("tbody",[t("tr",[t("td",[a._v("Installer"),t("br"),a._v("(Github.com)")]),a._v(" "),t("td",[t("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.3.1.201102/kangaroo-1.3.1.201102-AMD64.exe",target:"_blank",rel:"noopener noreferrer"}},[a._v("Windows"),t("OutboundLink")],1)]),a._v(" "),t("td",[t("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.3.1.201102/kangaroo-1.3.1.201102-1-x86_64.pkg.tar.xz",target:"_blank",rel:"noopener noreferrer"}},[a._v("Arch"),t("OutboundLink")],1)]),a._v(" "),t("td",[t("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.3.1.201102/kangaroo-1.3.1.201102-macos.dmg",target:"_blank",rel:"noopener noreferrer"}},[a._v("MacOS"),t("OutboundLink")],1)])]),a._v(" "),t("tr",[t("td",[a._v("Portable"),t("br"),a._v("(Github.com)")]),a._v(" "),t("td",[t("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.3.1.201102/kangaroo-1.3.1.201102-AMD64.7z",target:"_blank",rel:"noopener noreferrer"}},[a._v("Windows"),t("OutboundLink")],1)]),a._v(" "),t("td",[t("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.3.1.201102/kangaroo-1.3.1.201102-arch.tar.gz",target:"_blank",rel:"noopener noreferrer"}},[a._v("Arch"),t("OutboundLink")],1),a._v(" "),t("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.3.1.201102/kangaroo-1.3.1.201102-ubuntu.tar.gz",target:"_blank",rel:"noopener noreferrer"}},[a._v("Ubuntu"),t("OutboundLink")],1)]),a._v(" "),t("td",[t("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.3.1.201102/kangaroo-1.3.1.201102-macos.tar.gz",target:"_blank",rel:"noopener noreferrer"}},[a._v("MacOS"),t("OutboundLink")],1)])]),a._v(" "),t("tr",[t("td",[a._v("SHA256SUM"),t("br"),a._v("(Github.com)")]),a._v(" "),t("td",[t("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.3.1.201102/kangaroo-1.3.1.201102.sha256sum",target:"_blank",rel:"noopener noreferrer"}},[a._v("SHA256SUM"),t("OutboundLink")],1)]),a._v(" "),t("td",[t("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.3.1.201102/kangaroo-1.3.1.201102.sha256sum.asc",target:"_blank",rel:"noopener noreferrer"}},[a._v("SHA256SUM.GPG"),t("OutboundLink")],1)]),a._v(" "),t("td")]),a._v(" "),t("tr",[t("td",[a._v("-----------------")]),a._v(" "),t("td",[a._v("-----------------")]),a._v(" "),t("td",[a._v("-----------------")]),a._v(" "),t("td",[a._v("-----------------")])]),a._v(" "),t("tr",[t("td",[a._v("Installer"),t("br"),a._v("(Injdk.cn)")]),a._v(" "),t("td",[t("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.3.1.201102/kangaroo-1.3.1.201102-AMD64.exe",target:"_blank",rel:"noopener noreferrer"}},[a._v("Windows"),t("OutboundLink")],1)]),a._v(" "),t("td",[t("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.3.1.201102/kangaroo-1.3.1.201102-1-x86_64.pkg.tar.xz",target:"_blank",rel:"noopener noreferrer"}},[a._v("Arch"),t("OutboundLink")],1)]),a._v(" "),t("td",[t("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.3.1.201102/kangaroo-1.3.1.201102-macos.dmg",target:"_blank",rel:"noopener noreferrer"}},[a._v("MacOS"),t("OutboundLink")],1)])]),a._v(" "),t("tr",[t("td",[a._v("Portable"),t("br"),a._v("(Injdk.cn)")]),a._v(" "),t("td",[t("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.3.1.201102/kangaroo-1.3.1.201102-AMD64.7z",target:"_blank",rel:"noopener noreferrer"}},[a._v("Windows"),t("OutboundLink")],1)]),a._v(" "),t("td",[t("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.3.1.201102/kangaroo-1.3.1.201102-arch.tar.gz",target:"_blank",rel:"noopener noreferrer"}},[a._v("Arch"),t("OutboundLink")],1),a._v(" "),t("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.3.1.201102/kangaroo-1.3.1.201102-ubuntu.tar.gz",target:"_blank",rel:"noopener noreferrer"}},[a._v("Ubuntu"),t("OutboundLink")],1)]),a._v(" "),t("td",[t("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.3.1.201102/kangaroo-1.3.1.201102-macos.tar.gz",target:"_blank",rel:"noopener noreferrer"}},[a._v("MacOS"),t("OutboundLink")],1)])]),a._v(" "),t("tr",[t("td",[a._v("SHA256SUM"),t("br"),a._v("(Injdk.cn)")]),a._v(" "),t("td",[t("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.3.1.201102/kangaroo-1.3.1.201102.sha256sum",target:"_blank",rel:"noopener noreferrer"}},[a._v("SHA256SUM"),t("OutboundLink")],1)]),a._v(" "),t("td",[t("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.3.1.201102/kangaroo-1.3.1.201102.sha256sum.asc",target:"_blank",rel:"noopener noreferrer"}},[a._v("SHA256SUM.GPG"),t("OutboundLink")],1)]),a._v(" "),t("td")])])]),a._v(" "),t("h2",{attrs:{id:"share-with-friends"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#share-with-friends"}},[a._v("#")]),a._v(" Share with friends")]),a._v(" "),t("social-share",{attrs:{networks:["facebook","twitter","whatsapp","telegram","linkedin","reddit","line","skype","pinterest"]}})],1)}),[],!1,null,null,null);r.default=o.exports}}]); \ No newline at end of file diff --git a/assets/js/94.ab347be4.js b/assets/js/94.ab347be4.js new file mode 100644 index 000000000..9d8526cae --- /dev/null +++ b/assets/js/94.ab347be4.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[94],{678:function(a,r,t){"use strict";t.r(r);var e=t(13),o=Object(e.a)({},(function(){var a=this,r=a.$createElement,t=a._self._c||r;return t("ContentSlotsDistributor",{attrs:{"slot-key":a.$parent.slotKey}},[t("h1",{attrs:{id:"kangaroo-v1-5-1-dev"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#kangaroo-v1-5-1-dev"}},[a._v("#")]),a._v(" Kangaroo v1.5.1 (Dev)")]),a._v(" "),t("h2",{attrs:{id:"new-features-bug-fixes"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#new-features-bug-fixes"}},[a._v("#")]),a._v(" New features & bug-fixes")]),a._v(" "),t("ol",[t("li",[a._v("Implement hex editor support (completed)")]),a._v(" "),t("li",[a._v("Add workspace tab UI support (completed)")]),a._v(" "),t("li",[a._v("Add data chart support (in progress)")]),a._v(" "),t("li",[a._v("Add database modeling support (in progress)")])]),a._v(" "),t("div",[t("script2",{attrs:{type:"text/javascript",async:"true",src:"https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"}}),a._v(" "),t("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),a._v(" "),t("script2",{attrs:{type:"text/javascript"}},[a._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),a._v(" "),t("h2",{attrs:{id:"installer-portable-packages"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#installer-portable-packages"}},[a._v("#")]),a._v(" Installer & Portable packages "),t("Badge",{attrs:{text:"link expired",type:"warning"}})],1),a._v(" "),t("p",[a._v("It is a very good idea to use sha256sum and GnuPG command to verify the sums and signature of your packages that download from the internet, make sure they are 100% correct.")]),a._v(" "),t("table",[t("thead",[t("tr",[t("th",[a._v("Packages")]),a._v(" "),t("th",[a._v("Windows(64 bit)")]),a._v(" "),t("th",[a._v("Linux(64 bit)")]),a._v(" "),t("th",[a._v("MacOS(64 bit)")])])]),a._v(" "),t("tbody",[t("tr",[t("td",[a._v("Installer"),t("br"),a._v("(Github.com)")]),a._v(" "),t("td",[t("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.5.1.201231/kangaroo-1.5.1.201231-AMD64.exe",target:"_blank",rel:"noopener noreferrer"}},[a._v("Windows"),t("OutboundLink")],1)]),a._v(" "),t("td",[t("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.5.1.201231/kangaroo-1.5.1.201231-1-x86_64.pkg.tar.xz",target:"_blank",rel:"noopener noreferrer"}},[a._v("Arch"),t("OutboundLink")],1)]),a._v(" "),t("td",[t("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.5.1.201231/kangaroo-1.5.1.201231-macos.dmg",target:"_blank",rel:"noopener noreferrer"}},[a._v("MacOS"),t("OutboundLink")],1)])]),a._v(" "),t("tr",[t("td",[a._v("Portable"),t("br"),a._v("(Github.com)")]),a._v(" "),t("td",[t("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.5.1.201231/kangaroo-1.5.1.201231-AMD64.7z",target:"_blank",rel:"noopener noreferrer"}},[a._v("Windows"),t("OutboundLink")],1)]),a._v(" "),t("td",[t("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.5.1.201231/kangaroo-1.5.1.201231-arch.tar.gz",target:"_blank",rel:"noopener noreferrer"}},[a._v("Arch"),t("OutboundLink")],1),a._v(" "),t("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.5.1.201231/kangaroo-1.5.1.201231-ubuntu.tar.gz",target:"_blank",rel:"noopener noreferrer"}},[a._v("Ubuntu"),t("OutboundLink")],1)]),a._v(" "),t("td",[t("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.5.1.201231/kangaroo-1.5.1.201231-macos.tar.gz",target:"_blank",rel:"noopener noreferrer"}},[a._v("MacOS"),t("OutboundLink")],1)])]),a._v(" "),t("tr",[t("td",[a._v("SHA256SUM"),t("br"),a._v("(Github.com)")]),a._v(" "),t("td",[t("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.5.1.201231/kangaroo-1.5.1.201231.sha256sum",target:"_blank",rel:"noopener noreferrer"}},[a._v("SHA256SUM"),t("OutboundLink")],1)]),a._v(" "),t("td",[t("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.5.1.201231/kangaroo-1.5.1.201231.sha256sum.asc",target:"_blank",rel:"noopener noreferrer"}},[a._v("SHA256SUM.GPG"),t("OutboundLink")],1)]),a._v(" "),t("td")]),a._v(" "),t("tr",[t("td",[a._v("-----------------")]),a._v(" "),t("td",[a._v("-----------------")]),a._v(" "),t("td",[a._v("-----------------")]),a._v(" "),t("td",[a._v("-----------------")])]),a._v(" "),t("tr",[t("td",[a._v("Installer"),t("br"),a._v("(Injdk.cn)")]),a._v(" "),t("td",[t("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.5.1.201231/kangaroo-1.5.1.201231-AMD64.exe",target:"_blank",rel:"noopener noreferrer"}},[a._v("Windows"),t("OutboundLink")],1)]),a._v(" "),t("td",[t("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.5.1.201231/kangaroo-1.5.1.201231-1-x86_64.pkg.tar.xz",target:"_blank",rel:"noopener noreferrer"}},[a._v("Arch"),t("OutboundLink")],1)]),a._v(" "),t("td",[t("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.5.1.201231/kangaroo-1.5.1.201231-macos.dmg",target:"_blank",rel:"noopener noreferrer"}},[a._v("MacOS"),t("OutboundLink")],1)])]),a._v(" "),t("tr",[t("td",[a._v("Portable"),t("br"),a._v("(Injdk.cn)")]),a._v(" "),t("td",[t("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.5.1.201231/kangaroo-1.5.1.201231-AMD64.7z",target:"_blank",rel:"noopener noreferrer"}},[a._v("Windows"),t("OutboundLink")],1)]),a._v(" "),t("td",[t("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.5.1.201231/kangaroo-1.5.1.201231-arch.tar.gz",target:"_blank",rel:"noopener noreferrer"}},[a._v("Arch"),t("OutboundLink")],1),a._v(" "),t("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.5.1.201231/kangaroo-1.5.1.201231-ubuntu.tar.gz",target:"_blank",rel:"noopener noreferrer"}},[a._v("Ubuntu"),t("OutboundLink")],1)]),a._v(" "),t("td",[t("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.5.1.201231/kangaroo-1.5.1.201231-macos.tar.gz",target:"_blank",rel:"noopener noreferrer"}},[a._v("MacOS"),t("OutboundLink")],1)])]),a._v(" "),t("tr",[t("td",[a._v("SHA256SUM"),t("br"),a._v("(Injdk.cn)")]),a._v(" "),t("td",[t("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.5.1.201231/kangaroo-1.5.1.201231.sha256sum",target:"_blank",rel:"noopener noreferrer"}},[a._v("SHA256SUM"),t("OutboundLink")],1)]),a._v(" "),t("td",[t("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.5.1.201231/kangaroo-1.5.1.201231.sha256sum.asc",target:"_blank",rel:"noopener noreferrer"}},[a._v("SHA256SUM.GPG"),t("OutboundLink")],1)]),a._v(" "),t("td")])])]),a._v(" "),t("h2",{attrs:{id:"share-with-friends"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#share-with-friends"}},[a._v("#")]),a._v(" Share with friends")]),a._v(" "),t("social-share",{attrs:{networks:["facebook","twitter","whatsapp","telegram","linkedin","reddit","line","skype","pinterest"]}})],1)}),[],!1,null,null,null);r.default=o.exports}}]); \ No newline at end of file diff --git a/assets/js/95.9d972dd4.js b/assets/js/95.9d972dd4.js new file mode 100644 index 000000000..ce551a1df --- /dev/null +++ b/assets/js/95.9d972dd4.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[95],{679:function(t,a,r){"use strict";r.r(a);var e=r(13),o=Object(e.a)({},(function(){var t=this,a=t.$createElement,r=t._self._c||a;return r("ContentSlotsDistributor",{attrs:{"slot-key":t.$parent.slotKey}},[r("h1",{attrs:{id:"kangaroo-v1-6-1-dev"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#kangaroo-v1-6-1-dev"}},[t._v("#")]),t._v(" Kangaroo v1.6.1 (Dev)")]),t._v(" "),r("h2",{attrs:{id:"new-features-bug-fixes"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#new-features-bug-fixes"}},[t._v("#")]),t._v(" New features & bug-fixes")]),t._v(" "),r("ol",[r("li",[t._v("Implement hex editor support (completed)")]),t._v(" "),r("li",[t._v("Add workspace tab UI support (completed)")]),t._v(" "),r("li",[t._v("Add independent history support(completed)")]),t._v(" "),r("li",[t._v("Add shortcut customize support(completed)")]),t._v(" "),r("li",[t._v("Add data chart support (in progress)")]),t._v(" "),r("li",[t._v("Add database model support (in progress)")]),t._v(" "),r("li",[t._v("Drag and drop SQLite file on the app to open it #76")])]),t._v(" "),r("div",[r("script2",{attrs:{type:"text/javascript",async:"true",src:"https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"}}),t._v(" "),r("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),t._v(" "),r("script2",{attrs:{type:"text/javascript"}},[t._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),t._v(" "),r("h2",{attrs:{id:"installer-portable-packages"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#installer-portable-packages"}},[t._v("#")]),t._v(" Installer & Portable packages "),r("Badge",{attrs:{text:"link expired",type:"warning"}})],1),t._v(" "),r("p",[t._v("It is a very good idea to use sha256sum and GnuPG command to verify the sums and signature of your packages that download from the internet, make sure they are 100% correct.")]),t._v(" "),r("table",[r("thead",[r("tr",[r("th",[t._v("Packages")]),t._v(" "),r("th",[t._v("Windows(64 bit)")]),t._v(" "),r("th",[t._v("Linux(64 bit)")]),t._v(" "),r("th",[t._v("MacOS(64 bit)")])])]),t._v(" "),r("tbody",[r("tr",[r("td",[t._v("Installer"),r("br"),t._v("(Github.com)")]),t._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.6.1.210131/kangaroo-1.6.1.210131-AMD64.exe",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows"),r("OutboundLink")],1)]),t._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.6.1.210131/kangaroo-1.6.1.210131-1-x86_64.pkg.tar.xz",target:"_blank",rel:"noopener noreferrer"}},[t._v("Arch"),r("OutboundLink")],1)]),t._v(" "),r("td",[t._v("[MacOS]")])]),t._v(" "),r("tr",[r("td",[t._v("Portable"),r("br"),t._v("(Github.com)")]),t._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.6.1.210131/kangaroo-1.6.1.210131-AMD64.7z",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows"),r("OutboundLink")],1)]),t._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.6.1.210131/kangaroo-1.6.1.210131-arch.tar.gz",target:"_blank",rel:"noopener noreferrer"}},[t._v("Arch"),r("OutboundLink")],1),t._v(" [Ubuntu]")]),t._v(" "),r("td",[t._v("[MacOS]")])]),t._v(" "),r("tr",[r("td",[t._v("SHA256SUM"),r("br"),t._v("(Github.com)")]),t._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.6.1.210131/kangaroo-1.6.1.210131.sha256sum",target:"_blank",rel:"noopener noreferrer"}},[t._v("SHA256SUM"),r("OutboundLink")],1)]),t._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.6.1.210131/kangaroo-1.6.1.210131.sha256sum.asc",target:"_blank",rel:"noopener noreferrer"}},[t._v("SHA256SUM.GPG"),r("OutboundLink")],1)]),t._v(" "),r("td")]),t._v(" "),r("tr",[r("td",[t._v("-----------------")]),t._v(" "),r("td",[t._v("-----------------")]),t._v(" "),r("td",[t._v("-----------------")]),t._v(" "),r("td",[t._v("-----------------")])]),t._v(" "),r("tr",[r("td",[t._v("Installer"),r("br"),t._v("(Injdk.cn)")]),t._v(" "),r("td",[r("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.6.1.210131/kangaroo-1.6.1.210131-AMD64.exe",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows"),r("OutboundLink")],1)]),t._v(" "),r("td",[r("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.6.1.210131/kangaroo-1.6.1.210131-1-x86_64.pkg.tar.xz",target:"_blank",rel:"noopener noreferrer"}},[t._v("Arch"),r("OutboundLink")],1)]),t._v(" "),r("td",[t._v("[MacOS]")])]),t._v(" "),r("tr",[r("td",[t._v("Portable"),r("br"),t._v("(Injdk.cn)")]),t._v(" "),r("td",[r("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.6.1.210131/kangaroo-1.6.1.210131-AMD64.7z",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows"),r("OutboundLink")],1)]),t._v(" "),r("td",[r("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.6.1.210131/kangaroo-1.6.1.210131-arch.tar.gz",target:"_blank",rel:"noopener noreferrer"}},[t._v("Arch"),r("OutboundLink")],1),t._v(" [Ubuntu]")]),t._v(" "),r("td",[t._v("[MacOS]")])]),t._v(" "),r("tr",[r("td",[t._v("SHA256SUM"),r("br"),t._v("(Injdk.cn)")]),t._v(" "),r("td",[r("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.6.1.210131/kangaroo-1.6.1.210131.sha256sum",target:"_blank",rel:"noopener noreferrer"}},[t._v("SHA256SUM"),r("OutboundLink")],1)]),t._v(" "),r("td",[r("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.6.1.210131/kangaroo-1.6.1.210131.sha256sum.asc",target:"_blank",rel:"noopener noreferrer"}},[t._v("SHA256SUM.GPG"),r("OutboundLink")],1)]),t._v(" "),r("td")])])]),t._v(" "),r("h2",{attrs:{id:"share-with-friends"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#share-with-friends"}},[t._v("#")]),t._v(" Share with friends")]),t._v(" "),r("social-share",{attrs:{networks:["facebook","twitter","whatsapp","telegram","linkedin","reddit","line","skype","pinterest"]}})],1)}),[],!1,null,null,null);a.default=o.exports}}]); \ No newline at end of file diff --git a/assets/js/96.cd27481c.js b/assets/js/96.cd27481c.js new file mode 100644 index 000000000..7d11dcd94 --- /dev/null +++ b/assets/js/96.cd27481c.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[96],{680:function(a,e,r){"use strict";r.r(e);var t=r(13),o=Object(t.a)({},(function(){var a=this,e=a.$createElement,r=a._self._c||e;return r("ContentSlotsDistributor",{attrs:{"slot-key":a.$parent.slotKey}},[r("h1",{attrs:{id:"kangaroo-v1-7-1-dev"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#kangaroo-v1-7-1-dev"}},[a._v("#")]),a._v(" Kangaroo v1.7.1 (Dev)")]),a._v(" "),r("h2",{attrs:{id:"new-features-bug-fixes"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#new-features-bug-fixes"}},[a._v("#")]),a._v(" New features & bug-fixes")]),a._v(" "),r("ol",[r("li",[a._v("Implement hex editor support (completed)")]),a._v(" "),r("li",[a._v("Add workspace tab UI support (completed)")]),a._v(" "),r("li",[a._v("Add independent history support(completed)")]),a._v(" "),r("li",[a._v("Add shortcut customize support(completed)")]),a._v(" "),r("li",[a._v("Add data chart support (in progress)")]),a._v(" "),r("li",[a._v("Add database model support (in progress)\n"),r("ul",[r("li",[a._v("Add load and save model support")]),a._v(" "),r("li",[a._v("Add node copy and paste support")]),a._v(" "),r("li",[a._v("Add multi-selection support")])])]),a._v(" "),r("li",[a._v("Drag and drop SQLite file on the workspace to open it #76")]),a._v(" "),r("li",[a._v("Refactor app home page to improve experience")]),a._v(" "),r("li",[a._v("Copy data as LUA table")]),a._v(" "),r("li",[a._v("improve object tree experience")]),a._v(" "),r("li",[a._v("Backup and restore workspace layout")]),a._v(" "),r("li",[a._v("Add more language support")]),a._v(" "),r("li",[a._v("Improve log support(add database and connection name)")]),a._v(" "),r("li",[a._v("File monitor support for sql script file")]),a._v(" "),r("li",[a._v("refactor content view to show feature bar")]),a._v(" "),r("li",[a._v("all data tables are displayed by default")]),a._v(" "),r("li",[a._v("refactor object panel to improve UI experience")]),a._v(" "),r("li",[a._v("Add shortcut dialog for search and setup;")]),a._v(" "),r("li",[a._v("Improve app title bar style, add color and image support.")]),a._v(" "),r("li",[a._v("Add shell notification support")]),a._v(" "),r("li",[a._v("Add confirm dialog while closing pages")]),a._v(" "),r("li",[a._v("Refactor tool bar with GtkToolbar widget")]),a._v(" "),r("li",[a._v("Fixed: Access denied: you need the SUPER privilege(s) for this operation")]),a._v(" "),r("li",[a._v("Fixed: close tab view after deleted the database object.")]),a._v(" "),r("li",[a._v("Fixed: update tab view after renamed the database object.")]),a._v(" "),r("li",[a._v("Fixed: can't get system name on MacOS platform")])]),a._v(" "),r("div",[r("script2",{attrs:{type:"text/javascript",async:"true",src:"https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"}}),a._v(" "),r("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),a._v(" "),r("script2",{attrs:{type:"text/javascript"}},[a._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),a._v(" "),r("h2",{attrs:{id:"installer-portable-packages"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#installer-portable-packages"}},[a._v("#")]),a._v(" Installer & Portable packages "),r("Badge",{attrs:{text:"link expired",type:"warning"}})],1),a._v(" "),r("p",[a._v("It is a very good idea to use sha256sum and GnuPG command to verify the sums and signature of your packages that download from the internet, make sure they are 100% correct.")]),a._v(" "),r("table",[r("thead",[r("tr",[r("th",[a._v("Packages")]),a._v(" "),r("th",[a._v("Windows(64 bit)")]),a._v(" "),r("th",[a._v("Linux(64 bit)")]),a._v(" "),r("th",[a._v("MacOS(64 bit)")])])]),a._v(" "),r("tbody",[r("tr",[r("td",[a._v("Installer"),r("br"),a._v("(Github.com)")]),a._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.7.1.210331/kangaroo-1.7.1.210331-AMD64.exe",target:"_blank",rel:"noopener noreferrer"}},[a._v("Windows"),r("OutboundLink")],1)]),a._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.7.1.210331/Kangaroo-1.7.1.210331-x86_64.AppImage",target:"_blank",rel:"noopener noreferrer"}},[a._v("AppImage"),r("OutboundLink")],1),a._v(" "),r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.7.1.210331/kangaroo-1.7.1.210331-1-x86_64.pkg.tar.xz",target:"_blank",rel:"noopener noreferrer"}},[a._v("Arch"),r("OutboundLink")],1)]),a._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.7.1.210331/kangaroo-1.7.1.210331-macos.dmg",target:"_blank",rel:"noopener noreferrer"}},[a._v("MacOS"),r("OutboundLink")],1)])]),a._v(" "),r("tr",[r("td",[a._v("Portable"),r("br"),a._v("(Github.com)")]),a._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.7.1.210331/kangaroo-1.7.1.210331-AMD64.7z",target:"_blank",rel:"noopener noreferrer"}},[a._v("Windows"),r("OutboundLink")],1)]),a._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.7.1.210331/kangaroo-1.7.1.210331-portable-x86_64.tar.gz",target:"_blank",rel:"noopener noreferrer"}},[a._v("Portable"),r("OutboundLink")],1),a._v(" "),r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.7.1.210331/kangaroo-1.7.1.210331-arch.tar.gz",target:"_blank",rel:"noopener noreferrer"}},[a._v("Arch"),r("OutboundLink")],1)]),a._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.7.1.210331/kangaroo-1.7.1.210331-macos.tar.gz",target:"_blank",rel:"noopener noreferrer"}},[a._v("MacOS"),r("OutboundLink")],1)])]),a._v(" "),r("tr",[r("td",[a._v("SHA256SUM"),r("br"),a._v("(Github.com)")]),a._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.7.1.210331/kangaroo-1.7.1.210331.sha256sum",target:"_blank",rel:"noopener noreferrer"}},[a._v("SHA256SUM"),r("OutboundLink")],1)]),a._v(" "),r("td",[r("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.7.1.210331/kangaroo-1.7.1.210331.sha256sum.asc",target:"_blank",rel:"noopener noreferrer"}},[a._v("SHA256SUM.GPG"),r("OutboundLink")],1)]),a._v(" "),r("td")]),a._v(" "),r("tr",[r("td",[a._v("-----------------")]),a._v(" "),r("td",[a._v("-----------------")]),a._v(" "),r("td",[a._v("-----------------")]),a._v(" "),r("td",[a._v("-----------------")])]),a._v(" "),r("tr",[r("td",[a._v("Installer"),r("br"),a._v("(Injdk.cn)")]),a._v(" "),r("td",[r("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.7.1.210331/kangaroo-1.7.1.210331-AMD64.exe",target:"_blank",rel:"noopener noreferrer"}},[a._v("Windows"),r("OutboundLink")],1)]),a._v(" "),r("td",[r("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.7.1.210331/Kangaroo-1.7.1.210331-x86_64.AppImage",target:"_blank",rel:"noopener noreferrer"}},[a._v("AppImage"),r("OutboundLink")],1),a._v(" "),r("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.7.1.210331/kangaroo-1.7.1.210331-1-x86_64.pkg.tar.xz",target:"_blank",rel:"noopener noreferrer"}},[a._v("Arch"),r("OutboundLink")],1)]),a._v(" "),r("td",[r("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/kangaroo/releases/download/v1.7.1.210331/kangaroo-1.7.1.210331-macos.dmg",target:"_blank",rel:"noopener noreferrer"}},[a._v("MacOS"),r("OutboundLink")],1)])]),a._v(" "),r("tr",[r("td",[a._v("Portable"),r("br"),a._v("(Injdk.cn)")]),a._v(" "),r("td",[r("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.7.1.210331/kangaroo-1.7.1.210331-AMD64.7z",target:"_blank",rel:"noopener noreferrer"}},[a._v("Windows"),r("OutboundLink")],1)]),a._v(" "),r("td",[r("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.7.1.210331/kangaroo-1.7.1.210331-portable-x86_64.tar.gz",target:"_blank",rel:"noopener noreferrer"}},[a._v("Portable"),r("OutboundLink")],1),a._v(" "),r("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.7.1.210331/kangaroo-1.7.1.210331-arch.tar.gz",target:"_blank",rel:"noopener noreferrer"}},[a._v("Arch"),r("OutboundLink")],1)]),a._v(" "),r("td",[r("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/kangaroo/releases/download/v1.7.1.210331/kangaroo-1.7.1.210331-macos.tar.gz",target:"_blank",rel:"noopener noreferrer"}},[a._v("MacOS"),r("OutboundLink")],1)])]),a._v(" "),r("tr",[r("td",[a._v("SHA256SUM"),r("br"),a._v("(Injdk.cn)")]),a._v(" "),r("td",[r("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.7.1.210331/kangaroo-1.7.1.210331.sha256sum",target:"_blank",rel:"noopener noreferrer"}},[a._v("SHA256SUM"),r("OutboundLink")],1)]),a._v(" "),r("td",[r("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.7.1.210331/kangaroo-1.7.1.210331.sha256sum.asc",target:"_blank",rel:"noopener noreferrer"}},[a._v("SHA256SUM.GPG"),r("OutboundLink")],1)]),a._v(" "),r("td")])])]),a._v(" "),r("h2",{attrs:{id:"share-with-friends"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#share-with-friends"}},[a._v("#")]),a._v(" Share with friends")]),a._v(" "),r("social-share",{attrs:{networks:["facebook","twitter","whatsapp","telegram","linkedin","reddit","line","skype","pinterest"]}})],1)}),[],!1,null,null,null);e.default=o.exports}}]); \ No newline at end of file diff --git a/assets/js/97.8e2e71c2.js b/assets/js/97.8e2e71c2.js new file mode 100644 index 000000000..77d4d5905 --- /dev/null +++ b/assets/js/97.8e2e71c2.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[97],{681:function(a,t,e){"use strict";e.r(t);var r=e(13),o=Object(r.a)({},(function(){var a=this,t=a.$createElement,e=a._self._c||t;return e("ContentSlotsDistributor",{attrs:{"slot-key":a.$parent.slotKey}},[e("h1",{attrs:{id:"kangaroo-v1-8-1-dev"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#kangaroo-v1-8-1-dev"}},[a._v("#")]),a._v(" Kangaroo v1.8.1 (Dev)")]),a._v(" "),e("h2",{attrs:{id:"new-features-bug-fixes"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#new-features-bug-fixes"}},[a._v("#")]),a._v(" New features & bug-fixes")]),a._v(" "),e("ol",[e("li",[a._v("Improve toolbar effect(show label and large icon default)")]),a._v(" "),e("li",[a._v("Improve the tab title for Query view")]),a._v(" "),e("li",[a._v("Open one instance of the same view only")]),a._v(" "),e("li",[a._v("Update app desktop entry's category")]),a._v(" "),e("li",[a._v("Add import/generate buttons for the model toolbar")]),a._v(" "),e("li",[a._v("Model: implement import entity models from the database")]),a._v(" "),e("li",[a._v("Model: load and save data of the table and view node")]),a._v(" "),e("li",[a._v("Model: implement change and close notification")]),a._v(" "),e("li",[a._v("Model: Add entity dialog")]),a._v(" "),e("li",[a._v("Model: improve effect of node(table / view / shape)")]),a._v(" "),e("li",[a._v("Fixed: can't show columns on the non-column page")]),a._v(" "),e("li",[a._v("Fixed: can't load libgda's plugin")]),a._v(" "),e("li",[a._v("Fixed: can't show node while loading large model file")])]),a._v(" "),e("div",[e("script2",{attrs:{type:"text/javascript",async:"true",src:"https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"}}),a._v(" "),e("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),a._v(" "),e("script2",{attrs:{type:"text/javascript"}},[a._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),a._v(" "),e("h2",{attrs:{id:"installer-portable-packages"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#installer-portable-packages"}},[a._v("#")]),a._v(" Installer & Portable packages "),e("Badge",{attrs:{text:"link expired",type:"warning"}})],1),a._v(" "),e("p",[a._v("Recommend to use tool "),e("code",[a._v("sha256sum")]),a._v(" to verify the sums and signature of your packages that download from the internet, make sure they are safe and 100% correct.")]),a._v(" "),e("table",[e("thead",[e("tr",[e("th",[a._v("Packages")]),a._v(" "),e("th",[a._v("Windows(64 bit)")]),a._v(" "),e("th",[a._v("Linux(64 bit)")]),a._v(" "),e("th",[a._v("MacOS(64 bit)")])])]),a._v(" "),e("tbody",[e("tr",[e("td",[a._v("Installer"),e("br"),a._v("(Github.com)")]),a._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.8.1.210430/kangaroo-1.8.1.210430-AMD64.exe",target:"_blank",rel:"noopener noreferrer"}},[a._v("Windows"),e("OutboundLink")],1)]),a._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.8.1.210430/kangaroo-1.8.1.210430-1-x86_64.pkg.tar.xz",target:"_blank",rel:"noopener noreferrer"}},[a._v("Arch"),e("OutboundLink")],1)]),a._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.8.1.210430/kangaroo-1.8.1.210430-macos.dmg",target:"_blank",rel:"noopener noreferrer"}},[a._v("MacOS"),e("OutboundLink")],1)])]),a._v(" "),e("tr",[e("td",[a._v("Portable"),e("br"),a._v("(Github.com)")]),a._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.8.1.210430/kangaroo-1.8.1.210430-AMD64.7z",target:"_blank",rel:"noopener noreferrer"}},[a._v("Windows"),e("OutboundLink")],1)]),a._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.8.1.210430/kangaroo-1.8.1.210430-portable-x86_64.tar.gz",target:"_blank",rel:"noopener noreferrer"}},[a._v("Portable"),e("OutboundLink")],1),a._v(" "),e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.8.1.210430/kangaroo-1.8.1.210430-arch.tar.gz",target:"_blank",rel:"noopener noreferrer"}},[a._v("Arch"),e("OutboundLink")],1)]),a._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.8.1.210430/kangaroo-1.8.1.210430-macos.tar.gz",target:"_blank",rel:"noopener noreferrer"}},[a._v("MacOS"),e("OutboundLink")],1)])]),a._v(" "),e("tr",[e("td",[a._v("SHA256SUM"),e("br"),a._v("(Github.com)")]),a._v(" "),e("td",[e("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.8.1.210430/kangaroo-1.8.1.210430.sha256sum",target:"_blank",rel:"noopener noreferrer"}},[a._v("SHA256SUM"),e("OutboundLink")],1)]),a._v(" "),e("td"),a._v(" "),e("td")]),a._v(" "),e("tr",[e("td",[a._v("-----------------")]),a._v(" "),e("td",[a._v("-----------------")]),a._v(" "),e("td",[a._v("-----------------")]),a._v(" "),e("td",[a._v("-----------------")])]),a._v(" "),e("tr",[e("td",[a._v("Installer"),e("br"),a._v("(Injdk.cn)")]),a._v(" "),e("td",[e("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.8.1.210430/kangaroo-1.8.1.210430-AMD64.exe",target:"_blank",rel:"noopener noreferrer"}},[a._v("Windows"),e("OutboundLink")],1)]),a._v(" "),e("td",[e("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.8.1.210430/kangaroo-1.8.1.210430-1-x86_64.pkg.tar.xz",target:"_blank",rel:"noopener noreferrer"}},[a._v("Arch"),e("OutboundLink")],1)]),a._v(" "),e("td",[e("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.8.1.210430/kangaroo-1.8.1.210430-macos.dmg",target:"_blank",rel:"noopener noreferrer"}},[a._v("MacOS"),e("OutboundLink")],1)])]),a._v(" "),e("tr",[e("td",[a._v("Portable"),e("br"),a._v("(Injdk.cn)")]),a._v(" "),e("td",[e("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.8.1.210430/kangaroo-1.8.1.210430-AMD64.7z",target:"_blank",rel:"noopener noreferrer"}},[a._v("Windows"),e("OutboundLink")],1)]),a._v(" "),e("td",[e("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.8.1.210430/kangaroo-1.8.1.210430-portable-x86_64.tar.gz",target:"_blank",rel:"noopener noreferrer"}},[a._v("Portable"),e("OutboundLink")],1),a._v(" "),e("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.8.1.210430/kangaroo-1.8.1.210430-arch.tar.gz",target:"_blank",rel:"noopener noreferrer"}},[a._v("Arch"),e("OutboundLink")],1)]),a._v(" "),e("td",[e("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.8.1.210430/kangaroo-1.8.1.210430-macos.tar.gz",target:"_blank",rel:"noopener noreferrer"}},[a._v("MacOS"),e("OutboundLink")],1)])]),a._v(" "),e("tr",[e("td",[a._v("SHA256SUM"),e("br"),a._v("(Injdk.cn)")]),a._v(" "),e("td",[e("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.8.1.210430/kangaroo-1.8.1.210430.sha256sum",target:"_blank",rel:"noopener noreferrer"}},[a._v("SHA256SUM"),e("OutboundLink")],1)]),a._v(" "),e("td"),a._v(" "),e("td")])])]),a._v(" "),e("h2",{attrs:{id:"share-with-friends"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#share-with-friends"}},[a._v("#")]),a._v(" Share with friends")]),a._v(" "),e("social-share",{attrs:{networks:["facebook","twitter","whatsapp","telegram","linkedin","reddit","line","skype","pinterest"]}})],1)}),[],!1,null,null,null);t.default=o.exports}}]); \ No newline at end of file diff --git a/assets/js/98.050e5b21.js b/assets/js/98.050e5b21.js new file mode 100644 index 000000000..4f6fc9979 --- /dev/null +++ b/assets/js/98.050e5b21.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[98],{683:function(e,t,a){"use strict";a.r(t);var r=a(13),o=Object(r.a)({},(function(){var e=this,t=e.$createElement,a=e._self._c||t;return a("ContentSlotsDistributor",{attrs:{"slot-key":e.$parent.slotKey}},[a("h1",{attrs:{id:"kangaroo-v1-9-1-dev"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#kangaroo-v1-9-1-dev"}},[e._v("#")]),e._v(" Kangaroo v1.9.1 (Dev)")]),e._v(" "),a("h2",{attrs:{id:"new-features-bug-fixes"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#new-features-bug-fixes"}},[e._v("#")]),e._v(" New features & bug-fixes")]),e._v(" "),a("ol",[a("li",[e._v("Add view designer")]),e._v(" "),a("li",[e._v("Add Toolbar control")]),e._v(" "),a("li",[e._v("Upgrade library libgda to 6.0.1")]),e._v(" "),a("li",[e._v("Improve connection stability for MySQL/MariaDB")]),e._v(" "),a("li",[e._v("Refactor repository's context menu")]),e._v(" "),a("li",[e._v("Implement rename function for SQLite")]),e._v(" "),a("li",[e._v("Implement rename function for MySQL/MariaDB")]),e._v(" "),a("li",[e._v("Implement new/edit/source/rename/dump/copy names function for view")]),e._v(" "),a("li",[e._v("Refactor query view's toolbar")]),e._v(" "),a("li",[e._v("Update the Chinese translation(zh-CN/zh-TW/zh-SG/zh-HK)")]),e._v(" "),a("li",[e._v("Add column reorder support for data grid")]),e._v(" "),a("li",[e._v("Improve format of DataTime/TimeStamp")]),e._v(" "),a("li",[e._v("Add geometric point type support")]),e._v(" "),a("li",[e._v("Add large text type support")]),e._v(" "),a("li",[e._v("Improve installer for windows and MacOS")]),e._v(" "),a("li",[e._v("Fixed: non-response while clicking the triangle icon on the tree")]),e._v(" "),a("li",[e._v("Fixed: NULL/Empty string invalid")]),e._v(" "),a("li",[e._v("Fixed: can't show view's columns in the model view")]),e._v(" "),a("li",[e._v("Fixed: enlarge model view while importing objects.")]),e._v(" "),a("li",[e._v("Fixed: can't load index entries (MySQL)")]),e._v(" "),a("li",[e._v("Fixed: can't modify boolean data")]),e._v(" "),a("li",[e._v("Fixed: warning message while loading intellisense data.")])]),e._v(" "),a("div",[a("script2",{attrs:{type:"text/javascript",async:"true",src:"https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"}}),e._v(" "),a("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),e._v(" "),a("script2",{attrs:{type:"text/javascript"}},[e._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),e._v(" "),a("h2",{attrs:{id:"installer-portable-packages"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#installer-portable-packages"}},[e._v("#")]),e._v(" Installer & Portable packages "),a("Badge",{attrs:{text:"link expired",type:"warning"}})],1),e._v(" "),a("p",[e._v("Recommend to use tool "),a("code",[e._v("sha256sum")]),e._v(" to verify the sums and signature of your packages that download from the internet, make sure they are safe and 100% correct.")]),e._v(" "),a("table",[a("thead",[a("tr",[a("th",[e._v("Packages")]),e._v(" "),a("th",[e._v("Windows(64 bit)")]),e._v(" "),a("th",[e._v("Linux(64 bit)")]),e._v(" "),a("th",[e._v("MacOS(64 bit)")])])]),e._v(" "),a("tbody",[a("tr",[a("td",[e._v("Installer"),a("br"),e._v("(Github.com)")]),e._v(" "),a("td",[a("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.9.1.210531/kangaroo-1.9.2.210603-AMD64.exe",target:"_blank",rel:"noopener noreferrer"}},[e._v("Windows"),a("OutboundLink")],1)]),e._v(" "),a("td",[a("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.9.1.210531/kangaroo-1.9.1.210531-1-x86_64.pkg.tar.xz",target:"_blank",rel:"noopener noreferrer"}},[e._v("Arch"),a("OutboundLink")],1)]),e._v(" "),a("td",[a("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.9.1.210531/kangaroo-1.9.1.210531-macos.dmg",target:"_blank",rel:"noopener noreferrer"}},[e._v("MacOS"),a("OutboundLink")],1)])]),e._v(" "),a("tr",[a("td",[e._v("Portable"),a("br"),e._v("(Github.com)")]),e._v(" "),a("td",[a("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.9.1.210531/kangaroo-1.9.2.210603-AMD64.7z",target:"_blank",rel:"noopener noreferrer"}},[e._v("Windows"),a("OutboundLink")],1)]),e._v(" "),a("td",[a("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.9.1.210531/kangaroo-1.9.1.210531-portable-x86_64.tar.gz",target:"_blank",rel:"noopener noreferrer"}},[e._v("Portable"),a("OutboundLink")],1),e._v(" "),a("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.9.1.210531/kangaroo-1.9.1.210531-arch.tar.gz",target:"_blank",rel:"noopener noreferrer"}},[e._v("Arch"),a("OutboundLink")],1)]),e._v(" "),a("td",[a("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.9.1.210531/kangaroo-1.9.1.210531-macos.tar.gz",target:"_blank",rel:"noopener noreferrer"}},[e._v("MacOS"),a("OutboundLink")],1)])]),e._v(" "),a("tr",[a("td",[e._v("SHA256SUM"),a("br"),e._v("(Github.com)")]),e._v(" "),a("td",[a("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.9.1.210531/kangaroo-1.9.1.210531.sha256sum",target:"_blank",rel:"noopener noreferrer"}},[e._v("SHA256SUM"),a("OutboundLink")],1)]),e._v(" "),a("td"),e._v(" "),a("td")]),e._v(" "),a("tr",[a("td",[e._v("-----------------")]),e._v(" "),a("td",[e._v("-----------------")]),e._v(" "),a("td",[e._v("-----------------")]),e._v(" "),a("td",[e._v("-----------------")])]),e._v(" "),a("tr",[a("td",[e._v("Installer"),a("br"),e._v("(Injdk.cn)")]),e._v(" "),a("td",[a("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.9.1.210531/kangaroo-1.9.2.210603-AMD64.exe",target:"_blank",rel:"noopener noreferrer"}},[e._v("Windows"),a("OutboundLink")],1)]),e._v(" "),a("td",[a("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.9.1.210531/kangaroo-1.9.1.210531-1-x86_64.pkg.tar.xz",target:"_blank",rel:"noopener noreferrer"}},[e._v("Arch"),a("OutboundLink")],1)]),e._v(" "),a("td",[a("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.9.1.210531/kangaroo-1.9.1.210531-macos.dmg",target:"_blank",rel:"noopener noreferrer"}},[e._v("MacOS"),a("OutboundLink")],1)])]),e._v(" "),a("tr",[a("td",[e._v("Portable"),a("br"),e._v("(Injdk.cn)")]),e._v(" "),a("td",[a("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.9.1.210531/kangaroo-1.9.2.210603-AMD64.7z",target:"_blank",rel:"noopener noreferrer"}},[e._v("Windows"),a("OutboundLink")],1)]),e._v(" "),a("td",[a("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.9.1.210531/kangaroo-1.9.1.210531-portable-x86_64.tar.gz",target:"_blank",rel:"noopener noreferrer"}},[e._v("Portable"),a("OutboundLink")],1),e._v(" "),a("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.9.1.210531/kangaroo-1.9.1.210531-arch.tar.gz",target:"_blank",rel:"noopener noreferrer"}},[e._v("Arch"),a("OutboundLink")],1)]),e._v(" "),a("td",[a("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.9.1.210531/kangaroo-1.9.1.210531-macos.tar.gz",target:"_blank",rel:"noopener noreferrer"}},[e._v("MacOS"),a("OutboundLink")],1)])]),e._v(" "),a("tr",[a("td",[e._v("SHA256SUM"),a("br"),e._v("(Injdk.cn)")]),e._v(" "),a("td",[a("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.9.1.210531/kangaroo-1.9.1.210531.sha256sum",target:"_blank",rel:"noopener noreferrer"}},[e._v("SHA256SUM"),a("OutboundLink")],1)]),e._v(" "),a("td"),e._v(" "),a("td")])])]),e._v(" "),a("h2",{attrs:{id:"share-with-friends"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#share-with-friends"}},[e._v("#")]),e._v(" Share with friends")]),e._v(" "),a("social-share",{attrs:{networks:["facebook","twitter","whatsapp","telegram","linkedin","reddit","line","skype","pinterest"]}})],1)}),[],!1,null,null,null);t.default=o.exports}}]); \ No newline at end of file diff --git a/assets/js/99.f00b06ed.js b/assets/js/99.f00b06ed.js new file mode 100644 index 000000000..531f26256 --- /dev/null +++ b/assets/js/99.f00b06ed.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[99],{682:function(t,e,a){"use strict";a.r(e);var r=a(13),o=Object(r.a)({},(function(){var t=this,e=t.$createElement,a=t._self._c||e;return a("ContentSlotsDistributor",{attrs:{"slot-key":t.$parent.slotKey}},[a("h1",{attrs:{id:"kangaroo-v1-90-1-dev"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#kangaroo-v1-90-1-dev"}},[t._v("#")]),t._v(" Kangaroo v1.90.1 (Dev)")]),t._v(" "),a("p",[t._v("This is a technical preview version, please don't use it in the production environment.")]),t._v(" "),a("h2",{attrs:{id:"new-features-bug-fixes"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#new-features-bug-fixes"}},[t._v("#")]),t._v(" New features & bug-fixes")]),t._v(" "),a("ol",[a("li",[t._v("Update UI toolkit from GTK3 to GTK4")]),t._v(" "),a("li",[t._v("Update UI library to GTK4 version")]),t._v(" "),a("li",[t._v("Update GtkSoureceView from 4 to 5")]),t._v(" "),a("li",[t._v("Merge setting and shortcut dialog")]),t._v(" "),a("li",[t._v("Add document overview map")]),t._v(" "),a("li",[t._v("Add style scheme support")]),t._v(" "),a("li",[t._v("Add development support")]),t._v(" "),a("li",[t._v("MySQL: Add user and privilege management support")]),t._v(" "),a("li",[t._v("MariaDB: Add user and privilege management support")]),t._v(" "),a("li",[t._v("PostgreSQL: Add user and privilege management support")])]),t._v(" "),a("div",[a("script2",{attrs:{type:"text/javascript",async:"true",src:"https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"}}),t._v(" "),a("ins",{staticClass:"adsbygoogle",staticStyle:{display:"block","text-align":"center"},attrs:{"data-ad-layout":"in-article","data-ad-format":"fluid","data-ad-client":"ca-pub-3975819313740938","data-ad-slot":"6760827895"}}),t._v(" "),a("script2",{attrs:{type:"text/javascript"}},[t._v("\n (adsbygoogle = window.adsbygoogle || []).push({});\n ")])],1),t._v(" "),a("h2",{attrs:{id:"installer-portable-packages"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#installer-portable-packages"}},[t._v("#")]),t._v(" Installer & Portable packages "),a("Badge",{attrs:{text:"link expired",type:"warning"}})],1),t._v(" "),a("p",[t._v("Recommend to use tool "),a("code",[t._v("sha256sum")]),t._v(" to verify the sums and signature of your packages that download from the internet, make sure they are safe and 100% correct.")]),t._v(" "),a("table",[a("thead",[a("tr",[a("th",[t._v("Packages")]),t._v(" "),a("th",[t._v("Windows")]),t._v(" "),a("th",[t._v("Linux")]),t._v(" "),a("th",[t._v("MacOS")]),t._v(" "),a("th",[t._v("iOS")]),t._v(" "),a("th",[t._v("Android")])])]),t._v(" "),a("tbody",[a("tr",[a("td",[t._v("Installer"),a("br"),t._v("(Github.com)")]),t._v(" "),a("td",[a("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.90.1.211231/kangaroo-1.90.1.211231-AMD64.exe",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows"),a("OutboundLink")],1)]),t._v(" "),a("td",[t._v("[Arch]")]),t._v(" "),a("td",[t._v("[MacOS]")]),t._v(" "),a("td"),t._v(" "),a("td")]),t._v(" "),a("tr",[a("td",[t._v("Portable"),a("br"),t._v("(Github.com)")]),t._v(" "),a("td",[a("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.90.1.211231/kangaroo-1.90.1.211231-AMD64.7z",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows"),a("OutboundLink")],1)]),t._v(" "),a("td",[t._v("[Arch]")]),t._v(" "),a("td",[t._v("[MacOS]")]),t._v(" "),a("td"),t._v(" "),a("td")]),t._v(" "),a("tr",[a("td",[t._v("SHA256SUM"),a("br"),t._v("(Github.com)")]),t._v(" "),a("td",[a("a",{attrs:{href:"https://github.com/dbkangaroo/kangaroo/releases/download/v1.90.1.211231/kangaroo-1.90.1.211231.sha256sum",target:"_blank",rel:"noopener noreferrer"}},[t._v("SHA256SUM"),a("OutboundLink")],1)]),t._v(" "),a("td"),t._v(" "),a("td"),t._v(" "),a("td"),t._v(" "),a("td")]),t._v(" "),a("tr",[a("td",[t._v("-----------------")]),t._v(" "),a("td",[t._v("-----------------")]),t._v(" "),a("td",[t._v("-----------------")]),t._v(" "),a("td",[t._v("-----------------")]),t._v(" "),a("td"),t._v(" "),a("td")]),t._v(" "),a("tr",[a("td",[t._v("Installer"),a("br"),t._v("(Injdk.cn)")]),t._v(" "),a("td",[a("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.90.1.211231/kangaroo-1.90.1.211231-AMD64.exe",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows"),a("OutboundLink")],1)]),t._v(" "),a("td",[t._v("[Arch]")]),t._v(" "),a("td",[t._v("[MacOS]")]),t._v(" "),a("td"),t._v(" "),a("td")]),t._v(" "),a("tr",[a("td",[t._v("Portable"),a("br"),t._v("(Injdk.cn)")]),t._v(" "),a("td",[a("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.90.1.211231/kangaroo-1.90.1.211231-AMD64.7z",target:"_blank",rel:"noopener noreferrer"}},[t._v("Windows"),a("OutboundLink")],1)]),t._v(" "),a("td",[t._v("[Arch]")]),t._v(" "),a("td",[t._v("[MacOS]")]),t._v(" "),a("td"),t._v(" "),a("td")]),t._v(" "),a("tr",[a("td",[t._v("SHA256SUM"),a("br"),t._v("(Injdk.cn)")]),t._v(" "),a("td",[a("a",{attrs:{href:"https://d4.injdk.cn/dbkangaroo/v1.90.1.211231/kangaroo-1.90.1.211231.sha256sum",target:"_blank",rel:"noopener noreferrer"}},[t._v("SHA256SUM"),a("OutboundLink")],1)]),t._v(" "),a("td"),t._v(" "),a("td"),t._v(" "),a("td"),t._v(" "),a("td")])])]),t._v(" "),a("h2",{attrs:{id:"share-with-friends"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#share-with-friends"}},[t._v("#")]),t._v(" Share with friends")]),t._v(" "),a("social-share",{attrs:{networks:["facebook","twitter","whatsapp","telegram","linkedin","reddit","line","skype","pinterest"]}})],1)}),[],!1,null,null,null);e.default=o.exports}}]); \ No newline at end of file diff --git a/assets/js/app.16ee319f.js b/assets/js/app.16ee319f.js new file mode 100644 index 000000000..fa65e7a9a --- /dev/null +++ b/assets/js/app.16ee319f.js @@ -0,0 +1,55 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[0],[]]);!function(e){function t(t){for(var r,i,l=t[0],s=t[1],u=t[2],d=0,f=[];d=n.length?{value:void 0,done:!0}:(e=r(n,o),t.index+=e.length,{value:e,done:!1})}))},function(e,t,n){"use strict";var r=n(2),o=n(97);r({target:"RegExp",proto:!0,forced:/./.exec!==o},{exec:o})},function(e,t,n){var r=n(0),o=n(92),a=r.String;e.exports=function(e){if("Symbol"===o(e))throw TypeError("Cannot convert a Symbol value to a string");return a(e)}},function(e,t,n){"use strict";var r=n(224),o=Object.prototype.toString;function a(e){return"[object Array]"===o.call(e)}function i(e){return void 0===e}function l(e){return null!==e&&"object"==typeof e}function s(e){if("[object Object]"!==o.call(e))return!1;var t=Object.getPrototypeOf(e);return null===t||t===Object.prototype}function u(e){return"[object Function]"===o.call(e)}function c(e,t){if(null!=e)if("object"!=typeof e&&(e=[e]),a(e))for(var n=0,r=e.length;n=O&&(A+=S(l,O,L)+M,O=L+U.length)}return A+S(l,O)}]}),!!l((function(){var e=/./;return e.exec=function(){var e=[];return e.groups={a:"7"},e},"7"!=="".replace(e,"$")}))||!P||T)},function(e,t){e.exports=!1},function(e,t,n){var r=n(8),o=n(11),a=n(50);e.exports=r?function(e,t,n){return o.f(e,t,a(1,n))}:function(e,t,n){return e[t]=n,e}},function(e,t){var n=Array.isArray;e.exports=n},function(e,t,n){var r,o=n(9),a=n(165),i=n(115),l=n(67),s=n(170),u=n(84),c=n(90),d=c("IE_PROTO"),f=function(){},h=function(e){return" + + + + + + + + +

# Why choose Vala to build Kangaroo?(Updated at 5/20/2022)

# Some thoughts about building Kangaroo

While I decided to build my own app, the most important thing is that what kind of talents of the new app should have? I think they are:

  1. Performance: native performance is the best.
  2. Keep code safe: the app must be safe to against to be cracked.
  3. Platform independent: support all platforms like Windows / macOS / Linux.
  4. Technology maturity: the technology stack could support to gain the business purpose, I need the money to continue the work.
  5. Master it easily: Language must be simple and powerful, sure it is familiar by yourself.

I had reviewed some kind of framework and languages like: +QT / C++ vs WxWidget / C++ vs GTK-mm / C++ vs GTK-rs / Rust / Go-GTK / Go vs GTK / Vala

finally, I chosen GTK / Vala combination to be the Kangaroo's tech stack.

+ (adsbygoogle = window.adsbygoogle || []).push({}); +

# Benefits and strength from Vala

  1. Syntax compatible with C# and Java
    +It gives your apps the performance of C/C++ with the productivity of C# and Java; pls see:
    Vala for Java Programmers (opens new window) Vala for C# Programmers (opens new window)

  2. Automatic memory management without GC
    +Vala's memory management is based on automatic reference counting, no GC, no GC performance issue.

  3. Mixin interface support
    +Vala's interface like PHP's traits and JavaScript's mixin.

  4. Dot(.) connect every thing
    +DBKangaroo project has more than 400 source code files, divide them as three subproject with many namespaces and many levels, all of them connect with the character dot(.), and they work greatly and smoothly.

  5. First class regex expression support
    +Regex expression treat as first class member, simple and powerful. Regex expression be used everywhere in DBKangaroo.

GLib.MatchInfo regex_match;
+Regex regex = /(?<x>[\d\.\-]+),(?<y>[\s]*[\-\d\.]+)/mi;
+if (regex.match(text, 0, out regex_match)) {
+    point_new.set_x(double.parse(regex_match.fetch_named("x")));
+    point_new.set_y(double.parse(regex_match.fetch_named("y")));
+} 
+

Special gift: a powerful regex online tool: Regex101 (opens new window)

  1. Performance of C/C++ with great interoperability
    +Vala produces C code as intermediate language to support all platforms, Vala code and C code could be compiled in the same project。

  2. Rich and powerful libraries
    +There are 300+ Vala bindings for GNOME foundation and other populary project. VAPIs @ Github (opens new window) VAPIs @ Project (opens new window)

  3. Excellent documentation
    +Vala has excellent documentation, be it in the form of tutorials (opens new window), code samples (opens new window) or a very easy-to-use API Reference (opens new window).
    Vala projects at GNOME (opens new window) Vala projects at Github (opens new window)

  4. Visual Studio Code with Vala language server support
    +The best Vala IDE is Visual Studio Code (opens new window) + Vala plugin (opens new window) + Vala language server (opens new window) + Meson(Ninja)/MSYS2, enjoy them, comtribute them, we can.

  5. Elementary OS team's primary language
    +Elementary's blog will tell you the truth: Why we write elementary apps in Vala (opens new window)

+ + + diff --git a/en/blog/002-how-to-deploy-gtk-app-on-windows.html b/en/blog/002-how-to-deploy-gtk-app-on-windows.html new file mode 100644 index 000000000..45acde4c2 --- /dev/null +++ b/en/blog/002-how-to-deploy-gtk-app-on-windows.html @@ -0,0 +1,198 @@ + + + + + + How to deploy GTK based app on windows?(Updated at 08/03/2020) | Kangaroo + + + + + + + + + + + +

# How to deploy GTK based app on windows?(Updated at 08/03/2020)

# Background

Since developing SQL client tool Kangaroo, I met the major trouble is how to deploy Kangaroo app to user, then searched all of solutions from internet, finally, I found a great article GTK+3 Installation Tutorial for Windows (opens new window), it provides clear guide to deploy GTK based app, so the honor belongs to the author of article.

# Precondition

The app must be compiled and executed in environment: MSYS2 (opens new window)

# Solution

# Prepare app directory structure

To deploy GTK based app, the app must follow the directory structure like linux:

[App Home]
+    ├─bin
+    ├─etc
+    │  └─gtk-3.0
+    ├─lib
+    └─share
+        ├─doc
+        ├─glib-2.0
+        │  └─schemas
+        ├─icons
+        │  ├─Adwaita
+        │  └─hicolor
+        ├─locale
+        └─themes
+            ├─Default
+            ├─MS-Windows
+            └─Windows10
+
+ (adsbygoogle = window.adsbygoogle || []).push({}); +

# Copy dependent libraries of app

List of GTK dependencies +GTK depends on several libraries:

  • GLib
  • cairo
  • Pango
  • ATK
  • gdk-pixbuf

To run GTK programs you will also need:

  • gettext-runtime
  • fontconfig
  • freetype
  • expat
  • libpng
  • zlib

How to get the file list and copy them to target dir?

the solution is a series of linux commands combination like this:

ldd "${SOURCEDIR}/build/src/kangaroo.exe" | grep '\/mingw64\/bin\/.*dll' -o | xargs -I{} cp -f "{}" "${TARGETDIR}/bin/"
+

Done the commands above is all right? No!!!

Some components in the GTK framework have plugins like gdk-pixbuf / libgda, so we must use the commands to copy them one by one.

ldd /mingw64/bin/libpq.dll | grep '\/mingw64\/bin\/.*dll' -o | xargs -I{} cp -f "{}" "${TARGETDIR}/bin/"
+

# Copy app resource file

  • /etc

    • /gtk-3.0/settings.ini : applications-wide settings.
    • *: miscellaneous files.
  • /lib

    • /gdk-pixbuf-2.0 : GDK-Pixbuf modules. SVG support.
    • /gtk-3.0 : GTK+-IM modules.
    • /pango : Pango modules.
    • *: import libraries, headers, pkg-config files... only needed for development.
  • /share

    • /doc : license and copyleft.
    • /gtk-3.0 : resource files for gtk3-demo program.
    • /gtk-doc : documentation in HTML format.
    • /icons : icon themes, used by gtk3-demo and gtk3-widget-factory.
    • /locale : localization files. Internationalized text support.
    • /themes : graphical themes.
    • *: miscellaneous files.

# Compare the runtime dependency view

Execute the app under user environment and the app under dev environment in full function mode, compare the runtime dependency view, check the count of dll file and dll file name. make sure they are the same.

Runtime dependency dll view tool Process Explorer (opens new window)

+ (adsbygoogle = window.adsbygoogle || []).push({}); +

# Full source code

#!/usr/bin/env sh
+#
+# Copyright(C) 2018-2020 taozuhong(https://github.com/taozuhong)
+# Important:
+#   These functions are a part of the Kangaroo tool suite;
+#   copyright taozuhong. 2018-2020.  All rights reserved.
+#
+# Author:    taozuhong
+# Created:   1.8.2019
+#
+SOURCEDIR="$( cd "$(dirname "$0")/../" ; pwd -P )"
+TARGETDIR="${SOURCEDIR}/build/windows"
+VERSION="0.7.2.$(date +%y%m%d)"
+# check target directory exist and make it
+echo -n "Check and make target directory......"
+if [ ! -d "$TARGETDIR" ]; then
+  mkdir $TARGETDIR
+  mkdir "${TARGETDIR}/bin/"
+  mkdir "${TARGETDIR}/lib/"
+  mkdir -p "${TARGETDIR}/share/glib-2.0/schemas"
+  mkdir "${TARGETDIR}/share/doc"
+  mkdir "${TARGETDIR}/share/themes"
+  mkdir "${TARGETDIR}/etc/"
+else 
+  if [ ! -d "${TARGETDIR}/bin" ]; then
+    mkdir "${TARGETDIR}/bin/"
+  fi
+  if [ ! -d "${TARGETDIR}/lib" ]; then
+    mkdir "${TARGETDIR}/lib/"
+  fi
+  if [ ! -d "${TARGETDIR}/share" ]; then
+    mkdir -p "${TARGETDIR}/share/glib-2.0/schemas"
+    mkdir "${TARGETDIR}/share/"
+    mkdir "${TARGETDIR}/share/doc"
+    mkdir "${TARGETDIR}/share/themes"
+  fi
+  if [ ! -d "${TARGETDIR}/etc" ]; then
+    mkdir "${TARGETDIR}/etc/"
+  fi
+fi
+echo "[done]"
+# copy app dependency library to target dir
+echo -n "Copy app dependency library......"
+ldd "${SOURCEDIR}/build/src/kangaroo.exe" | grep "$MSYSTEM_PREFIX\/bin\/.*dll" -o | xargs -I{} cp -f "{}" "${TARGETDIR}/bin/"
+ldd $MSYSTEM_PREFIX/bin/libjson-glib-1.0-0.dll | grep "$MSYSTEM_PREFIX\/bin\/.*dll" -o | xargs -I{} cp -f "{}" "${TARGETDIR}/bin/"
+ldd $MSYSTEM_PREFIX/bin/libsoup-2.4-1.dll | grep "$MSYSTEM_PREFIX\/bin\/.*dll" -o | xargs -I{} cp -f "{}" "${TARGETDIR}/bin/"
+ldd $MSYSTEM_PREFIX/bin/libgtksourceview-4-0.dll | grep "$MSYSTEM_PREFIX\/bin\/.*dll" -o | xargs -I{} cp -f "{}" "${TARGETDIR}/bin/"
+cp -f "${SOURCEDIR}/build/src/kangaroo.exe" "${TARGETDIR}/bin/"
+cp -f "${SOURCEDIR}/data/assets/kangaroo.ico" "${TARGETDIR}/bin/"
+cp -f $MSYSTEM_PREFIX/bin/librsvg-2-2.dll "${TARGETDIR}/bin/"
+cp -f $MSYSTEM_PREFIX/bin/libgthread-2.0-0.dll "${TARGETDIR}/bin/"
+cp -f $MSYSTEM_PREFIX/bin/libcroco-0.6-3.dll "${TARGETDIR}/bin/"
+cp -f $MSYSTEM_PREFIX/bin/libtasn1-6.dll "${TARGETDIR}/bin/"
+cp -f $MSYSTEM_PREFIX/bin/libproxy-1.dll "${TARGETDIR}/bin/"
+cp -f $MSYSTEM_PREFIX/bin/libp11-kit-0.dll "${TARGETDIR}/bin/"
+cp -f $MSYSTEM_PREFIX/bin/libnettle-7.dll "${TARGETDIR}/bin/"
+cp -f $MSYSTEM_PREFIX/bin/libhogweed-5.dll "${TARGETDIR}/bin/"
+cp -f $MSYSTEM_PREFIX/bin/libgnutls-30.dll "${TARGETDIR}/bin/"
+cp -f $MSYSTEM_PREFIX/bin/libgmp-10.dll "${TARGETDIR}/bin/"
+echo "[done]"
+# copy GDBus/Helper and dependencies files
+echo -n "Copy GDBus/Helper and dependencies......"
+cp -f $MSYSTEM_PREFIX/bin/gdbus.exe "${TARGETDIR}/bin/"
+ldd $MSYSTEM_PREFIX/bin/gdbus.exe | grep "$MSYSTEM_PREFIX\/bin\/.*dll" -o | xargs -I{} cp -f "{}" "${TARGETDIR}/bin/"
+cp -f $MSYSTEM_PREFIX/bin/gspawn-win64-helper.exe "${TARGETDIR}/bin/"
+ldd $MSYSTEM_PREFIX/bin/gspawn-win64-helper.exe | grep "$MSYSTEM_PREFIX\/bin\/.*dll" -o | xargs -I{} cp -f "{}" "${TARGETDIR}/bin/"
+echo "[done]"
+# libgda providers required library(MySQL/PostgreSQL/JDBC/...)
+echo -n "Copy database client library for libgda......"
+cp -f $MSYSTEM_PREFIX/bin/libpq.dll "${TARGETDIR}/bin/"
+cp -f $MSYSTEM_PREFIX/bin/mariadb.dll "${TARGETDIR}/bin/"
+ldd $MSYSTEM_PREFIX/bin/libpq.dll | grep "$MSYSTEM_PREFIX\/bin\/.*dll" -o | xargs -I{} cp -f "{}" "${TARGETDIR}/bin/"
+ldd $MSYSTEM_PREFIX/bin/mariadb.dll | grep "$MSYSTEM_PREFIX\/bin\/.*dll" -o | xargs -I{} cp -f "{}" "${TARGETDIR}/bin/"
+if [ -d "${SOURCEDIR}/libs/plugin" ]; then
+  cp -rf "${SOURCEDIR}/libs/plugin" "${TARGETDIR}/lib"
+fi
+echo "[done]"
+# copy GTK runtime dependencies resource
+echo -n "Copy GTK runtime resource......"
+cp -rf $MSYSTEM_PREFIX/lib/gdk-pixbuf-2.0 "${TARGETDIR}/lib/"
+cp -rf $MSYSTEM_PREFIX/lib/libgda-5.0 "${TARGETDIR}/lib/"
+cp -rf $MSYSTEM_PREFIX/lib/gio "${TARGETDIR}/lib/"
+cp -rf $MSYSTEM_PREFIX/etc/gtk-3.0 "${TARGETDIR}/etc/"
+cp -rf $MSYSTEM_PREFIX/share/icons "${TARGETDIR}/share/"
+cp -rf $MSYSTEM_PREFIX/share/locale "${TARGETDIR}/share/"
+cp -rf $MSYSTEM_PREFIX/share/gtksourceview-4 "${TARGETDIR}/share/"
+glib-compile-schemas $MSYSTEM_PREFIX/share/glib-2.0/schemas
+cp -f $MSYSTEM_PREFIX/share/glib-2.0/schemas/gschema* "${TARGETDIR}/share/glib-2.0/schemas"
+cp -rf $MSYSTEM_PREFIX/share/themes/Default "${TARGETDIR}/share/themes/"
+cp -rf $MSYSTEM_PREFIX/share/themes/MS-Windows "${TARGETDIR}/share/themes/"
+find "${TARGETDIR}/lib" -type f -path '*.dll.a' -exec rm '{}' \;
+echo "[done]"
+# download license file: LGPL-3.0
+echo -n "Downloading the remote license file......"
+if [ ! -f "${TARGETDIR}/share/doc/lgpl-3.0.txt" ]; then
+  curl "https://www.gnu.org/licenses/lgpl-3.0.txt" -o "${TARGETDIR}/share/doc/lgpl-3.0.txt"
+fi
+if [ -f "${TARGETDIR}/share/doc/lgpl-3.0.txt" ]; then
+  echo "[done]"
+else
+  echo "[failed]"
+fi
+
+ + + diff --git a/en/blog/003-serialize-glib-object.html b/en/blog/003-serialize-glib-object.html new file mode 100644 index 000000000..fabf05c1b --- /dev/null +++ b/en/blog/003-serialize-glib-object.html @@ -0,0 +1,169 @@ + + + + + + How to serialize / deserialize GLib object | Kangaroo + + + + + + + + + + + +

# How to serialize / deserialize GLib object(Will update later)

# Background

How to compare two objects and generate the patch for them? It is a important step to forward Kangaroo 1.0. +I don't know which library is the best way to solve this problem, So I start to study this problem.

# Solution

In GLib framework, there are two libraries support to serialize / deserialize object, there are:

Library Latest version Website Description
JSON-GLib 1.44 JSON-GLib (opens new window) JSON-GLib implements a full JSON parser and generator using GLib and GObject, and integrates JSON with GLib data types.
GXML 0.16 GXML (opens new window) GXml provides a GObject API for manipulating XML and a Serializable framework from GObject to XML.

# Which library is suitable for this problem?

let us list a checklist to check which library is better for our problem:

Key item GXML JSON-GLib Remark
Basic types [x] Supported [x] Supported char/int/double/...
Boxed types [ ] Unsupported [x] Supported Value/Variant/...
Object [x] Supported [x] Supported GObject based object
Vala Array [x] Supported [ ] Unsupported container type
Gee.ArrayList [x] Supported [ ] Unsupported container type
Gee.HashMap [x] Supported [ ] Unsupported container type
Gee.TreeMap [x] Supported [ ] Unsupported container type
Gee.LinkedList [ ] Unsupported [ ] Unsupported container type
GLib.Array [ ] Unsupported [ ] Unsupported container type
GLib.List [ ] Unsupported [ ] Unsupported container type
GLib.SList [ ] Unsupported [ ] Unsupported container type
GLib.Queue [ ] Unsupported [ ] Unsupported container type
GLib.HastTable [ ] Unsupported [ ] Unsupported container type
+ (adsbygoogle = window.adsbygoogle || []).push({}); +

# Advantage / Disadvantage of GXML

Advantage

  1. Vala friendly
  2. Support four kinds of Gee container.

Disadvantage

  1. Missing GLib built-in container support.
  2. Missing boxed type support

# Advantage / Disadvantage of JSON-GLib

Advantage

  1. support to register new type function to serialize / deserialize unsupported types, both boxed types and complex objects.
  2. Boxed type and container friendly.

Disadvantage

  1. Missing GLib built-in container support.

# JSON-GLib is the choice

For Kangaroo project, the final choice is JSON-GLib, because it is boxed type and container friendly, and support to register new type function to serialize/deserialize unsupported types, so the user could handle all new GObject based type.

# Example

# GLib container serialization

    public class DbObject : GLib.Object, Json.Serializable
+    {
+        public Json.Object? meta { get; construct set; default = null; }
+        public VersionSync version { get; set; default = VersionSync.UNKNOWN; }
+        public virtual Value get_property (ParamSpec pspec)
+        {
+            Value prop_value = GLib.Value(pspec.value_type);
+            (this as GLib.Object).get_property(pspec.name, ref prop_value);
+            stdout.printf ("%s --> %s\n", prop_value.type_name(), prop_value.strdup_contents());
+            return prop_value;
+        }
+        public virtual void set_property (ParamSpec pspec, Value value)
+        {
+            (this as GLib.Object).set_property (pspec.name, value);
+        }
+        public unowned ParamSpec? find_property (string name)
+        {
+            return ((ObjectClass) get_type ().class_ref ()).find_property (name);
+        }
+        public virtual Json.Node serialize_property (string property_name, Value @value, ParamSpec pspec)
+        {
+            if (@value.type ().is_a (typeof (Json.Object)))
+            {
+                var obj = @value as Json.Object;
+                if (obj != null)
+                {
+                    var node = new Json.Node (NodeType.OBJECT);
+                    node.set_object (obj);
+                    return node;
+                }
+            }
+            else if (@value.type ().is_a (typeof (Gee.ArrayList)))
+            {
+                unowned Gee.ArrayList<GLib.Object> list_value = @value as Gee.ArrayList<GLib.Object>;
+                if (list_value != null || property_name == "data")
+                {
+                    var array = new Json.Array.sized (list_value.size);
+                    foreach (var item in list_value)
+                    {
+                        array.add_element (gobject_serialize (item));
+                    }
+                    var node = new Json.Node (NodeType.ARRAY);
+                    node.set_array (array);
+                    return node;
+                }
+            }
+            else if (@value.type ().is_a (typeof (GLib.Array)))
+            {
+                unowned GLib.Array<GLib.Object> array_value = @value as GLib.Array<GLib.Object>;
+                if (array_value != null || property_name == "data")
+                {
+                    var array = new Json.Array.sized (array_value.length);
+                    for (int i = 0; i < array_value.length; i++) {
+                        array.add_element (gobject_serialize (array_value.index(i)));
+                    }
+                    var node = new Json.Node (NodeType.ARRAY);
+                    node.set_array (array);
+                    return node;
+                }
+            }            
+            else if (@value.type ().is_a (typeof (HashTable)))
+            {
+                var obj = new Json.Object ();
+                var ht_string = @value as HashTable<string, string>;
+                if (ht_string != null)
+                {
+                    ht_string.foreach ((k, v) => {
+                        obj.set_string_member (k, v);
+                    });
+                    var node = new Json.Node (NodeType.OBJECT);
+                    node.set_object (obj);
+                    return node;
+                } else {
+                    var ht_object = @value as HashTable<string, GLib.Object>;
+                    if (ht_object != null)
+                    {
+                        ht_object.foreach ((k, v) => {
+                            obj.set_member (k, gobject_serialize (v));
+                        });    
+                        var node = new Json.Node (NodeType.OBJECT);
+                        node.set_object (obj);
+                        return node;
+                    }
+                }
+            }
+            return default_serialize_property (property_name, @value, pspec);
+        }
+        public virtual bool deserialize_property (string property_name, out Value @value, ParamSpec pspec, Json.Node property_node)
+        {
+            return default_deserialize_property (property_name, out @value, pspec, property_node);
+        }
+    }
+
+ (adsbygoogle = window.adsbygoogle || []).push({}); +

# Reference

GXml: Objects and Collections to XML and back (opens new window)

GXml 0.14 and Serialization (opens new window)

HowTo: GObject Serialization to XML using GXml (opens new window)

Serializing object property with Json.gobject_serialize? (opens new window)

json-api-object.vala (opens new window)

Is there no way to auto serialize any array with data to JSON? (opens new window)

+ + + diff --git a/en/blog/004-how-to-deploy-gtk-app-on-mac.html b/en/blog/004-how-to-deploy-gtk-app-on-mac.html new file mode 100644 index 000000000..da522d141 --- /dev/null +++ b/en/blog/004-how-to-deploy-gtk-app-on-mac.html @@ -0,0 +1,227 @@ + + + + + + How to deploy GTK based app on Mac OS X? | Kangaroo + + + + + + + + + + + +

# How to deploy GTK based app on Mac OS X?

# Background

Many friends ask me to provide the official installer package(.dmg) for Mac OS X, I do want to implement it. But there is a big stone on the way, because I don't have physical machine and landed OS X just a short time, have many dark hole on it.

Face it, solve it, things will be done, I think.

Tried again and again, 8 days later, found the right way finally.

# Precondition and environment

Using the package manager toolHomebrew (opens new window) to install all app dependency libraries.

You need to install GTK、libgda、GtkSourceView4、Vala、GCC toolchain / etc.

# Solution

# Prepare app directory structure

To deploy GTK based app, the app must follow the structure of OS X bundle structure and Linux platform structure, and the final structure as follow:

[Kangaroo.app]
+    └─Contents
+        ├─Info.plist
+        ├─MacOS
+        │  ├─launcher.sh
+        │  └─<Real app>
+        └─Resources
+            ├─bin
+            ├─etc
+            │  └─gtk-3.0
+            ├─include
+            ├─lib
+            │  ├─gdk-pixbuf-2.0
+            │  │  └─2.10.0
+            │  │      └─loaders
+            │  ├─gio
+            │  │  └─modules
+            │  ├─girepository-1.0
+            │  ├─gtk-3.0
+            │  │  └─3.0.0
+            │  │      ├─immodules
+            │  │      └─printbackends
+            │  ├─kangaroo
+            │  │  └─plugins
+            │  │      └─example
+            │  ├─libgda-5.0
+            │  │  └─providers
+            │  ├─pkgconfig
+            │  └─plugin
+            └─share
+                ├─appdata
+                ├─applications
+                ├─doc
+                ├─fontconfig
+                │  └─conf.avail
+                ├─glib-2.0
+                │  └─schemas
+                ├─gtksourceview-4
+                │  ├─language-specs
+                │  └─styles
+                ├─icons
+                │  ├─Adwaita
+                │  └─hicolor
+                ├─licenses
+                │  └─kangaroo
+                ├─locale
+                ├─themes
+                │  ├─Default
+                │  └─Mac
+                └─vala
+                    └─vapi
+
+ (adsbygoogle = window.adsbygoogle || []).push({}); +

# Key components of app bundler

There are some core components in the GTK app as follow:

Key components Comment
GTK GTK libraries like GTK / GDK / Pango / ...
launcher.sh app start point script, set environments for app like gdk-pixbuf plugins / GTK input modules and print backends / libgda's providers / ...
Real app your real app
Info.plist bundler package info list file, contain app entry point information, like GtkOSXLaunchScriptFile / CFBundleExecutable / CFBundleIconFiles
app.icns app's icons

# prepare app resource

Your should make app resources before start compiling and packing your app:

  1. App script: launcher.sh
  2. App icon(image or .icns)
  3. Info.plist

# deploy your app as linux app

First, compile and install app to the target dir:

meson --prefix=$TARGETDIR --buildtype=release build
+ninja -C "${PROJECTDIR}/build" install
+

Then copy all dependency libraries and resources to the target dir, make a full and standalone linux app.

function lib_dependency_copy
+{
+  # This function use otool to analyze library dependency.
+  # then copy the dependency libraries to destination path
+  local target=$1
+  local folder=$2
+  libraries="$(otool -L $target | grep "/*.*dylib" -o | xargs)"
+  for lib in $libraries; do
+    if [[ '/usr/lib/' != ${lib:0:9} && '/System/Library/' != ${lib:0:16} ]]; then
+      cp -n $lib $folder
+    fi  
+  done
+}
+function lib_dependency_analyze
+{
+  # This function use otool to analyze library directory.
+  # then copy the dependency libraries to destination path
+  local library_dir=$1
+  local targets_dir=$2
+  libraries="$(find $library_dir -name \*.dylib -o -name \*.so -type f)"
+  for lib in $libraries; do
+      lib_dependency_copy $lib $targets_dir
+  done
+}
+# copy app dependency library to target dir
+echo -n "Copy app dependency library......"
+cp -f "${PROJECTDIR}/build/src/kangaroo" "${TARGETDIR}/bin"
+cp -f "${TARGETDIR}/lib/libkangaroo.dylib" "${TARGETDIR}/bin"
+cp -f "${PROJECTDIR}/tools/mac_launcher.sh" "${TARGETDIR}/bin/launcher.sh"
+lib_dependency_copy ${PROJECTDIR}/build/src/libkangaroo.dylib "${TARGETDIR}/bin"
+lib_dependency_copy ${TARGETDIR}/bin/libglib-2.0.0.dylib "${TARGETDIR}/bin"
+lib_dependency_copy ${TARGETDIR}/bin/libgtk-3.0.dylib "${TARGETDIR}/bin"
+lib_dependency_copy ${TARGETDIR}/bin/libjson-glib-1.0.0.dylib "${TARGETDIR}/bin"
+lib_dependency_copy ${TARGETDIR}/bin/libsoup-2.4.1.dylib "${TARGETDIR}/bin"
+lib_dependency_copy ${TARGETDIR}/bin/libgtksourceview-4.0.dylib "${TARGETDIR}/bin"
+cp -f /usr/local/lib/libgtkmacintegration-gtk3.2.dylib "${TARGETDIR}/bin"
+cp -f /usr/local/lib/libgirepository-1.0.1.dylib "${TARGETDIR}/bin"
+cp -f /usr/local/lib/librsvg-2.2.dylib "${TARGETDIR}/bin"
+cp -f /usr/local/lib/libgthread-2.0.0.dylib "${TARGETDIR}/bin"
+cp -f /usr/local/lib/libcroco-0.6.3.dylib "${TARGETDIR}/bin"
+cp -f /usr/local/lib/p11-kit-proxy.dylib "${TARGETDIR}/bin"
+cp -f /usr/local/lib/libgmpxx.4.dylib "${TARGETDIR}/bin"
+lib_dependency_analyze ${TARGETDIR}/bin ${TARGETDIR}/bin
+echo "[done]"
+

# Bundle your app as OS X app

Convert the full linux app to Mac OS X .app structure, just make the structure folder and copy files.

How to verify the app and dependency libraries are self-dependency?
+Can't verify so far, We must entry next step to solve the library locating problem.

+ (adsbygoogle = window.adsbygoogle || []).push({}); +

On the Mac OS X platform, the most important problem is the app how to find the library while running, We can solve this problem by two ways:

  1. Using lib tool(otool and install_name_tool) to add or replace link path
# Gdk-pixbuf plugins
+pixbuf_plugins="$(find $APP_LIB_DIR/gdk-pixbuf-2.0/2.10.0/loaders/ -name \*.dylib -o -name \*.so -type f)"
+for pixbuf_plugin in $pixbuf_plugins; do
+  lib_change_paths \
+    @executable_path/../Resources/lib \
+    $APP_LIB_DIR \
+    $pixbuf_plugin
+done
+lib_change_paths \
+  @executable_path/../Resources/lib \
+  $APP_LIB_DIR \
+  $APP_EXE_DIR/gdbus
+lib_change_siblings $APP_LIB_DIR @loader_path
+
  1. Using environments to tell app or library to find its dependency libraries.
export DYLD_LIBRARY_PATH="$bundle_lib"
+export XDG_CONFIG_DIRS="$bundle_etc"/xdg
+export XDG_DATA_DIRS="$bundle_data"
+export GTK_DATA_PREFIX="$bundle_res"
+export GTK_EXE_PREFIX="$bundle_res"
+export GTK_PATH="$bundle_res"
+# PANGO_* is no longer needed for pango >= 1.38
+export PANGO_RC_FILE="$bundle_etc/pango/pangorc"
+export PANGO_SYSCONFDIR="$bundle_etc"
+export PANGO_LIBDIR="$bundle_lib"
+# Pixbuf plugins
+export GDK_PIXBUF_MODULEDIR="$bundle_lib/gdk-pixbuf-2.0/2.10.0/loaders"
+export GDK_PIXBUF_MODULE_FILE="$bundle_lib/gdk-pixbuf-2.0/2.10.0/loaders.cache"
+# MySQL / MaridDB plugins
+export LIBMYSQL_PLUGIN_DIR="$bundle_lib/plugin"
+export LIBMYSQL_ENABLE_CLEARTEXT_PLUGIN=Y
+

# Verify your app(.app)

There are two ways to verify the app:

  1. Start and debug your app
    GTK_DEBUG_LAUNCHER=yes MyApp.app/Contents/MacOS/MyApp
    +This will print out the steps performed by the launcher script before the application executable is started.

    +To run the application under gdb:
    GTK_DEBUG_GDB=yes MyApp.app/Contents/MacOS/MyApp

  2. Using lib tool to list its dependency libraries
    otool -L MyApp.app/Contents/MacOS/MyApp
    +this command will list all dependency libraries with full link path

# Create app package(.dmg)

There are many tool support make dmg package, I choose node-appdmg (opens new window) to create app package, because it using JSON configuration file and output step detail into console.

{
+    "title": "Kangaroo installer",
+    "icon": "kangaroo.icns",
+    "background": "kangaroo_dmg_background.png",
+    "contents": [
+      { "x": 448, "y": 170, "type": "link", "path": "/Applications" },
+      { "x": 192, "y": 170, "type": "file", "path": "kangaroo.app" }
+    ]
+}
+
# make installer package
+echo "make macos installer(.dmg)......"
+cp "${PROJECTDIR}/tools/installers/dmg.json" kangaroo_dmg.json
+cp "${PROJECTDIR}/data/assets/background.png" "${PROJECTDIR}/build/kangaroo_dmg_background.png"
+appdmg kangaroo_dmg.json "kangaroo-${VERSION}-macos.dmg"
+if [ $? -eq 0 ]; then
+  echo "[done]"
+  else
+  echo "[failed]"
+fi
+
+ (adsbygoogle = window.adsbygoogle || []).push({}); +

# Script source files

You can download the complete packaging tool script source files from here, welcome to use and share with your friends.

Info.plist
mac_launcher.sh
mac_app_path.sh
mac_app_pack.sh
deploy_macos.sh

# Reference

There are many resources helped me to find the final solution, thank for you all, the major resources are:

node-appdmg (opens new window)
oubiwann's appify.sh (opens new window)
inkscape packaging: lib_.sh (opens new window)
gtk-mac-bundler gtk3-launcher.sh (opens new window)

+ + + diff --git a/en/blog/005-GTK4-upgrade-report-phase-1.html b/en/blog/005-GTK4-upgrade-report-phase-1.html new file mode 100644 index 000000000..4c36fc2a4 --- /dev/null +++ b/en/blog/005-GTK4-upgrade-report-phase-1.html @@ -0,0 +1,118 @@ + + + + + + Kangaroo GTK4 upgrade report (Phase 1) | Kangaroo + + + + + + + + + + + +

# Kangaroo GTK4 upgrade report (Phase 1)

Kangaroo app(based on GTK3) has passed the compilation with GTK4 framework and its dependency libraries this week(10/29/2021), it cost me six weeks and met many troubles, so make a GTK4 upgrade report for sharing.

# Project information

Project summary

  • Developers: 1
  • Machine: ThinkPad T450 + Windows 10
  • Vala source files: 364
  • GtkBuild UI files: 23
  • Action SVG files: 58
  • Action built-in: 280
  • Support platforms: Windows, macOS, Linux

# Development environment

Kangaroo's development environment is based on MSYS2 tool suite, the detail are as follow:

Feature Tool Version
Package manager pacman 6.0.1
Terminal mintty 3.5.1
IDE(Editor) Visual Studio Code + Vala 1.60
Build meson + ninja 0.58
Installer NSIS 3.0.6
Virtual VM VirtualBox 6.1
+ (adsbygoogle = window.adsbygoogle || []).push({}); +

Kangaroo app integrates with many third-party libraries, the third-party libraries detail as follow:

Feature Third-party library Version
Compiler Vala (opens new window) 0.54.2
Platform GLib2 (opens new window) 2.68.1
GUI Toolkit GTK3 --> GTK4 (opens new window) 3.24.30 --> 4.4.0
GUI adaptive libhandy (opens new window) --> libadwaita (opens new window) 1.4.0 --> 1.0.0 alpha2
Code editor GtkSourceView4 --> GtkSourceView5 (opens new window) 4.8.2 --> 5.2.0
Map libshumate (opens new window) unknown
JSON json-glib (opens new window) 1.6.6
Data access libgda (opens new window) 6.0.0
Container libgee (opens new window) 0.20.3
SSH libssh2 (opens new window) 1.9.0
XML libxml2 (opens new window) 2.9.12
cryptography OpenSSL (opens new window) 1.1.1.k
Encoding uchardet (opens new window) 0.0.7
Plugin libpeas (opens new window) 1.30.0
File format libarchive (opens new window) 3.5.1
HTTP libsoup (opens new window) 2.72.0
Template template-glib (opens new window) 3.34.0

# GTK4 upgrade summary

To pass the compilation, Kangaroo source code had been refactored five rounds, every round found many compile issues

Round Action Issues
round 1 1. Fixed namespace issues
2. fixed missed API issues
400+
Round 2 1. Fixed GtkContainer API issues
2. Fixed GtkBin widget issues
1720+
Round 3 1. Fixed clipboard API issues
2. Fixed mouse and keyboard signal issues
1454
Round 4 1. Fixed GtkBuilder issues
2. Fixed UI module issues
800+
Round 5 Fixed the final flag issues:
GtkPaned
GtkScrolledWindow
GtkStack
GtkOverlay
GtkNotebook
GtkTreeViewColumn
Gtk.ComboBoxText
Gtk.Assistant
8 widget class issues
about 1430+ issues

Finally, the Kangaroo app GTK4 version had been compiled on 10/29/2021, then executed ASAP, a wired UI with many missed features shown on my face, Now, I know it's a big step to upgrade to the GTK4 version, and much more effort need to spend on it.

+ (adsbygoogle = window.adsbygoogle || []).push({}); +

# Technical analysis and solution

Now we will share some important trouble and its solution, help newbies fix them quickly.

# 1. Container API

In the GTK4, GtkContainer class has been removed, all widgets can hold child widgets, its API replaced with a common APIs: prepend/append/insert/remove:

GTK3 API GTK4 API Recommend for upgrade
add
pack_start
prepend
append
append
pack_end insert_child_after append
reorder_child reorder_child_after reorder_child_after
foreach/get_children get_first_child
get_next_sibling
get_prev_sibling
get_last_child

# 2. Bin widget API

In the GTK4, GtkBin class has been removed, all widgets can hold child widgets, if the widget hold one child, so it has a child property to reference that child widget.

# 3. Clipboard API

In the GTK3, we could use the follow code to get the image from clipboard:

Gtk.Clipboard clipboard = Gtk.Clipboard.get(Gdk.SELECTION_CLIPBOARD);
+Pixbuf? pixbuf = clipboard.wait_for_image();
+

GTK4's equivalent code as follow:

Pixbuf? pixbuf = null;
+Value value = GLib.Value(typeof(Pixbuf));
+Gdk.Clipboard clipboard = this.get_clipboard();
+if (clipboard.content.get_value(ref value)) {
+    pixbuf = (Pixbuf)value.get_boxed();
+}
+
+ (adsbygoogle = window.adsbygoogle || []).push({}); +

# 4. User inputs(mouse and key)

Some useful Vala code snippets for upgrading mouse and key input signals in GTK3:

treeview.key_press_event.connect(key_press_handler);
+treeview.key_release_event.connect(key_release_handler);
+treeview.button_press_event.connect(button_press_handler);
+treeview.button_release_event.connect(button_release_handler);
+treeview.motion_notify_event.connect(mouse_move_handler);
+treeview.enter_notify_event.connect(mouse_enter_handler);
+treeview.leave_notify_event.connect(mouse_leave_handler);
+treeview.scroll_event.connect(scroll_event_handler);
+treeview.focus_in_event.connect(focus_enter_event_handler);
+treeview.focus_out_event.connect(focus_leave_event_handler);
+
var key_input_event = new Gtk.EventControllerKey();
+key_input_event.key_pressed.connect(key_press_handler);
+key_input_event.key_released.connect(key_release_handler);
+treeview.add_controller(key_input_event);
+var mouse_button_event = new Gtk.GestureClick();
+mouse_button_event.pressed.connect(button_press_handler);
+mouse_button_event.released.connect(button_release_handler);
+treeview.add_controller(mouse_button_event);
+var mouse_motion_event = new Gtk.EventControllerMotion();
+mouse_motion_event.motion.connect(mouse_move_handler);
+mouse_motion_event.enter.connect(mouse_enter_handler);
+mouse_motion_event.leave.connect(mouse_leave_handler);
+treeview.add_controller(mouse_motion_event);
+var view_scroll_event = new Gtk.EventControllerScroll();
+view_scroll_event.scroll.connect(scroll_event_handler);
+treeview.add_controller(view_scroll_event);
+var view_focus_event = new Gtk.EventControllerFocus();
+view_focus_event.enter.connect(focus_enter_event_handler);
+view_focus_event.leave.connect(focus_leave_event_handler);
+treeview.add_controller(view_focus_event);
+

# 5. GtkBuilder UI files

the follow command could help you upgrade you UI file in-place:

gtk-builder-tool simplify --3to4 --replace <filename.ui>
+

you could try the following command if you want to just preview the content of the upgraded UI file, then the command will show content on screen:

gtk-builder-tool simplify --3to4 <filename.ui>
+
+ + + diff --git a/en/blog/009-secure-connection-solution.html b/en/blog/009-secure-connection-solution.html new file mode 100644 index 000000000..d72bee984 --- /dev/null +++ b/en/blog/009-secure-connection-solution.html @@ -0,0 +1,66 @@ + + + + + + Kangaroo secure connection solution | Kangaroo + + + + + + + + + + + +

# Kangaroo Secure connection (SSL or SSH) solution

# Connection via secure sockets layer (SSL)

Sometimes, database server use secure connection to keep security, so client must connect to database server by secure socket, Kangaroo integrated with

# Connection over secure shell tunnel(SSH)

Windows +https://gist.github.com/siggibjarna/0da65bd0d3f2b82d3752 +Kangaroo connnect to database over secure shell tunnel via plink.exe (opens new window) on windows, examples: HeidiSQL

Linux

MacOS

+ + + diff --git a/en/blog/index.html b/en/blog/index.html new file mode 100644 index 000000000..569abfadf --- /dev/null +++ b/en/blog/index.html @@ -0,0 +1,68 @@ + + + + + + Kangaroo's blog | Kangaroo + + + + + + + + + + + + + + + diff --git a/en/buy.html b/en/buy.html new file mode 100644 index 000000000..b73fdfd7d --- /dev/null +++ b/en/buy.html @@ -0,0 +1,66 @@ + + + + + + Buy | Kangaroo + + + + + + + + + + + +

# Buy Kangaroo

Thank for buying Kangaroo

In order to achieve sustainable services, the Kangaroo adopts a subscription model, and multi-year subscriptions are recommended not to exceed [ten years].

# Subscription plan

The prices below are annual subscription prices and include one year of free upgrades and support.

All prices(without VAT) are displayed in USD and VAT may apply.

Features plan Enterprise license Non-commercial license License extension
Multiple database USD 249 USD 99 20% discount
Single database USD 66 USD 29 20% discount

【Tips】

  1. One license, one user, connect with mobile phone.
  2. One license support three devices(Windows / MacOS / Linux).

# Payment method

We support three pay methods:Paypal pay, WeChat Pay and Alipay payment. +
alipay qrcode tenpay qrcode paypal qrcode

When scanning the QR code to pay, please be sure to add comment: Kangaroo - <your email> on the order ticket, and the license code will be sent to your email.

# Contact

If you have any questions about the purchase or product, you can contact team via the following channel:

QQ: PC QQ (opens new window) Mobile QQ
+E-mail: dbkangaroo@hotmail.com

# FAQ

# How long does it take to receive my license code after payment?

Kangaroo will start the process of license code work within one week after the license validation feature launched, please pay attention to the version announcement and E-mail notification;

# Can I get a refund on my license?

Virtual goods are non-refundable after purchase. Please purchase with caution.

+ + + diff --git a/en/document/changelog.html b/en/document/changelog.html new file mode 100644 index 000000000..14430bcb6 --- /dev/null +++ b/en/document/changelog.html @@ -0,0 +1,111 @@ + + + + + + Change timeline | Kangaroo + + + + + + + + + + + +

# Kangaroo change

# Kangaroo v3.92.1

  • GTK4 upgrade to 4.12
  • libadwaita upgrade to 1.4 beta
  • Add Redhat series package support(rpm)
  • Add code snippet support +
    • Code snippet pane(filter/drag and drop)
    • Code snippet dialog
    • Code snippet intellisense
    • Code snippet setting
    • Code snippet context menu for query view
  • Add execute menu item for query view context menu
  • Refactor history view
  • Refactor color text view
  • Refactor minor toolbar style
  • Refactor toolbar setting
  • Refactor exportor columns page
  • Refactor exportor tables page
  • Refactor exportor option page
  • Refactor model entity dialog
  • QR code add kangaroo logo
  • Updated Chinese translation
  • Fixed: libsoup connection issue
  • Fixed: document UI data display issue
  • Fixed: status bar missing data issue
  • Fixed: connection id issue

# Kangaroo v3.91.1 (Beta)

  • Port to libadwaita 1.4
  • Refactor GtkSwitch.state to active
  • Add database library version for about dialog
  • Add Chinese support(zh_Hans/zh_Hant)
  • Improve workspace status bar
  • Updated Chinese translation
  • MariaDB: add table designer pages
  • MariaDB: fixed foreign key issue
  • MySQL: add missing type: TIMESTAMP
  • PostgreSQL: fixed type and collation issue
  • SQLite: fixed schema issue
  • Data transfer: initialize default options
  • Data transfer: add log output
  • Data transfer: Fixed target connection issue

# Kangaroo v3.90.1 (Beta)

  • Add transfer/structure sync/data sync UI
  • Implent transfer bussiness logic
  • Implement structure sync business logic
  • SQLite Encryption Extension support(SQLCipher)
  • MySQL: Improve TEXT/BLOB type support
  • MariaDB: Improve TEXT/BLOB type support
  • Make dialog window stay center
  • Add language switch support
  • Improve preference window performance
  • Updated Chinese translation
  • Fixed MySQL/MariaDB field flag issue

# Kangaroo v2.99.3 (Beta)

  • Windows: GTK4 upgrade to 4.11.2
  • MySQL: fixed TINYTEXT/TEXT/MEDIUMTEXT/LONGTEXT show issue
  • MariaDB: fixed TINYTEXT/TEXT/MEDIUMTEXT/LONGTEXT show issue

# Kangaroo v1.10.3 (Beta)

  • Windows: GTK4 upgrade to 4.11.1
  • Fixed:Chinese support issue

# Kangaroo v2.99.2 (Beta)

  • Add sandbox support(Windows only)
  • GTK4 upgrade to 4.10.3
  • libadwaita upgrade to 1.3.1

# Kangaroo v2.99.1 (Beta)

  • SQLite: add direct access support
  • MySQL: add direct access support
  • MariaDB: add direct access support
  • PostgreSQL: add direct access support
  • Improved floating-point display support
  • Improved connection establishment
  • Updated Chinese translation

# Kangaroo v2.3.2 (Beta)

  • MySQL: Add executor menu item
  • MariaDB: Add executor menu item
  • PostgreSQL: Add executor menu item
  • Update datagrid normal style bg color
  • Update Chinese translation
  • Fixed: Unknown SCHEMA_COMMENT (< MariaDB 10.5)
  • Fixed: executor's file dialog issue
  • Fixed: intellisense issue
  • Fixed: datagrid craches
+ (adsbygoogle = window.adsbygoogle || []).push({}); +

# Kangaroo v2.3.1 (Beta)

  • Add query file pane
  • Add model file pane
  • Update toolbar style
  • Workspace add split support (vertical or horizontal)
  • Workspace add status bar
  • Workspace add language support
  • Workspace add line ending support
  • Workspace add file encoding support
  • Workspace add word wrap support
  • Workspace add indentation support
  • Workspace add position support
  • Workspace add pane switching support
  • Workspace add worksheet message support
  • Update about window(System information)
  • Update RPM installer script
  • Update Chinese translation
  • Remove view submenu from main menu

# Kangaroo v2.2.1 (Beta)

  • Add executor dialog
  • Add dump & tranform dialog
  • Add time cost for query
  • SQLite: fixed index load issue
  • SQLite: fixed backup name issue
  • MariaDB: fixed schema scope issue
  • MySQL: fixed schema scope issue
  • PostgreSQL: fixed v15 user info issue
  • Update intellisense proposal's icon
  • Update Chinese translation
  • Update Windows installer to select drivers defaultly
  • Update GTK library to 4.9.2

# Kangaroo v2.1.1 (Beta)

  • Add dynamic QR code support
  • Add debian package support
  • Implement designer's clone menu action
  • Implement designer's copy/paste action
  • Add designer's cut menu item
  • Add SQL EXPLAIN statement with format support
  • Add SQL ANALYZE statement support
  • Refactor SQL beautify and minify
  • Improve editor undo support
  • Update linux package script
  • Update Chinese translation
  • Fixed: app crashed while closing book page
  • Fixed: SSH label issue

# Kangaroo v2.0.0 (Beta)

  • Refactor importer page (columns/preview)
  • Refactor columns selection dialog
  • Refactor SQLite columns dialog
  • Refactor PostgreSQL columns dialog
  • Refactor MySQL columns dialog
  • Refactor type values dialog (Enum/set)
  • Refactor documents dialog
  • Refactor DataGrid events and context menu
  • Replace icon with symbolic icon
  • Implement form view edit and save support
  • Implement table view edit and save support
  • Implement Binary/BLOB import/export/save support
  • Improve SQLite schema support
  • Form view navigation support
  • Update Chinese translation
  • Fixed numeric value lost its decimal issue
  • Fixed toolbar icon size issue
  • Fixed explorer DataGrid issue
  • Fixed import data failure issue
  • Fixed index loading crash issue
  • Fixed repo tree node change issue
  • Fixed SQLite function crash issue
  • Fixed application warning messages
  • Fixed compiler warning messages
  • Fixed context menu dump action issue
+ (adsbygoogle = window.adsbygoogle || []).push({}); +

# Kangaroo v1.99.1 (Dev)

  • Normalize DataModel and MetaModel
  • Refactor documents dialog
  • Refactor export pages
  • Refactor import pages
  • Refactor connection dialog
  • Add attach database dialog
  • Upgrade libsoup2 to libsoup3
  • Add ODBC general support
  • Add ODBC help entry point
  • Add object search support
  • Update Windows and ArchLinux installer and deploy script
  • SQLite: attach and detach database
  • SQLite: load extension support
  • Improve the way to create new connection
  • Update Chinese translation
  • Fixed shortcut file issue

# Kangaroo v1.98.1 (Dev)

  • DataGrid add style for current cell
  • SQLite: refactor table designer
  • MySQL: refactor table designer
  • PostgreSQL: refactor table designer
  • Normalize column's length/precision/scale
  • Update the Chinese translation
  • Fixed ODBC CHAR/WCHAR data type issue
  • Fixed connection's driver missed issue
  • Fixed drop SQLite file to create connection issue
  • Fixed MySQL/MariaDB encoding(Chinese) issue

# Kangaroo v1.97.1 (Dev)

  • Update windows deploy script
  • Update ArchLinux build script
  • Upgrade close confirm dialog
  • Refactor datagrid with ColumnView
  • Windows installer support ODBC drivers
  • Improve Windows installer l10n support
  • Improve object explorer sort support
  • Improve content builder
  • Improve SQL builder
  • Improve DBNull value support
  • Update the Chinese translation
  • Fixed ODBC connection issues

# Kangaroo v1.10.2 (Beta)

  • Remove app expire date
  • Windows: update library to the latest.

# Kangaroo v1.96.1 (Dev)

  • Replace libgda with ODBC
  • Add general database support
  • Update the Chinese translation

# Kangaroo v1.95.1 (Dev)

  • MySQL: Add role designer
  • MySQL: Add schema designer
  • MySQL: Add database designer
  • MariaDB: Add role designer
  • MariaDB: Add schema designer
  • MariaDB: Add database designer
  • PostgreSQL: Add role designer
  • PostgreSQL: Add schema designer
  • PostgreSQL: Add database designer
  • Update explorer view with database and schema support
  • Refactor object tree context menu
  • Bind tab title with explorer title
  • Update the Chinese translation
+ (adsbygoogle = window.adsbygoogle || []).push({}); +

# Kangaroo v1.94.1 (Dev)

  • MySQL: Add function designer
  • MySQL: Add procedure designer
  • MySQL: Add user designer
  • MariaDB: Add function designer
  • MariaDB: Add procedure designer
  • MariaDB: Add user designer
  • PostgreSQL: Add function designer
  • PostgreSQL: Add procedure designer
  • PostgreSQL: Add user designer
  • Add runtime version support on About window
  • Update the Chinese translation
  • Fixed: workspace view issue
  • Fixed: autosave cache file issue

# Kangaroo v1.93.1 (Dev)

  • SQLite: Add index designer
  • SQLite: Add trigger designer
  • SQLite: Refactor data view designer to improve support
  • MySQL: Add index object support
  • MySQL: Add trigger object support
  • MySQL: Add index designer
  • MySQL: Add trigger designer
  • MySQL: Refactor data view designer to improve support
  • MariaDB: Add index object support
  • MariaDB: Add trigger object support
  • MariaDB: Add index designer
  • MariaDB: Add trigger designer
  • MariaDB: Refactor data view designer to improve support
  • PostgreSQL: Add index designer
  • PostgreSQL: Add trigger designer
  • PostgreSQL: Refactor data view designer to improve support
  • Add connection detail view for workspace
  • Update repository tree icon
  • Update the Chinese translation
  • Refactor starter view
  • Refactor repository view
  • Fixed: data view designer's restore issue
  • Fixed: workspace menu loading issue
  • Fixed: crash while active_id is null
  • Fixed: editor input issue while having selection
  • Fixed: can't load schema views for MySQL/MariaDB
  • Fixed: crashed while PostgreSQL database is empty

# Kangaroo v1.92.1 (Dev)

  1. Add explorer view(Table + Iconic)
  2. Add search and sort support
  3. SQLite: load objects for explorer
  4. MariaDB: load objects for explorer
  5. MySQL: load objects for explorer
  6. PostgreSQL: load objects for explorer
  7. Add context menu for objects
  8. Implement context menu for table and view
  9. Refactor workspace toolbar
  10. Update database object icon
  11. Update the Chinese translation

# Kangaroo v1.91.1 (Dev)

  1. Refactor workbench and workspace
  2. Refactor import/export
  3. Refactor intellisense
  4. Refactor toolbars
  5. Refactor sql builder
  6. Refactor app expire notification
  7. Improve titlebar skin support
  8. Improve dialog style
  9. Split setting into app setting and server setting
  10. Move intellisense data to user document folder
  11. Update the Chinese translation
  12. Fixed: can't open url with default app
  13. Fixed: insert sql error(user_name -> user__name)
  14. Fixed: model view crashed
  15. Fixed: DSV formats has a extra column
  16. Fixed: scalable image size issue
  17. Fixed: warning messages
+ (adsbygoogle = window.adsbygoogle || []).push({}); +

# Kangaroo v1.90.1 (Dev)

  1. Update UI toolkit from GTK3 to GTK4
  2. Update UI library to GTK4 version
  3. Update GtkSoureceView from 4 to 5
  4. Merge setting and shortcut dialog
  5. Add document overview map
  6. Add style scheme support
  7. Add development support
  8. MySQL: Add user and privilege management support
  9. MariaDB: Add user and privilege management support
  10. PostgreSQL: Add user and privilege management support

# Kangaroo v1.10.1 (Beta)

  1. Add visual sql builder dialog
  2. Add values window
  3. Add icon for datagrid context menu
  4. Add copy cell value with algorithm
  5. Add update cell value with algorithm
  6. Improve connection naming schema
  7. Improve toolbar layout
  8. Improve float type support
  9. Update the Chinese translation
  10. Fixed: invalid sql while large text type(PostgreSQL)
  11. Fixed: designer's checkbox not response.
  12. Fixed: connection crashed(MySQL/PostgreSQL)
  13. Fixed: can't load source of view(PostgreSQL)
  14. Fixed: MacOS Chinese not support
  15. Fixed: invalid sql while meet the same cell value

# Kangaroo v1.9.1 (Dev)

  1. Add view designer
  2. Add Toolbar control
  3. Upgrade library libgda to 6.0.1
  4. Improve connection stability for MySQL/MariaDB
  5. Refactor repository's context menu
  6. Implement rename function for SQLite
  7. Implement rename function for MySQL/MariaDB
  8. Implement new/edit/source/rename/dump/copy names function for view
  9. Refactor query view's toolbar
  10. Update the Chinese translation(zh-CN/zh-TW/zh-SG/zh-HK)
  11. Add column reorder support for data grid
  12. Improve format of DataTime/TimeStamp
  13. Add geometric point type support
  14. Add large text type support
  15. Improve installer for windows and MacOS
  16. Fixed: non-response while clicking the triangle icon on the tree
  17. Fixed: NULL/Empty string invalid
  18. Fixed: can't show view's columns in the model view
  19. Fixed: enlarge model view while importing objects.
  20. Fixed: can't load index entries (MySQL)
  21. Fixed: can't modify boolean data
  22. Fixed: warning message while loading intellisense data.
+ (adsbygoogle = window.adsbygoogle || []).push({}); +

# Kangaroo v1.8.1 (Dev)

  1. Improve toolbar effect(show label and large icon default)
  2. Improve the tab title for Query view
  3. Open one instance of the same view only
  4. Update app desktop entry's category
  5. Add import/generate buttons for the model toolbar
  6. Model: implement import entity models from the database
  7. Model: load and save data of the table and view node
  8. Model: implement change and close notification
  9. Model: Add entity dialog
  10. Model: improve effect of node(table / view / shape)
  11. Fixed: can't show columns on the non-column page
  12. Fixed: can't load libgda's plugin
  13. Fixed: can't show node while loading large model file

# Kangaroo v1.7.1 (Dev)

  1. Implement hex editor support (completed)
  2. Add workspace tab UI support (completed)
  3. Add independent history support(completed)
  4. Add shortcut customize support(completed)
  5. Add data chart support (in progress)
  6. Add database model support (in progress) +
    • Add load and save model support
    • Add node copy and paste support
    • Add multi-selection support
  7. Drag and drop SQLite file on the workspace to open it #76
  8. Refactor app home page to improve experience
  9. Copy data as LUA table
  10. improve object tree experience
  11. Backup and restore workspace layout
  12. Add more language support
  13. Improve log support(add database and connection name)
  14. File monitor support for sql script file
  15. refactor content view to show feature bar
  16. all data tables are displayed by default
  17. refactor object panel to improve UI experience
  18. Add shortcut dialog for search and setup;
  19. Improve app title bar style, add color and image support.
  20. Add shell notification support
  21. Add confirm dialog while closing pages
  22. Refactor tool bar with GtkToolbar widget
  23. Fixed: Access denied: you need the SUPER privilege(s) for this operation
  24. Fixed: close tab view after deleted the database object.
  25. Fixed: update tab view after renamed the database object.
  26. Fixed: can't get system name on MacOS platform
+ (adsbygoogle = window.adsbygoogle || []).push({}); +

# Kangaroo v1.6.1 (Dev)

  1. Implement hex editor support (completed)
  2. Add workspace tab UI support (completed)
  3. Add independent history support(completed)
  4. Add shortcut customeize support(completed)
  5. Add data chart support (in progress)
  6. Add database model support (in progress)

# Kangaroo v1.5.1 (Dev)

  1. Implement hex editor support (completed)
  2. Add workspace tab UI support (completed)
  3. Add data chart support (in progress)
  4. Add database modeling support (in progress)

# Kangaroo v1.0.6 (Beta)

  1. Update domain to www.datatable.online

# Kangaroo v1.3.1 (Dev)

  1. Implement hex editor (completed)
  2. Add data chart support(in progress)
  3. Add workspace tab ui support(in progress)

# Kangaroo v1.0.5 (Beta)

  1. Implement context menu for cell value
  2. Improve database null value support
  3. Improve text view for cell value, support to detect charset and convert to UTF-8
  4. Improve the China mainland user accessibility: show changelog
  5. Improve mysql connection stability
  6. Fixed: fail to change cell value viewer
  7. Fixed: copy short and full name invalid
+ (adsbygoogle = window.adsbygoogle || []).push({}); +

# Kangaroo v0.99.3 (Beta)

  1. Refactor container and service module
  2. Improve the performance of content and query view
  3. Update datagrid toolbar icon
  4. Fixed: can't open mariadb database

# Kangaroo v0.99.2 (Beta)

  1. Improve Mac OS X installer and portable packages
  2. Improve tools page locale support
  3. Update Chinese(zh-CN/zh-TW/zh-HK/zh-SG)
  4. Fixed: 提示 MySQL server has done away 后,没有自动\手动重连 #63
  5. Fixed: plugin caching sha2 password could not be loaded #64
  6. Fixed: console warning message

# Kangaroo v0.99.1 (Beta)

  1. Improve designer to notify user save change
  2. Improve message dialog to show title
  3. Improve preview tab to show change only
  4. Update SQLite/MySQL/PostgreSQL meta model
  5. Improve windows installer to add license and language support
  6. Make kangaroo portable #59

# Kangaroo v0.33.1 (Dev)

  1. Update title bar and tab bar CSS style
  2. Improve date&time picker
  3. Improve date&time renderer
  4. Implement date&time editing in grid and form
  5. Update windows deploy script to include libpeas loaders
  6. Update meson script to add dependencies(pdf/draw/map)
  7. Update meson script to improve debug support
  8. Fixed: can't show animation image(.gif)

# Kangaroo v0.32.1 (Dev)

  1. Implement to generate W3C html document
  2. Implement to generate markdown document
  3. Update import/export icon image
+ (adsbygoogle = window.adsbygoogle || []).push({}); +

# Kangaroo v0.31.1 (Dev)

  1. Implement BLOB content identity
  2. Implement SQLite BLOB column handle(import / export / set null)
  3. Implement MySQL BLOB column handle(import / export / set null)
  4. Implement PostgreSQL BLOB column handle(import / export / set null)
  5. Implement view BLOB data as string
  6. Apply tight style for find and replace box

# Kangaroo v0.30.1 (Dev)

  1. Add app relate plugin search path
  2. Add data viewer pane and button
  3. Implement text and image vierer
  4. Update button with flat style

# Kangaroo v0.29.1 (Dev)

  1. Implement plugin system
  2. Implement a example plugin
  3. Update ArchLinux and MacOSX installer
  4. Update protable package(more *nixable)

# Kangaroo v0.28.1 (Dev)

  1. Implement search and replace function
  2. Update the Chinese translation
+ (adsbygoogle = window.adsbygoogle || []).push({}); +

# Kangaroo v0.27.1 (Beta)

  1. Improve intellisense data for PostgreSQL
  2. Improve auto-completion style(icon/filter by input)
  3. Add function's call tip(highlighting/bold/auto location/data)
  4. Implement copy focused column name(short/full)
  5. Implement copy datagrid column name(TSV/CSV)
  6. Update package name
  7. Update the Chinese translation

# Kangaroo v0.26.1 (Dev)

  1. Add intellisense data support(SQLite/MySQL/PostgreSQL)
  2. Add auto completion for code view(v1)

# Kangaroo v0.25.1 (Beta)

  1. Add context menu for workspace notebook widget
  2. Add new query menu for object tree item(database/schema).
  3. Update the Chinese translation(zh-CN/zh-TW/zh-HK/zh-SG).
  4. Fixed: PostgreSQL 12: tables not visible #46
  5. Fixed: MariaDB 10.5: Unknown column 'cons.ENFORCED' in 'field list' #47
  6. Fixed: PostgreSQL 12: column c.consrc does not exist #48
  7. Fixed: PostgreSQL 11.7 / 9.6: row 1 out of range(0-0) #49
  8. Fixed: MySQL 5.7.30: Unknown table 'CHECK_CONSTRAINTS' in information_schema #50
  9. Fixed: PostgreSQL 9.6: column c.relispartition does not exist #51
  10. Fixed: PostgreSQL: invalid schemas in database
  11. Fixed: display invalid while column name has underline(_)

# Kangaroo v0.24.1 (Dev)

  1. Add SQL Formatter to beautify and minify sql code.
  2. Add archlinux installer(based on HowardZorn's working).
  3. Add macos installer
+ (adsbygoogle = window.adsbygoogle || []).push({}); +

# Kangaroo v0.23.1 (Beta)

  1. Improve date / datetime picker widget.
  2. Improve app title bar to add background image(color).
  3. Improve data grid column title.
  4. Improve Chinese translations.
  5. Fixed: can't update date/time/datetime type.
  6. Fixed: can't update float value
  7. Fixed: can't update numeric value
  8. Fixed: MySQL: can't save char column data
  9. Fixed: PostgreSQL: invalid object name in sql
  10. Fixed: invalid toolbar state while swtich to grid.

# Kangaroo v0.22.1 (Beta)

  1. Add Chinese(zh-CN/zh-TW/zh-HK/zh-SG) translation.
  2. SQLite: add file extension(.sqlite) for new database.
  3. Improve experience for designer / fresh / delete operation
  4. Improve deploy and installer script for automation.
  5. Fixed: crash while renaming object.
  6. Fixed: crash while deleting object.
  7. Fixed: crash while saving schema for sqlite
  8. Fixed: can't append row on the empty table
  9. Fixed: can't save appended row in live mode

# Kangaroo v0.21.1 (Beta)

  1. Refactor the entire datagrid to make great experience.
  2. Support 3 kind of mode: LIVE / CACHE / TRANSACTION
  3. Support copy and paste multi rows in data grid.
  4. Chnage mode automatically while paste multi rows.
  5. fixed: where statement error in query builder

# Kangaroo v0.20.1 (Dev)

  1. Implement copy function in the datagrid.
  2. refactor context menu of structure designer.
  3. Implement clone function for designer form.
  4. Implement append function for designer form.
  5. Support multi rows of delete/move up/move down function.
  6. Implement copy function for designer form.
  7. Implement cut function for designer form.
  8. Implement paste function for designer form.
  9. Improve text performance of datagrid.
+ (adsbygoogle = window.adsbygoogle || []).push({}); +

# Kangaroo v0.19.1 (Dev)

  1. Implement copy object name menu on dbtree.
  2. Implement copy as SQL(Insert/Update/Delete) in the datagrid.
  3. Implement copy as TSV in the datagrid
  4. Implement copy as CSV in the datagrid
  5. Implement copy as PHP array in the datagrid
  6. Implement copy as JSON in the datagrid
  7. Improve paned widget border style.
  8. fixed: crashed while stringize the blob column
  9. fixed: crashed while no primary key
  10. fixed: crashed while primary key contain character(_)
  11. fixed: warning message while column with empty value
  12. fixed: warning message while invalid calling(to_string)

# Kangaroo v0.18.1 (Dev)

  1. encrypt user password to keep user passwords safe.
  2. Implement insert, clone and delete functionality in the datagrid.
  3. Implement connection clone functionality in the start view
  4. Implement dump sql functionality on the dbtree
  5. Implement table schema editor on the dbtree
  6. Implement refresh functionality on the dbtree
  7. Improve workspace tab behavior(auto hide for one)
  8. fixed: return key behavior invalid on the dbtree
  9. fixed: crashed while open table with null value

# Kangaroo v0.17.0 (Dev)

  1. Support connection over SSH tunnel (Windows, Linux/Unix and MacOS)
  2. Add testing support for connection dialog
  3. Refactor context menu of datagrid
  4. Add dump sql (file and text) menu for dbtree
  5. Implement selection menu of datagrid
  6. Implement goto cell menu of datagrid
  7. Fixed: crashed while switching grid to form.

# Kangaroo v0.16.0 (Dev)

  1. Support SSH tunnel(Windows not yet pass test).
  2. Support input page number to switch page
  3. Improve: update layout of switch widget on dialog
  4. Fixed: can't open link on windows
  5. Fixed: log file index error
+ (adsbygoogle = window.adsbygoogle || []).push({}); +

# Kangaroo v0.15.0 (Dev)

  1. Update and share openssl.vapi to keep user data safe.
  2. Improve language support(kangaroo.pot, zh_Hans and zh_Hant)
  3. Improve home view's web resource load performance
  4. Apply proxy setting for loading web resource
  5. Linux: change browser view to timeline text view
  6. Use combobox widget instead entry for log file size

# Kangaroo v0.14.0 (Dev)

  1. SQLite: support to create new database
  2. refactor database tree context menu
  3. integrated with openssl to keep user's password safe
  4. add pointer cursor for right panel icon
  5. fixed: update workbench default size while first run

# Kangaroo v0.13.0 (Dev)

  1. apply data grid style setting
  2. apply sql editor style setting
  3. windows 32bit version support
  4. implement SSH tunnel support(not yet integrate)
  5. minor change for connection dialog UI
  6. fixed: tool's icon incorrect on release version

# Kangaroo v0.12.1 (Dev)

  1. add setting dialog
  2. add dark theme support
  3. bind connection dialog with new setting model
  4. update start view with new setting model
+ (adsbygoogle = window.adsbygoogle || []).push({}); +

# Kangaroo v0.11.1 (Dev)

  1. redesign connection dialog to support SSH and SSL
  2. add donate icon on home page(Paypal/Wechat/Alipay)
  3. redesign configuration model and file(init --> json)
  4. Use symbolic icons in the Header Bar(#25)
  5. fixed: edit data in grid will update all rows

# Kangaroo v0.11.0 (Dev)

  1. add app home page
  2. reimplement DSV format engine
  3. improve DSV compatible with other tools.
  4. improve DSV option UI layout
  5. improve date column editting support
  6. fixed: generate sql statement incorrect.
  7. fixed: crash while importing data
  8. fixed: can't save data while editting on data grid
  9. fixed: warning message about db tree

# Kangaroo v0.10.0 (Dev)

  1. add export assistant UI
  2. batch export table to file.
  3. support data formats(DSV/JSON/XML/HTML/Markdown/SQL)
  4. support title for column(rename)

# Kangaroo v0.9.5 (Dev)

  1. import data from DSV format
  2. import data from JSON format
  3. import data from XML format
  4. Rewritten export data as XML format with libxml2;
  5. add export modules assistant UI
  6. implement export format and table selection page
+ (adsbygoogle = window.adsbygoogle || []).push({}); +

# Kangaroo v0.9.4 (Dev)

  1. add import summary page
  2. add five kinds of import mode
  3. import csv format data to table
  4. fixed logo can't show on linux and macos platform

# Kangaroo v0.9.3 (Dev)

  1. implement column mapping function

# Kangaroo v0.9.2 (Dev)

  1. Import data from file(dsv/xml/json) #19 +
    • implement the import UI(format, encoding and preview)
    • implement the import UI(DSV format option)
    • implement the import UI(data preview)
    • implement the import UI(column mapping)
    • implement the import UI(process progress)
    • implement DSV format parse and preview

# Kangaroo v0.9.1 (Dev)

  1. Export data to file(dsv(csv/tsv/...)/xml/json/sql/md/html) #18 +
    • Export data to DSV format(CSV/TSV/...)
    • Export data to JSON format
    • Export data to XML format
    • Export data to HTML format
    • Export data to SQL format(INSERT)
    • Export data to Markdown format
  2. Improve file filter of save dialog

# Kangaroo v0.9.0 (Dev)

  1. Edit table schema and save to database #5
  2. Export data to JSON and DSV format
+ (adsbygoogle = window.adsbygoogle || []).push({}); +

# Kangaroo v0.8.5 (Dev)

  1. Edit table schema and save to database(SQLite and PostgreSQL preview) #5
  2. Add export data formats UI and interfaces
  3. Update tab's title while save the new table

# Kangaroo v0.8.4 (Dev)

  1. Rearrange db tree and UI #17
  2. Add refresh menu on db tree
  3. Implement multiple databases support
  4. Edit table schema and save to database(MySQL Preview) #5

# Kangaroo v0.8.3 (Dev)

  1. 新建连接时出现插件未加载错误 #12
    +Load plugin failed while create new connection #12
  2. Add MacOS compilation support #13
  3. refactor database model to improve interoperability

# Kangaroo v0.8.2 (Dev)

  1. improve: field selection dialog support to select fields by value(#9)
  2. improve: schema designer support to navigate with Tab key(#3)
  3. fixed: fields expression dialog reload value failed(#10)
  4. fixed: missing windows shortcut icon(start menu and desktop) (#7)
  5. fixed: missing syntax highlighting support(#8)
  6. fixed: load data in form view failed(#11)
+ (adsbygoogle = window.adsbygoogle || []).push({}); +

# Kangaroo v0.8.1 (Dev)

  1. improve: generate exact correct editing sql
  2. refactor: add source code editor module
  3. improve SQLite schema sql builder
  4. fixed: text editor and code editor can't show blank line
  5. fixed: get string failed while create data row(console)
  6. fixed: console critical message while editing schema

# Kangaroo v0.8.0 (Dev)

  1. implement the builder of PostgreSQL(11.0)
  2. save table schema to database(create only)
  3. update build script: hide app console window
  4. update windows installer: add MySQL and PostgreSQL client library
  5. update the links on the about window
  6. improve single line edit control(auto focus)
  7. update gui cursor while busy

# Kangaroo v0.7.2 (Dev)

  1. Implement loader of PostgreSQL 11(full version)
  2. Improve designer form of PostgreSQL 11
  3. refactor content of Kangaroo repo
  4. create new site: dbkangaroo.github.io
  5. add windows installer script

# Kangaroo v0.6.0 (Dev)

  1. support edit and save in table
  2. support edit and save in form
  3. support i18n and l10n
  4. support chinese language

# Kangaroo v0.4.0 (Dev)

  1. support data pagination
  2. implemtnt query builder and apply it
  3. export data to file(.csv)
  4. show system log in output view
  5. edit and execute sql
  6. support multiple results

# Kangaroo v0.2.0 (Dev)

  1. add connection setup ui
  2. add connection manager
  3. show database structure tree in data panel
  4. show data in tree view
+ (adsbygoogle = window.adsbygoogle || []).push({}); +
+ + + diff --git a/en/document/connection.html b/en/document/connection.html new file mode 100644 index 000000000..6d6710029 --- /dev/null +++ b/en/document/connection.html @@ -0,0 +1,77 @@ + + + + + + Connection management | Kangaroo + + + + + + + + + + + +

# Connection management

# Connection limitations

The connection have some limitations as follow:

  • connection with SSL not yet support.
  • connection with SSH with pass phrase not yet support

# SQLite

Make a SQLite connection is easy, just do as follow:

  • step 1: click New connection icon and name it
  • step 2: click left icon to create an new database, then click Test connection to test it
  • step 3: click right icon to load an exist database, then click Test connection to test it
  • step 4: make sure you have done these steps, then click Save icon to save it.
  • step 5: open your new connection to perform operations.

# MySQL / MariaDB

MySQL / PostgreSQL connnection is more complicate, because it support multi authentication methods, so you should prepare material before making connection, the best way is choose mysql native password plugin(mysql_native_password), just follow the guide:

1) Open terminal
+2) mysql -u root -p
+3) Enter your password
+4) ALTER USER root@localhost IDENTIFIED WITH mysql_native_password BY 'password';
+

After that, you could make a connection easily: +Make a MySQL connection

Follow the label and tooltip, fill the data as right place, then test connection. Every thing will be ok if the data is valid.

Make a MySQL connection with SSH

Your connection could through the private network over SSH(and over proxy), the built-in SSH client could help you done it.

# PostgreSQL

Just refer MySQL connection setting.

+ + + diff --git a/en/document/dataview.html b/en/document/dataview.html new file mode 100644 index 000000000..04dbbe0d5 --- /dev/null +++ b/en/document/dataview.html @@ -0,0 +1,74 @@ + + + + + + Data view | Kangaroo + + + + + + + + + + + +

# Data view

# Show the top builder pane

Datagrid Builder +click SQL builder tools icon in the lower left corner of workspace, then Builder pane will show on the top +Datagrid toolbar

# Select columns

  • step 1: click Column button to switch to column tab
  • step 2: select columns you want
  • step 3: click Apply button(right most) on the toolbar

# Add where statement

  • step 1: click Where button to switch to where tab
  • step 2: click the plus button to add conditions
  • step 3: then you could click bracket button to add bracket(left or right)
  • step 4: add more conditions as you need.
  • step 5: click Apply button(right most) on the toolbar

# Add sort column

  • step 1: click Order button to switch to order tab
  • step 2: click the plus button to add order columns
  • step 3: then choose column name and order method
  • step 4: click Apply button(right most) on the toolbar

# Add dataset limit

  • step 1: click Limit button to switch to limit tab
  • step 2: input page rows limit number in the entry
  • step 3: click Apply button(right most) on the toolbar

# Change edit mode

  • step 1: click mode icon on the datagrid toolbar
  • step 2: then choose mode on the pop over gui;
+ + + diff --git a/en/document/designer-model.html b/en/document/designer-model.html new file mode 100644 index 000000000..07beeedfa --- /dev/null +++ b/en/document/designer-model.html @@ -0,0 +1,72 @@ + + + + + + Database model | Kangaroo + + + + + + + + + + + + + + + diff --git a/en/document/designer-schema.html b/en/document/designer-schema.html new file mode 100644 index 000000000..1e60e0898 --- /dev/null +++ b/en/document/designer-schema.html @@ -0,0 +1,72 @@ + + + + + + Schema designer | Kangaroo + + + + + + + + + + + + + + + diff --git a/en/document/designer-sqlview.html b/en/document/designer-sqlview.html new file mode 100644 index 000000000..08b0ab8f9 --- /dev/null +++ b/en/document/designer-sqlview.html @@ -0,0 +1,72 @@ + + + + + + View designer | Kangaroo + + + + + + + + + + + + + + + diff --git a/en/document/drivers.html b/en/document/drivers.html new file mode 100644 index 000000000..22de7e3bb --- /dev/null +++ b/en/document/drivers.html @@ -0,0 +1,94 @@ + + + + + + ODBC drivers | Kangaroo + + + + + + + + + + + +

# ODBC drivers

# Third-party ODBC drivers(free)

List some ODBC drivers and it's download link

ODBC Components Windows Linux macOS
ODBC Driver Manager Built-in UnixODBC (opens new window) / iODBC (opens new window) UnixODBC (opens new window) / iODBC (opens new window)
Access 2010 Official (opens new window) LibMDBODBC (opens new window) LibMDBODBC (opens new window)
Access 2016 Official (opens new window) LibMDBODBC (opens new window) LibMDBODBC (opens new window)
SQLite (x86-64) Server1 (opens new window) Server2 (opens new window) Official (opens new window) SQLite ODBC (opens new window) SQLite ODBC (opens new window)
MySQL (x86-64) Server1 (opens new window) Server2 (opens new window) Official (opens new window) Official (opens new window) Official (opens new window)
MariaDB (x86-64) Server1 (opens new window) Server2 (opens new window) Official (opens new window) Official (opens new window) Official (opens new window)
PostgreSQL (x86-64) Server1 (opens new window) Server2 (opens new window) Official (opens new window) Official (opens new window) Official (opens new window)
SQL Server Official (opens new window) Official (opens new window) Official (opens new window)
Oracle Official (opens new window)

UnixODBC drivers (opens new window)

# Third-party ODBC drivers(charged)

Easysoft ODBC Drivers (opens new window)
CData Software ODBC Drivers (opens new window)
Devart ODBC Drivers (opens new window)

+ (adsbygoogle = window.adsbygoogle || []).push({}); +

# UnixODBC / iODBC install and setup

  1. Install UnixODBC / iODBC
yum install -y <unixodbc | iodbc>
+yum install mysql-connector-odbc mariadb-connector-odbc pgodbc <ODBC driver package>
+
  1. Setup ODBC drivers
    +default path: /etc/odbcinst.ini, the ODBC driver template as follow:
[DRIVER_NAME]
+  Description = description of the ODBC driver
+  Driver = path_to_odbc_driver_shared_object
+  Setup = path_to_driver_setup_shared_object
+

after that, You can list all installed ODBC drivers with: odbcinst -q -d

  1. Setup system data sources
    +default path: /etc/odbc.ini, the data source template as follow
[my_datasource]
+Driver = OOB
+Description = description_of_data_source
+ServerPort = myoobserver:8888
+TargetDSN = mytargetdsn
+LogonUser = server_username
+LogonAuth = password_for_LogonUser
+

The most important is that the driver name in datasource should be same as the driver name in the file: odbcinst.ini

  1. Setup file data sources
    +default path: /etc/ODBCDataSources, the syntax same as

  2. Setup user data sources
    +default path: /home/auser/.odbc.ini

finaly, You can list user and system data sources with: +odbcinst -q -s

+ (adsbygoogle = window.adsbygoogle || []).push({}); +
+ + + diff --git a/en/document/editor.html b/en/document/editor.html new file mode 100644 index 000000000..612cdaadf --- /dev/null +++ b/en/document/editor.html @@ -0,0 +1,72 @@ + + + + + + Code editor | Kangaroo + + + + + + + + + + + + + + + diff --git a/en/document/faq.html b/en/document/faq.html new file mode 100644 index 000000000..ac8820e9b --- /dev/null +++ b/en/document/faq.html @@ -0,0 +1,87 @@ + + + + + + Frequently Asked Questions | Kangaroo + + + + + + + + + + + +

# Frequently Asked Questions

# License

# Is Kangaroo free?

February 1st, 2022, Kangaroo upgrade its End User License Agreemen (a.k.a “EULA”, “License Agreement”), based on this license agreement, the versions marked with Dev Beta are free for private or commercial use, others shoud be paid. See the product license for details.

# Is Kangaroo open source?

We will put it as a priority task if the project gain donation and support enough to make it be sustainable development.

# Version

# How do I find the version?

You can find the Kangaroo version information in the About dialog box.

On right of Kangaroo title bar, click the main menu button, then go to Help > About.

The Kangaroo version is the first Version number listed and has the version format 'major.minor.release.build', for example '0.8.5.191108'

# When to release stable version?

Kangaroo is working hard to make it be done, the stable version depends two point:

  1. Dependencies(GLib/GTK4)'s maturity and stability;
  2. Kangaroo's features' maturity and stability;

Based on all the information, the first stable version to be released at the fourth anniversary of the Kangaroo (2023.4.1).

# Language

# What languages does Kangaroo support?

English, Chinese will be support default, other languages depend on user contributation.

# How to switch for other languages?

Setting the environment variables first, then start the application. please refer to the platform documentation for the environment variables. +【Tip】The complete list of localized variables is as follows

LANG=zh_CN.UTF-8
+LC_CTYPE=zh_CN.UTF-8
+LC_NUMERIC=zh_CN.UTF-8
+LC_TIME=zh_CN.UTF-8
+LC_COLLATE=zh_CN.UTF-8
+LC_MONETARY=zh_CN.UTF-8
+LC_MESSAGES=zh_CN.UTF-8
+LC_ALL=zh_CN.UTF-8
+LC_PAPER=zh_CN.UTF-8
+LC_MEASUREMENT=zh_CN.UTF-8
+

# Verify package

# How to verify the downloaded package?

Follow the steps:

  1. Download SHA256SUM and SHA256SUM.asc

  2. Get the key used for the signature
    apply for 1.6.1 and new versions
    +The key ID is: 8C0C55F7DEC8FC52 (generated in 2021, current)
    +The public key is: E4F02524471B195CCEFBD7158C0C55F7DEC8FC52

    apply for old versions before 1.6.1
    +The key ID is: 702F717E0A17659D (generated in 2020, archived)
    +The public key is: 33E5119C5781C1B37E56E580702F717E0A17659D
    gpg --keyserver hkp://hkps.pool.sks-keyservers.net --receive-keys 8C0C55F7DEC8FC52

  3. Verify the signature
    gpg --verify kangaroo-1.6.1.210131.sha256sum.asc

  4. Check the package with sha256sum
    +run the following command from within the download directory to get SHA256 hash:
    sha256sum kangaroo-1.6.1.<else>
    +then search the hash in the SHA256SUM file:
    grep <sha256sum output> kangaroo-1.6.1.sha256sum

# Support

# How track the changes?

you can put your eyes on follow ways: +Twitter (opens new window) Github (opens new window) Gitee (opens new window) Official (here) (opens new window)

# Technical Support

You could submit your issues and requirements on the repository Github (opens new window) / +Gitee (opens new window), or share your solutions about the trouble you've met.

+ + + diff --git a/en/document/feature-matrix.html b/en/document/feature-matrix.html new file mode 100644 index 000000000..3ca4245f8 --- /dev/null +++ b/en/document/feature-matrix.html @@ -0,0 +1,74 @@ + + + + + + Feature List | Kangaroo + + + + + + + + + + + +

# Feature List

Kangaroo features v2021 v2022 v2023 v2024 v2025
General
MySQL 5.1 or later
MariaDB 10.0 or later
PostgreSQL 9.5 or later
SQLite 3.0
Connection
Secure connection: SSH/SSL
Export/import connection settings
Database object support
Database
Schema
Table
View
Index
Trigger
Function/procedure
Data Viewer and Editor
Grid view
Form view
Chart view
Map view
Generate cell value
Update cell value with algorithm
Copy cell value with algorithm
Text, Image viewer/editor
Hex, Web viewer/editor
Raw mode editing
Customize data type colorings
Filter records
SQL/Script Processing
SQL/Script Editor
SQL keyword auto-completion
User schema auto-completion
Visual SQL/Script Builder
SQL/Script Beautifier and Minifier
Find and replace
Open query files in an external editor
Data Modeling
Conceptual, Logical and Physical model
Reverse/forward engineering
Add lines, layers, images, notes, art-texts and shapes
Export database diagrams to PDF and graphic files
Import/Export
Import from file formats: TXT, CSV, XML, JSON
Export to file formats: TXT, CSV, XML, JSON
Export data to Markdown, HTML
Generate design document(Markdown, HTML)
Data Manipulation
Dump/Execute SQL file
Server Security
Manage role
Manage user
Other Useful Features
Database wide search
Dark mode
Shortcut customize
Editor scheme
Split view
+ (adsbygoogle = window.adsbygoogle || []).push({}); +
+ + + diff --git a/en/document/index.html b/en/document/index.html new file mode 100644 index 000000000..b76190ca4 --- /dev/null +++ b/en/document/index.html @@ -0,0 +1,68 @@ + + + + + + Documents | Kangaroo + + + + + + + + + + + +

# Documents for Kangaroo

Here is the center of documents, could find documents you need, if could not found, please submit your request in the repo's issue, we will improve and add new documents as soon as possible.

# System Requirements

Minimal system requirements

# Pricing plan

Kangaroo pricing plan

# Change timeline

Kangaroo's change timeline

# Install Kangaroo

Kangaroo has full function support on Windows, the user experience is best:
Install Kangaroo on Windows

Kangaroo has full function support on linux, installation on linux OS is easy:
Install Kangaroo on Linux

Kangaroo has full function support on MacOS:
Install Kangaroo on MacOS

# Features

Feature matrix

# Screenshots

Screenshots

# Connect to database

Make a connection

# Create a new table

Table schema designer

# Browse and edit data

Data grid in content view

# SQL programming

Editing sql in code view

# SQLite support

SQLite support

# ODBC Drivers

ODBC Drivers

# 2K/3K/4K monitor scale

Hi-DPI scale setting

# Frequently Asked Questions

General frequently asked questions

+ + + diff --git a/en/document/install-linux.html b/en/document/install-linux.html new file mode 100644 index 000000000..134ddb428 --- /dev/null +++ b/en/document/install-linux.html @@ -0,0 +1,81 @@ + + + + + + Install on Linux | Kangaroo + + + + + + + + + + + +

# Install on Linux

# Download Kangaroo

Download the latest version of Kangaroo from Download.

# Install on Debian/Ubuntu

Download the Debian/Ubuntu package (*.deb) from the official website, then execute the command:

# For Ubuntu
+sudo apt install kangaroo-max-3.92.1.230901-x86_64.deb
+# For Debian
+sudo dpkg -i kangaroo-max-3.92.1.230901-x86_64.deb
+

# Install on RHEL/CentOS/Fedora

Download the RHEL/CentOS/Fedora package (*.rpm) from the official website, then execute the command:

# For Fedora
+sudo dnf install kangaroo-max-3.92.1.230901-x86_64.rpm
+# For RHEL/CentOS
+sudo yum install kangaroo-max-3.92.1.230901-x86_64.rpm
+

# Install on Arch Linux

Download the Arch Linux package (*.pkg.tar.zst) from the official website, then execute the command:

sudo pacman -U kangaroo-max-3.92.1.230901-1-x86_64.pkg.tar.zst
+
+ + + diff --git a/en/document/install-macos.html b/en/document/install-macos.html new file mode 100644 index 000000000..2beb2ef1d --- /dev/null +++ b/en/document/install-macos.html @@ -0,0 +1,75 @@ + + + + + + Install on MacOS | Kangaroo + + + + + + + + + + + +

# Install on MacOS

Open a Mac app from an unidentified developer(unsigned)

To override your security settings and open the app anyway follow these steps:

  1. In the Finder on your Mac, locate the app you want to open.
    +Don’t use Launchpad to do this. Launchpad doesn’t allow you to access the shortcut menu.
  2. Control-click the app icon, then choose Open from the shortcut menu.
  3. Click Open.
    +The app is saved as an exception to your security settings, and you can open it in the future by double-clicking it just as you can any registered app.

# Download Kangaroo

Download the latest version of Kangaroo from Download.

# Install Kangaroo

There are two ways to install Kangaroo on your system, the first way is DMG image, the second way is install manually.

# Installer

  1. Double click to mount and open the DMG image in Finder;
  2. Drag the kangaroo's icon to Application's icon to finish installation. +Mac installer home
  3. Launch the app from app center to make it OK
+ + + diff --git a/en/document/install-windows.html b/en/document/install-windows.html new file mode 100644 index 000000000..b6e049538 --- /dev/null +++ b/en/document/install-windows.html @@ -0,0 +1,74 @@ + + + + + + Install on Windows | Kangaroo + + + + + + + + + + + +

# Install on Windows

# Install Kangaroo via Official website

TIP

Recommended installation method, support windows 7 and all above version(64 bit)

# Download Kangaroo

Download the latest version of Kangaroo from Download, recommend installer for normal users.

# Install Kangaroo

# Windows Installer

Double click the installer and follow the guide to install Kangaroo on your windows directly.

If you want to make Kangaroo portable, like install and run it on USB device, then you should check the component Profile in app directory on windows installer. +Make Kangaroo portable

# Windows Portable

  1. Create folder to put the Kangaroo app, ex: D:\Program Files\Kangaroo\
  2. Uncompress Kangaroo package to target folder with 7-Zip (7z.exe)
  3. Create shortcut on desktop for Kangaroo app(bin\kangaroo.exe).
  4. Double click the shortcut to run Kangaroo

# Install Kangaroo via WinGet

WARNING

This method support windows 10 and above versions only

Download and install WinGet tool, then execute the command to install Kangaroo

winget install Taozuhong.Kangaroo
+

# Install Kangaroo via Microsoft Store

WARNING

This method support windows 10 and above versions only

Not yet support

+ + + diff --git a/en/document/pricing.html b/en/document/pricing.html new file mode 100644 index 000000000..410e2a2cc --- /dev/null +++ b/en/document/pricing.html @@ -0,0 +1,72 @@ + + + + + + pricing plan | Kangaroo + + + + + + + + + + + +

# Kangaroo pricing plan

# Features pricing plan

The prices below are annual subscription prices and include one year of free upgrades and support.

Features plan Enterprise license Non-commercial license License extension
Multiple database USD 249 USD 99 20% discount
Single database USD 66 USD 29 20% discount

# License with devices support

  1. One license, one user, connect with mobile phone.
  2. One license support three devices(Windows / MacOS / Linux).
+ + + diff --git a/en/document/scale.html b/en/document/scale.html new file mode 100644 index 000000000..5aa7baef9 --- /dev/null +++ b/en/document/scale.html @@ -0,0 +1,109 @@ + + + + + + Hi-DPI scale setting | Kangaroo + + + + + + + + + + + +

# Hi-DPI scale setting

GTK4 has HiDPI support on all platforms, all GTK4 app will scale with system scale setting automatically. sometimes, the scaling will not be working, so you should try another way to do it:

# 4K monitor scale(200%)

# Windows

// Environment variables(integer)
+GDK_SCALE = 2
+// GDK_DPI_SCALE=96
+

# macOS

// Shell environments 
+GDK_SCALE = 2
+// GDK_DPI_SCALE = 96
+

# Linux / GTK

// Shell environments 
+GDK_SCALE = 2
+// GDK_DPI_SCALE = 96
+or
+// (X11 Server) XSettings value
+Gdk/WindowScalingFactor = 2
+Gdk/UnscaledDPI = 98340
+

# Linux / KDE

// Shell environments 
+unset GDK_SCALE
+unset GDK_DPI_SCALE
+// (X11 Server) XSettings value: ~/.config/xsettingsd/xsettingsd.conf
+Gdk/WindowScalingFactor = 2
+Gdk/UnscaledDPI = 98340
+

# 8K monitor scale(400%)

# Windows

GDK_SCALE = 4
+// GDK_DPI_SCALE=96
+

# macOS

// Shell environments 
+GDK_SCALE = 4
+// GDK_DPI_SCALE = 96
+

# Linux / GTK

// Shell environments 
+GDK_SCALE = 4
+// GDK_DPI_SCALE = 96
+or
+// (X11 Server) XSettings value
+Gdk/WindowScalingFactor = 4
+Gdk/UnscaledDPI = 98340
+

# Linux / KDE

// Shell environments 
+unset GDK_SCALE
+unset GDK_DPI_SCALE
+// (X11 Server) XSettings value: ~/.config/xsettingsd/xsettingsd.conf
+Gdk/WindowScalingFactor = 4
+Gdk/UnscaledDPI = 98340
+
+ + + diff --git a/en/document/screenshots.html b/en/document/screenshots.html new file mode 100644 index 000000000..b9846e08e --- /dev/null +++ b/en/document/screenshots.html @@ -0,0 +1,82 @@ + + + + + + Screenshots | Kangaroo + + + + + + + + + + + + + + + diff --git a/en/document/sqlite.html b/en/document/sqlite.html new file mode 100644 index 000000000..dbdde509f --- /dev/null +++ b/en/document/sqlite.html @@ -0,0 +1,73 @@ + + + + + + SQLite enhancements | Kangaroo + + + + + + + + + + + +

# SQLite enhancements

# Create database connection quickly

Drag and drop a sqlite database file from file manager into connection home page, the connection is created quickly.

# Create a new database

There are two ways to create sqlite database in the Kangaroo app:

  1. Create a empty file with sqlite file extension(.db/.sqlite), then drag and drop it on the connection home page to create an connection.

  2. Click the [new connection] button to open connection dialog, then choose SQLite database type, click the icon on the left side of file path edit control to create an new sqlite database file. +Create SQLite database

+ + + diff --git a/en/document/system-requirements.html b/en/document/system-requirements.html new file mode 100644 index 000000000..f1445bd82 --- /dev/null +++ b/en/document/system-requirements.html @@ -0,0 +1,72 @@ + + + + + + System Requirements | Kangaroo + + + + + + + + + + + + + + + diff --git a/en/document/visual-sql-builder.html b/en/document/visual-sql-builder.html new file mode 100644 index 000000000..13c7dd620 --- /dev/null +++ b/en/document/visual-sql-builder.html @@ -0,0 +1,72 @@ + + + + + + Visual sql builder | Kangaroo + + + + + + + + + + + + + + + diff --git a/en/download/index.html b/en/download/index.html new file mode 100644 index 000000000..0beaf7653 --- /dev/null +++ b/en/download/index.html @@ -0,0 +1,70 @@ + + + + + + Download | Kangaroo + + + + + + + + + + + +

# Download Kangaroo

Recommend all users to download or upgrade the latest version always, new features and bug fixed will landing the new version. Some servers have space limitation, only the latest version is available for download.

Important information

Versions marked with Dev Beta are free for commercial use, others require payment.

# Kangaroo versions

Release date Windows Linux MacOS iOS Android
2023-09-01 v3.92.1 v3.92.1 v3.92.1
2023-08-01 v3.91.1 (Beta) v3.91.1 (Beta) v3.91.1 (Beta)
2023-07-01 v3.90.1 (Beta) v3.90.1 (Beta) v3.90.1 (Beta)
2023-06-02 v2.99.3 (Beta) v2.99.3 (Beta) v2.99.3 (Beta)
2023-05-08 v1.10.3 (Beta) v1.10.3 (Beta) v1.10.3 (Beta)
2023-04-28 v2.99.2 (Beta) v2.99.2 (Beta) v2.99.2 (Beta)
2023-04-02 v2.99.1 (Beta) v2.99.1 (Beta) v2.99.1 (Beta)
2023-03-01 v2.3.2 (Beta) v2.3.2 (Beta) v2.3.2 (Beta)
2023-02-01 v2.3.1 (Beta) v2.3.1 (Beta) v2.3.1 (Beta)
2023-01-01 v2.2.1 (Beta) v2.2.1 (Beta) v2.2.1 (Beta)
2022-12-01 v2.1.1 (Beta) v2.1.1 (Beta) v2.1.1 (Beta)
2022-11-01 v2.0.0 (Beta) v2.0.0 (Beta) v2.0.0 (Beta)
2022-10-01 v1.99.1 (Dev) v1.99.1 (Dev) v1.99.1 (Dev)
2022-09-04 v1.98.1 (Dev) v1.98.1 (Dev) v1.98.1 (Dev)
2022-07-31 v1.97.1 (Dev) v1.97.1 (Dev) v1.97.1 (Dev)
2022-07-01 v1.10.2 (Beta) v1.10.2 (Beta) v1.10.2 (Beta)
2022-07-01 v1.96.1 (Dev) v1.96.1 (Dev) v1.96.1 (Dev)
2022-06-01 v1.95.1 (Dev) v1.95.1 (Dev) v1.95.1 (Dev)
2022-05-01 v1.94.1 (Dev) v1.94.1 (Dev) v1.94.1 (Dev)
2022-04-01 v1.93.1 (Dev) v1.93.1 (Dev) v1.93.1 (Dev)
2022-02-28 v1.92.1 (Dev) v1.92.1 (Dev) v1.92.1 (Dev)
2022-01-28 v1.91.1 (Dev) v1.91.1 (Dev) v1.91.1 (Dev)
2021-12-31 v1.90.1 (Dev) v1.90.1 (Dev) v1.90.1 (Dev)
2021-07-31 v1.10.1 (Beta) v1.10.1 (Beta) v1.10.1 (Beta)
2021-05-31 v1.9.1 (Dev) v1.9.1 (Dev) v1.9.1 (Dev)
2021-04-30 v1.8.1 (Dev) v1.8.1 (Dev) v1.8.1 (Dev)
2021-03-31 v1.7.1 (Dev) v1.7.1 (Dev) v1.7.1 (Dev)
2021-01-31 v1.6.1 (Dev) v1.6.1 (Dev) v1.6.1 (Dev)
2020-12-31 v1.5.1 (Dev) v1.5.1 (Dev) v1.5.1 (Dev)
2020-11-09 v1.0.6 (Beta) v1.0.6 (Beta) v1.0.6 (Beta)
2020-11-02 v1.3.1 (Dev) v1.3.1 (Dev) v1.3.1 (Dev)
2020-10-19 v1.0.5 (Beta) v1.0.5 (Beta) v1.0.5 (Beta)
2020-09-21 v0.99.3 (Beta) v0.99.3 (Beta) v0.99.3 (Beta)
2020-09-07 v0.99.2 (Beta) v0.99.2 (Beta) v0.99.2 (Beta)
2020-08-24 v0.99.1 (Beta) v0.99.1 (Beta) v0.99.1 (Beta)
2020-08-17 v0.33.1 (Dev) v0.33.1 (Dev) v0.33.1 (Dev)
2020-08-10 v0.32.1 (Dev) v0.32.1 (Dev) v0.32.1 (Dev)
2020-08-03 v0.31.1 (Dev) v0.31.1 (Dev) v0.31.1 (Dev)
2020-07-27 v0.30.1 (Dev) v0.30.1 (Dev) v0.30.1 (Dev)
2020-07-13 v0.29.1 (Dev) v0.29.1 (Dev) v0.29.1 (Dev)
2020-06-29 v0.28.1 (Dev) v0.28.1 (Dev) v0.28.1 (Dev)
2020-06-22 v0.27.1 (Beta) v0.27.1 (Beta) v0.27.1 (Beta)
2020-06-15 v0.26.1 (Dev) v0.26.1 (Dev) v0.26.1 (Dev)
2020-06-01 v0.25.1 (Beta) v0.25.1 (Beta) v0.25.1 (Beta)
2020-05-25 v0.24.1 (Dev) v0.24.1 (Dev) v0.24.1 (Dev)
2020-05-18 v0.23.1 (Beta) v0.23.1 (Beta) v0.23.1 (Beta)
2020-05-11 v0.22.1 (Beta) v0.22.1 (Beta) v0.22.1 (Beta)
2020-05-04 v0.21.1 (Beta) v0.21.1 (Beta) v0.21.1 (Beta)
2020-04-20 v0.20.1 (Dev) v0.20.1 (Dev) v0.20.1 (Dev)
2020-04-13 v0.19.1 (Dev) v0.19.1 (Dev) v0.19.1 (Dev)
2020-04-06 v0.18.1 (Dev) v0.18.1 (Dev) v0.18.1 (Dev)
2020-03-23 v0.17.0 (Dev) v0.17.0 (Dev) v0.17.0 (Dev)
2020-03-16 v0.16.0 (Dev) v0.16.0 (Dev)
2020-03-02 v0.15.0 (Dev) v0.15.0 (Dev) v0.15.0 (Dev)
2020-02-17 v0.14.0 (Dev) v0.14.0 (Dev) v0.14.0 (Dev)
2020-02-10 v0.13.0 (Dev) v0.13.0 (Dev) v0.13.0 (Dev)
2020-01-20 v0.12.1 (Dev) v0.12.1 (Dev) v0.12.1 (Dev)
2020-01-13 v0.11.1 (Dev) v0.11.1 (Dev) v0.11.1 (Dev)
2020-01-06 v0.11.0 (Dev) v0.11.0 (Dev) v0.11.0 (Dev)
2019-12-23 v0.10.0 (Dev) v0.10.0 (Dev) v0.10.0 (Dev)
2019-12-16 v0.9.5 (Dev) v0.9.5 (Dev) v0.9.5 (Dev)
2019-12-09 v0.9.4 (Dev) v0.9.4 (Dev) v0.9.4 (Dev)
2019-12-02 v0.9.3 (Dev) v0.9.3 (Dev) v0.9.3 (Dev)
2019-11-25 v0.9.2 (Dev) v0.9.2 (Dev) v0.9.2 (Dev)
2019-11-18 v0.9.1 (Dev) v0.9.1 (Dev) v0.9.1 (Dev)
2019-11-11 v0.9.0 (Dev) v0.9.0 (Dev) v0.9.0 (Dev)
2019-11-04 v0.8.5 (Dev) v0.8.5 (Dev) v0.8.5 (Dev)
2019-10-28 v0.8.4 (Dev) v0.8.4 (Dev) v0.8.4 (Dev)
2019-10-21 v0.8.3 (Dev) v0.8.3 (Dev) v0.8.3 (Dev)
2019-10-14 v0.8.2 (Dev) v0.8.2 (Dev)
2019-09-30 v0.8.1 (Dev) v0.8.1 (Dev)
2019-09-23 v0.8.0 (Dev) v0.8.0 (Dev)
2019-09-16 v0.7.2 (Dev) v0.7.2 (Dev)
+ (adsbygoogle = window.adsbygoogle || []).push({}); +
+ + + diff --git a/en/download/v0.10.0.191223.html b/en/download/v0.10.0.191223.html new file mode 100644 index 000000000..17ce52515 --- /dev/null +++ b/en/download/v0.10.0.191223.html @@ -0,0 +1,74 @@ + + + + + + Kangaroo v0.10.0 (Dev) | Kangaroo + + + + + + + + + + + +

# Kangaroo v0.10.0 (Dev)

# New features & bug-fixes

  1. add export assistant UI
  2. batch export table to file.
  3. support data formats(DSV/JSON/XML/HTML/Markdown/SQL)
  4. support title for column(rename)
+ (adsbygoogle = window.adsbygoogle || []).push({}); +

# Installer & Portable packages link expired

Install Packages Windows (64 bit) Linux (64 bit) MacOS (64 bit)
Installer (Github.com) Windows Installer (opens new window)
Portable (Github.com) Windows Portable (opens new window) Ubuntu Portable (opens new window) MacOS Portable (opens new window)
Installer (Gitee.com) Windows Installer (opens new window)
Portable (Gitee.com) Windows Portable (opens new window) Ubuntu Portable (opens new window) MacOS Portable (opens new window)
+ + + diff --git a/en/download/v0.11.0.200106.html b/en/download/v0.11.0.200106.html new file mode 100644 index 000000000..fbeffbca3 --- /dev/null +++ b/en/download/v0.11.0.200106.html @@ -0,0 +1,74 @@ + + + + + + Kangaroo v0.11.0 (Dev) | Kangaroo + + + + + + + + + + + +

# Kangaroo v0.11.0 (Dev)

# New features & bug-fixes

  1. add app home page
  2. reimplement DSV format engine
  3. improve DSV compatible with other tools.
  4. improve DSV option UI layout
  5. improve date column editting support
  6. fixed: generate sql statement incorrect.
  7. fixed: crash while importing data
  8. fixed: can't save data while editting on data grid
  9. fixed: warning message about db tree
+ (adsbygoogle = window.adsbygoogle || []).push({}); +

# Installer & Portable packages link expired

Install Packages Windows (64 bit) Linux (64 bit) MacOS (64 bit)
Installer (Github.com) Windows Installer (opens new window)
Portable (Github.com) Windows Portable (opens new window) Ubuntu Portable (opens new window) MacOS Portable (opens new window)
Installer (Gitee.com) Windows Installer (opens new window)
Portable (Gitee.com) Windows Portable (opens new window) Ubuntu Portable (opens new window) MacOS Portable (opens new window)
+ + + diff --git a/en/download/v0.11.1.200113.html b/en/download/v0.11.1.200113.html new file mode 100644 index 000000000..8419ad547 --- /dev/null +++ b/en/download/v0.11.1.200113.html @@ -0,0 +1,74 @@ + + + + + + Kangaroo v0.11.1 (Dev) | Kangaroo + + + + + + + + + + + +

# Kangaroo v0.11.1 (Dev)

# New features & bug-fixes

  1. redesign connection dialog to support SSH and SSL
  2. add donate icon on home page(Paypal/Wechat/Alipay)
  3. redesign configuration model and file(init --> json)
  4. Use symbolic icons in the Header Bar(#25)
  5. fixed: edit data in grid will update all rows
+ (adsbygoogle = window.adsbygoogle || []).push({}); +

# Installer & Portable packages link expired

Install Packages Windows (64 bit) Linux (64 bit) MacOS (64 bit)
Installer (Github.com) Windows Installer (opens new window)
Portable (Github.com) Windows Portable (opens new window) Ubuntu Portable (opens new window) MacOS Portable (opens new window)
Installer (Gitee.com) Windows Installer (opens new window)
Portable (Gitee.com) Windows Portable (opens new window) Ubuntu Portable (opens new window) MacOS Portable (opens new window)
+ + + diff --git a/en/download/v0.12.1.200120.html b/en/download/v0.12.1.200120.html new file mode 100644 index 000000000..98eb5e56e --- /dev/null +++ b/en/download/v0.12.1.200120.html @@ -0,0 +1,74 @@ + + + + + + Kangaroo v0.12.1 (Dev) | Kangaroo + + + + + + + + + + + +

# Kangaroo v0.12.1 (Dev)

# New features & bug-fixes

  1. add setting dialog
  2. add dark theme support
  3. bind connection dialog with new setting model
  4. update start view with new setting model
+ (adsbygoogle = window.adsbygoogle || []).push({}); +

# Installer & Portable packages link expired

Install Packages Windows (64 bit) Linux (64 bit) MacOS (64 bit)
Installer (Github.com) Windows Installer (opens new window)
Portable (Github.com) Windows Portable (opens new window) Ubuntu Portable (opens new window) MacOS Portable (opens new window)
Installer (Gitee.com) Windows Installer (opens new window)
Portable (Gitee.com) Windows Portable (opens new window) Ubuntu Portable (opens new window) MacOS Portable (opens new window)
+ + + diff --git a/en/download/v0.13.0.200210.html b/en/download/v0.13.0.200210.html new file mode 100644 index 000000000..155750e4b --- /dev/null +++ b/en/download/v0.13.0.200210.html @@ -0,0 +1,74 @@ + + + + + + Kangaroo v0.13.0 (Dev) | Kangaroo + + + + + + + + + + + +

# Kangaroo v0.13.0 (Dev)

# New features & bug-fixes

  1. apply data grid style setting
  2. apply sql editor style setting
  3. windows 32bit version support
  4. implement SSH tunnel support(not yet integrate)
  5. minor change for connection dialog UI
  6. fixed: tool's icon incorrect on release version
+ (adsbygoogle = window.adsbygoogle || []).push({}); +

# Installer & Portable packages link expired

Packages Windows(32 bit) Windows(64 bit) Linux(64 bit) MacOS(64 bit)
Installer (Github.com) Windows Installer (opens new window) Windows Installer (opens new window)
Portable (Github.com) Windows Portable (opens new window) Windows Portable (opens new window) Ubuntu Portable (opens new window) MacOS Portable (opens new window)
Installer (Gitee.com) Windows Installer (opens new window) Windows Installer (opens new window)
Portable (Gitee.com) Windows Portable (opens new window) Windows Portable (opens new window) Ubuntu Portable (opens new window) MacOS Portable (opens new window)
+ + + diff --git a/en/download/v0.14.0.200217.html b/en/download/v0.14.0.200217.html new file mode 100644 index 000000000..5e607b36d --- /dev/null +++ b/en/download/v0.14.0.200217.html @@ -0,0 +1,74 @@ + + + + + + Kangaroo v0.14.0 (Dev) | Kangaroo + + + + + + + + + + + +

# Kangaroo v0.14.0 (Dev)

# New features & bug-fixes

  1. SQLite: support to create new database
  2. refactor database tree context menu
  3. integrated with openssl to keep user's password safe
  4. add pointer cursor for right panel icon
  5. fixed: update workbench default size while first run
+ (adsbygoogle = window.adsbygoogle || []).push({}); +

# Installer & Portable packages link expired

Packages Windows(32 bit) Windows(64 bit) Linux(64 bit) MacOS(64 bit)
Installer (Github.com) Windows Installer (opens new window)
Portable (Github.com) Windows Portable (opens new window) Ubuntu Portable (opens new window) MacOS Portable (opens new window)
Installer (Gitee.com) Windows Installer (opens new window)
Portable (Gitee.com) Windows Portable (opens new window) Ubuntu Portable (opens new window) MacOS Portable (opens new window)
+ + + diff --git a/en/download/v0.15.0.200302.html b/en/download/v0.15.0.200302.html new file mode 100644 index 000000000..5c731f915 --- /dev/null +++ b/en/download/v0.15.0.200302.html @@ -0,0 +1,74 @@ + + + + + + Kangaroo v0.15.0 (Dev) | Kangaroo + + + + + + + + + + + +

# Kangaroo v0.15.0 (Dev)

# New features & bug-fixes

  1. Update and share openssl.vapi to keep user data safe.
  2. Improve language support(kangaroo.pot, zh_Hans and zh_Hant)
  3. Improve home view's web resource load performance
  4. Apply proxy setting for loading web resource
  5. Linux: change browser view to timeline text view
  6. Use combobox widget instead entry for log file size
+ (adsbygoogle = window.adsbygoogle || []).push({}); +

# Installer & Portable packages link expired

Packages Windows(32 bit) Windows(64 bit) Linux(64 bit) MacOS(64 bit)
Installer
(Github.com)
Windows Installer (opens new window)
Portable
(Github.com)
Windows (opens new window) Arch (opens new window)
Ubuntu (opens new window)
MacOS (opens new window)
Installer
(Gitee.com)
Windows Installer (opens new window)
Portable
(Gitee.com)
Windows (opens new window) Arch (opens new window)
Ubuntu (opens new window)
MacOS (opens new window)
+ + + diff --git a/en/download/v0.16.0.200316.html b/en/download/v0.16.0.200316.html new file mode 100644 index 000000000..96fe9f918 --- /dev/null +++ b/en/download/v0.16.0.200316.html @@ -0,0 +1,74 @@ + + + + + + Kangaroo v0.16.0 (Dev) | Kangaroo + + + + + + + + + + + +

# Kangaroo v0.16.0 (Dev)

# New features & bug-fixes

  1. Support SSH tunnel(Windows not yet pass test).
  2. Support input page number to switch page
  3. Improve: update layout of switch widget on dialog
  4. Fixed: can't open link on windows
  5. Fixed: log file index error
+ (adsbygoogle = window.adsbygoogle || []).push({}); +

# Installer & Portable packages link expired

Packages Windows(32 bit) Windows(64 bit) Linux(64 bit) MacOS(64 bit)
Installer
(Github.com)
Installer (opens new window)
Portable
(Github.com)
Portable (opens new window) Arch (opens new window)
Installer
(Gitee.com)
Installer (opens new window)
Portable
(Gitee.com)
Portable (opens new window) Arch (opens new window)
+ + + diff --git a/en/download/v0.17.0.200323.html b/en/download/v0.17.0.200323.html new file mode 100644 index 000000000..25c1bd691 --- /dev/null +++ b/en/download/v0.17.0.200323.html @@ -0,0 +1,74 @@ + + + + + + Kangaroo v0.17.0 (Dev) | Kangaroo + + + + + + + + + + + +

# Kangaroo v0.17.0 (Dev)

# New features & bug-fixes

  1. Support connection over SSH tunnel (Windows, Linux/Unix and MacOS)
  2. Add testing support for connection dialog
  3. Refactor context menu of datagrid
  4. Add dump sql (file and text) menu for dbtree
  5. Implement selection menu of datagrid
  6. Implement goto cell menu of datagrid
  7. Fixed: crashed while switching grid to form.
+ (adsbygoogle = window.adsbygoogle || []).push({}); +

# Installer & Portable packages link expired

Packages Windows(32 bit) Windows(64 bit) Linux(64 bit) MacOS(64 bit)
Installer
(Github.com)
Installer (opens new window)
Portable
(Github.com)
Portable (opens new window) Arch (opens new window) MacOS (opens new window)
Installer
(Gitee.com)
Installer (opens new window)
Portable
(Gitee.com)
Portable (opens new window) Arch (opens new window) MacOS (opens new window)
+ + + diff --git a/en/download/v0.18.1.200406.html b/en/download/v0.18.1.200406.html new file mode 100644 index 000000000..65b328266 --- /dev/null +++ b/en/download/v0.18.1.200406.html @@ -0,0 +1,74 @@ + + + + + + Kangaroo v0.18.1 (Dev) | Kangaroo + + + + + + + + + + + +

# Kangaroo v0.18.1 (Dev)

# New features & bug-fixes

  1. encrypt user password to keep user passwords safe.
  2. Implement insert, clone and delete functionality in the datagrid.
  3. Implement connection clone functionality in the start view
  4. Implement dump sql functionality on the dbtree
  5. Implement table schema editor on the dbtree
  6. Implement refresh functionality on the dbtree
  7. Improve workspace tab behavior(auto hide for one)
  8. fixed: return key behavior invalid on the dbtree
  9. fixed: crashed while open table with null value
+ (adsbygoogle = window.adsbygoogle || []).push({}); +

# Installer & Portable packages link expired

Packages Windows(32 bit) Windows(64 bit) Linux(64 bit) MacOS(64 bit)
Installer
(Github.com)
Installer (opens new window)
Portable
(Github.com)
Portable (opens new window) Arch (opens new window) MacOS (opens new window)
Installer
(Gitee.com)
Installer (opens new window)
Portable
(Gitee.com)
Portable (opens new window) Arch (opens new window) MacOS (opens new window)
+ + + diff --git a/en/download/v0.19.1.200413.html b/en/download/v0.19.1.200413.html new file mode 100644 index 000000000..e2095defc --- /dev/null +++ b/en/download/v0.19.1.200413.html @@ -0,0 +1,74 @@ + + + + + + Kangaroo v0.19.1 (Dev) | Kangaroo + + + + + + + + + + + +

# Kangaroo v0.19.1 (Dev)

# New features & bug-fixes

  1. Implement copy object name menu on dbtree.
  2. Implement copy as SQL(Insert/Update/Delete) in the datagrid.
  3. Implement copy as TSV in the datagrid
  4. Implement copy as CSV in the datagrid
  5. Implement copy as PHP array in the datagrid
  6. Implement copy as JSON in the datagrid
  7. Improve paned widget border style.
  8. fixed: crashed while stringize the blob column
  9. fixed: crashed while no primary key
  10. fixed: crashed while primary key contain character(_)
  11. fixed: warning message while column with empty value
  12. fixed: warning message while invalid calling(to_string)
+ (adsbygoogle = window.adsbygoogle || []).push({}); +

# Installer & Portable packages link expired

Packages Windows(32 bit) Windows(64 bit) Linux(64 bit) MacOS(64 bit)
Installer
(Github.com)
Installer (opens new window)
Portable
(Github.com)
Portable (opens new window) Arch (opens new window) MacOS (opens new window)
Installer
(Gitee.com)
Installer (opens new window)
Portable
(Gitee.com)
Portable (opens new window) Arch (opens new window) MacOS (opens new window)
+ + + diff --git a/en/download/v0.20.1.200420.html b/en/download/v0.20.1.200420.html new file mode 100644 index 000000000..798c27efb --- /dev/null +++ b/en/download/v0.20.1.200420.html @@ -0,0 +1,74 @@ + + + + + + Kangaroo v0.20.1 (Dev) | Kangaroo + + + + + + + + + + + +

# Kangaroo v0.20.1 (Dev)

# New features & bug-fixes

  1. Implement copy function in the datagrid.
  2. refactor context menu of structure designer.
  3. Implement clone function for designer form.
  4. Implement append function for designer form.
  5. Support multi rows of delete/move up/move down function.
  6. Implement copy function for designer form.
  7. Implement cut function for designer form.
  8. Implement paste function for designer form.
  9. Improve text performance of datagrid.
+ (adsbygoogle = window.adsbygoogle || []).push({}); +

# Installer & Portable packages link expired

Packages Windows(32 bit) Windows(64 bit) Linux(64 bit) MacOS(64 bit)
Installer
(Github.com)
Installer (opens new window)
Portable
(Github.com)
Portable (opens new window) Arch (opens new window) MacOS (opens new window)
Installer
(Gitee.com)
Installer (opens new window)
Portable
(Gitee.com)
Portable (opens new window) Arch (opens new window) MacOS (opens new window)
+ + + diff --git a/en/download/v0.21.1.200504.html b/en/download/v0.21.1.200504.html new file mode 100644 index 000000000..db9569af1 --- /dev/null +++ b/en/download/v0.21.1.200504.html @@ -0,0 +1,74 @@ + + + + + + Kangaroo v0.21.1 (Beta) | Kangaroo + + + + + + + + + + + +

# Kangaroo v0.21.1 (Beta)

# New features & bug-fixes

  1. Refactor the entire datagrid to make great experience.
  2. Support 3 kind of mode: LIVE / CACHE / TRANSACTION
  3. Support copy and paste multi rows in data grid.
  4. Chnage mode automatically while paste multi rows.
  5. fixed: where statement error in query builder
+ (adsbygoogle = window.adsbygoogle || []).push({}); +

# Installer & Portable packages link expired

Packages Windows(32 bit) Windows(64 bit) Linux(64 bit) MacOS(64 bit)
Installer
(Github.com)
Installer (opens new window)
Portable
(Github.com)
Portable (opens new window) Arch (opens new window) MacOS (opens new window)
Installer
(Gitee.com)
Installer (opens new window)
Portable
(Gitee.com)
Portable (opens new window) Arch (opens new window) MacOS (opens new window)
+ + + diff --git a/en/download/v0.22.1.200511.html b/en/download/v0.22.1.200511.html new file mode 100644 index 000000000..22330b1d6 --- /dev/null +++ b/en/download/v0.22.1.200511.html @@ -0,0 +1,74 @@ + + + + + + Kangaroo v0.22.1 (Beta) | Kangaroo + + + + + + + + + + + +

# Kangaroo v0.22.1 (Beta)

# New features & bug-fixes

  1. Add Chinese(zh-CN/zh-TW/zh-HK/zh-SG) translation.
  2. SQLite: add file extension(.sqlite) for new database.
  3. Improve experience for designer / fresh / delete operation
  4. Improve deploy and installer script for automation.
  5. Fixed: crash while renaming object.
  6. Fixed: crash while deleting object.
  7. Fixed: crash while saving schema for sqlite
  8. Fixed: can't append row on the empty table
  9. Fixed: can't save appended row in live mode
+ (adsbygoogle = window.adsbygoogle || []).push({}); +

# Installer & Portable packages link expired

Packages Windows(32 bit) Windows(64 bit) Linux(64 bit) MacOS(64 bit)
Installer
(Github.com)
Installer (opens new window)
Portable
(Github.com)
Portable (opens new window) Arch (opens new window) MacOS (opens new window)
Installer
(Gitee.com)
Installer (opens new window)
Portable
(Gitee.com)
Portable (opens new window) Arch (opens new window) MacOS (opens new window)
+ + + diff --git a/en/download/v0.23.1.200518.html b/en/download/v0.23.1.200518.html new file mode 100644 index 000000000..5f425bcbb --- /dev/null +++ b/en/download/v0.23.1.200518.html @@ -0,0 +1,74 @@ + + + + + + Kangaroo v0.23.1 (Beta) | Kangaroo + + + + + + + + + + + +

# Kangaroo v0.23.1 (Beta)

# New features & bug-fixes

  1. Improve date / datetime picker widget.
  2. Improve app title bar to add background image(color).
  3. Improve data grid column title.
  4. Improve Chinese translations.
  5. Fixed: can't update date/time/datetime type.
  6. Fixed: can't update float value
  7. Fixed: can't update numeric value
  8. Fixed: MySQL: can't save char column data
  9. Fixed: PostgreSQL: invalid object name in sql
  10. Fixed: invalid toolbar state while swtich to grid.
+ (adsbygoogle = window.adsbygoogle || []).push({}); +

# Installer & Portable packages link expired

Packages Windows(32 bit) Windows(64 bit) Linux(64 bit) MacOS(64 bit)
Installer
(Github.com)
Installer (opens new window)
Portable
(Github.com)
Portable (opens new window) Arch (opens new window) MacOS (opens new window)
Installer
(Gitee.com)
Installer (opens new window)
Portable
(Gitee.com)
Portable (opens new window) Arch (opens new window) MacOS (opens new window)
+ + + diff --git a/en/download/v0.24.1.200525.html b/en/download/v0.24.1.200525.html new file mode 100644 index 000000000..0dcdb6ef7 --- /dev/null +++ b/en/download/v0.24.1.200525.html @@ -0,0 +1,74 @@ + + + + + + Kangaroo v0.24.1 (Dev) | Kangaroo + + + + + + + + + + + +

# Kangaroo v0.24.1 (Dev)

# New features & bug-fixes

  1. Add SQL Formatter to beautify and minify sql code.
  2. Add archlinux installer(based on HowardZorn's PR #45).
  3. Add macos installer
+ (adsbygoogle = window.adsbygoogle || []).push({}); +

# Installer & Portable packages link expired

Packages Windows(32 bit) Windows(64 bit) Linux(64 bit) MacOS(64 bit)
Installer
(Github.com)
win64 (opens new window) Arch (opens new window) MacOS (opens new window)
Portable
(Github.com)
win64 (opens new window) Arch (opens new window) MacOS (opens new window)
Installer
(Gitee.com)
win64 (opens new window) Arch (opens new window) MacOS (opens new window)
Portable
(Gitee.com)
win64 (opens new window) Arch (opens new window) MacOS (opens new window)
+ + + diff --git a/en/download/v0.25.1.200601.html b/en/download/v0.25.1.200601.html new file mode 100644 index 000000000..3d408ffbf --- /dev/null +++ b/en/download/v0.25.1.200601.html @@ -0,0 +1,74 @@ + + + + + + Kangaroo v0.25.1 (Beta) | Kangaroo + + + + + + + + + + + +

# Kangaroo v0.25.1 (Beta)

# New features & bug-fixes

  1. Add context menu for workspace notebook widget
  2. Add new query menu for object tree item(database/schema).
  3. Update the Chinese translation(zh-CN/zh-TW/zh-HK/zh-SG).
  4. Fixed: PostgreSQL 12: tables not visible #46
  5. Fixed: MariaDB 10.5: Unknown column 'cons.ENFORCED' in 'field list' #47
  6. Fixed: PostgreSQL 12: column c.consrc does not exist #48
  7. Fixed: PostgreSQL 11.7 / 9.6: row 1 out of range(0-0) #49
  8. Fixed: MySQL 5.7.30: Unknown table 'CHECK_CONSTRAINTS' in information_schema #50
  9. Fixed: PostgreSQL 9.6: column c.relispartition does not exist #51
  10. Fixed: PostgreSQL: invalid schemas in database
  11. Fixed: display invalid while column name has underline(_)
+ (adsbygoogle = window.adsbygoogle || []).push({}); +

# Installer & Portable packages link expired

Packages Windows(64 bit) Linux(64 bit) MacOS(64 bit)
Installer
(Github.com)
win64 (opens new window) Arch (opens new window) MacOS (opens new window)
Portable
(Github.com)
win64 (opens new window) Arch (opens new window) Ubuntu (opens new window) MacOS (opens new window)
Installer
(Gitee.com)
win64 (opens new window) Arch (opens new window) MacOS (opens new window)
Portable
(Gitee.com)
win64 (opens new window) Arch (opens new window) Ubuntu (opens new window) MacOS (opens new window)
+ + + diff --git a/en/download/v0.26.1.200615.html b/en/download/v0.26.1.200615.html new file mode 100644 index 000000000..c88dfb091 --- /dev/null +++ b/en/download/v0.26.1.200615.html @@ -0,0 +1,74 @@ + + + + + + Kangaroo v0.26.1 (Dev) | Kangaroo + + + + + + + + + + + +

# Kangaroo v0.26.1 (Dev)

# New features & bug-fixes

  1. Add intellisense data support(SQLite/MySQL/PostgreSQL)
  2. Add auto completion for code view(v1)
+ (adsbygoogle = window.adsbygoogle || []).push({}); +

# Installer & Portable packages link expired

Packages Windows(64 bit) Linux(64 bit) MacOS(64 bit)
Installer
(Github.com)
win64 (opens new window) Arch (opens new window) MacOS (opens new window)
Portable
(Github.com)
win64 (opens new window) Arch (opens new window) Ubuntu (opens new window) MacOS (opens new window)
Installer
(Gitee.com)
win64 (opens new window) Arch (opens new window) MacOS (opens new window)
Portable
(Gitee.com)
win64 (opens new window) Arch (opens new window) Ubuntu (opens new window) MacOS (opens new window)
+ + + diff --git a/en/download/v0.27.1.200622.html b/en/download/v0.27.1.200622.html new file mode 100644 index 000000000..01a9e6f5e --- /dev/null +++ b/en/download/v0.27.1.200622.html @@ -0,0 +1,74 @@ + + + + + + Kangaroo v0.27.1 (Beta) | Kangaroo + + + + + + + + + + + +

# Kangaroo v0.27.1 (Beta)

# New features & bug-fixes

  1. Improve intellisense data for PostgreSQL
  2. Improve auto-completion style(icon/filter by input)
  3. Add function's call tip(highlighting/bold/auto location/data)
  4. Implement copy focused column name(short/full)
  5. Implement copy datagrid column name(TSV/CSV)
  6. Update package name
  7. Update the Chinese translation
+ (adsbygoogle = window.adsbygoogle || []).push({}); +

# Installer & Portable packages link expired

Packages Windows(64 bit) Linux(64 bit) MacOS(64 bit)
Installer
(Github.com)
Windows (opens new window) Arch (opens new window) MacOS (opens new window)
Portable
(Github.com)
Windows (opens new window) Arch (opens new window) Ubuntu (opens new window) MacOS (opens new window)
Installer
(Gitee.com)
Windows (opens new window) Arch (opens new window) MacOS (opens new window)
Portable
(Gitee.com)
Windows (opens new window) Arch (opens new window) Ubuntu (opens new window) MacOS (opens new window)
+ + + diff --git a/en/download/v0.28.1.200629.html b/en/download/v0.28.1.200629.html new file mode 100644 index 000000000..90e1a6e62 --- /dev/null +++ b/en/download/v0.28.1.200629.html @@ -0,0 +1,74 @@ + + + + + + Kangaroo v0.28.1 (Dev) | Kangaroo + + + + + + + + + + + +

# Kangaroo v0.28.1 (Dev)

# New features & bug-fixes

  1. Implement search and replace function
  2. Update the Chinese translation
+ (adsbygoogle = window.adsbygoogle || []).push({}); +

# Installer & Portable packages link expired

Packages Windows(64 bit) Linux(64 bit) MacOS(64 bit)
Installer
(Github.com)
Windows (opens new window) Arch (opens new window) MacOS (opens new window)
Portable
(Github.com)
Windows (opens new window) Arch (opens new window) Ubuntu (opens new window) MacOS (opens new window)
Installer
(Gitee.com)
Windows (opens new window) Arch (opens new window) MacOS (opens new window)
Portable
(Gitee.com)
Windows (opens new window) Arch (opens new window) Ubuntu (opens new window) MacOS (opens new window)
+ + + diff --git a/en/download/v0.29.1.200713.html b/en/download/v0.29.1.200713.html new file mode 100644 index 000000000..b8b5a6e71 --- /dev/null +++ b/en/download/v0.29.1.200713.html @@ -0,0 +1,74 @@ + + + + + + Kangaroo v0.29.1 (Dev) | Kangaroo + + + + + + + + + + + +

# Kangaroo v0.29.1 (Dev)

# New features & bug-fixes

  1. Implement plugin system
  2. Implement a example plugin
  3. Update ArchLinux and MacOSX installer
  4. Update protable package(more *nixable)
+ (adsbygoogle = window.adsbygoogle || []).push({}); +

# Installer & Portable packages link expired

Packages Windows(64 bit) Linux(64 bit) MacOS(64 bit)
Installer
(Github.com)
Windows (opens new window) Arch (opens new window) MacOS (opens new window)
Portable
(Github.com)
Windows (opens new window) Arch (opens new window) Ubuntu (opens new window) MacOS (opens new window)
Installer
(Gitee.com)
Windows (opens new window) Arch (opens new window) MacOS (opens new window)
Portable
(Gitee.com)
Windows (opens new window) Arch (opens new window) Ubuntu (opens new window) MacOS (opens new window)
+ + + diff --git a/en/download/v0.30.1.200727.html b/en/download/v0.30.1.200727.html new file mode 100644 index 000000000..6f9b32829 --- /dev/null +++ b/en/download/v0.30.1.200727.html @@ -0,0 +1,74 @@ + + + + + + Kangaroo v0.30.1 (Dev) | Kangaroo + + + + + + + + + + + +

# Kangaroo v0.30.1 (Dev)

# New features & bug-fixes

  1. Add app relate plugin search path
  2. Add data viewer pane and button
  3. Implement text and image vierer
  4. Update button with flat style
+ (adsbygoogle = window.adsbygoogle || []).push({}); +

# Installer & Portable packages link expired

Packages Windows(64 bit) Linux(64 bit) MacOS(64 bit)
Installer
(Github.com)
Windows (opens new window) Arch (opens new window) MacOS (opens new window)
Portable
(Github.com)
Windows (opens new window) Arch (opens new window) Ubuntu (opens new window) MacOS (opens new window)
Installer
(Gitee.com)
Windows (opens new window) Arch (opens new window) MacOS (opens new window)
Portable
(Gitee.com)
Windows (opens new window) Arch (opens new window) Ubuntu (opens new window) MacOS (opens new window)
+ + + diff --git a/en/download/v0.31.1.200803.html b/en/download/v0.31.1.200803.html new file mode 100644 index 000000000..875cb1edf --- /dev/null +++ b/en/download/v0.31.1.200803.html @@ -0,0 +1,74 @@ + + + + + + Kangaroo v0.31.1 (Dev) | Kangaroo + + + + + + + + + + + +

# Kangaroo v0.31.1 (Dev)

# New features & bug-fixes

  1. Implement BLOB content identity
  2. Implement SQLite BLOB column handle(import / export / set null)
  3. Implement MySQL BLOB column handle(import / export / set null)
  4. Implement PostgreSQL BLOB column handle(import / export / set null)
  5. Implement view BLOB data as string
  6. Apply tight style for find and replace box
+ (adsbygoogle = window.adsbygoogle || []).push({}); +

# Installer & Portable packages link expired

Packages Windows(64 bit) Linux(64 bit) MacOS(64 bit)
Installer
(Github.com)
Windows (opens new window) Arch (opens new window) MacOS
Portable
(Github.com)
Windows (opens new window) Arch (opens new window) Ubuntu (opens new window) MacOS
Installer
(Gitee.com)
Windows (opens new window) Arch (opens new window) MacOS
Portable
(Gitee.com)
Windows (opens new window) Arch (opens new window) Ubuntu (opens new window) MacOS
+ + + diff --git a/en/download/v0.32.1.200810.html b/en/download/v0.32.1.200810.html new file mode 100644 index 000000000..360ff5b25 --- /dev/null +++ b/en/download/v0.32.1.200810.html @@ -0,0 +1,74 @@ + + + + + + Kangaroo v0.32.1 (Dev) | Kangaroo + + + + + + + + + + + +

# Kangaroo v0.32.1 (Dev)

# New features & bug-fixes

  1. Implement to generate W3C html document
  2. Implement to generate markdown document
  3. Update import/export icon image
+ (adsbygoogle = window.adsbygoogle || []).push({}); +

# Installer & Portable packages link expired

Packages Windows(64 bit) Linux(64 bit) MacOS(64 bit)
Installer
(Github.com)
Windows (opens new window) Arch (opens new window) MacOS
Portable
(Github.com)
Windows (opens new window) Arch (opens new window) Ubuntu (opens new window) MacOS
Installer
(Gitee.com)
Windows (opens new window) Arch (opens new window) MacOS
Portable
(Gitee.com)
Windows (opens new window) Arch (opens new window) Ubuntu (opens new window) MacOS
+ + + diff --git a/en/download/v0.33.1.200817.html b/en/download/v0.33.1.200817.html new file mode 100644 index 000000000..207574570 --- /dev/null +++ b/en/download/v0.33.1.200817.html @@ -0,0 +1,74 @@ + + + + + + Kangaroo v0.33.1 (Dev) | Kangaroo + + + + + + + + + + + +

# Kangaroo v0.33.1 (Dev)

# New features & bug-fixes

  1. Update title bar and tab bar CSS style
  2. Improve date&time picker
  3. Improve date&time renderer
  4. Implement date&time editing in grid and form
  5. Update windows deploy script to include libpeas loaders
  6. Update meson script to add dependencies(pdf/draw/map)
  7. Update meson script to improve debug support
  8. Fixed: can't show animation image(.gif)
+ (adsbygoogle = window.adsbygoogle || []).push({}); +

# Installer & Portable packages link expired

It is a very good idea to use sha256sum and GnuPG command to verify the sums and signature of your packages that download from the internet, make sure they are 100% correct.

Packages Windows(64 bit) Linux(64 bit) MacOS(64 bit)
Installer
(Github.com)
Windows (opens new window) Arch (opens new window) MacOS
Portable
(Github.com)
Windows (opens new window) Arch (opens new window) Ubuntu (opens new window) MacOS
SHA256SUM
(Github.com)
SHA256SUM (opens new window) SHA256SUM.GPG (opens new window)
Installer
(Gitee.com)
Windows (opens new window) Arch (opens new window) MacOS
Portable
(Gitee.com)
Windows (opens new window) Arch (opens new window) Ubuntu (opens new window) MacOS
SHA256SUM
(Gitee.com)
SHA256SUM (opens new window) SHA256SUM.GPG (opens new window)
+ + + diff --git a/en/download/v0.7.2.190916.html b/en/download/v0.7.2.190916.html new file mode 100644 index 000000000..ae195d8bd --- /dev/null +++ b/en/download/v0.7.2.190916.html @@ -0,0 +1,70 @@ + + + + + + Kangaroo v0.7.2 (Dev) | Kangaroo + + + + + + + + + + + +

# Kangaroo v0.7.2 (Dev)

# New features & bug-fixes

  1. Implement loader of PostgreSQL 11(full version)
  2. Improve designer form of PostgreSQL 11
  3. refactor content of Kangaroo repo
  4. create new site: dbkangaroo.github.io
  5. add windows installer script
+ (adsbygoogle = window.adsbygoogle || []).push({}); +

# Installer & Portable packages link expired

Platform Installer(64 bit) Portable(64 bit)
Windows Windows installer (opens new window) Windows portable (opens new window)
Linux Ubuntu portable (opens new window)
+ + + diff --git a/en/download/v0.8.0.190923.html b/en/download/v0.8.0.190923.html new file mode 100644 index 000000000..29670c4a4 --- /dev/null +++ b/en/download/v0.8.0.190923.html @@ -0,0 +1,74 @@ + + + + + + Kangaroo v0.8.0 (Dev) | Kangaroo + + + + + + + + + + + +

# Kangaroo v0.8.0 (Dev)

# New features & bug-fixes

  1. implement the builder of PostgreSQL(11.0)
  2. save table schema to database(create only)
  3. update build script: hide app console window
  4. update windows installer: add MySQL and PostgreSQL client library
  5. update the links on the about window
  6. improve single line edit control(auto focus)
  7. update gui cursor while busy
+ (adsbygoogle = window.adsbygoogle || []).push({}); +

# Installer & Portable packages link expired

Platform Installer(64 bit) Portable(64 bit)
Windows Windows Installer (opens new window) Windows Portable (opens new window)
Linux Ubuntu Portable (opens new window)
+ + + diff --git a/en/download/v0.8.1.190930.html b/en/download/v0.8.1.190930.html new file mode 100644 index 000000000..59c0315c0 --- /dev/null +++ b/en/download/v0.8.1.190930.html @@ -0,0 +1,74 @@ + + + + + + Kangaroo v0.8.1 (Dev) | Kangaroo + + + + + + + + + + + +

# Kangaroo v0.8.1 (Dev)

# New features & bug-fixes

  1. improve: generate exact correct editing sql
  2. refactor: add source code editor module
  3. improve SQLite schema sql builder
  4. fixed: text editor and code editor can't show blank line
  5. fixed: get string failed while create data row(console)
  6. fixed: console critical message while editing schema
+ (adsbygoogle = window.adsbygoogle || []).push({}); +

# Installer & Portable packages link expired

Platform Installer(64 bit) Portable(64 bit)
Windows Windows Installer (opens new window) Windows Portable (opens new window)
Linux Ubuntu Portable (opens new window)
+ + + diff --git a/en/download/v0.8.2.191014.html b/en/download/v0.8.2.191014.html new file mode 100644 index 000000000..b184a7fab --- /dev/null +++ b/en/download/v0.8.2.191014.html @@ -0,0 +1,74 @@ + + + + + + Kangaroo v0.8.2 (Dev) | Kangaroo + + + + + + + + + + + +

# Kangaroo v0.8.2 (Dev)

# New features & bug-fixes

  1. improve: field selection dialog support to select fields by value(#9)
  2. improve: schema designer support to navigate with Tab key(#3)
  3. fixed: fields expression dialog reload value failed(#10)
  4. fixed: missing windows shortcut icon(start menu and desktop) (#7)
  5. fixed: missing syntax highlighting support(#8)
  6. fixed: load data in form view failed(#11)
+ (adsbygoogle = window.adsbygoogle || []).push({}); +

# Installer & Portable packages link expired

Platform Installer(64 bit) Portable(64 bit)
Windows Windows Installer (opens new window) Windows Portable (opens new window)
Linux Ubuntu Portable (opens new window)
MacOS
+ + + diff --git a/en/download/v0.8.3.191021.html b/en/download/v0.8.3.191021.html new file mode 100644 index 000000000..ec9a00c27 --- /dev/null +++ b/en/download/v0.8.3.191021.html @@ -0,0 +1,75 @@ + + + + + + Kangaroo v0.8.3 (Dev) | Kangaroo + + + + + + + + + + + +

# Kangaroo v0.8.3 (Dev)

# New features & bug-fixes

New features & bug-fixes

  1. 新建连接时出现插件未加载错误 #12
    +Load plugin failed while create new connection #12

  2. Add MacOS compilation support #13

  3. refactor database model to improve interoperability

+ (adsbygoogle = window.adsbygoogle || []).push({}); +

# Installer & Portable packages link expired

Platform Installer(64 bit) Portable(64 bit)
Windows Windows Installer (opens new window) Windows Portable (opens new window)
Linux Ubuntu Portable (opens new window)
MacOS MacOS Portable (opens new window)
+ + + diff --git a/en/download/v0.8.4.191028.html b/en/download/v0.8.4.191028.html new file mode 100644 index 000000000..ef478ea45 --- /dev/null +++ b/en/download/v0.8.4.191028.html @@ -0,0 +1,74 @@ + + + + + + Kangaroo v0.8.4 (Dev) | Kangaroo + + + + + + + + + + + +

# Kangaroo v0.8.4 (Dev)

# New features & bug-fixes

New features & bug-fixes

  1. Rearrange db tree and UI #17
  2. Add refresh menu on db tree
  3. Implement multiple databases support
  4. Edit table schema and save to database(MySQL Preview) #5
+ (adsbygoogle = window.adsbygoogle || []).push({}); +

# Installer & Portable packages link expired

Platform Installer(64 bit) Portable(64 bit)
Windows Windows Installer (opens new window) Windows Portable (opens new window)
Linux Ubuntu Portable (opens new window)
MacOS MacOS Portable (opens new window)
+ + + diff --git a/en/download/v0.8.5.191104.html b/en/download/v0.8.5.191104.html new file mode 100644 index 000000000..04f45115b --- /dev/null +++ b/en/download/v0.8.5.191104.html @@ -0,0 +1,74 @@ + + + + + + Kangaroo v0.8.5 (Dev) | Kangaroo + + + + + + + + + + + +

# Kangaroo v0.8.5 (Dev)

# New features & bug-fixes

  1. Edit table schema and save to database(SQLite and PostgreSQL preview) #5
  2. Add export data formats UI and interfaces
  3. Update tab's title while save the new table
+ (adsbygoogle = window.adsbygoogle || []).push({}); +

# Installer & Portable packages link expired

Platform Installer(64 bit) Portable(64 bit)
Windows Windows Installer (opens new window) Windows Portable (opens new window)
Linux Ubuntu Portable (opens new window)
MacOS MacOS Portable (opens new window)
+ + + diff --git a/en/download/v0.9.0.191111.html b/en/download/v0.9.0.191111.html new file mode 100644 index 000000000..b9676a678 --- /dev/null +++ b/en/download/v0.9.0.191111.html @@ -0,0 +1,74 @@ + + + + + + Kangaroo v0.9.0 (Dev) | Kangaroo + + + + + + + + + + + +

# Kangaroo v0.9.0 (Dev)

# New features & bug-fixes

  1. Edit table schema and save to database #5
  2. Export data to JSON and DSV format
+ (adsbygoogle = window.adsbygoogle || []).push({}); +

# Installer & Portable packages link expired

Platform Installer(64 bit) Portable(64 bit)
Windows Windows Installer (opens new window) Windows Portable (opens new window)
Linux Ubuntu Portable (opens new window)
MacOS MacOS Portable (opens new window)
+ + + diff --git a/en/download/v0.9.1.191118.html b/en/download/v0.9.1.191118.html new file mode 100644 index 000000000..4d39321f3 --- /dev/null +++ b/en/download/v0.9.1.191118.html @@ -0,0 +1,75 @@ + + + + + + Kangaroo v0.9.1 (Dev) | Kangaroo + + + + + + + + + + + +

# Kangaroo v0.9.1 (Dev)

# New features & bug-fixes

  1. Export data to file(dsv(csv/tsv/...)/xml/json/sql/md/html) #18 +
    • Export data to DSV format(CSV/TSV/...)
    • Export data to JSON format
    • Export data to XML format
    • Export data to HTML format
    • Export data to SQL format(INSERT)
    • Export data to Markdown format
  2. Improve file filter of save dialog
+ (adsbygoogle = window.adsbygoogle || []).push({}); +

# Installer & Portable packages link expired

Platform Installer(64 bit) Portable(64 bit)
Windows Windows Installer (opens new window) Windows Portable (opens new window)
Linux Ubuntu Portable (opens new window)
MacOS MacOS Portable (opens new window)
+ + + diff --git a/en/download/v0.9.2.191125.html b/en/download/v0.9.2.191125.html new file mode 100644 index 000000000..95a564ad8 --- /dev/null +++ b/en/download/v0.9.2.191125.html @@ -0,0 +1,75 @@ + + + + + + Kangaroo v0.9.2 (Dev) | Kangaroo + + + + + + + + + + + +

# Kangaroo v0.9.2 (Dev)

# New features & bug-fixes

  1. Import data from file(dsv/xml/json) #19 +
    • implement the import UI(format, encoding and preview)
    • implement the import UI(DSV format option)
    • implement the import UI(data preview)
    • implement the import UI(column mapping)
    • implement the import UI(process progress)
    • implement DSV format parse and preview
+ (adsbygoogle = window.adsbygoogle || []).push({}); +

# Installer & Portable packages link expired

Platform Installer(64 bit) Portable(64 bit)
Windows Windows Installer (opens new window) Windows Portable (opens new window)
Linux Ubuntu Portable (opens new window)
MacOS MacOS Portable (opens new window)
+ + + diff --git a/en/download/v0.9.3.191202.html b/en/download/v0.9.3.191202.html new file mode 100644 index 000000000..5822a3657 --- /dev/null +++ b/en/download/v0.9.3.191202.html @@ -0,0 +1,74 @@ + + + + + + Kangaroo v0.9.3 (Dev) | Kangaroo + + + + + + + + + + + +

# Kangaroo v0.9.2 (Dev)

# New features & bug-fixes

  1. implement column mapping function
+ (adsbygoogle = window.adsbygoogle || []).push({}); +

# Installer & Portable packages link expired

Platform Installer(64 bit) Portable(64 bit)
Windows Windows Installer (opens new window) Windows Portable (opens new window)
Linux Ubuntu Portable (opens new window)
MacOS MacOS Portable (opens new window)
+ + + diff --git a/en/download/v0.9.4.191209.html b/en/download/v0.9.4.191209.html new file mode 100644 index 000000000..ff31c3a3c --- /dev/null +++ b/en/download/v0.9.4.191209.html @@ -0,0 +1,74 @@ + + + + + + Kangaroo v0.9.4 (Dev) | Kangaroo + + + + + + + + + + + +

# Kangaroo v0.9.4 (Dev)

# New features & bug-fixes

  1. add import summary page
  2. add five kinds of import mode
  3. import csv format data to table
  4. fixed logo can't show on linux and macos platform
+ (adsbygoogle = window.adsbygoogle || []).push({}); +

# Installer & Portable packages link expired

Platform Installer(64 bit) Portable(64 bit)
Windows Windows Installer (opens new window) Windows Portable (opens new window)
Linux Ubuntu Portable (opens new window)
MacOS MacOS Portable (opens new window)
+ + + diff --git a/en/download/v0.9.5.191216.html b/en/download/v0.9.5.191216.html new file mode 100644 index 000000000..c5932ee9e --- /dev/null +++ b/en/download/v0.9.5.191216.html @@ -0,0 +1,74 @@ + + + + + + Kangaroo v0.9.5 (Dev) | Kangaroo + + + + + + + + + + + +

# Kangaroo v0.9.5 (Dev)

# New features & bug-fixes

  1. import data from DSV format
  2. import data from JSON format
  3. import data from XML format
  4. Rewritten export data as XML format with libxml2;
  5. add export modules assistant UI
  6. implement export format and table selection page
+ (adsbygoogle = window.adsbygoogle || []).push({}); +

# Installer & Portable packages link expired

Install Packages Windows (64 bit) Linux (64 bit) MacOS (64 bit)
Installer (Github.com) Windows Installer (opens new window)
Portable (Github.com) Windows Portable (opens new window) Ubuntu Portable (opens new window) MacOS Portable (opens new window)
Installer (Gitee.com) Windows Installer (opens new window)
Portable (Gitee.com) Windows Portable (opens new window) Ubuntu Portable (opens new window) MacOS Portable (opens new window)
+ + + diff --git a/en/download/v0.99.1.200824.html b/en/download/v0.99.1.200824.html new file mode 100644 index 000000000..0be6850bd --- /dev/null +++ b/en/download/v0.99.1.200824.html @@ -0,0 +1,74 @@ + + + + + + Kangaroo v0.99.1 (Beta) | Kangaroo + + + + + + + + + + + +

# Kangaroo v0.99.1 (Beta)

# New features & bug-fixes

  1. Improve designer to notify user save change
  2. Improve message dialog to show title
  3. Improve preview tab to show change only
  4. Update SQLite/MySQL/PostgreSQL meta model
  5. Improve windows installer to add license and language support
  6. Make kangaroo portable #59
+ (adsbygoogle = window.adsbygoogle || []).push({}); +

# Installer & Portable packages link expired

It is a very good idea to use sha256sum and GnuPG command to verify the sums and signature of your packages that download from the internet, make sure they are 100% correct.

Packages Windows(64 bit) Linux(64 bit) MacOS(64 bit)
Installer
(Github.com)
Windows (opens new window) Arch (opens new window) MacOS
Portable
(Github.com)
Windows (opens new window) Arch (opens new window) Ubuntu (opens new window) MacOS
SHA256SUM
(Github.com)
SHA256SUM (opens new window) SHA256SUM.GPG (opens new window)
Installer
(Gitee.com)
Windows (opens new window) Arch (opens new window) MacOS
Portable
(Gitee.com)
Windows (opens new window) Arch (opens new window) Ubuntu (opens new window) MacOS
SHA256SUM
(Gitee.com)
SHA256SUM (opens new window) SHA256SUM.GPG (opens new window)
+ + + diff --git a/en/download/v0.99.2.200907.html b/en/download/v0.99.2.200907.html new file mode 100644 index 000000000..9c985504c --- /dev/null +++ b/en/download/v0.99.2.200907.html @@ -0,0 +1,74 @@ + + + + + + Kangaroo v0.99.2 (Dev) | Kangaroo + + + + + + + + + + + +

# Kangaroo v0.99.2 (Beta)

# New features & bug-fixes

  1. Improve Mac OS X installer and portable packages
  2. Improve tools page locale support
  3. Update Chinese(zh-CN/zh-TW/zh-HK/zh-SG)
  4. Fixed: 提示 MySQL server has done away 后,没有自动\手动重连 #63
  5. Fixed: plugin caching sha2 password could not be loaded #64
  6. Fixed: console warning message
+ (adsbygoogle = window.adsbygoogle || []).push({}); +

# Installer & Portable packages link expired

It is a very good idea to use sha256sum and GnuPG command to verify the sums and signature of your packages that download from the internet, make sure they are 100% correct.

Packages Windows(64 bit) Linux(64 bit) MacOS(64 bit)
Installer
(Github.com)
Windows (opens new window) Arch (opens new window) MacOS (opens new window)
Portable
(Github.com)
Windows (opens new window) Arch (opens new window) Ubuntu (opens new window) MacOS (opens new window)
SHA256SUM
(Github.com)
SHA256SUM (opens new window) SHA256SUM.GPG (opens new window)
----------------- ----------------- ----------------- -----------------
Installer
(Injdk.cn)
Windows (opens new window) Arch (opens new window) MacOS (opens new window)
Portable
(Injdk.cn)
Windows (opens new window) Arch (opens new window) Ubuntu (opens new window) MacOS (opens new window)
SHA256SUM
(Injdk.cn)
SHA256SUM (opens new window) SHA256SUM.GPG (opens new window)
----------------- ----------------- ----------------- -----------------
Installer
(Gitee.com)
Windows (opens new window) Arch (opens new window) MacOS (opens new window)
Portable
(Gitee.com)
Windows (opens new window) Arch (opens new window) Ubuntu (opens new window) MacOS (opens new window)
SHA256SUM
(Gitee.com)
SHA256SUM (opens new window) SHA256SUM.GPG (opens new window)

# Share with friends

+ + + diff --git a/en/download/v0.99.3.200921.html b/en/download/v0.99.3.200921.html new file mode 100644 index 000000000..80dffc4fb --- /dev/null +++ b/en/download/v0.99.3.200921.html @@ -0,0 +1,74 @@ + + + + + + Kangaroo v0.99.3 (Beta) | Kangaroo + + + + + + + + + + + +

# Kangaroo v0.99.3 (Beta)

# New features & bug-fixes

  1. Refactor container and service module
  2. Improve the performance of content and query view
  3. Update datagrid toolbar icon
  4. Fixed: can't open mariadb database
+ (adsbygoogle = window.adsbygoogle || []).push({}); +

# Installer & Portable packages link expired

It is a very good idea to use sha256sum and GnuPG command to verify the sums and signature of your packages that download from the internet, make sure they are 100% correct.

Packages Windows(64 bit) Linux(64 bit) MacOS(64 bit)
Installer
(Github.com)
Windows (opens new window) Arch (opens new window) MacOS (opens new window)
Portable
(Github.com)
Windows (opens new window) Arch (opens new window) Ubuntu (opens new window) MacOS (opens new window)
SHA256SUM
(Github.com)
SHA256SUM (opens new window) SHA256SUM.GPG (opens new window)
----------------- ----------------- ----------------- -----------------
Installer
(Injdk.cn)
Windows (opens new window) Arch (opens new window) MacOS (opens new window)
Portable
(Injdk.cn)
Windows (opens new window) Arch (opens new window) Ubuntu (opens new window) MacOS (opens new window)
SHA256SUM
(Injdk.cn)
SHA256SUM (opens new window) SHA256SUM.GPG (opens new window)
----------------- ----------------- ----------------- -----------------
Installer
(Gitee.com)
Windows (opens new window) Arch (opens new window) MacOS (opens new window)
Portable
(Gitee.com)
Windows (opens new window) Arch (opens new window) Ubuntu (opens new window) MacOS (opens new window)
SHA256SUM
(Gitee.com)
SHA256SUM (opens new window) SHA256SUM.GPG (opens new window)

# Share with friends

+ + + diff --git a/en/download/v1.0.5.201019.html b/en/download/v1.0.5.201019.html new file mode 100644 index 000000000..57a966f2f --- /dev/null +++ b/en/download/v1.0.5.201019.html @@ -0,0 +1,74 @@ + + + + + + Kangaroo v1.0.5 (Beta) | Kangaroo + + + + + + + + + + + +

# Kangaroo v1.0.5 (Beta)

# New features & bug-fixes

  1. Implement context menu for cell value
  2. Improve database null value support
  3. Improve text view for cell value, support to detect charset and convert to UTF-8
  4. Improve the China mainland user accessibility: show changelog
  5. Improve mysql connection stability
  6. Fixed: fail to change cell value viewer
  7. Fixed: copy short and full name invalid
+ (adsbygoogle = window.adsbygoogle || []).push({}); +

# Installer & Portable packages link expired

It is a very good idea to use sha256sum and GnuPG command to verify the sums and signature of your packages that download from the internet, make sure they are 100% correct.

Packages Windows(64 bit) Linux(64 bit) MacOS(64 bit)
Installer
(Github.com)
Windows (opens new window) Arch (opens new window) MacOS (opens new window)
Portable
(Github.com)
Windows (opens new window) Arch (opens new window) Ubuntu (opens new window) MacOS (opens new window)
SHA256SUM
(Github.com)
SHA256SUM (opens new window) SHA256SUM.GPG (opens new window)
----------------- ----------------- ----------------- -----------------
Installer
(Injdk.cn)
Windows (opens new window) Arch (opens new window) MacOS (opens new window)
Portable
(Injdk.cn)
Windows (opens new window) Arch (opens new window) Ubuntu (opens new window) MacOS (opens new window)
SHA256SUM
(Injdk.cn)
SHA256SUM (opens new window) SHA256SUM.GPG (opens new window)

# Share with friends

+ + + diff --git a/en/download/v1.0.6.201109.html b/en/download/v1.0.6.201109.html new file mode 100644 index 000000000..70b1404e6 --- /dev/null +++ b/en/download/v1.0.6.201109.html @@ -0,0 +1,74 @@ + + + + + + Kangaroo v1.0.6 (Beta) | Kangaroo + + + + + + + + + + + +

# Kangaroo v1.0.6 (Beta)

# New features & bug-fixes

  1. Update domain to www.datatable.online
+ (adsbygoogle = window.adsbygoogle || []).push({}); +

# Installer & Portable packages Windows only

It is a very good idea to use sha256sum and GnuPG command to verify the sums and signature of your packages that download from the internet, make sure they are 100% correct.

Packages Windows(64 bit) Linux(64 bit) MacOS(64 bit)
Installer
(Github.com)
Windows (opens new window) Arch (opens new window) MacOS (opens new window)
Portable
(Github.com)
Windows (opens new window) Arch (opens new window) Ubuntu (opens new window) MacOS (opens new window)
SHA256SUM
(Github.com)
SHA256SUM (opens new window) SHA256SUM.GPG (opens new window)
----------------- ----------------- ----------------- -----------------
Installer
(Injdk.cn)
Windows (opens new window) Arch (opens new window) MacOS (opens new window)
Portable
(Injdk.cn)
Windows (opens new window) Arch (opens new window) Ubuntu (opens new window) MacOS (opens new window)
SHA256SUM
(Injdk.cn)
SHA256SUM (opens new window) SHA256SUM.GPG (opens new window)

# Share with friends

+ + + diff --git a/en/download/v1.10.1.210731.html b/en/download/v1.10.1.210731.html new file mode 100644 index 000000000..111dc2904 --- /dev/null +++ b/en/download/v1.10.1.210731.html @@ -0,0 +1,74 @@ + + + + + + Kangaroo v1.10.1 (Beta) | Kangaroo + + + + + + + + + + + +

# Kangaroo v1.10.1 (Beta)

# New features & bug-fixes

  1. Add visual sql builder dialog
  2. Add values window
  3. Add icon for datagrid context menu
  4. Add copy cell value with algorithm
  5. Add update cell value with algorithm
  6. Improve connection naming schema
  7. Improve toolbar layout
  8. Improve float type support
  9. Update the Chinese translation
  10. Fixed: invalid sql while large text type(PostgreSQL)
  11. Fixed: designer's checkbox not response.
  12. Fixed: connection crashed(MySQL/PostgreSQL)
  13. Fixed: can't load source of view(PostgreSQL)
  14. Fixed: MacOS Chinese not support
  15. Fixed: invalid sql while meet the same cell value
+ (adsbygoogle = window.adsbygoogle || []).push({}); +

# Installer & Portable packages link expired

Recommend to use tool sha256sum to verify the sums and signature of your packages that download from the internet, make sure they are safe and 100% correct.

Packages Windows Linux MacOS iOS Android
Installer
(Github.com)
Windows (opens new window) Arch (opens new window) MacOS (opens new window)
Portable
(Github.com)
Windows (opens new window) Portable (opens new window) Arch (opens new window) MacOS (opens new window)
SHA256SUM
(Github.com)
SHA256SUM (opens new window)
----------------- ----------------- ----------------- -----------------
Installer
(Injdk.cn)
Windows (opens new window) Arch (opens new window) MacOS (opens new window)
Portable
(Injdk.cn)
Windows (opens new window) Portable (opens new window) Arch (opens new window) MacOS (opens new window)
SHA256SUM
(Injdk.cn)
SHA256SUM (opens new window)

# Share with friends

+ + + diff --git a/en/download/v1.10.2.220701.html b/en/download/v1.10.2.220701.html new file mode 100644 index 000000000..05e933532 --- /dev/null +++ b/en/download/v1.10.2.220701.html @@ -0,0 +1,74 @@ + + + + + + Kangaroo v1.10.2 (Beta) | Kangaroo + + + + + + + + + + + +

# Kangaroo v1.10.2 (Beta)

# New features & bug-fixes

  • Remove app expire date
  • Windows: update library to the latest.
+ (adsbygoogle = window.adsbygoogle || []).push({}); +

# Installer & Portable packages

Recommend to use tool sha256sum to verify the sums and signature of your packages that download from the internet, make sure they are safe and 100% correct.

Packages Windows Linux MacOS iOS Android
Installer
(Github.com)
Windows (opens new window) Arch (opens new window) [MacOS]
Portable
(Github.com)
Windows (opens new window) Arch (opens new window) [MacOS]
SHA256SUM
(Github.com)
SHA256SUM (opens new window)
----------------- ----------------- ----------------- -----------------
Installer
(Injdk.cn)
Windows (opens new window) Arch (opens new window) [MacOS]
Portable
(Injdk.cn)
Windows (opens new window) Arch (opens new window) [MacOS]
SHA256SUM
(Injdk.cn)
SHA256SUM (opens new window)

# Share with friends

+ + + diff --git a/en/download/v1.10.3.230508.html b/en/download/v1.10.3.230508.html new file mode 100644 index 000000000..2bb53351d --- /dev/null +++ b/en/download/v1.10.3.230508.html @@ -0,0 +1,76 @@ + + + + + + Kangaroo v1.10.3 (Beta) | Kangaroo + + + + + + + + + + + +

# Kangaroo v1.10.3 (Beta)

# New features & bug-fixes

  • Windows: update library to the latest.
  • Fixed: Chinese support
+ (adsbygoogle = window.adsbygoogle || []).push({}); +

# Installer & Portable packages

Windows users could install Kangaroo via winget tool directly, just run command: winget install Taozuhong.Kangaroo. Or download the package then install it manually.

# Windows platform

Architect All SQLite MariaDB MySQL PostgreSQL
x86-64 Github (opens new window)
GitEE (opens new window)
Server 3 (opens new window)
Server 4 (opens new window)
ARM64
RISCV64

# macOS platform

Architect All SQLite MariaDB MySQL PostgreSQL
ARM64
x86-64
RISCV64

# Linux platform

Architect All SQLite MariaDB MySQL PostgreSQL
x86-64
ARM64
RISCV64
+ (adsbygoogle = window.adsbygoogle || []).push({}); +

# SHA256SUM

Recommend to use tools like sha256sum or 7-Zip to verify the checksum and signature of your packages, make sure they are safe and 100% correct.

sha256sum checksum Package name
d908e5c64c5d4034e8a783961fabc5db2e8f0ea9e00e38668b474214c6286a7c kangaroo-1.10.3.230508-AMD64.exe
8a8a5bfa3199b3c4b9e52fb063457e10b1c6e29dd50e9fb34ae390fae42f1bb2 kangaroo-1.10.3.230508-AMD64.7z

# Share with friends

+ + + diff --git a/en/download/v1.3.1.201102.html b/en/download/v1.3.1.201102.html new file mode 100644 index 000000000..aec555393 --- /dev/null +++ b/en/download/v1.3.1.201102.html @@ -0,0 +1,74 @@ + + + + + + Kangaroo v1.3.1 (Dev) | Kangaroo + + + + + + + + + + + +

# Kangaroo v1.3.1 (Dev)

# New features & bug-fixes

  1. Implement hex editor (completed)
  2. Add data chart support(in progress)
  3. Add workspace tab ui support(in progress)
+ (adsbygoogle = window.adsbygoogle || []).push({}); +

# Installer & Portable packages link expired

It is a very good idea to use sha256sum and GnuPG command to verify the sums and signature of your packages that download from the internet, make sure they are 100% correct.

Packages Windows(64 bit) Linux(64 bit) MacOS(64 bit)
Installer
(Github.com)
Windows (opens new window) Arch (opens new window) MacOS (opens new window)
Portable
(Github.com)
Windows (opens new window) Arch (opens new window) Ubuntu (opens new window) MacOS (opens new window)
SHA256SUM
(Github.com)
SHA256SUM (opens new window) SHA256SUM.GPG (opens new window)
----------------- ----------------- ----------------- -----------------
Installer
(Injdk.cn)
Windows (opens new window) Arch (opens new window) MacOS (opens new window)
Portable
(Injdk.cn)
Windows (opens new window) Arch (opens new window) Ubuntu (opens new window) MacOS (opens new window)
SHA256SUM
(Injdk.cn)
SHA256SUM (opens new window) SHA256SUM.GPG (opens new window)

# Share with friends

+ + + diff --git a/en/download/v1.5.1.201231.html b/en/download/v1.5.1.201231.html new file mode 100644 index 000000000..21124deb1 --- /dev/null +++ b/en/download/v1.5.1.201231.html @@ -0,0 +1,74 @@ + + + + + + Kangaroo v1.5.1 (Dev) | Kangaroo + + + + + + + + + + + +

# Kangaroo v1.5.1 (Dev)

# New features & bug-fixes

  1. Implement hex editor support (completed)
  2. Add workspace tab UI support (completed)
  3. Add data chart support (in progress)
  4. Add database modeling support (in progress)
+ (adsbygoogle = window.adsbygoogle || []).push({}); +

# Installer & Portable packages link expired

It is a very good idea to use sha256sum and GnuPG command to verify the sums and signature of your packages that download from the internet, make sure they are 100% correct.

Packages Windows(64 bit) Linux(64 bit) MacOS(64 bit)
Installer
(Github.com)
Windows (opens new window) Arch (opens new window) MacOS (opens new window)
Portable
(Github.com)
Windows (opens new window) Arch (opens new window) Ubuntu (opens new window) MacOS (opens new window)
SHA256SUM
(Github.com)
SHA256SUM (opens new window) SHA256SUM.GPG (opens new window)
----------------- ----------------- ----------------- -----------------
Installer
(Injdk.cn)
Windows (opens new window) Arch (opens new window) MacOS (opens new window)
Portable
(Injdk.cn)
Windows (opens new window) Arch (opens new window) Ubuntu (opens new window) MacOS (opens new window)
SHA256SUM
(Injdk.cn)
SHA256SUM (opens new window) SHA256SUM.GPG (opens new window)

# Share with friends

+ + + diff --git a/en/download/v1.6.1.210131.html b/en/download/v1.6.1.210131.html new file mode 100644 index 000000000..8c9369ff1 --- /dev/null +++ b/en/download/v1.6.1.210131.html @@ -0,0 +1,74 @@ + + + + + + Kangaroo v1.6.1 (Dev) | Kangaroo + + + + + + + + + + + +

# Kangaroo v1.6.1 (Dev)

# New features & bug-fixes

  1. Implement hex editor support (completed)
  2. Add workspace tab UI support (completed)
  3. Add independent history support(completed)
  4. Add shortcut customize support(completed)
  5. Add data chart support (in progress)
  6. Add database model support (in progress)
  7. Drag and drop SQLite file on the app to open it #76
+ (adsbygoogle = window.adsbygoogle || []).push({}); +

# Installer & Portable packages link expired

It is a very good idea to use sha256sum and GnuPG command to verify the sums and signature of your packages that download from the internet, make sure they are 100% correct.

Packages Windows(64 bit) Linux(64 bit) MacOS(64 bit)
Installer
(Github.com)
Windows (opens new window) Arch (opens new window) [MacOS]
Portable
(Github.com)
Windows (opens new window) Arch (opens new window) [Ubuntu] [MacOS]
SHA256SUM
(Github.com)
SHA256SUM (opens new window) SHA256SUM.GPG (opens new window)
----------------- ----------------- ----------------- -----------------
Installer
(Injdk.cn)
Windows (opens new window) Arch (opens new window) [MacOS]
Portable
(Injdk.cn)
Windows (opens new window) Arch (opens new window) [Ubuntu] [MacOS]
SHA256SUM
(Injdk.cn)
SHA256SUM (opens new window) SHA256SUM.GPG (opens new window)

# Share with friends

+ + + diff --git a/en/download/v1.7.1.210331.html b/en/download/v1.7.1.210331.html new file mode 100644 index 000000000..7ed4e3119 --- /dev/null +++ b/en/download/v1.7.1.210331.html @@ -0,0 +1,75 @@ + + + + + + Kangaroo v1.7.1 (Dev) | Kangaroo + + + + + + + + + + + +

# Kangaroo v1.7.1 (Dev)

# New features & bug-fixes

  1. Implement hex editor support (completed)
  2. Add workspace tab UI support (completed)
  3. Add independent history support(completed)
  4. Add shortcut customize support(completed)
  5. Add data chart support (in progress)
  6. Add database model support (in progress) +
    • Add load and save model support
    • Add node copy and paste support
    • Add multi-selection support
  7. Drag and drop SQLite file on the workspace to open it #76
  8. Refactor app home page to improve experience
  9. Copy data as LUA table
  10. improve object tree experience
  11. Backup and restore workspace layout
  12. Add more language support
  13. Improve log support(add database and connection name)
  14. File monitor support for sql script file
  15. refactor content view to show feature bar
  16. all data tables are displayed by default
  17. refactor object panel to improve UI experience
  18. Add shortcut dialog for search and setup;
  19. Improve app title bar style, add color and image support.
  20. Add shell notification support
  21. Add confirm dialog while closing pages
  22. Refactor tool bar with GtkToolbar widget
  23. Fixed: Access denied: you need the SUPER privilege(s) for this operation
  24. Fixed: close tab view after deleted the database object.
  25. Fixed: update tab view after renamed the database object.
  26. Fixed: can't get system name on MacOS platform
+ (adsbygoogle = window.adsbygoogle || []).push({}); +

# Installer & Portable packages link expired

It is a very good idea to use sha256sum and GnuPG command to verify the sums and signature of your packages that download from the internet, make sure they are 100% correct.

Packages Windows(64 bit) Linux(64 bit) MacOS(64 bit)
Installer
(Github.com)
Windows (opens new window) AppImage (opens new window) Arch (opens new window) MacOS (opens new window)
Portable
(Github.com)
Windows (opens new window) Portable (opens new window) Arch (opens new window) MacOS (opens new window)
SHA256SUM
(Github.com)
SHA256SUM (opens new window) SHA256SUM.GPG (opens new window)
----------------- ----------------- ----------------- -----------------
Installer
(Injdk.cn)
Windows (opens new window) AppImage (opens new window) Arch (opens new window) MacOS (opens new window)
Portable
(Injdk.cn)
Windows (opens new window) Portable (opens new window) Arch (opens new window) MacOS (opens new window)
SHA256SUM
(Injdk.cn)
SHA256SUM (opens new window) SHA256SUM.GPG (opens new window)

# Share with friends

+ + + diff --git a/en/download/v1.8.1.210430.html b/en/download/v1.8.1.210430.html new file mode 100644 index 000000000..a59c86040 --- /dev/null +++ b/en/download/v1.8.1.210430.html @@ -0,0 +1,74 @@ + + + + + + Kangaroo v1.8.1 (Dev) | Kangaroo + + + + + + + + + + + +

# Kangaroo v1.8.1 (Dev)

# New features & bug-fixes

  1. Improve toolbar effect(show label and large icon default)
  2. Improve the tab title for Query view
  3. Open one instance of the same view only
  4. Update app desktop entry's category
  5. Add import/generate buttons for the model toolbar
  6. Model: implement import entity models from the database
  7. Model: load and save data of the table and view node
  8. Model: implement change and close notification
  9. Model: Add entity dialog
  10. Model: improve effect of node(table / view / shape)
  11. Fixed: can't show columns on the non-column page
  12. Fixed: can't load libgda's plugin
  13. Fixed: can't show node while loading large model file
+ (adsbygoogle = window.adsbygoogle || []).push({}); +

# Installer & Portable packages link expired

Recommend to use tool sha256sum to verify the sums and signature of your packages that download from the internet, make sure they are safe and 100% correct.

Packages Windows(64 bit) Linux(64 bit) MacOS(64 bit)
Installer
(Github.com)
Windows (opens new window) Arch (opens new window) MacOS (opens new window)
Portable
(Github.com)
Windows (opens new window) Portable (opens new window) Arch (opens new window) MacOS (opens new window)
SHA256SUM
(Github.com)
SHA256SUM (opens new window)
----------------- ----------------- ----------------- -----------------
Installer
(Injdk.cn)
Windows (opens new window) Arch (opens new window) MacOS (opens new window)
Portable
(Injdk.cn)
Windows (opens new window) Portable (opens new window) Arch (opens new window) MacOS (opens new window)
SHA256SUM
(Injdk.cn)
SHA256SUM (opens new window)

# Share with friends

+ + + diff --git a/en/download/v1.9.1.210531.html b/en/download/v1.9.1.210531.html new file mode 100644 index 000000000..a94852e95 --- /dev/null +++ b/en/download/v1.9.1.210531.html @@ -0,0 +1,74 @@ + + + + + + Kangaroo v1.9.1 (Dev) | Kangaroo + + + + + + + + + + + +

# Kangaroo v1.9.1 (Dev)

# New features & bug-fixes

  1. Add view designer
  2. Add Toolbar control
  3. Upgrade library libgda to 6.0.1
  4. Improve connection stability for MySQL/MariaDB
  5. Refactor repository's context menu
  6. Implement rename function for SQLite
  7. Implement rename function for MySQL/MariaDB
  8. Implement new/edit/source/rename/dump/copy names function for view
  9. Refactor query view's toolbar
  10. Update the Chinese translation(zh-CN/zh-TW/zh-SG/zh-HK)
  11. Add column reorder support for data grid
  12. Improve format of DataTime/TimeStamp
  13. Add geometric point type support
  14. Add large text type support
  15. Improve installer for windows and MacOS
  16. Fixed: non-response while clicking the triangle icon on the tree
  17. Fixed: NULL/Empty string invalid
  18. Fixed: can't show view's columns in the model view
  19. Fixed: enlarge model view while importing objects.
  20. Fixed: can't load index entries (MySQL)
  21. Fixed: can't modify boolean data
  22. Fixed: warning message while loading intellisense data.
+ (adsbygoogle = window.adsbygoogle || []).push({}); +

# Installer & Portable packages link expired

Recommend to use tool sha256sum to verify the sums and signature of your packages that download from the internet, make sure they are safe and 100% correct.

Packages Windows(64 bit) Linux(64 bit) MacOS(64 bit)
Installer
(Github.com)
Windows (opens new window) Arch (opens new window) MacOS (opens new window)
Portable
(Github.com)
Windows (opens new window) Portable (opens new window) Arch (opens new window) MacOS (opens new window)
SHA256SUM
(Github.com)
SHA256SUM (opens new window)
----------------- ----------------- ----------------- -----------------
Installer
(Injdk.cn)
Windows (opens new window) Arch (opens new window) MacOS (opens new window)
Portable
(Injdk.cn)
Windows (opens new window) Portable (opens new window) Arch (opens new window) MacOS (opens new window)
SHA256SUM
(Injdk.cn)
SHA256SUM (opens new window)

# Share with friends

+ + + diff --git a/en/download/v1.90.1.211231.html b/en/download/v1.90.1.211231.html new file mode 100644 index 000000000..45cb91999 --- /dev/null +++ b/en/download/v1.90.1.211231.html @@ -0,0 +1,74 @@ + + + + + + Kangaroo v1.90.1 (Dev) | Kangaroo + + + + + + + + + + + +

# Kangaroo v1.90.1 (Dev)

This is a technical preview version, please don't use it in the production environment.

# New features & bug-fixes

  1. Update UI toolkit from GTK3 to GTK4
  2. Update UI library to GTK4 version
  3. Update GtkSoureceView from 4 to 5
  4. Merge setting and shortcut dialog
  5. Add document overview map
  6. Add style scheme support
  7. Add development support
  8. MySQL: Add user and privilege management support
  9. MariaDB: Add user and privilege management support
  10. PostgreSQL: Add user and privilege management support
+ (adsbygoogle = window.adsbygoogle || []).push({}); +

# Installer & Portable packages link expired

Recommend to use tool sha256sum to verify the sums and signature of your packages that download from the internet, make sure they are safe and 100% correct.

Packages Windows Linux MacOS iOS Android
Installer
(Github.com)
Windows (opens new window) [Arch] [MacOS]
Portable
(Github.com)
Windows (opens new window) [Arch] [MacOS]
SHA256SUM
(Github.com)
SHA256SUM (opens new window)
----------------- ----------------- ----------------- -----------------
Installer
(Injdk.cn)
Windows (opens new window) [Arch] [MacOS]
Portable
(Injdk.cn)
Windows (opens new window) [Arch] [MacOS]
SHA256SUM
(Injdk.cn)
SHA256SUM (opens new window)

# Share with friends

+ + + diff --git a/en/download/v1.91.1.220128.html b/en/download/v1.91.1.220128.html new file mode 100644 index 000000000..e14e05a9f --- /dev/null +++ b/en/download/v1.91.1.220128.html @@ -0,0 +1,74 @@ + + + + + + Kangaroo v1.91.1 (Dev) | Kangaroo + + + + + + + + + + + +

# Kangaroo v1.91.1 (Dev)

This is a technical preview version, please don't use it in the production environment.

# New features & bug-fixes

  1. Refactor workbench and workspace
  2. Refactor import/export
  3. Refactor intellisense
  4. Refactor toolbars
  5. Refactor sql builder
  6. Refactor app expire notification
  7. Improve titlebar skin support
  8. Improve dialog style
  9. Split setting into app setting and server setting
  10. Move intellisense data to user document folder
  11. Update the Chinese translation
  12. Fixed: can't open url with default app
  13. Fixed: insert sql error(user_name -> user__name)
  14. Fixed: model view crashed
  15. Fixed: DSV formats has a extra column
  16. Fixed: scalable image size issue
  17. Fixed: warning messages

# Crash issues existed

  1. PostgreSQL: OID type not yet supported(libgda), it will crash.
+ (adsbygoogle = window.adsbygoogle || []).push({}); +

# Installer & Portable packages link expired

Recommend to use tool sha256sum to verify the sums and signature of your packages that download from the internet, make sure they are safe and 100% correct.

Packages Windows Linux MacOS iOS Android
Installer
(Github.com)
Windows (opens new window) Arch (opens new window) [MacOS]
Portable
(Github.com)
Windows (opens new window) Arch (opens new window) [MacOS]
SHA256SUM
(Github.com)
SHA256SUM (opens new window)
----------------- ----------------- ----------------- -----------------
Installer
(Injdk.cn)
Windows (opens new window) Arch (opens new window) [MacOS]
Portable
(Injdk.cn)
Windows (opens new window) Arch (opens new window) [MacOS]
SHA256SUM
(Injdk.cn)
SHA256SUM (opens new window)

# Share with friends

+ + + diff --git a/en/download/v1.92.1.220228.html b/en/download/v1.92.1.220228.html new file mode 100644 index 000000000..f7199ab96 --- /dev/null +++ b/en/download/v1.92.1.220228.html @@ -0,0 +1,74 @@ + + + + + + Kangaroo v1.92.1 (Dev) | Kangaroo + + + + + + + + + + + +

# Kangaroo v1.92.1 (Dev)

This is a technical preview version, release for testing, be careful when using in the production environment.

# New features & bug-fixes

  1. Add explorer view(Table + Iconic)
  2. Add search and sort support
  3. SQLite: load objects for explorer
  4. MariaDB: load objects for explorer
  5. MySQL: load objects for explorer
  6. PostgreSQL: load objects for explorer
  7. Add context menu for objects
  8. Implement context menu for table and view
  9. Refactor workspace toolbar
  10. Update database object icon
  11. Update the Chinese translation
+ (adsbygoogle = window.adsbygoogle || []).push({}); +

# Installer & Portable packages link expired

Recommend to use tool sha256sum to verify the sums and signature of your packages that download from the internet, make sure they are safe and 100% correct.

Packages Windows Linux MacOS iOS Android
Installer
(Github.com)
Windows (opens new window) Arch (opens new window) [MacOS]
Portable
(Github.com)
Windows (opens new window) Arch (opens new window) [MacOS]
SHA256SUM
(Github.com)
SHA256SUM (opens new window)
----------------- ----------------- ----------------- -----------------
Installer
(Injdk.cn)
Windows (opens new window) Arch (opens new window) [MacOS]
Portable
(Injdk.cn)
Windows (opens new window) Arch (opens new window) [MacOS]
SHA256SUM
(Injdk.cn)
SHA256SUM (opens new window)

# Share with friends

+ + + diff --git a/en/download/v1.93.1.220401.html b/en/download/v1.93.1.220401.html new file mode 100644 index 000000000..ba41dca65 --- /dev/null +++ b/en/download/v1.93.1.220401.html @@ -0,0 +1,74 @@ + + + + + + Kangaroo v1.93.1 (Dev) | Kangaroo + + + + + + + + + + + +

# Kangaroo v1.93.1 (Dev)

This is a technical preview version, release for testing, be careful when using in the production environment.

# New features & bug-fixes

  • SQLite: Add index designer
  • SQLite: Add trigger designer
  • SQLite: Refactor data view designer to improve support
  • MySQL: Add index object support
  • MySQL: Add trigger object support
  • MySQL: Add index designer
  • MySQL: Add trigger designer
  • MySQL: Refactor data view designer to improve support
  • MariaDB: Add index object support
  • MariaDB: Add trigger object support
  • MariaDB: Add index designer
  • MariaDB: Add trigger designer
  • MariaDB: Refactor data view designer to improve support
  • PostgreSQL: Add index designer
  • PostgreSQL: Add trigger designer
  • PostgreSQL: Refactor data view designer to improve support
  • Add connection detail view for workspace
  • Update repository tree icon
  • Update the Chinese translation
  • Refactor starter view
  • Refactor repository view
  • Fixed: data view designer's restore issue
  • Fixed: workspace menu loading issue
  • Fixed: crash while active_id is null
  • Fixed: editor input issue while having selection
  • Fixed: can't load schema views for MySQL/MariaDB
  • Fixed: crashed while PostgreSQL database is empty
+ (adsbygoogle = window.adsbygoogle || []).push({}); +

# Installer & Portable packages link expired

Recommend to use tool sha256sum to verify the sums and signature of your packages that download from the internet, make sure they are safe and 100% correct.

Packages Windows Linux MacOS iOS Android
Installer
(Github.com)
Windows (opens new window) Arch (opens new window) [MacOS]
Portable
(Github.com)
Windows (opens new window) Arch (opens new window) [MacOS]
SHA256SUM
(Github.com)
SHA256SUM (opens new window)
----------------- ----------------- ----------------- -----------------
Installer
(Injdk.cn)
Windows (opens new window) Arch (opens new window) [MacOS]
Portable
(Injdk.cn)
Windows (opens new window) Arch (opens new window) [MacOS]
SHA256SUM
(Injdk.cn)
SHA256SUM (opens new window)

# Share with friends

+ + + diff --git a/en/download/v1.94.1.220501.html b/en/download/v1.94.1.220501.html new file mode 100644 index 000000000..0d199ecb3 --- /dev/null +++ b/en/download/v1.94.1.220501.html @@ -0,0 +1,74 @@ + + + + + + Kangaroo v1.94.1 (Dev) | Kangaroo + + + + + + + + + + + +

# Kangaroo v1.94.1 (Dev)

This is a technical preview version, release for testing, be careful when using in the production environment.

# New features & bug-fixes

  • MySQL: Add function designer
  • MySQL: Add procedure designer
  • MySQL: Add user designer
  • MariaDB: Add function designer
  • MariaDB: Add procedure designer
  • MariaDB: Add user designer
  • PostgreSQL: Add function designer
  • PostgreSQL: Add procedure designer
  • PostgreSQL: Add user designer
  • Add runtime version support on About window
  • Update the Chinese translation
  • Fixed: workspace view issue
  • Fixed: autosave cache file issue

# Known issues

  • MySQL: throw error message 'can't run this command now' after call function/procedure(libgda).
  • MariaDB: throw error message 'can't run this command now' after call function/procedure(libgda).
+ (adsbygoogle = window.adsbygoogle || []).push({}); +

# Installer & Portable packages link expired

Recommend to use tool sha256sum to verify the sums and signature of your packages that download from the internet, make sure they are safe and 100% correct.

Packages Windows Linux MacOS iOS Android
Installer
(Github.com)
Windows (opens new window) Arch (opens new window) [MacOS]
Portable
(Github.com)
Windows (opens new window) Arch (opens new window) [MacOS]
SHA256SUM
(Github.com)
SHA256SUM (opens new window)
----------------- ----------------- ----------------- -----------------
Installer
(Injdk.cn)
Windows (opens new window) Arch (opens new window) [MacOS]
Portable
(Injdk.cn)
Windows (opens new window) Arch (opens new window) [MacOS]
SHA256SUM
(Injdk.cn)
SHA256SUM (opens new window)

# Share with friends

+ + + diff --git a/en/download/v1.95.1.220601.html b/en/download/v1.95.1.220601.html new file mode 100644 index 000000000..acc398f41 --- /dev/null +++ b/en/download/v1.95.1.220601.html @@ -0,0 +1,74 @@ + + + + + + Kangaroo v1.95.1 (Dev) | Kangaroo + + + + + + + + + + + +

# Kangaroo v1.95.1 (Dev)

This is a technical preview version, release for testing, be careful when using in the production environment.

# New features & bug-fixes

  • MySQL: Add role designer
  • MySQL: Add schema designer
  • MySQL: Add database designer
  • MariaDB: Add role designer
  • MariaDB: Add schema designer
  • MariaDB: Add database designer
  • PostgreSQL: Add role designer
  • PostgreSQL: Add schema designer
  • PostgreSQL: Add database designer
  • Update explorer view with database and schema support
  • Refactor object tree context menu
  • Bind tab title with explorer title
  • Update the Chinese translation

# Known issues

  • MySQL: throw error message 'can't run this command now' after call function/procedure(libgda).
  • MariaDB: throw error message 'can't run this command now' after call function/procedure(libgda).
+ (adsbygoogle = window.adsbygoogle || []).push({}); +

# Installer & Portable packages link expired

Recommend to use tool sha256sum to verify the sums and signature of your packages that download from the internet, make sure they are safe and 100% correct.

Packages Windows Linux MacOS iOS Android
Installer
(Github.com)
Windows (opens new window) Arch (opens new window) [MacOS]
Portable
(Github.com)
Windows (opens new window) Arch (opens new window) [MacOS]
SHA256SUM
(Github.com)
SHA256SUM (opens new window)
----------------- ----------------- ----------------- -----------------
Installer
(Injdk.cn)
Windows (opens new window) Arch (opens new window) [MacOS]
Portable
(Injdk.cn)
Windows (opens new window) Arch (opens new window) [MacOS]
SHA256SUM
(Injdk.cn)
SHA256SUM (opens new window)

# Share with friends

+ + + diff --git a/en/download/v1.96.1.220701.html b/en/download/v1.96.1.220701.html new file mode 100644 index 000000000..1ee93847c --- /dev/null +++ b/en/download/v1.96.1.220701.html @@ -0,0 +1,74 @@ + + + + + + Kangaroo v1.96.1 (Dev) | Kangaroo + + + + + + + + + + + +

# Kangaroo v1.96.1 (Dev)

This is a technical preview version, release for testing, be careful when using in the production environment.

# New features & bug-fixes

  • Replace libgda with ODBC
  • Add general database support
  • Update the Chinese translation
+ (adsbygoogle = window.adsbygoogle || []).push({}); +

# Installer & Portable packages link expired

Recommend to use tool sha256sum to verify the sums and signature of your packages that download from the internet, make sure they are safe and 100% correct.

Packages Windows Linux MacOS iOS Android
Installer
(Github.com)
Windows (opens new window) Arch (opens new window) [MacOS]
Portable
(Github.com)
Windows (opens new window) Arch (opens new window) [MacOS]
SHA256SUM
(Github.com)
SHA256SUM (opens new window)
----------------- ----------------- ----------------- -----------------
Installer
(Injdk.cn)
Windows (opens new window) Arch (opens new window) [MacOS]
Portable
(Injdk.cn)
Windows (opens new window) Arch (opens new window) [MacOS]
SHA256SUM
(Injdk.cn)
SHA256SUM (opens new window)

# Share with friends

+ + + diff --git a/en/download/v1.97.1.220731.html b/en/download/v1.97.1.220731.html new file mode 100644 index 000000000..f156dc37a --- /dev/null +++ b/en/download/v1.97.1.220731.html @@ -0,0 +1,74 @@ + + + + + + Kangaroo v1.97.1 (Dev) | Kangaroo + + + + + + + + + + + +

# Kangaroo v1.97.1 (Dev)

This is a technical preview version, step forward to beta version, release for test and professional users, be careful while using it in the production environment.

# New features & bug-fixes

  • Update windows deploy script
  • Update ArchLinux build script
  • Upgrade close confirm dialog
  • Refactor datagrid with ColumnView
  • Windows installer support ODBC drivers
  • Improve Windows installer l10n support
  • Improve object explorer sort support
  • Improve content builder
  • Improve SQL builder
  • Improve DBNull value support
  • Update the Chinese translation
  • Fixed ODBC connection issues
+ (adsbygoogle = window.adsbygoogle || []).push({}); +

# Installer & Portable packages link expired

Recommend to use tool sha256sum to verify the sums and signature of your packages that download from the internet, make sure they are safe and 100% correct.

Packages Windows Linux MacOS iOS Android
Installer
(Github.com)
Windows (opens new window) Arch (opens new window) [MacOS]
Portable
(Github.com)
Windows (opens new window) Arch (opens new window) [MacOS]
SHA256SUM
(Github.com)
SHA256SUM (opens new window)
----------------- ----------------- ----------------- -----------------
Installer
(Injdk.cn)
Windows (opens new window) Arch (opens new window) [MacOS]
Portable
(Injdk.cn)
Windows (opens new window) Arch (opens new window) [MacOS]
SHA256SUM
(Injdk.cn)
SHA256SUM (opens new window)

# Share with friends

+ + + diff --git a/en/download/v1.98.1.220904.html b/en/download/v1.98.1.220904.html new file mode 100644 index 000000000..459b20e82 --- /dev/null +++ b/en/download/v1.98.1.220904.html @@ -0,0 +1,76 @@ + + + + + + Kangaroo v1.98.1 (Dev) | Kangaroo + + + + + + + + + + + +

# Kangaroo v1.98.1 (Dev)

This is a technical preview version, step forward to beta version, release for test and professional users, be careful while using it in the production environment.

# New features & bug-fixes

  • DataGrid add style for current cell
  • SQLite: refactor table designer
  • MySQL: refactor table designer
  • PostgreSQL: refactor table designer
  • Normalize column's length/precision/scale
  • Update the Chinese translation
  • Fixed ODBC CHAR/WCHAR data type issue
  • Fixed connection's driver missed issue
  • Fixed drop SQLite file to create connection issue
  • Fixed MySQL/MariaDB encoding(Chinese) issue
+ (adsbygoogle = window.adsbygoogle || []).push({}); +

# Installer & Portable packages link expired

Windows users could install Kangaroo via winget tool directly, just run command: winget install Taozuhong.Kangaroo. Or download the package then install it manually.

Packages Windows Linux MacOS iOS Android
Installer
(Github.com)
Windows (opens new window) Arch (opens new window) [MacOS]
Portable
(Github.com)
Windows (opens new window) Arch (opens new window) [MacOS]
----------------- ----------------- ----------------- -----------------
Installer
(Cloud@China)
Server 1 (opens new window)
Server 2 (opens new window)
Server 1 (opens new window)
Server 2 (opens new window)
[MacOS]
Portable
(Cloud@China)
Server 1 (opens new window)
Server 2 (opens new window)
Server 1 (opens new window)
Server 2 (opens new window)
[MacOS]
+ (adsbygoogle = window.adsbygoogle || []).push({}); +

# SHA256SUM

Recommend to use tools like sha256sum or 7-Zip to verify the checksum and signature of your packages, make sure they are safe and 100% correct.

sha256sum checksum Package name
b9ae08ebdfc3f2fb3d96f2bc7d8c4a36d41201b933960d581a178c3002793c1f kangaroo-1.98.1.220904-1-x86_64.pkg.tar.zst
2eb866162f4f5d9f1a30d76a4986a82d4c68218a055528ce58b812b4cb6e8ab6 kangaroo-1.98.1.220904-AMD64.7z
af96328d31e351eeb46c67a2bae644fbffd995525bc348952f8e853ba21ef46a kangaroo-1.98.1.220904-AMD64.exe
c1b07a5d500c125ec838a0e7859be6c649ea99883eab6d9953d3422276e67eaf kangaroo-1.98.1.220904-arch.tar.gz

# Share with friends

+ + + diff --git a/en/download/v1.99.1.221001.html b/en/download/v1.99.1.221001.html new file mode 100644 index 000000000..1f3c36370 --- /dev/null +++ b/en/download/v1.99.1.221001.html @@ -0,0 +1,76 @@ + + + + + + Kangaroo v1.99.1 (Dev) | Kangaroo + + + + + + + + + + + +

# Kangaroo v1.99.1 (Dev)

This is a technical preview version, step forward to beta version, release for test and professional users, be careful while using it in the production environment.

# New features & bug-fixes

  • Normalize DataModel and MetaModel
  • Refactor documents dialog
  • Refactor export pages
  • Refactor import pages
  • Refactor connection dialog
  • Add attach database dialog
  • Upgrade libsoup2 to libsoup3
  • Add ODBC general support
  • Add ODBC help entry point
  • Add object search support
  • Update Windows and ArchLinux installer and deploy script
  • SQLite: attach and detach database
  • SQLite: load extension support
  • Improve the way to create new connection
  • Update Chinese translation
  • Fixed shortcut file issue
+ (adsbygoogle = window.adsbygoogle || []).push({}); +

# Installer & Portable packages link expired

Windows users could install Kangaroo via winget tool directly, just run command: winget install Taozuhong.Kangaroo. Or download the package then install it manually.

Packages Windows Linux MacOS iOS Android
Installer
(Github.com)
Windows (opens new window) Arch (opens new window) [MacOS]
Portable
(Github.com)
Windows (opens new window) Arch (opens new window) [MacOS]
----------------- ----------------- ----------------- -----------------
Installer
(Cloud@China)
Server 1 (opens new window)
Server 2 (opens new window)
Server 1 (opens new window)
Server 2 (opens new window)
[MacOS]
Portable
(Cloud@China)
Server 1 (opens new window)
Server 2 (opens new window)
Server 1 (opens new window)
Server 2 (opens new window)
[MacOS]
+ (adsbygoogle = window.adsbygoogle || []).push({}); +

# SHA256SUM

Recommend to use tools like sha256sum or 7-Zip to verify the checksum and signature of your packages, make sure they are safe and 100% correct.

sha256sum checksum Package name
d2a49deb6803af0909f2c34aa4bd4c058fd9229bd35162127fc6f7a63423e61f kangaroo-1.99.1.221001-1-x86_64.pkg.tar.zst
1d59c87696fae3218d78e4012f7f188de8a25c73acd2e7d6e87041048e412761 kangaroo-1.99.1.221001-AMD64.7z
98b0ba13c7da75f3132d1cff66dd32969b15d8800e6a24ded3e4a34a126842e9 kangaroo-1.99.1.221001-AMD64.exe
d4b50aeb4b4e35b4e72d8247b8050a5dc9d7d3e088bc4dd9e83af28982e3a6e6 kangaroo-1.99.1.221001-arch.tar.gz

# Share with friends

+ + + diff --git a/en/download/v2.0.0.221101.html b/en/download/v2.0.0.221101.html new file mode 100644 index 000000000..921b3e3ee --- /dev/null +++ b/en/download/v2.0.0.221101.html @@ -0,0 +1,76 @@ + + + + + + Kangaroo v2.0.0 (Beta) | Kangaroo + + + + + + + + + + + +

# Kangaroo v2.0.0 (Beta)

This is a stable version, features and maturity reached the version target, recommend for all users.

# New features & bug-fixes

  • Refactor importer page (columns/preview)
  • Refactor columns selection dialog
  • Refactor SQLite columns dialog
  • Refactor PostgreSQL columns dialog
  • Refactor MySQL columns dialog
  • Refactor type values dialog (Enum/set)
  • Refactor documents dialog
  • Refactor DataGrid events and context menu
  • Replace icon with symbolic icon
  • Implement form view edit and save support
  • Implement table view edit and save support
  • Implement Binary/BLOB import/export/save support
  • Improve SQLite schema support
  • Form view navigation support
  • Update Chinese translation
  • Fixed numeric value lost its decimal issue
  • Fixed toolbar icon size issue
  • Fixed explorer DataGrid issue
  • Fixed import data failure issue
  • Fixed index loading crash issue
  • Fixed repo tree node change issue
  • Fixed SQLite function crash issue
  • Fixed application warning messages
  • Fixed compiler warning messages
  • Fixed context menu dump action issue
+ (adsbygoogle = window.adsbygoogle || []).push({}); +

# Installer & Portable packages link expired

Windows users could install Kangaroo via winget tool directly, just run command: winget install Taozuhong.Kangaroo. Or download the package then install it manually.

Packages Windows Linux MacOS iOS Android
Installer
(Github.com)
Windows (opens new window) Arch (opens new window) [MacOS]
Portable
(Github.com)
Windows (opens new window) Arch (opens new window) [MacOS]
----------------- ----------------- ----------------- -----------------
Installer
(Cloud@China)
Server 1 (opens new window)
Server 2 (opens new window)
Server 1 (opens new window)
Server 2 (opens new window)
[MacOS]
Portable
(Cloud@China)
Server 1 (opens new window)
Server 2 (opens new window)
Server 1 (opens new window)
Server 2 (opens new window)
[MacOS]
+ (adsbygoogle = window.adsbygoogle || []).push({}); +

# SHA256SUM

Recommend to use tools like sha256sum or 7-Zip to verify the checksum and signature of your packages, make sure they are safe and 100% correct.

sha256sum checksum Package name
5d2eb07a8f05cccc1c07886c56b3b2de9752f6e6efcf0ced62f8d97a02fc7117 kangaroo-2.0.0.221101-AMD64.exe
3f6fd583a70396563ce63d4416482f1f4b752e55259c8fcf95c281fa479338e5 kangaroo-2.0.0.221101-AMD64.7z
8f133c6b4a512de64a94d7cfe87184dd91e84d71965ede03076dadef3da4e785 kangaroo-2.0.0.221101-1-x86_64.pkg.tar.zst
08c705cb664ac6aeb1b8238520f1c8f9219e6639561c8b7d109cfb5f17f62ed5 kangaroo-2.0.0.221101-arch.tar.gz

# Share with friends

+ + + diff --git a/en/download/v2.1.1.221201.html b/en/download/v2.1.1.221201.html new file mode 100644 index 000000000..8d450da1a --- /dev/null +++ b/en/download/v2.1.1.221201.html @@ -0,0 +1,76 @@ + + + + + + Kangaroo v2.1.1 (Beta) | Kangaroo + + + + + + + + + + + +

# Kangaroo v2.1.1 (Beta)

This is a stable version, features and maturity reached the version target, recommend for all users.

# New features & bug-fixes

  • Add dynamic QR code support
  • Add debian package support
  • Implement designer's clone menu action
  • Implement designer's copy/paste action
  • Add designer's cut menu item
  • Add SQL EXPLAIN statement with format support
  • Add SQL ANALYZE statement support
  • Refactor SQL beautify and minify
  • Improve editor undo support
  • Update linux package script
  • Update Chinese translation
  • Fixed: app crashed while closing book page
  • Fixed: SSH label issue
+ (adsbygoogle = window.adsbygoogle || []).push({}); +

# Installer & Portable packages link expired

Windows users could install Kangaroo via winget tool directly, just run command: winget install Taozuhong.Kangaroo. Or download the package then install it manually.

# Windows platform

Platform Architect Installer Portable
Windows x86-64 Github (opens new window)
GitEE (opens new window)
Server 3 (opens new window)
Server 4 (opens new window)
Github (opens new window)
GitEE (opens new window)
Server 3 (opens new window)
Server 4 (opens new window)
Wine / ... x86-64 Github (opens new window)
GitEE (opens new window)
Server 3 (opens new window)
Server 4 (opens new window)
Github (opens new window)
GitEE (opens new window)
Server 3 (opens new window)
Server 4 (opens new window)

# macOS platform

Platform Architect Installer Portable
macOS ARM64 Coming soon Coming soon

# Linux platform

Distribution Architect Installer Portable
Arch Linux x86-64 Github (opens new window)
GitEE (opens new window)
Server 3 (opens new window)
Server 4 (opens new window)
Github (opens new window)
GitEE (opens new window)
Server 3 (opens new window)
Server 4 (opens new window)
Debian x86-64 Github (opens new window)
Gitee (opens new window)
Server 3 (opens new window)
Server 4 (opens new window)
Github (opens new window)
GitEE (opens new window)
Server 3 (opens new window)
Server 4 (opens new window)
+ (adsbygoogle = window.adsbygoogle || []).push({}); +

# SHA256SUM

Recommend to use tools like sha256sum or 7-Zip to verify the checksum and signature of your packages, make sure they are safe and 100% correct.

sha256sum checksum Package name
6de2d62f013661ae17736b4dae785ee717157d11a6004b3c951e181f64d296ae kangaroo-2.1.1.221201-x86_64.exe
962097751fe1201aa45a8a7a2968bdf1b0618108558e450efc0cc60959bc234f kangaroo-2.1.1.221201-x86_64.deb
178d70c391f94fc74e845c3929840ec10fbc13113d3ceab3fced80cbcd8e303d kangaroo-2.1.1.221201-1-x86_64.pkg.tar.zst
9d1727380136502aa070b2c5101381ba0f1ebd2bc3cfae2445654afc87ff5b10 kangaroo-2.1.1.221201-x86_64.tar.zst
462ec4f64b54c80d29ae9d3b51d29db355b23aa6df395e2e2d9c5c8cf1f55ced kangaroo-2.1.1.221201-x86_64.zip

# Share with friends

+ + + diff --git a/en/download/v2.2.1.230101.html b/en/download/v2.2.1.230101.html new file mode 100644 index 000000000..6e932bb95 --- /dev/null +++ b/en/download/v2.2.1.230101.html @@ -0,0 +1,76 @@ + + + + + + Kangaroo v2.2.1 (Beta) | Kangaroo + + + + + + + + + + + +

# Kangaroo v2.2.1 (Beta)

This is a stable version, features and maturity reached the version target, recommend for all users.

# New features & bug-fixes

  • Add executor dialog
  • Add dump & tranform dialog
  • Add time cost for query
  • SQLite: fixed index load issue
  • SQLite: fixed backup name issue
  • MariaDB: fixed schema scope issue
  • MySQL: fixed schema scope issue
  • PostgreSQL: fixed v15 user info issue
  • Update intellisense proposal's icon
  • Update Chinese translation
  • Update Windows installer to select drivers defaultly
  • Update GTK library to 4.9.2
+ (adsbygoogle = window.adsbygoogle || []).push({}); +

# Installer & Portable packages link expired

Windows users could install Kangaroo via winget tool directly, just run command: winget install Taozuhong.Kangaroo. Or download the package then install it manually.

# Windows platform

Platform Architect Installer Portable
Windows x86-64 Github (opens new window)
GitEE (opens new window)
Server 3 (opens new window)
Server 4 (opens new window)
Github (opens new window)
GitEE (opens new window)
Server 3 (opens new window)
Server 4 (opens new window)
Wine / ... x86-64 Github (opens new window)
GitEE (opens new window)
Server 3 (opens new window)
Server 4 (opens new window)
Github (opens new window)
GitEE (opens new window)
Server 3 (opens new window)
Server 4 (opens new window)

# macOS platform

Platform Architect Installer Portable
macOS ARM64 Coming soon Coming soon

# Linux platform

Distribution Architect Installer Portable
Arch Linux x86-64 Github (opens new window)
GitEE (opens new window)
Server 3 (opens new window)
Server 4 (opens new window)
Github (opens new window)
GitEE (opens new window)
Server 3 (opens new window)
Server 4 (opens new window)
Debian x86-64 Github (opens new window)
Gitee (opens new window)
Server 3 (opens new window)
Server 4 (opens new window)
Github (opens new window)
GitEE (opens new window)
Server 3 (opens new window)
Server 4 (opens new window)
+ (adsbygoogle = window.adsbygoogle || []).push({}); +

# SHA256SUM

Recommend to use tools like sha256sum or 7-Zip to verify the checksum and signature of your packages, make sure they are safe and 100% correct.

sha256sum checksum Package name
f8f1c499457740ae5ae105fc8f44de891c1372acd14e02fb3d9cd243322eef62 kangaroo-2.2.1.230101-x86_64.exe
b40b165ac2ac6e9cce1710b5af004768e5957b06ff9fad81d2bfe7643ea12168 kangaroo-2.2.1.230101-x86_64.deb
ac5798dbb2a680df9ea72e337fa839fc009bca60efc71c0baf7decddad3ae68a kangaroo-2.2.1.230101-1-x86_64.pkg.tar.zst
21e9c511d51b20673b43d245af0ec95928113f7479284854c7422bd463f26992 kangaroo-2.2.1.230101-x86_64.tar.zst
50631a8ecdca13d55a3a53c882934f5068f2bf6c87601f39cd94dd50fd98a2d8 kangaroo-2.2.1.230101-x86_64.zip

# Share with friends

+ + + diff --git a/en/download/v2.3.1.230201.html b/en/download/v2.3.1.230201.html new file mode 100644 index 000000000..132f1294d --- /dev/null +++ b/en/download/v2.3.1.230201.html @@ -0,0 +1,79 @@ + + + + + + Kangaroo v2.3.1 (Beta) | Kangaroo + + + + + + + + + + + +

# Kangaroo v2.3.1 (Beta)

This is a stable version, features and maturity reached the version target, recommend for all users.

# New features & bug-fixes

  • Add query file pane
  • Add model file pane
  • Update toolbar style
  • Workspace add split support (vertical or horizontal)
  • Workspace add status bar
  • Workspace add language support
  • Workspace add line ending support
  • Workspace add file encoding support
  • Workspace add word wrap support
  • Workspace add indentation support
  • Workspace add position support
  • Workspace add pane switching support
  • Workspace add worksheet message support
  • Update about window(System information)
  • Update RPM installer script
  • Update Chinese translation
  • Remove view submenu from main menu
+ (adsbygoogle = window.adsbygoogle || []).push({}); +

# Installer & Portable packages link expired

Windows users could install Kangaroo via winget tool directly, just run command: winget install Taozuhong.Kangaroo. Or download the package then install it manually.

# Windows platform

Platform Architect Installer Portable
Windows x86-64 Github (opens new window)
GitEE (opens new window)
Server 3 (opens new window)
Server 4 (opens new window)
Github (opens new window)
GitEE (opens new window)
Server 3 (opens new window)
Server 4 (opens new window)
Wine / ... x86-64 Github (opens new window)
GitEE (opens new window)
Server 3 (opens new window)
Server 4 (opens new window)
Github (opens new window)
GitEE (opens new window)
Server 3 (opens new window)
Server 4 (opens new window)

# macOS platform

Platform Architect Installer Portable
macOS ARM64 Coming soon Coming soon

# Linux platform

This version depends on some in-development library version, it not ready for normal users.
+For professional users, you should get the latest code from their repo, then compile and install. The libraries are:
+GTK4 >= 4.10
+libpanel >= 1.2.0

Distribution Architect Installer Portable
Arch Linux x86-64 Github (opens new window)
GitEE (opens new window)
Server 3 (opens new window)
Server 4 (opens new window)
Github (opens new window)
GitEE (opens new window)
Server 3 (opens new window)
Server 4 (opens new window)
Debian x86-64 Github (opens new window)
Gitee (opens new window)
Server 3 (opens new window)
Server 4 (opens new window)
Github (opens new window)
GitEE (opens new window)
Server 3 (opens new window)
Server 4 (opens new window)
+ (adsbygoogle = window.adsbygoogle || []).push({}); +

# SHA256SUM

Recommend to use tools like sha256sum or 7-Zip to verify the checksum and signature of your packages, make sure they are safe and 100% correct.

sha256sum checksum Package name
80ceec4732a66fe112111941438c8461674671493548cb3a97d34a4cfb53fb65 kangaroo-2.3.1.230201-x86_64.exe
fb8d8e1d3b9b5783888ca076ccb693e2de588a14355ccaf8e2eb507d2862f5f6 kangaroo-2.3.1.230201-x86_64.deb
63feed9980b379490b6c8f70ae29fc157426c9cb153f2365fd47e9ae52be86b6 kangaroo-2.3.1.230201-1-x86_64.pkg.tar.zst
69fc68ccf672ccacb180010e88de3e31ff43581138f782acee6d322d20342616 kangaroo-2.3.1.230201-x86_64.tar.zst
31e99493b8f78204b372ad5935eee0f3740dc2123ecebd4f7e1946eac0cc584d kangaroo-2.3.1.230201-x86_64.zip

# Share with friends

+ + + diff --git a/en/download/v2.3.2.230301.html b/en/download/v2.3.2.230301.html new file mode 100644 index 000000000..367657f41 --- /dev/null +++ b/en/download/v2.3.2.230301.html @@ -0,0 +1,79 @@ + + + + + + Kangaroo v2.3.2 (Beta) | Kangaroo + + + + + + + + + + + +

# Kangaroo v2.3.2 (Beta)

This is a stable version, features and maturity reached the version target, recommend for all users.

# New features & bug-fixes

  • MySQL: Add executor menu item
  • MariaDB: Add executor menu item
  • PostgreSQL: Add executor menu item
  • Update datagrid normal style bg color
  • Update Chinese translation
  • Fixed: Unknown SCHEMA_COMMENT (< MariaDB 10.5)
  • Fixed: executor's file dialog issue
  • Fixed: intellisense issue
  • Fixed: datagrid craches
+ (adsbygoogle = window.adsbygoogle || []).push({}); +

# Installer & Portable packages

Windows users could install Kangaroo via winget tool directly, just run command: winget install Taozuhong.Kangaroo. Or download the package then install it manually.

# Windows platform

Platform Architect Installer Portable
Windows x86-64 Github (opens new window)
GitEE (opens new window)
Server 3 (opens new window)
Server 4 (opens new window)
Github (opens new window)
GitEE (opens new window)
Server 3 (opens new window)
Server 4 (opens new window)
Wine / ... x86-64 Github (opens new window)
GitEE (opens new window)
Server 3 (opens new window)
Server 4 (opens new window)
Github (opens new window)
GitEE (opens new window)
Server 3 (opens new window)
Server 4 (opens new window)

# macOS platform

Platform Architect Installer Portable
macOS ARM64 Coming soon Coming soon

# Linux platform

This version depends on some in-development library version, it not ready for normal users.
+For professional users, you should get the latest code from their repo, then compile and install. The libraries are:
+GTK4 >= 4.10
+libpanel >= 1.2.0

Distribution Architect Installer Portable
Arch Linux x86-64 Github (opens new window)
GitEE (opens new window)
Server 3 (opens new window)
Server 4 (opens new window)
Github (opens new window)
GitEE (opens new window)
Server 3 (opens new window)
Server 4 (opens new window)
Debian x86-64 Github (opens new window)
Gitee (opens new window)
Server 3 (opens new window)
Server 4 (opens new window)
Github (opens new window)
GitEE (opens new window)
Server 3 (opens new window)
Server 4 (opens new window)
+ (adsbygoogle = window.adsbygoogle || []).push({}); +

# SHA256SUM

Recommend to use tools like sha256sum or 7-Zip to verify the checksum and signature of your packages, make sure they are safe and 100% correct.

sha256sum checksum Package name
9f6a2368a75e7a0825dfef99bcd7a2b284a9cd6399276242ef39a1048df1700b kangaroo-2.3.2.230306-x86_64.exe
cb7f78ca9c271e456f387acfe383b2670093cc8f09dba3e0aa7281527858817e kangaroo-2.3.2.230301-x86_64.deb
66d6c00c67a71179121e780b2e986144ae5e5ed129d9c65ba4f341911813b4e1 kangaroo-2.3.2.230301-1-x86_64.pkg.tar.zst
cd039507f4a8e514f342e35535a7e344c1baafadace4635b6d357eed03f1e689 kangaroo-2.3.2.230301-x86_64.tar.zst
38b5c52a6e7b04ed958482bdb33782aef4456be6412e6ce5a24d89901f22b856 kangaroo-2.3.2.230306-x86_64.zip

# Share with friends

+ + + diff --git a/en/download/v2.99.1.230331.html b/en/download/v2.99.1.230331.html new file mode 100644 index 000000000..dd261c324 --- /dev/null +++ b/en/download/v2.99.1.230331.html @@ -0,0 +1,79 @@ + + + + + + Kangaroo v2.99.1 (Beta) | Kangaroo + + + + + + + + + + + +

# Kangaroo v2.99.1 (Beta)

This is a stable version, and the functional maturity and stability are infinitely close to the version goal, and it is recommended for all users.

Important information

Versions marked with Dev Beta are free for commercial use, others require payment.

# New features & bug-fixes

  • SQLite: add direct access support
  • MySQL: add direct access support
  • MariaDB: add direct access support
  • PostgreSQL: add direct access support
  • Improved floating-point display support
  • Improved connection establishment
  • Updated Chinese translation
+ (adsbygoogle = window.adsbygoogle || []).push({}); +

# Installer & Portable packages link expired

Windows users could install Kangaroo via winget tool directly, just run command: winget install Taozuhong.Kangaroo. Or download the package then install it manually.

# Windows platform

Architect All SQLite MariaDB MySQL PostgreSQL
x86-64 Github (opens new window)
GitEE (opens new window)
Server 3 (opens new window)
Server 4 (opens new window)
Server 3 (opens new window)
Server 4 (opens new window)
Server 3 (opens new window)
Server 4 (opens new window)
Server 3 (opens new window)
Server 4 (opens new window)
Server 3 (opens new window)
Server 4 (opens new window)
ARM64
RISCV64

# macOS platform

Architect All SQLite MariaDB MySQL PostgreSQL
ARM64
x86-64
RISCV64

# Linux platform

This version depends on some in-development library version, it not ready for normal users.
+For professional users, you should get the latest code from their repo, then compile and install. The libraries are:
+GTK4 >= 4.10
+libpanel >= 1.2.0

Architect All SQLite MariaDB MySQL PostgreSQL
x86-64 Arch Linux
Github (opens new window)
GitEE (opens new window)
Server 3 (opens new window)
Server 4 (opens new window)

Debian
Github (opens new window)
Gitee (opens new window)
Server 3 (opens new window)
Server 4 (opens new window)
ARM64
RISCV64
+ (adsbygoogle = window.adsbygoogle || []).push({}); +

# SHA256SUM

Recommend to use tools like sha256sum or 7-Zip to verify the checksum and signature of your packages, make sure they are safe and 100% correct.

sha256sum checksum Package name
7fd73a026a9eca11b6769d8b6beafd34b63334a4ec76b13d2f3f38a2d1f5db32 kangaroo-max-2.99.1.230331-x86_64.exe
5819560a44db6362570c5450e2c0a3625b7239fd37a037e759b450e51cc5f297 kangaroo-max-2.99.1.230331-x86_64.deb
b7e67a536e59e621fdde52781fdc99d8834da5ce4b3f06803f5ea50d4a35a960 kangaroo-max-2.99.1.230331-1-x86_64.pkg.tar.zst
b132143cc3df47fc42a2de0c8aa5a20bdc7b8673ad4095b39d09fd1f583d0f3a kangaroo-mariadb-2.99.1.230331-x86_64.exe
f9f92846076b2c78a369d11beaabb796896f16029251be2bc31891dcfe3f2091 kangaroo-mysql-2.99.1.230331-x86_64.exe
2914978bce2d85de81763f7fce32f532d9fbb03b9e209867e438c62355fd6f51 kangaroo-postgresql-2.99.1.230331-x86_64.exe
de71c55462a52ca05b1f132c720f8dbfbd5f373a586b32041e2a6d96e1b45af3 kangaroo-sqlite-2.99.1.230331-x86_64.exe
2f4aec27314c1e9bfbf1eca13d7586b9fbe2a378e289ee25a1a1a7edd2c1cc81 kangaroo-max-2.99.1.230331-x86_64.7z
b20df8610802e904e7eee58d30c4bd77e86292dde90d2c270a37c5a0e75ab616 kangaroo-max-2.99.1.230331-x86_64.tar.zst

# Share with friends

+ + + diff --git a/en/download/v2.99.2.230428.html b/en/download/v2.99.2.230428.html new file mode 100644 index 000000000..a93ee9840 --- /dev/null +++ b/en/download/v2.99.2.230428.html @@ -0,0 +1,79 @@ + + + + + + Kangaroo v2.99.2 (Beta) | Kangaroo + + + + + + + + + + + +

# Kangaroo v2.99.2 (Beta)

This is a stable version, and the functional maturity and stability are infinitely close to the version goal, and it is recommended for all users.

Important information

Versions marked with Dev Beta are free for commercial use, others require payment.

# New features & bug-fixes

  • Add sandbox support(Windows only)
  • GTK4 upgrade to 4.10.3
  • libadwaita upgrade to 1.3.1
  • Fixed: some dialog can't close
+ (adsbygoogle = window.adsbygoogle || []).push({}); +

# Installer & Portable packages link expired

Windows users could install Kangaroo via winget tool directly, just run command: winget install Taozuhong.Kangaroo. Or download the package then install it manually.

# Windows platform

Architect All SQLite MariaDB MySQL PostgreSQL
x86-64 Github (opens new window)
GitEE (opens new window)
Server 3 (opens new window)
Server 4 (opens new window)
Server 3 (opens new window)
Server 4 (opens new window)
Server 3 (opens new window)
Server 4 (opens new window)
Server 3 (opens new window)
Server 4 (opens new window)
Server 3 (opens new window)
Server 4 (opens new window)
ARM64
RISCV64

# macOS platform

Architect All SQLite MariaDB MySQL PostgreSQL
ARM64
x86-64
RISCV64

# Linux platform

This version depends on some in-development library version, it not ready for normal users.
+For professional users, you should get the latest code from their repo, then compile and install. The libraries are:
+GTK4 >= 4.10
+libpanel >= 1.2.0

Architect All SQLite MariaDB MySQL PostgreSQL
x86-64 Arch Linux
Github (opens new window)
GitEE (opens new window)
Server 3 (opens new window)
Server 4 (opens new window)

Debian
Github (opens new window)
Gitee (opens new window)
Server 3 (opens new window)
Server 4 (opens new window)
ARM64
RISCV64
+ (adsbygoogle = window.adsbygoogle || []).push({}); +

# SHA256SUM

Recommend to use tools like sha256sum or 7-Zip to verify the checksum and signature of your packages, make sure they are safe and 100% correct.

sha256sum checksum Package name
b0ee5d8609c39373f0def0d2f0750a5e7476a7aaa4949c0198a9f6f8b2288494 kangaroo-max-2.99.2.230430-x86_64.exe
a465ab79b11e9de74d67d63430b19031fe891572054f9dc46f75394afd8def22 kangaroo-max-2.99.2.230430-x86_64.deb
1c3a6ac30c621fcedc440e5b54c65e590e28789722418226134ae1ca34e165a6 kangaroo-max-2.99.2.230430-1-x86_64.pkg.tar.zst
091b05c71336a5da65f514fe339d5c597daf60ad758b033b36ae2296bb17196f kangaroo-mariadb-2.99.2.230430-x86_64.exe
443be9bf9d9ebf91f99ae1015b913aed91a532a298bdc52a388f14dad2ecb690 kangaroo-mysql-2.99.2.230430-x86_64.exe
1b1032ea99e59b6e3d5221266d2d7a8fd3b46c15557bf288deb9095dae3aab86 kangaroo-postgresql-2.99.2.230430-x86_64.exe
c6ab40206da2ed64191766259008a22ae4481171b1ebb2df54c76fa243c8919f kangaroo-sqlite-2.99.2.230430-x86_64.exe
d2c82b2919d27b63968b14336fa536305086cffa0cae3e27cf04064aa385f0c3 kangaroo-max-2.99.2.230430-x86_64.7z
df3509ba7e1ba53723b698282f348701a711463dc2a44eb9257c863df8916433 kangaroo-max-2.99.2.230430-x86_64.tar.zst

# Share with friends

+ + + diff --git a/en/download/v2.99.3.230602.html b/en/download/v2.99.3.230602.html new file mode 100644 index 000000000..6e19213c6 --- /dev/null +++ b/en/download/v2.99.3.230602.html @@ -0,0 +1,79 @@ + + + + + + Kangaroo v2.99.3 (Beta) | Kangaroo + + + + + + + + + + + +

# Kangaroo v2.99.3 (Beta)

This is a stable version, and the functional maturity and stability are infinitely close to the version goal, and it is recommended for all users.

Important information

Versions marked with Dev Beta are free for commercial use, others require payment.

# New features & bug-fixes

  • Windows: GTK4 upgrade to 4.11.2
  • MySQL: fixed TINYTEXT/TEXT/MEDIUMTEXT/LONGTEXT show issue
  • MariaDB: fixed TINYTEXT/TEXT/MEDIUMTEXT/LONGTEXT show issue
+ (adsbygoogle = window.adsbygoogle || []).push({}); +

# Installer & Portable packages link expired

Windows users could install Kangaroo via winget tool directly, just run command: winget install Taozuhong.Kangaroo. Or download the package then install it manually.

# Windows platform

Architect All SQLite MariaDB MySQL PostgreSQL
x86-64 Github (opens new window)
GitEE (opens new window)
Server 3 (opens new window)
Server 4 (opens new window)
Server 3 (opens new window)
Server 4 (opens new window)
Server 3 (opens new window)
Server 4 (opens new window)
Server 3 (opens new window)
Server 4 (opens new window)
Server 3 (opens new window)
Server 4 (opens new window)
ARM64
RISCV64

# macOS platform

Architect All SQLite MariaDB MySQL PostgreSQL
ARM64
x86-64
RISCV64

# Linux platform

This version depends on some in-development library version, it not ready for normal users.
+For professional users, you should get the latest code from their repo, then compile and install. The libraries are:
+GTK4 >= 4.10
+libpanel >= 1.2.0

Architect All SQLite MariaDB MySQL PostgreSQL
x86-64 Arch Linux
Github (opens new window)
GitEE (opens new window)
Server 3 (opens new window)
Server 4 (opens new window)

Debian
Github (opens new window)
Gitee (opens new window)
Server 3 (opens new window)
Server 4 (opens new window)
ARM64
RISCV64
+ (adsbygoogle = window.adsbygoogle || []).push({}); +

# SHA256SUM

Recommend to use tools like sha256sum or 7-Zip to verify the checksum and signature of your packages, make sure they are safe and 100% correct.

sha256sum checksum Package name
1a2be887170dbfb4147ff10fe1201d6c8594b86e929d8b612d17abe656cbb640 kangaroo-max-2.99.3.230602-x86_64.exe
d84aa6c93dd01ec65a5f63f3a2cb8260537d3ee824ea7424d1801631bd112f5a kangaroo-max-2.99.3.230602-x86_64.deb
7da7ed12dc99a38b68d691cbff59d13a511ba62eb221dc53ee79385a69d2f2fd kangaroo-max-2.99.3.230602-1-x86_64.pkg.tar.zst
9f19f79b27f9ba6aa7a0fea680f9a917cf31a961e90365ffe7a974ee85e62510 kangaroo-mariadb-2.99.3.230602-x86_64.exe
15e8e61266842eafe01d9568ff0dfab5ef3f4da69c8f529f926ae786d0731386 kangaroo-mysql-2.99.3.230602-x86_64.exe
fd50c9cbf035653864bafab3a34164649094e82dadf91a6cb2de331c8283ebfb kangaroo-postgresql-2.99.3.230602-x86_64.exe
631e23f70427415bb862ad0a445f29c599096c0dfad208583ebaea1059a02075 kangaroo-sqlite-2.99.3.230602-x86_64.exe
ab6fefc8d064421cfd7d506a28ddd4e8a4363723ccf7a9b211894f455f39474f kangaroo-max-2.99.3.230602-x86_64.7z
12ac32a1a5d15ac71add144412b0f8a441a68a517afc17a2995d4d12b53e4f63 kangaroo-max-2.99.3.230602-x86_64.tar.zst

# Share with friends

+ + + diff --git a/en/download/v3.90.1.230701.html b/en/download/v3.90.1.230701.html new file mode 100644 index 000000000..ce0ff2231 --- /dev/null +++ b/en/download/v3.90.1.230701.html @@ -0,0 +1,79 @@ + + + + + + Kangaroo v3.90.1 (Beta) | Kangaroo + + + + + + + + + + + +

# Kangaroo v3.90.1 (Beta)

This is a stable version, and the functional maturity and stability are infinitely close to the version goal, and it is recommended for all users.

Important information

Versions marked with Dev Beta are free for commercial use, others require payment.

# New features & bug-fixes

  • Add transfer/structure sync/data sync UI
  • Implent transfer bussiness logic
  • Implement structure sync business logic
  • SQLite Encryption Extension support(SQLCipher)
  • MySQL: Improve TEXT/BLOB type support
  • MariaDB: Improve TEXT/BLOB type support
  • Make dialog window stay center
  • Add language switch support
  • Improve preference window performance
  • Updated Chinese translation
  • Fixed MySQL/MariaDB field flag issue
+ (adsbygoogle = window.adsbygoogle || []).push({}); +

# Installer & Portable packages link expired

Windows users could install Kangaroo via winget tool directly, just run command: winget install Taozuhong.Kangaroo. Or download the package then install it manually.

# Windows platform

Architect All SQLite MariaDB MySQL PostgreSQL
x86-64 Github (opens new window)
GitEE (opens new window)
Server 3 (opens new window)
Server 4 (opens new window)
Server 3 (opens new window)
Server 4 (opens new window)
Server 3 (opens new window)
Server 4 (opens new window)
Server 3 (opens new window)
Server 4 (opens new window)
Server 3 (opens new window)
Server 4 (opens new window)
ARM64
RISCV64

# macOS platform

Architect All SQLite MariaDB MySQL PostgreSQL
ARM64
x86-64
RISCV64

# Linux platform

This version depends on some in-development library version, it not ready for normal users.
+For professional users, you should get the latest code from their repo, then compile and install. The libraries are:
+GTK4 >= 4.10
+libpanel >= 1.2.0

Architect All SQLite MariaDB MySQL PostgreSQL
x86-64 Arch Linux
Github (opens new window)
GitEE (opens new window)
Server 3 (opens new window)
Server 4 (opens new window)

Debian
Github (opens new window)
Gitee (opens new window)
Server 3 (opens new window)
Server 4 (opens new window)
ARM64
RISCV64
+ (adsbygoogle = window.adsbygoogle || []).push({}); +

# SHA256SUM

Recommend to use tools like sha256sum or 7-Zip to verify the checksum and signature of your packages, make sure they are safe and 100% correct.

sha256sum checksum Package name
0dbbefb6823b406351d753bc597394ba785898677904e98145e145a73a4e3512 kangaroo-max-3.90.1.230703-x86_64.exe
9b20a3ab546797a47845ec63b13da31a33d3e0e700c6f4171bb72c1c8c41b71f kangaroo-max-3.90.1.230703-x86_64.deb
0bcc168cdb9e05aed57bd1842dac291ee15b8f8c65dab379acc14eb1065cc9b5 kangaroo-max-3.90.1.230703-1-x86_64.pkg.tar.zst
fd76fd988716f8dfb105d9ffb77255a606c79eb58a2a79d94450dc7626d3d5d5 kangaroo-mariadb-3.90.1.230703-x86_64.exe
279cb589f427b19ea66d36ca815d340ca628c32cad03dbe4e3ad9672b7d4f18b kangaroo-mysql-3.90.1.230703-x86_64.exe
afc76b0ab613cd64ba95277ae3f1071b4acbb74e081b4bbbfa52cdb962249bcf kangaroo-postgresql-3.90.1.230703-x86_64.exe
873917695247339c56403aeb35737a40d00b68c456866c7016c5b5f4fa50e3e7 kangaroo-sqlite-3.90.1.230703-x86_64.exe
f070a6969f4e94c43e16f4a483011a22582155a4782565bf75140d3ae88532fb kangaroo-max-3.90.1.230703-x86_64.7z
eb627ed093c4476305fbf04b2e30f67ddca0da2efe9bbc59febf383fd202ea8b kangaroo-max-3.90.1.230703-x86_64.tar.zst

# Share with friends

+ + + diff --git a/en/download/v3.91.1.230801.html b/en/download/v3.91.1.230801.html new file mode 100644 index 000000000..560f4bd9c --- /dev/null +++ b/en/download/v3.91.1.230801.html @@ -0,0 +1,79 @@ + + + + + + Kangaroo v3.91.1 (Beta) | Kangaroo + + + + + + + + + + + +

# Kangaroo v3.91.1 (Beta)

This is a beta version, and the functional maturity and stability are infinitely close to the version goal, and it is recommended for all users.

Important information

Versions marked with Dev Beta are free for commercial use, others require payment.

# New features & bug-fixes

  • Port to libadwaita 1.4
  • Refactor GtkSwitch.state to active
  • Add database library version for about dialog
  • Add Chinese support(zh_Hans/zh_Hant)
  • Improve workspace status bar
  • Updated Chinese translation
  • MariaDB: add table designer pages
  • MariaDB: fixed foreign key issue
  • MySQL: add missing type: TIMESTAMP
  • PostgreSQL: fixed type and collation issue
  • SQLite: fixed schema issue
  • Data transfer: initialize default options
  • Data transfer: add log output
  • Data transfer: Fixed target connection issue
+ (adsbygoogle = window.adsbygoogle || []).push({}); +

# Installer & Portable packages

Windows users could install Kangaroo via winget tool directly, just run command: winget install Taozuhong.Kangaroo. Or download the package then install it manually.

# Windows platform

Architect All SQLite MariaDB MySQL PostgreSQL
x86-64 Github (opens new window)
GitEE (opens new window)
Server 3 (opens new window)
Server 4 (opens new window)
Server 3 (opens new window)
Server 4 (opens new window)
Server 3 (opens new window)
Server 4 (opens new window)
Server 3 (opens new window)
Server 4 (opens new window)
Server 3 (opens new window)
Server 4 (opens new window)
ARM64
RISCV64

# macOS platform

Architect All SQLite MariaDB MySQL PostgreSQL
ARM64
x86-64 Github (opens new window)
GitEE (opens new window)
Server 3 (opens new window)
Server 4 (opens new window)
RISCV64

# Linux platform

This version depends on some in-development library version, it not ready for normal users.
+For professional users, you should get the latest code from their repo, then compile and install. The libraries are:
+GTK4 >= 4.11.4
+libadwaita >= 1.4.0

Architect All SQLite MariaDB MySQL PostgreSQL
x86-64 Arch Linux
Github (opens new window)
GitEE (opens new window)
Server 3 (opens new window)
Server 4 (opens new window)

Debian
Github (opens new window)
Gitee (opens new window)
Server 3 (opens new window)
Server 4 (opens new window)
ARM64
RISCV64
+ (adsbygoogle = window.adsbygoogle || []).push({}); +

# SHA256SUM

Recommend to use tools like sha256sum or 7-Zip to verify the checksum and signature of your packages, make sure they are safe and 100% correct.

sha256sum checksum Package name
0724bfb36f576ffd0183eff98f9308a37a23d3c9440dfb18d3c72814e52a7c7f kangaroo-max-3.91.2.230807-x86_64.exe
d737d9b3d29baf543cccd5b7c6ebe329b075ec36e8ba01a46cef146ec83bfc20 kangaroo-max-3.90.2.230801-x86_64.deb
7c526127e14dbeafa69a818cef61710dd8441b677e83f5b5480dbf90e673146a kangaroo-max-3.90.2.230801-1-x86_64.pkg.tar.zst
21f6cafe83a5639e5ec639e5560420bbc69f7c74d8ea9d77e57789e2d9e7bb30 kangaroo-max-3.90.2.230801-x86_64.dmg
366c09e7f779be87d435e681d89301f5e9388d286f79d8140d1d1bb0ee4cf2e7 kangaroo-mariadb-3.91.2.230807-x86_64.exe
20e4750206a48ab3888b6196f3c5affcbcc1c9192529398553e8897b654f6f9c kangaroo-mysql-3.91.2.230807-x86_64.exe
a543ac201f5f95e231c464e60c452b4ff1168e50776883376a4b66bfc8d42401 kangaroo-postgresql-3.91.2.230807-x86_64.exe
df895b43909a424c958e525ddd76facd8db7d27a151a7cbccad339b7f01198c9 kangaroo-sqlite-3.91.2.230807-x86_64.exe
38f1d00e1136e02c41b6eb9338e7877b5f5aa851ede2f9a32db580e02e0a3ecb kangaroo-max-3.90.2.230801-x86_64.tar.zst
4f1d560d4f19221655aa226fdb61dd1e18fa25889c7e54f9a0326b93ce50ef9f kangaroo-max-3.91.2.230807-x86_64.7z

# Share with friends

+ + + diff --git a/en/download/v3.92.1.230901.html b/en/download/v3.92.1.230901.html new file mode 100644 index 000000000..f78e4a5df --- /dev/null +++ b/en/download/v3.92.1.230901.html @@ -0,0 +1,80 @@ + + + + + + Kangaroo v3.92.1 | Kangaroo + + + + + + + + + + + +

# Kangaroo v3.92.1

The Kangaroo have made huge strides in stability, so we removed the Beta mark from this version v3.92.1, and Kangaroo officially entering the stable version release cycle. Everyone is welcome to experience it.

Important information

Versions marked with Dev Beta are free for commercial use, others require payment.

# New features & bug-fixes

  • GTK4 upgrade to 4.12
  • libadwaita upgrade to 1.4 beta
  • Add Redhat series package support(rpm)
  • Add code snippet support +
    • Code snippet pane(filter/drag and drop)
    • Code snippet dialog
    • Code snippet intellisense
    • Code snippet setting
    • Code snippet context menu for query view
  • Add execute menu item for query view context menu
  • Refactor history view
  • Refactor color text view
  • Refactor minor toolbar style
  • Refactor toolbar setting
  • Refactor exportor columns page
  • Refactor exportor tables page
  • Refactor exportor option page
  • Refactor model entity dialog
  • QR code add kangaroo logo
  • Updated Chinese translation
  • Fixed: libsoup connection issue
  • Fixed: document UI data display issue
  • Fixed: status bar missing data issue
  • Fixed: connection id issue
+ (adsbygoogle = window.adsbygoogle || []).push({}); +

# Installer & Portable packages

Windows users could install Kangaroo via winget tool directly, just run command: winget install Taozuhong.Kangaroo. Or download the package then install it manually.

# Windows platform

Architect All SQLite MariaDB MySQL PostgreSQL
x86-64 Github (opens new window)
GitEE (opens new window)
Server 3 (opens new window)
Server 4 (opens new window)
Server 3 (opens new window)
Server 4 (opens new window)
Server 3 (opens new window)
Server 4 (opens new window)
Server 3 (opens new window)
Server 4 (opens new window)
Server 3 (opens new window)
Server 4 (opens new window)
ARM64
RISCV64

# macOS platform

Architect All SQLite MariaDB MySQL PostgreSQL
ARM64
x86-64 Github (opens new window)
GitEE (opens new window)
Server 3 (opens new window)
Server 4 (opens new window)
RISCV64

# Linux platform

This version depends on some in-development library version, it not ready for normal users.
+For professional users, you should get the latest code from their repo, then compile and install. The libraries are:
+GTK4 >= 4.12.0
+libadwaita >= 1.4.0

Architect All SQLite MariaDB MySQL PostgreSQL
x86-64 Arch Linux
Github (opens new window)
GitEE (opens new window)
Server 3 (opens new window)
Server 4 (opens new window)

Debian
Github (opens new window)
Gitee (opens new window)
Server 3 (opens new window)
Server 4 (opens new window)

Red Hat
Github (opens new window)
Gitee (opens new window)
Server 3 (opens new window)
Server 4 (opens new window)
ARM64
RISCV64
+ (adsbygoogle = window.adsbygoogle || []).push({}); +

# SHA256SUM

Recommend to use tools like sha256sum or 7-Zip to verify the checksum and signature of your packages, make sure they are safe and 100% correct.

sha256sum checksum Package name
460b029dbb91afe8c5a2e236309a608a2f08ae257a7e774175b208523f753d49 kangaroo-max-3.92.1.230901-x86_64.exe
6316e5d17bf32fcd667e3edd3cd2593566f2244677d617c830659d0e136c24f6 kangaroo-max-3.92.1.230901-x86_64.dmg
010a3406f0c67701e23419543c2830270fffee3865da5759465d300ff43656d3 kangaroo-max-3.92.1.230901-x86_64.deb
b33f33d9daa888ec45f3639eceb37e30cfd8bf4e0c22fc742affd993fc727b66 kangaroo-max-3.92.1.230901-x86_64.rpm
453c33bb90bd881b3e29f8ac63c577a563265661c3d8b044b3bfd16b818359ef kangaroo-max-3.92.1.230901-1-x86_64.pkg.tar.zst
39376cbb67511e8a99758e7c2ae6b2ed00e0a8dba88c62f967aa881b0e792822 kangaroo-max-3.92.1.230901-x86_64.7z
3f27e51f50858ad515ade26ca4c7fe00d5028dbc765b5a8bcf04e2a84ca91337 kangaroo-mariadb-3.92.1.230901-x86_64.exe
b2d09740311f44abcace6cc81c2876fb02184f6b048e59a19f2ffd667cb2ae1f kangaroo-mysql-3.92.1.230901-x86_64.exe
99bfe18452ce25e13ede7811e5eefc16a083150d75a3c6fa5e6bacdd73e3517f kangaroo-postgresql-3.92.1.230901-x86_64.exe
1b99c4cbe956608d7bca6dc49c5222b23493fcdf76c01242cd6dd89e07f2e547 kangaroo-sqlite-3.92.1.230901-x86_64.exe

# Share with friends

+ + + diff --git a/en/index.html b/en/index.html new file mode 100644 index 000000000..6c2cd8797 --- /dev/null +++ b/en/index.html @@ -0,0 +1,70 @@ + + + + + + Kangaroo + + + + + + + + + + + +
hero

+ Kangaroo +

+ SQL client and admin tool for popular databases +

+ Download Kangaroo +

Simple & Powerful

Simple and Intuitive GUI helps you focus on data and finishing your work quickly.

Touch friendly

Focus on the experience of editting, make you feel smoothly when working with it.

Performance

GTK and Adwaita with Vala based native application, focus on performance, focus on responsible.

# Support database

Database support capability level: Planned / Partial / Full(💯)

Database Version Query Editing Designer Export Import Hint Modeling DB Sync
SQLite 3.0 + Full💯 Full💯 Full💯 Full💯 Full💯 Full💯 ✅✅🔲🔲🔲 ✅✅✅✅🔲
MySQL 5.5 + Full💯 Full💯 Full💯 Full💯 Full💯 Full💯 ✅✅🔲🔲🔲 ✅✅✅✅🔲
MariaDB 10.0 + Full💯 Full💯 Full💯 Full💯 Full💯 Full💯 ✅✅🔲🔲🔲 ✅✅✅✅🔲
PostgreSQL 9.0 + Full💯 Full💯 Full💯 Full💯 Full💯 Full💯 ✅✅🔲🔲🔲 ✅✅✅✅🔲
Redis Planned Planned Planned Planned Planned Planned Planned Planned
Oracle
SQL Server

Hint: Code intellisense or Code autocomplete

Privacy Policy | Service Agreement | 粤公网安备44030602005092号 (opens new window) | 粤ICP备2020100158号 (opens new window)
Copyright © 2019 - present Kangaroo. All Rights Reserved.

+ + + diff --git a/en/license/acknowledgement.html b/en/license/acknowledgement.html new file mode 100644 index 000000000..ab2184a19 --- /dev/null +++ b/en/license/acknowledgement.html @@ -0,0 +1,72 @@ + + + + + + Acknowledgement | Kangaroo + + + + + + + + + + + + + + + diff --git a/en/license/index.html b/en/license/index.html new file mode 100644 index 000000000..cd443d41d --- /dev/null +++ b/en/license/index.html @@ -0,0 +1,68 @@ + + + + + + User service agreement | Kangaroo + + + + + + + + + + + + + + + diff --git a/en/license/privacy-policy.html b/en/license/privacy-policy.html new file mode 100644 index 000000000..3de78b38e --- /dev/null +++ b/en/license/privacy-policy.html @@ -0,0 +1,73 @@ + + + + + + Privacy Policy | Kangaroo + + + + + + + + + + + +

# Privacy Policy

February 1, 2022 by datatable.online

datatable.online built Kangaroo as a Commercial software. This SOFTWARE is provided by datatable.online and is intended for use as is.

This page is used to inform users regarding our policies with the collection, use, and disclosure of Personal Information if anyone decided to use Kangaroo.

If you choose to use Kangaroo, then you agree to the collection and use of information in relation to this policy.

The terms used in this Privacy Policy have the same meanings as in our Terms and Conditions, which will be accessible at Kangaroo unless otherwise defined in this Privacy Policy.

This Privacy Policy only applies for the usage of our software. Visiting our official homepage, support website, theme website, or other related websites, is not controlled by this Privacy Policy.

# Information Collection and Use

Anonymous usage data will only be send when the option “Send Anonymous Usage Info” is enabled in preferences panel.

If you disable the option, no data will be collected to us. (The option can be opt-out, but may need a restart of Kangaroo for the option to apply).

When you allow send anonymous usage data, we WILL collect following data anonymous for getting overall statistics of how Kangaroo is used:

  • Kangaroo version, operation system, screen resolution, locale and countries (based on IP address).
  • Name of operations when using Kangaroo, such as “launch”, “new window”, “print”, etc, for gathering overall statistics. (We won’t be able to list all detailed operations for a given user. We won’t collect any detail or sensitive data for user’s operation)
  • How long a user is using Kangaroo.
  • Insensitive preference settings in Kangaroo such as theme name, window style, etc. +When error/exception happens, and if you allow send anonymous usage data, we will collect stack trace, related settings, and running status before exception throws to help us find errors. It should not contain any sensitive or personal data.

# 3rd Party Apps & Services

Kangaroo can call and execute other apps for higher usability, which may collect information used to identify you, no matter you enable “Send Anonymous Usage Info” or not.

The 3rd party apps that Kangaroo may launch includes:

  • gdbus . It may be automatically launched by Kangaroo when you launch Kangaroo. it allows communication between multiple processes running concurrently on the same machine.

None of them will be installed automatically by Kangaroo, nor launched automatically when user is not doing related operations.

We have no control over and assume no responsibility for the content, privacy policies, or practices of any third-party services or apps.

# External Sites

If you insert images, videos, iframes or other resources Kangaroo support from remote websites, or open local markdown file containing them, Kangaroo will load them automatically from target sites. Those sites, however, may collect your visit information.

Also, you can input or open files that may contain links to other sites. If you click on a third-party link, you will be directed to that site. Note that these external sites are not operated by us. Therefore, we strongly advise you to review the Privacy Policy of these websites.

We have no control over and assume no responsibility for the content, privacy policies, or practices of any third-party websites.

# Log Data

Kangaroo will record necessary log on your local computer.

# Backups

For better user experience and prevent data lose from crash, if possible, Kangaroo will create backups for the content your input or modify automatically, those backups are stored on your local computer, no data will be collected by us.

# Feedbacks & Debug Contents

You may send us, or we may suggest you to send us informations like system version, operation steps , sample markdown files, or other needed info when you reports bugs or gave feedbacks. You can refuse to provide those informations if you do not want to.

All sample markdown files that user send to us, will only be used for debug and test purpose, we will not leak them to any other person who is not one of our development team without user’s permission. We may keep and use them after we remove sensitive data or personal identical data, for regulation test purpose. But we will delete files from mail box and local machine after we fixed related bugs, if user require us doing so.

Since user can give us feedbacks via mail, GitHub, twitter, doorbell.io, and so on, we have no control over and assume no responsibility for the content, privacy policies, or practices of any of those communication tools.

# Service Providers

We will NOT share data with third-party companies and individuals.

# Security

We value your trust in providing us your Personal Information, thus we are striving to use commercially acceptable means of protecting it. But remember that no method of transmission over the internet, or method of electronic storage is 100% secure and reliable, and we cannot guarantee its absolute security.

# Children’s Privacy

These Services do not address anyone under the age of 13. We do not knowingly collect personally identifiable information from children under 13. In the case we discover that a child under 13 has provided us with personal information, we immediately delete this from our servers or machines. If you are a parent or guardian and you are aware that your child has provided us with personal information, please contact me so that we will be able to do necessary actions.

# Changes to This Privacy Policy

We may update our Privacy Policy from time to time. Thus, you are advised to review this file or page periodically for any changes. These changes are effective immediately after they are updated in our website or Kangaroo is upgraded.

# Contact Us

If you have any questions or suggestions about our Privacy Policy, do not hesitate to contact us (dbkangaroo@hotmail.com).

+ + + diff --git a/en/license/service-agreement.html b/en/license/service-agreement.html new file mode 100644 index 000000000..f0791f53f --- /dev/null +++ b/en/license/service-agreement.html @@ -0,0 +1,73 @@ + + + + + + End User License Agreement | Kangaroo + + + + + + + + + + + +

# End User License Agreement

February 1, 2022 by datatable.online

TIP

Please read this End User License Agreement (a.k.a “EULA”, “License Agreement”) before You purchase a License Key for the Software and subsequently download and use the Software.

By purchasing a License Key and/or downloading and using the Software, You agree, without reservation, to be bound by the terms of this EULA. If You do not agree with the terms of this EULA, please do not purchase a License Key and/or download and use the Software.

If You accept the terms and conditions in this EULA on behalf of a company or other legal entity, You warrant that You have full legal authority to accept the terms and conditions in this EULA on behalf of such company or other legal entity, and to legally bind such company or other legal entity.

You may not accept this EULA if You are not of legal age to form a binding contract in your country/states.

# 1. Definitions

  • We” a.k.a. “us”, or “datatable.online”. Developer(s) of Kangaroo.
  • Documentation” the detailed information about the Software, its features and the system requirements as made available on the website of datatable.online, as amended from time to time.
  • Open Source Software” any software that requires as a condition of use, copying, modification and/or distribution of such software that such software or other software incorporated into, derived from or distributed with such software (a) be disclosed or distributed in source code form, and (b) be licensed for the purpose of making and/or distributing derivative works, and (c) be redistributable at no charge;
  • Beta version” the license for the Software for public testing before version v2.0.
  • Stable version” versions with version number equal or greater than v2.0, exclude Beta versions.
  • Dev version” versions marked with “Dev” flag, those versions are used for public testing purpose after v2.0.
  • Full version” the license for the Software for the term specified on the webpage of the store where You purchase the license, or in any applicable agreement concerning the purchase of the license (as stand-alone product or as part of a subscription) to Use the Software. This license is when Kangaroo reaches v2.0.
  • Trial version” the license for the Software for the term of N days to Use the Stable version of Software for the sole purpose of testing and evaluating the Software. (N will be decided by us in future). This license is when Kangaroo reaches v2.0.
  • Updates” any modified versions and updates of, and additions to the Software (excluding upgrades of the Software);
  • Major Update” updates that introduce major version number changes, for example, from v2.x to v3.x is a Major Update, from v2.1.x to v2.2.x is not.
  • Use” the access, download, install, copy or get benefit from using the Software in accordance with the documentation.
  • You” you, the final and ultimate user of the Software or the authorized representative of a company or other legal entity that will be the final and ultimate user of the Software, and the company or other legal entity that will be the final and ultimate user of the Software, if applicable.

# General

  1. This EULA applies to any licenses granted to You by us for the use of the Software.
  2. By purchasing a License Key for the Software and/or downloading and using the Software, You enter into this EULA with us.

# 2. Changes to the License Agreement and the Website/Product

  1. Kangaroo is a work in progress, meaning that a lot will change in the near future. We reserve the right to update the Website and these Terms of Service from time to time, at our discretion. We will make sure to announce any major change in a prominent way.
  2. Your continued use of the Kangaroo following the publishing of updated License Agreement means that you accept and agree to the changes.
  3. The published License Agreement not only applies to current beta versions, but also applies to all versions and future updates of Kangaroo.

# 3. License

  1. We grant You a non-exclusive, non-transferable, limited, revocable license to Use the Software in accordance with this EULA. We reserve all rights not expressly granted to You.
  2. We are and remain the owner of any intellectual property rights with respect to the Software. You shall not acquire any ownership to the Software as result of Your purchase of the License Key or Your Use of the Software.

# 4. Permitted use and restrictions

  1. In order to be able to install the Software and receive Updates and upgrades, Your computer shall have access to the Internet and shall meet the system requirements described in the Documentation that can be found on the webpage: System Requirements. The system requirements may be changed in future updates.
  2. You shall Use the Beta version, Full version, or Trial version in accordance with applicable laws and shall not: +
    1. Use the Trial version on any system where the Trial version was previously Used and expired;
    2. Rent, lease, lend, sell, redistribute, sublicense or otherwise commercially exploit the License Key, the Full version or the Trial version;
    3. Assign the License Key, the Full version or the Trial version without prior written approval of us;
    4. Use the Beta version, Full version or Trial version for any unlawful or illegal activity, or to facilitate an unlawful or illegal activity;
    5. After 14 days evaluation passed, continue uses the versions for commercial usage, without a license code;
    6. Delete or alter any disclaimers, warnings, copyright or other proprietary notices accompanying the Software; or
    7. Adapt (except as otherwise provided in this EULA), decompile, reverse engineer, disassemble, attempt to derive the source code of, modify or create derivative works of the Software and the License Key or any parts thereof, except to the extent permitted by applicable law.
    8. Exception: repackage (provide installation packages/scripts) Kangaroo on Linux system is allowed if all contents (includes all binaries, resources files, scripts, etc) of Kangaroo are not modified or deleted.
  3. We may modify the Software at any time at its sole discretion and without notice to You, for example to comply with applicable law or a court order, to avoid a third party infringement claim or to provide Updates and upgrades.
  4. Certain components of the Software are Open Source Software and licensed under the terms of the applicable license(s) of the Open Source Software. You shall adhere to these terms and conditions, which can be found via the webpage: Acknowledgement.

# 5. Maintenance and support

  1. We will notify You of any available Updates and upgrades.
  2. You will be entitled to receive Updates free of charge for unless it is a Major Update.
  3. For a major update, You may need to pay an additional fee in order to be able to download an upgrade. The payment policy for major update will be announced by us when the upgrades are ready.
  4. After you upgrade from Beta version to Stable version, if no License key are provided, you would start using Trial Version automatically.
  5. You could upgrade or downgrade Kangaroo as you like, but we will delete older versions from our website after a long time period or we find it contains serious bugs.
  6. Any maintenance and support provided by us, including the provision of Updates and upgrades, will be provided in an adequate way on an “as is” basis without any warranty, as soon as reasonably practicable, subject to availability of personnel.

# 6. Use of data

See our Private Policy.

# 7. Disclaimer

  1. You Use the Software at Your own risk and the entire risk as to satisfactory quality, performance and accuracy is with You.
  2. We are working hard on improving Kangaroo, but we can’t guarantee that is it bug free. Therefore, your use of Kangaroo is at your sole risk. The service is provided “as is” and “as available”. We disclaim all warranties of any kind, express or implied, including, without limitation, the warranties of merchantability, fitness for a particular purpose and non-infringement. We are not liable for damages, direct or consequential, resulting from your use of the Website, and you agree to defend, indemnify and hold us harmless from any claims, losses, liability costs and expenses (including but not limited to attorney’s fees) arising from your violation of any third-party’s rights. You acknowledge that you have only a limited, nonexclusive, nontransferable license to use the Website.

# 8. Liability limitation

  1. We and any third party that has been involved in the creation, production, or delivery of the Software are under no circumstances liable for consequential or indirect damages (including damage for loss of profit, business interruption, loss of data, and the like arising out of the use or inability to use the Software).
  2. The limitations of liability referred to in clause 8.1 shall not apply in the event that: (i) any negligence on the part of Kangaroo leads to death or physical injury or (ii) damages arise from the intent, willful misconduct or gross negligence of us or the management of us.

# 9. Termination

  1. This EULA will continue to be in force until the expiry or termination of the Full version or Trial version.
  2. The Full version or Trial version will terminate automatically at the end of the applicable license term, unless renewed or Activated prior to the end of the applicable license term.
  3. We are entitled to terminate the Full version or Trial version by blocking the License Key during the license term with immediate effect and without prior notice in the event You fail to comply with the terms in this EULA, in the event You fail to pay Your (subscription) fee for the License Key within the applicable payment term, or in the event Kangaroo is required to do so by law or an order of an applicable court.
  4. Upon termination of the Full version or Trial version, You shall cease all use of the Software and shall destroy all copies thereof.
  5. You acknowledge that the provisions of this EULA, which by their nature are intended to survive termination, will remain in effect after termination of this EULA.

# 10. Feedback

We welcome any comment, question and communication at dbkangaroo@hotmail.com

+ + + diff --git a/en/license/third-party.html b/en/license/third-party.html new file mode 100644 index 000000000..0b0a46c49 --- /dev/null +++ b/en/license/third-party.html @@ -0,0 +1,68 @@ + + + + + + Third-party library license | Kangaroo + + + + + + + + + + + +
+ + + diff --git a/googlec57ea76cd5ab7b83.html b/googlec57ea76cd5ab7b83.html new file mode 100644 index 000000000..7bcfb3c44 --- /dev/null +++ b/googlec57ea76cd5ab7b83.html @@ -0,0 +1 @@ +google-site-verification: googlec57ea76cd5ab7b83.html \ No newline at end of file diff --git a/images/README.md b/images/README.md new file mode 100644 index 000000000..b58efc3fc --- /dev/null +++ b/images/README.md @@ -0,0 +1,13 @@ +https://colorkit.co/color-palette-generator/be989a-97b981-53d660-8ae377-b6ef8e/ + +2021: #ffd380 +2022: #ffa600 +2023: #ff8531 +2024: #ff6361 +2025: #bc5090 +2026: #8a508f +2027: #2c4875 +2028: #003f5c +2029: #00202e +2030: +????: #d1dbe4 \ No newline at end of file diff --git a/images/alipay.png b/images/alipay.png new file mode 100644 index 000000000..2ede45412 Binary files /dev/null and b/images/alipay.png differ diff --git a/images/beian.png b/images/beian.png new file mode 100644 index 000000000..60190da03 Binary files /dev/null and b/images/beian.png differ diff --git a/images/icon-2021.svg b/images/icon-2021.svg new file mode 100644 index 000000000..6e471b543 --- /dev/null +++ b/images/icon-2021.svg @@ -0,0 +1,3 @@ + + + \ No newline at end of file diff --git a/images/icon-2022.svg b/images/icon-2022.svg new file mode 100644 index 000000000..515916b14 --- /dev/null +++ b/images/icon-2022.svg @@ -0,0 +1,3 @@ + + + \ No newline at end of file diff --git a/images/icon-2023.svg b/images/icon-2023.svg new file mode 100644 index 000000000..b68ccad5a --- /dev/null +++ b/images/icon-2023.svg @@ -0,0 +1,3 @@ + + + \ No newline at end of file diff --git a/images/icon-2024.svg b/images/icon-2024.svg new file mode 100644 index 000000000..e357100c1 --- /dev/null +++ b/images/icon-2024.svg @@ -0,0 +1,3 @@ + + + \ No newline at end of file diff --git a/images/icon-2025.svg b/images/icon-2025.svg new file mode 100644 index 000000000..22447af3b --- /dev/null +++ b/images/icon-2025.svg @@ -0,0 +1,3 @@ + + + \ No newline at end of file diff --git a/images/icon-2026.svg b/images/icon-2026.svg new file mode 100644 index 000000000..9834f72cb --- /dev/null +++ b/images/icon-2026.svg @@ -0,0 +1,3 @@ + + + \ No newline at end of file diff --git a/images/icon-2027.svg b/images/icon-2027.svg new file mode 100644 index 000000000..7e1803c9a --- /dev/null +++ b/images/icon-2027.svg @@ -0,0 +1,3 @@ + + + \ No newline at end of file diff --git a/images/icon-2028.svg b/images/icon-2028.svg new file mode 100644 index 000000000..ad108ee79 --- /dev/null +++ b/images/icon-2028.svg @@ -0,0 +1,3 @@ + + + \ No newline at end of file diff --git a/images/icon-2029.svg b/images/icon-2029.svg new file mode 100644 index 000000000..262fd27fb --- /dev/null +++ b/images/icon-2029.svg @@ -0,0 +1,3 @@ + + + \ No newline at end of file diff --git a/images/icon-check.svg b/images/icon-check.svg new file mode 100644 index 000000000..7939ba8d6 --- /dev/null +++ b/images/icon-check.svg @@ -0,0 +1,3 @@ + + + \ No newline at end of file diff --git a/images/kangaroo.svg b/images/kangaroo.svg new file mode 100644 index 000000000..85f8e3a38 --- /dev/null +++ b/images/kangaroo.svg @@ -0,0 +1,8 @@ + + + + + + + + \ No newline at end of file diff --git a/images/paypal.png b/images/paypal.png new file mode 100644 index 000000000..791b6d5fa Binary files /dev/null and b/images/paypal.png differ diff --git a/images/pinterest.png b/images/pinterest.png new file mode 100644 index 000000000..2803db322 Binary files /dev/null and b/images/pinterest.png differ diff --git a/images/tenpay.png b/images/tenpay.png new file mode 100644 index 000000000..3e7a8a280 Binary files /dev/null and b/images/tenpay.png differ diff --git a/index.html b/index.html new file mode 100644 index 000000000..8023c8fbe --- /dev/null +++ b/index.html @@ -0,0 +1,70 @@ + + + + + + Kangaroo + + + + + + + + + + + +
hero

+ Kangaroo +

+ SQL client and admin tool for popular databases +

+ Download Kangaroo +

Simple & Powerful

Simple and Intuitive GUI helps you focus on data and finishing your work quickly.

Touch friendly

Focus on the experience of editting, make you feel smoothly when working with it.

Performance

GTK and Adwaita with Vala based native application, focus on performance, focus on responsible.

# Support database

Database support capability level: Planned / Partial / Full(💯)

Database Version Query Editing Designer Export Import Hint Modeling DB Sync
SQLite 3.0 + Full💯 Full💯 Full💯 Full💯 Full💯 Full💯 ✅✅🔲🔲🔲 ✅✅✅✅🔲
MySQL 5.5 + Full💯 Full💯 Full💯 Full💯 Full💯 Full💯 ✅✅🔲🔲🔲 ✅✅✅✅🔲
MariaDB 10.0 + Full💯 Full💯 Full💯 Full💯 Full💯 Full💯 ✅✅🔲🔲🔲 ✅✅✅✅🔲
PostgreSQL 9.0 + Full💯 Full💯 Full💯 Full💯 Full💯 Full💯 ✅✅🔲🔲🔲 ✅✅✅✅🔲
Redis Planned Planned Planned Planned Planned Planned Planned Planned
Oracle
SQL Server

Hint: Code intellisense or Code autocomplete

Privacy Policy | Service Agreement | | 粤公网安备44030602005092号 (opens new window) | 粤ICP备2020100158号 (opens new window)
Copyright © 2019 - present Kangaroo. All Rights Reserved.

+ + + diff --git a/sitemap.xml b/sitemap.xml new file mode 100644 index 000000000..16f0f0769 --- /dev/null +++ b/sitemap.xml @@ -0,0 +1 @@ +https://www.datatable.online/2023-08-18T08:40:19.000Zdailyhttps://www.datatable.online/en/blog/001-why-choose-vala.html2022-05-20T08:43:04.000Zdailyhttps://www.datatable.online/en/2023-08-18T08:40:19.000Zdailyhttps://www.datatable.online/en/blog/003-serialize-glib-object.html2020-11-18T12:42:53.000Zdailyhttps://www.datatable.online/en/blog/005-GTK4-upgrade-report-phase-1.html2021-11-01T13:09:01.000Zdailyhttps://www.datatable.online/en/blog/004-how-to-deploy-gtk-app-on-mac.html2020-11-18T12:42:53.000Zdailyhttps://www.datatable.online/en/blog/2022-05-20T08:43:04.000Zdailyhttps://www.datatable.online/en/buy.html2023-08-18T09:54:52.000Zdailyhttps://www.datatable.online/en/blog/009-secure-connection-solution.html2020-10-20T01:25:07.000Zdailyhttps://www.datatable.online/en/blog/002-how-to-deploy-gtk-app-on-windows.html2020-11-18T12:42:53.000Zdailyhttps://www.datatable.online/en/document/2023-03-31T03:44:37.000Zdailyhttps://www.datatable.online/en/document/connection.html2020-12-19T00:52:01.000Zdailyhttps://www.datatable.online/en/document/dataview.html2021-07-30T03:05:07.000Zdailyhttps://www.datatable.online/en/document/designer-model.html2021-07-30T03:05:07.000Zdailyhttps://www.datatable.online/en/document/changelog.html2023-08-31T13:50:45.000Zdailyhttps://www.datatable.online/en/document/designer-schema.html2021-07-30T03:05:07.000Zdailyhttps://www.datatable.online/en/document/designer-sqlview.html2021-07-30T03:05:07.000Zdailyhttps://www.datatable.online/en/document/drivers.html2022-09-30T08:04:58.000Zdailyhttps://www.datatable.online/en/document/faq.html2023-06-19T07:56:35.000Zdailyhttps://www.datatable.online/en/document/feature-matrix.html2023-01-28T10:26:37.000Zdailyhttps://www.datatable.online/en/document/install-linux.html2023-08-18T14:51:54.000Zdailyhttps://www.datatable.online/en/document/install-macos.html2023-08-18T14:51:54.000Zdailyhttps://www.datatable.online/en/document/editor.html2020-12-31T07:37:41.000Zdailyhttps://www.datatable.online/en/document/install-windows.html2020-12-31T07:37:41.000Zdailyhttps://www.datatable.online/en/document/scale.html2022-09-28T02:17:37.000Zdailyhttps://www.datatable.online/en/document/screenshots.html2023-01-28T14:01:15.000Zdailyhttps://www.datatable.online/en/document/system-requirements.html2021-12-31T05:32:03.000Zdailyhttps://www.datatable.online/en/document/visual-sql-builder.html2021-07-30T03:05:07.000Zdailyhttps://www.datatable.online/en/download/2023-08-18T08:40:19.000Zdailyhttps://www.datatable.online/en/download/v0.10.0.191223.html2021-12-31T05:32:03.000Zdailyhttps://www.datatable.online/en/download/v0.11.0.200106.html2021-12-31T05:32:03.000Zdailyhttps://www.datatable.online/en/document/sqlite.html2021-07-30T03:05:07.000Zdailyhttps://www.datatable.online/en/download/v0.11.1.200113.html2021-12-31T05:32:03.000Zdailyhttps://www.datatable.online/en/download/v0.12.1.200120.html2021-12-31T05:32:03.000Zdailyhttps://www.datatable.online/en/download/v0.14.0.200217.html2021-12-31T05:32:03.000Zdailyhttps://www.datatable.online/en/download/v0.15.0.200302.html2021-12-31T05:32:03.000Zdailyhttps://www.datatable.online/en/document/pricing.html2023-03-31T03:44:37.000Zdailyhttps://www.datatable.online/en/download/v0.13.0.200210.html2021-12-31T05:32:03.000Zdailyhttps://www.datatable.online/en/download/v0.16.0.200316.html2021-12-31T05:32:03.000Zdailyhttps://www.datatable.online/en/download/v0.17.0.200323.html2021-12-31T05:32:03.000Zdailyhttps://www.datatable.online/en/download/v0.19.1.200413.html2021-12-31T05:32:03.000Zdailyhttps://www.datatable.online/en/download/v0.20.1.200420.html2021-12-31T05:32:03.000Zdailyhttps://www.datatable.online/en/download/v0.21.1.200504.html2021-12-31T05:32:03.000Zdailyhttps://www.datatable.online/en/download/v0.18.1.200406.html2021-12-31T05:32:03.000Zdailyhttps://www.datatable.online/en/download/v0.22.1.200511.html2021-12-31T05:32:03.000Zdailyhttps://www.datatable.online/en/download/v0.23.1.200518.html2021-12-31T05:32:03.000Zdailyhttps://www.datatable.online/en/download/v0.24.1.200525.html2021-12-31T05:32:03.000Zdailyhttps://www.datatable.online/en/download/v0.25.1.200601.html2022-05-02T00:44:11.000Zdailyhttps://www.datatable.online/en/download/v0.26.1.200615.html2021-12-31T05:32:03.000Zdailyhttps://www.datatable.online/en/download/v0.27.1.200622.html2022-05-02T00:44:11.000Zdailyhttps://www.datatable.online/en/download/v0.28.1.200629.html2022-05-02T00:44:11.000Zdailyhttps://www.datatable.online/en/download/v0.29.1.200713.html2021-12-31T05:32:03.000Zdailyhttps://www.datatable.online/en/download/v0.30.1.200727.html2021-12-31T05:32:03.000Zdailyhttps://www.datatable.online/en/download/v0.31.1.200803.html2021-12-31T05:32:03.000Zdailyhttps://www.datatable.online/en/download/v0.32.1.200810.html2021-12-31T05:32:03.000Zdailyhttps://www.datatable.online/en/download/v0.33.1.200817.html2021-12-31T05:32:03.000Zdailyhttps://www.datatable.online/en/download/v0.7.2.190916.html2021-12-31T05:32:03.000Zdailyhttps://www.datatable.online/en/download/v0.8.0.190923.html2021-12-31T05:32:03.000Zdailyhttps://www.datatable.online/en/download/v0.8.1.190930.html2021-12-31T05:32:03.000Zdailyhttps://www.datatable.online/en/download/v0.8.2.191014.html2021-12-31T05:32:03.000Zdailyhttps://www.datatable.online/en/download/v0.8.4.191028.html2021-12-31T05:32:03.000Zdailyhttps://www.datatable.online/en/download/v0.9.0.191111.html2021-12-31T05:32:03.000Zdailyhttps://www.datatable.online/en/download/v0.8.5.191104.html2021-12-31T05:32:03.000Zdailyhttps://www.datatable.online/en/download/v0.9.1.191118.html2021-12-31T05:32:03.000Zdailyhttps://www.datatable.online/en/download/v0.9.2.191125.html2021-12-31T05:32:03.000Zdailyhttps://www.datatable.online/en/download/v0.8.3.191021.html2021-12-31T05:32:03.000Zdailyhttps://www.datatable.online/en/download/v0.9.3.191202.html2021-12-31T05:32:03.000Zdailyhttps://www.datatable.online/en/download/v0.9.4.191209.html2021-12-31T05:32:03.000Zdailyhttps://www.datatable.online/en/download/v0.9.5.191216.html2021-12-31T05:32:03.000Zdailyhttps://www.datatable.online/en/download/v0.99.1.200824.html2021-12-31T05:32:03.000Zdailyhttps://www.datatable.online/en/download/v0.99.3.200921.html2021-12-31T05:32:03.000Zdailyhttps://www.datatable.online/en/download/v1.0.5.201019.html2021-12-31T05:32:03.000Zdailyhttps://www.datatable.online/en/download/v1.0.6.201109.html2021-12-31T05:32:03.000Zdailyhttps://www.datatable.online/en/download/v0.99.2.200907.html2021-12-31T05:32:03.000Zdailyhttps://www.datatable.online/en/download/v1.10.1.210731.html2022-07-01T15:06:31.000Zdailyhttps://www.datatable.online/en/download/v1.10.2.220701.html2022-07-01T15:06:31.000Zdailyhttps://www.datatable.online/en/download/v1.10.3.230508.html2023-05-08T05:38:53.000Zdailyhttps://www.datatable.online/en/download/v1.3.1.201102.html2021-12-31T05:32:03.000Zdailyhttps://www.datatable.online/en/download/v1.5.1.201231.html2021-12-31T05:32:03.000Zdailyhttps://www.datatable.online/en/download/v1.6.1.210131.html2021-12-31T05:32:03.000Zdailyhttps://www.datatable.online/en/download/v1.7.1.210331.html2021-12-31T05:32:03.000Zdailyhttps://www.datatable.online/en/download/v1.8.1.210430.html2021-12-31T05:32:03.000Zdailyhttps://www.datatable.online/en/download/v1.90.1.211231.html2022-02-28T00:20:18.000Zdailyhttps://www.datatable.online/en/download/v1.9.1.210531.html2022-05-02T00:44:11.000Zdailyhttps://www.datatable.online/en/download/v1.91.1.220128.html2022-05-02T00:44:11.000Zdailyhttps://www.datatable.online/en/download/v1.92.1.220228.html2022-05-02T00:44:11.000Zdailyhttps://www.datatable.online/en/download/v1.93.1.220401.html2022-05-02T00:44:11.000Zdailyhttps://www.datatable.online/en/download/v1.94.1.220501.html2022-05-20T08:43:04.000Zdailyhttps://www.datatable.online/en/download/v1.95.1.220601.html2022-07-01T15:06:31.000Zdailyhttps://www.datatable.online/en/download/v1.96.1.220701.html2022-07-29T02:02:30.000Zdailyhttps://www.datatable.online/en/download/v1.97.1.220731.html2022-08-28T04:27:53.000Zdailyhttps://www.datatable.online/en/download/v1.98.1.220904.html2022-11-27T07:06:10.000Zdailyhttps://www.datatable.online/en/download/v2.0.0.221101.html2022-11-27T07:06:10.000Zdailyhttps://www.datatable.online/en/download/v1.99.1.221001.html2022-11-27T07:06:10.000Zdailyhttps://www.datatable.online/en/download/v2.2.1.230101.html2023-01-25T02:12:13.000Zdailyhttps://www.datatable.online/en/download/v2.3.2.230301.html2023-03-06T05:26:40.000Zdailyhttps://www.datatable.online/en/download/v2.1.1.221201.html2022-12-17T11:45:38.000Zdailyhttps://www.datatable.online/en/download/v2.3.1.230201.html2023-03-01T01:49:59.000Zdailyhttps://www.datatable.online/en/download/v2.99.1.230331.html2023-08-07T03:04:49.000Zdailyhttps://www.datatable.online/en/download/v2.99.2.230428.html2023-08-07T03:04:49.000Zdailyhttps://www.datatable.online/en/download/v2.99.3.230602.html2023-08-07T03:04:49.000Zdailyhttps://www.datatable.online/en/download/v3.91.1.230801.html2023-08-07T03:04:49.000Zdailyhttps://www.datatable.online/en/download/v3.92.1.230901.html2023-08-31T13:50:45.000Zdailyhttps://www.datatable.online/en/license/2021-12-31T05:32:03.000Zdailyhttps://www.datatable.online/en/download/v3.90.1.230701.html2023-08-07T03:04:49.000Zdailyhttps://www.datatable.online/en/license/acknowledgement.html2022-09-05T13:35:40.000Zdailyhttps://www.datatable.online/en/license/privacy-policy.html2023-08-07T03:04:49.000Zdailyhttps://www.datatable.online/en/license/service-agreement.html2023-08-07T03:04:49.000Zdailyhttps://www.datatable.online/en/license/third-party.html2023-01-25T02:12:13.000Zdailyhttps://www.datatable.online/zh/2023-08-18T08:40:19.000Zdailyhttps://www.datatable.online/zh/blog/001-why-choose-vala.html2022-05-20T08:43:04.000Zdailyhttps://www.datatable.online/zh/blog/002-how-to-deploy-gtk-app-on-windows.html2020-11-18T12:42:53.000Zdailyhttps://www.datatable.online/zh/blog/003-serialize-glib-object.html2020-11-18T12:42:53.000Zdailyhttps://www.datatable.online/zh/blog/004-how-to-deploy-gtk-app-on-mac.html2020-11-18T12:42:53.000Zdailyhttps://www.datatable.online/zh/blog/005-GTK4-upgrade-report-phase-1.html2021-11-01T13:09:01.000Zdailyhttps://www.datatable.online/zh/blog/2022-05-20T08:43:04.000Zdailyhttps://www.datatable.online/zh/buy.html2023-08-18T09:54:52.000Zdailyhttps://www.datatable.online/zh/blog/009-secure-connection-solution.html2020-09-23T01:43:10.000Zdailyhttps://www.datatable.online/zh/document/2023-03-31T03:44:37.000Zdailyhttps://www.datatable.online/zh/document/connection.html2020-12-19T00:52:01.000Zdailyhttps://www.datatable.online/zh/document/designer-model.html2021-07-30T03:05:07.000Zdailyhttps://www.datatable.online/zh/document/designer-schema.html2021-07-30T03:05:07.000Zdailyhttps://www.datatable.online/zh/document/dataview.html2021-07-30T03:05:07.000Zdailyhttps://www.datatable.online/zh/document/changelog.html2023-08-31T13:50:45.000Zdailyhttps://www.datatable.online/zh/document/designer-sqlview.html2021-07-30T03:05:07.000Zdailyhttps://www.datatable.online/zh/document/drivers.html2022-09-30T08:04:58.000Zdailyhttps://www.datatable.online/zh/document/editor.html2020-12-31T07:37:41.000Zdailyhttps://www.datatable.online/zh/document/faq.html2023-06-19T07:56:35.000Zdailyhttps://www.datatable.online/zh/document/install-windows.html2020-12-31T07:37:41.000Zdailyhttps://www.datatable.online/zh/document/install-linux.html2023-08-18T14:51:54.000Zdailyhttps://www.datatable.online/zh/document/pricing.html2023-03-31T03:44:37.000Zdailyhttps://www.datatable.online/zh/document/feature-matrix.html2023-01-28T10:26:37.000Zdailyhttps://www.datatable.online/zh/document/install-macos.html2023-08-18T14:51:54.000Zdailyhttps://www.datatable.online/zh/document/scale.html2022-09-28T02:17:37.000Zdailyhttps://www.datatable.online/zh/document/screenshots.html2023-01-28T14:01:15.000Zdailyhttps://www.datatable.online/zh/document/sqlite.html2021-07-30T03:05:07.000Zdailyhttps://www.datatable.online/zh/document/system-requirements.html2021-12-31T05:32:03.000Zdailyhttps://www.datatable.online/zh/document/visual-sql-builder.html2021-07-30T03:05:07.000Zdailyhttps://www.datatable.online/zh/download/2023-08-18T08:40:19.000Zdailyhttps://www.datatable.online/zh/download/v0.10.0.191223.html2021-12-31T05:32:03.000Zdailyhttps://www.datatable.online/zh/download/v0.11.0.200106.html2021-12-31T05:32:03.000Zdailyhttps://www.datatable.online/zh/download/v0.11.1.200113.html2021-12-31T05:32:03.000Zdailyhttps://www.datatable.online/zh/download/v0.12.1.200120.html2021-12-31T05:32:03.000Zdailyhttps://www.datatable.online/zh/download/v0.13.0.200210.html2021-12-31T05:32:03.000Zdailyhttps://www.datatable.online/zh/download/v0.14.0.200217.html2021-12-31T05:32:03.000Zdailyhttps://www.datatable.online/zh/download/v0.15.0.200302.html2021-12-31T05:32:03.000Zdailyhttps://www.datatable.online/zh/download/v0.17.0.200323.html2021-12-31T05:32:03.000Zdailyhttps://www.datatable.online/zh/download/v0.16.0.200316.html2021-12-31T05:32:03.000Zdailyhttps://www.datatable.online/zh/download/v0.18.1.200406.html2021-12-31T05:32:03.000Zdailyhttps://www.datatable.online/zh/download/v0.19.1.200413.html2021-12-31T05:32:03.000Zdailyhttps://www.datatable.online/zh/download/v0.20.1.200420.html2021-12-31T05:32:03.000Zdailyhttps://www.datatable.online/zh/download/v0.22.1.200511.html2021-12-31T05:32:03.000Zdailyhttps://www.datatable.online/zh/download/v0.21.1.200504.html2021-12-31T05:32:03.000Zdailyhttps://www.datatable.online/zh/download/v0.23.1.200518.html2021-12-31T05:32:03.000Zdailyhttps://www.datatable.online/zh/download/v0.24.1.200525.html2021-12-31T05:32:03.000Zdailyhttps://www.datatable.online/zh/download/v0.27.1.200622.html2021-12-31T05:32:03.000Zdailyhttps://www.datatable.online/zh/download/v0.25.1.200601.html2021-12-31T05:32:03.000Zdailyhttps://www.datatable.online/zh/download/v0.29.1.200713.html2021-12-31T05:32:03.000Zdailyhttps://www.datatable.online/zh/download/v0.26.1.200615.html2021-12-31T05:32:03.000Zdailyhttps://www.datatable.online/zh/download/v0.30.1.200727.html2021-12-31T05:32:03.000Zdailyhttps://www.datatable.online/zh/download/v0.28.1.200629.html2021-12-31T05:32:03.000Zdailyhttps://www.datatable.online/zh/download/v0.31.1.200803.html2021-12-31T05:32:03.000Zdailyhttps://www.datatable.online/zh/download/v0.32.1.200810.html2021-12-31T05:32:03.000Zdailyhttps://www.datatable.online/zh/download/v0.33.1.200817.html2021-12-31T05:32:03.000Zdailyhttps://www.datatable.online/zh/download/v0.7.2.190916.html2021-12-31T05:32:03.000Zdailyhttps://www.datatable.online/zh/download/v0.8.0.190923.html2021-12-31T05:32:03.000Zdailyhttps://www.datatable.online/zh/download/v0.8.1.190930.html2021-12-31T05:32:03.000Zdailyhttps://www.datatable.online/zh/download/v0.8.2.191014.html2021-12-31T05:32:03.000Zdailyhttps://www.datatable.online/zh/download/v0.8.3.191021.html2021-12-31T05:32:03.000Zdailyhttps://www.datatable.online/zh/download/v0.8.5.191104.html2021-12-31T05:32:03.000Zdailyhttps://www.datatable.online/zh/download/v0.8.4.191028.html2021-12-31T05:32:03.000Zdailyhttps://www.datatable.online/zh/download/v0.9.0.191111.html2021-12-31T05:32:03.000Zdailyhttps://www.datatable.online/zh/download/v0.9.1.191118.html2021-12-31T05:32:03.000Zdailyhttps://www.datatable.online/zh/download/v0.9.2.191125.html2021-12-31T05:32:03.000Zdailyhttps://www.datatable.online/zh/download/v0.9.4.191209.html2021-12-31T05:32:03.000Zdailyhttps://www.datatable.online/zh/download/v0.9.3.191202.html2021-12-31T05:32:03.000Zdailyhttps://www.datatable.online/zh/download/v0.9.5.191216.html2021-12-31T05:32:03.000Zdailyhttps://www.datatable.online/zh/download/v0.99.1.200824.html2021-12-31T05:32:03.000Zdailyhttps://www.datatable.online/zh/download/v0.99.2.200907.html2022-01-23T08:58:32.000Zdailyhttps://www.datatable.online/zh/download/v0.99.3.200921.html2022-01-23T08:58:32.000Zdailyhttps://www.datatable.online/zh/download/v1.0.5.201019.html2022-01-23T08:58:32.000Zdailyhttps://www.datatable.online/zh/download/v1.0.6.201109.html2022-01-23T08:58:32.000Zdailyhttps://www.datatable.online/zh/download/v1.10.1.210731.html2022-07-01T15:06:31.000Zdailyhttps://www.datatable.online/zh/download/v1.10.2.220701.html2022-07-01T15:06:31.000Zdailyhttps://www.datatable.online/zh/download/v1.10.3.230508.html2023-05-08T05:38:53.000Zdailyhttps://www.datatable.online/zh/download/v1.3.1.201102.html2022-01-23T08:58:32.000Zdailyhttps://www.datatable.online/zh/download/v1.5.1.201231.html2022-01-23T08:58:32.000Zdailyhttps://www.datatable.online/zh/download/v1.6.1.210131.html2022-01-23T08:58:32.000Zdailyhttps://www.datatable.online/zh/download/v1.7.1.210331.html2022-01-23T08:58:32.000Zdailyhttps://www.datatable.online/zh/download/v1.8.1.210430.html2022-01-23T08:58:32.000Zdailyhttps://www.datatable.online/zh/download/v1.9.1.210531.html2022-01-23T08:58:32.000Zdailyhttps://www.datatable.online/zh/download/v1.90.1.211231.html2022-02-28T00:20:18.000Zdailyhttps://www.datatable.online/zh/download/v1.91.1.220128.html2022-02-28T00:20:18.000Zdailyhttps://www.datatable.online/zh/download/v1.92.1.220228.html2022-04-01T02:27:53.000Zdailyhttps://www.datatable.online/zh/download/v1.93.1.220401.html2022-04-21T14:43:58.000Zdailyhttps://www.datatable.online/zh/download/v1.94.1.220501.html2022-05-20T08:43:04.000Zdailyhttps://www.datatable.online/zh/download/v1.95.1.220601.html2022-07-01T15:06:31.000Zdailyhttps://www.datatable.online/zh/download/v1.98.1.220904.html2022-11-27T07:06:10.000Zdailyhttps://www.datatable.online/zh/download/v1.96.1.220701.html2022-07-29T02:02:30.000Zdailyhttps://www.datatable.online/zh/download/v1.97.1.220731.html2022-08-28T04:27:53.000Zdailyhttps://www.datatable.online/zh/download/v1.99.1.221001.html2022-11-27T07:06:10.000Zdailyhttps://www.datatable.online/zh/download/v2.0.0.221101.html2022-11-27T07:06:10.000Zdailyhttps://www.datatable.online/zh/download/v2.1.1.221201.html2022-12-17T11:45:38.000Zdailyhttps://www.datatable.online/zh/download/v2.2.1.230101.html2023-01-25T02:12:13.000Zdailyhttps://www.datatable.online/zh/download/v2.3.1.230201.html2023-03-01T01:49:59.000Zdailyhttps://www.datatable.online/zh/download/v2.3.2.230301.html2023-03-06T05:26:40.000Zdailyhttps://www.datatable.online/zh/download/v2.99.1.230331.html2023-08-07T03:04:49.000Zdailyhttps://www.datatable.online/zh/download/v2.99.2.230428.html2023-08-07T03:04:49.000Zdailyhttps://www.datatable.online/zh/download/v2.99.3.230602.html2023-08-07T03:04:49.000Zdailyhttps://www.datatable.online/zh/download/v3.90.1.230701.html2023-08-07T03:04:49.000Zdailyhttps://www.datatable.online/zh/download/v3.91.1.230801.html2023-08-07T03:04:49.000Zdailyhttps://www.datatable.online/zh/download/v3.92.1.230901.html2023-08-31T13:50:45.000Zdailyhttps://www.datatable.online/zh/license/2021-12-31T05:32:03.000Zdailyhttps://www.datatable.online/zh/license/acknowledgement.html2022-09-05T13:35:40.000Zdailyhttps://www.datatable.online/zh/license/privacy-policy.html2023-08-07T03:04:49.000Zdailyhttps://www.datatable.online/zh/license/service-agreement.html2023-08-07T03:04:49.000Zdailyhttps://www.datatable.online/zh/license/third-party.html2023-01-25T02:12:13.000Zdailyhttps://www.datatable.online/404.htmldaily \ No newline at end of file diff --git a/sources/Info.plist b/sources/Info.plist new file mode 100644 index 000000000..e0e0df71d --- /dev/null +++ b/sources/Info.plist @@ -0,0 +1,43 @@ + + + + + + CFBundleShortVersionString + 1.36 + CFBundleVersion + 1.36 + NSHumanReadableCopyright + Copyright (C)2018-2020 The Kangaroo Team + CFBundleGetInfoString + Copyright (C)1998-2020 The Kangaroo Team http://dbkangaroo.github.io + CFBundleDevelopmentRegion + English + CFBundleName + kangaroo + GtkOSXLaunchScriptFile + launcher.sh + CFBundleExecutable + kangaroo + CFBundleIconFile + kangaroo.icns + CFBundleIdentifier + com.app.kangaroo + CFBundleInfoDictionaryVersion + 6.0 + CFBundlePackageType + APPL + CFBundleSignature + ???? + LSMinimumSystemVersion + 10.9 + LSApplicationCategoryType + public.app-category.developer-tools + NSHighResolutionCapable + + CFBundleVersion + 1 + NSPrincipalClass + NSApplication + + \ No newline at end of file diff --git a/sources/deploy_macos.sh b/sources/deploy_macos.sh new file mode 100644 index 000000000..d3f91ef4f --- /dev/null +++ b/sources/deploy_macos.sh @@ -0,0 +1,191 @@ +#!/bin/bash + +# depenency library: +# Make a .app file: https://gist.github.com/oubiwann/453744744da1141ccc542ff75b47e0cf +# Make a .dmg file: https://github.com/LinusU/node-appdmg +# Can't find library: https://www.jianshu.com/p/441a7553700f + +PROJECTDIR="$( cd "$(dirname "$0")/../" ; pwd -P )" +TARGETDIR="${PROJECTDIR}/build/kangaroo" +VERSION="$1.$(date +%y%m%d)" +export VERSION +echo "VERSION=$VERSION" + +# rebuild app release version +rm -rf "${PROJECTDIR}/build" +meson --prefix=$TARGETDIR --buildtype=release build +ninja -C "${PROJECTDIR}/build" install + +# copy app data files to target dir +echo -n "Copy app data files......" +mkdir -p "${TARGETDIR}/etc/" +mkdir -p "${TARGETDIR}/lib/plugin" +mkdir -p "${TARGETDIR}/share/doc" +mkdir -p "${TARGETDIR}/share/themes" +mkdir -p "${TARGETDIR}/share/glib-2.0/schemas" +mkdir -p "${TARGETDIR}/share/licenses/kangaroo" +mkdir -p "${TARGETDIR}/share/icons/hicolor/scalable/apps" +echo "[done]" + +function lib_dependency_copy +{ + local target=$1 + local folder=$2 + + lib_dir="$( cd "$( dirname "$1" )" >/dev/null 2>&1 && pwd )" + libraries="$(otool -L $target | grep "/*.*dylib" -o | xargs)" + for lib in $libraries; do + if [[ '/usr/lib/' != ${lib:0:9} && '/System/Library/' != ${lib:0:16} ]]; then + if [[ '@' == ${lib:0:1} ]]; then + if [[ '@loader_path' == ${lib:0:12} ]]; then + cp -n "${lib/@loader_path/$lib_dir}" $folder + else + echo "Unsupport path: $lib" + fi + else + cp -n $lib $folder + fi + fi + done +} + +function lib_dependency_analyze +{ + # This function use otool to analyze library dependency. + # then copy the dependency libraries to destination path + + local library_dir=$1 + local targets_dir=$2 + + libraries="$(find $library_dir -name \*.dylib -o -name \*.so -type f)" + for lib in $libraries; do + lib_dependency_copy $lib $targets_dir + # otool -L $lib | grep "/usr/local/*.*dylib" -o | xargs -I{} cp -n "{}" "$targets_dir" + done +} + +# copy app dependency library to target dir +echo -n "Copy app dependency library......" +lib_dependency_copy ${PROJECTDIR}/build/src/libkangaroo.dylib "${TARGETDIR}/bin" +lib_dependency_copy ${TARGETDIR}/bin/libglib-2.0.0.dylib "${TARGETDIR}/bin" +lib_dependency_copy ${TARGETDIR}/bin/libgobject-2.0.0.dylib "${TARGETDIR}/bin" +lib_dependency_copy ${TARGETDIR}/bin/libgio-2.0.0.dylib "${TARGETDIR}/bin" +lib_dependency_copy ${TARGETDIR}/bin/libgtk-3.0.dylib "${TARGETDIR}/bin" +lib_dependency_copy ${TARGETDIR}/bin/libcairo.2.dylib "${TARGETDIR}/bin" +lib_dependency_copy ${TARGETDIR}/bin/libjson-glib-1.0.0.dylib "${TARGETDIR}/bin" +lib_dependency_copy ${TARGETDIR}/bin/libsoup-2.4.1.dylib "${TARGETDIR}/bin" +lib_dependency_copy ${TARGETDIR}/bin/libgtksourceview-4.0.dylib "${TARGETDIR}/bin" + +lib_dependency_copy /usr/local/lib/libgnutls-dane.0.dylib "${TARGETDIR}/bin" +lib_dependency_copy ${TARGETDIR}/bin/libunistring.2.dylib "${TARGETDIR}/bin" +lib_dependency_copy /usr/local/lib/libcairo-script-interpreter.2.dylib "${TARGETDIR}/bin" +lib_dependency_copy /usr/local/lib/libgettextsrc-0.20.1.dylib "${TARGETDIR}/bin" +lib_dependency_copy /usr/local/lib/libharfbuzz-icu.0.dylib "${TARGETDIR}/bin" +icu_version="$(pkg-config icu-io --modversion)" +lib_dependency_copy "/usr/local/Cellar/icu4c/$icu_version/lib/libicuio.${icu_version:0:2}.dylib" "${TARGETDIR}/bin" +lib_dependency_copy "/usr/local/Cellar/icu4c/$icu_version/lib/libicutu.${icu_version:0:2}.dylib" "${TARGETDIR}/bin" + +cp -f "${PROJECTDIR}/build/src/kangaroo" "${TARGETDIR}/bin" +cp -f "${TARGETDIR}/lib/libkangaroo.dylib" "${TARGETDIR}/bin" +cp -f "${PROJECTDIR}/tools/mac_launcher.sh" "${TARGETDIR}/bin/launcher.sh" +cp -f /usr/local/lib/libgtkmacintegration-gtk3.2.dylib "${TARGETDIR}/bin" +cp -f /usr/local/lib/libgirepository-1.0.1.dylib "${TARGETDIR}/bin" +cp -f /usr/local/lib/librsvg-2.2.dylib "${TARGETDIR}/bin" +cp -f /usr/local/lib/libgthread-2.0.0.dylib "${TARGETDIR}/bin" +cp -f /usr/local/lib/libcroco-0.6.3.dylib "${TARGETDIR}/bin" +cp -f /usr/local/lib/p11-kit-proxy.dylib "${TARGETDIR}/bin" +cp -f /usr/local/lib/libgmpxx.4.dylib "${TARGETDIR}/bin" +echo "[done]" + +# copy GDBus/Helper and dependencies files +echo -n "Copy GDBus/Helper and dependencies......" +cp -f /usr/local/bin/gdbus "${TARGETDIR}/bin" +cp -f /usr/local/bin/gdk-pixbuf-query-loaders "${TARGETDIR}/bin" +lib_dependency_copy ${TARGETDIR}/bin/gdbus "${TARGETDIR}/bin" +lib_dependency_copy ${TARGETDIR}/bin/gdk-pixbuf-query-loaders "${TARGETDIR}/bin" +echo "[done]" + +# libgda providers required library(MySQL/PostgreSQL/JDBC/...) +echo -n "Copy database client library for libgda......" +lib_dependency_copy /usr/local/lib/libpq.5.dylib "${TARGETDIR}/bin" +lib_dependency_copy /usr/local/lib/libmariadb.3.dylib "${TARGETDIR}/bin" +if [ -d "/usr/local/lib/plugin" ]; then + cp -f /usr/local/lib/plugin/*password*.so "${TARGETDIR}/lib/plugin" +fi +#ln -s "${TARGETDIR}/lib/libmariadb.dylib" "${TARGETDIR}/lib/mariadb.dylib" +lib_dependency_analyze ${TARGETDIR}/bin ${TARGETDIR}/bin +echo "[done]" + +# copy GTK runtime dependencies resource +echo -n "Copy GTK runtime resource......" +cp -rf /usr/local/lib/gio "${TARGETDIR}/lib/" +cp -rf /usr/local/lib/gtk-3.0 "${TARGETDIR}/lib/" +cp -rf /usr/local/lib/gdk-pixbuf-2.0 "${TARGETDIR}/lib/" +cp -rf /usr/local/lib/girepository-1.0 "${TARGETDIR}/lib/" +cp -rf /usr/local/lib/libgda-5.0 "${TARGETDIR}/lib/" +cp -rf /usr/local/etc/gtk-3.0 "${TARGETDIR}/etc/" +# Avoid override the latest locale file +cp -r /usr/local/share/locale "${TARGETDIR}/share/" +cp -rf /usr/local/share/icons "${TARGETDIR}/share/" +cp -rf /usr/local/share/fontconfig "${TARGETDIR}/share/" +cp -rf /usr/local/share/themes/Mac "${TARGETDIR}/share/themes/" +cp -rf /usr/local/share/themes/Default "${TARGETDIR}/share/themes/" +cp -rf /usr/local/share/gtksourceview-4 "${TARGETDIR}/share/" +glib-compile-schemas /usr/local/share/glib-2.0/schemas +cp -f /usr/local/share/glib-2.0/schemas/gschema* "${TARGETDIR}/share/glib-2.0/schemas" +# find "${TARGETDIR}/bin" -type f -path '*.dll.a' -exec rm '{}' \; +lib_dependency_analyze ${TARGETDIR}/lib ${TARGETDIR}/bin +lib_dependency_analyze ${TARGETDIR}/bin ${TARGETDIR}/bin +echo "[done]" + +# copy app icons and license files to target dir +echo -n "Copy app icon(svg) files......" +cp -f "${PROJECTDIR}/data/assets/kangaroo.ico" "${TARGETDIR}/bin" +cp -f "${PROJECTDIR}/data/assets/kangaroo.svg" "${TARGETDIR}/share/icons/hicolor/scalable/apps" +echo "[done]" + + +# download license file: LGPL-3.0 +echo -n "Downloading the remote license file......" +cp -f "${PROJECTDIR}/LICENSE" "${TARGETDIR}/share/licenses/kangaroo" +if [ ! -f "${TARGETDIR}/share/licenses/kangaroo/lgpl-3.0.txt" ]; then + curl "https://www.gnu.org/licenses/lgpl-3.0.txt" -o "${TARGETDIR}/share/licenses/kangaroo/lgpl-3.0.txt" + if [ $? -eq 0 ]; then + echo "[done]" + else + echo "[failed]" + fi +else + echo "[done]" +fi + +echo "make macos executable file(.app)......" +cd "${PROJECTDIR}/build" +cp "${PROJECTDIR}/tools/installers/Info.plist" "${PROJECTDIR}/build" +cp "${PROJECTDIR}/tools/installers/mac.icns" "${PROJECTDIR}/build/kangaroo.icns" +../tools/mac_app_pack.sh --path "${TARGETDIR}" --name "kangaroo" --info "Info.plist" --icons "kangaroo.icns" +if [ $? -eq 0 ]; then + echo "[done]" + else + echo "[failed]" +fi + +# make installer package +echo "make macos installer(.dmg)......" +cp "${PROJECTDIR}/tools/installers/dmg.json" kangaroo_dmg.json +cp "${PROJECTDIR}/data/assets/background.png" "${PROJECTDIR}/build/kangaroo_dmg_background.png" +appdmg kangaroo_dmg.json "kangaroo-${VERSION}-macos.dmg" +if [ $? -eq 0 ]; then + echo "[done]" + else + echo "[failed]" +fi + +# make portable package +echo -n "make macos portable......" +tar czf "${PROJECTDIR}/build/kangaroo-${VERSION}-macos.tar.gz" -C "${PROJECTDIR}/build/" kangaroo.app +if [ $? -eq 0 ]; then + echo "[done]" + else + echo "[failed]" +fi diff --git a/sources/mac_app_pack.sh b/sources/mac_app_pack.sh new file mode 100644 index 000000000..d30951cfe --- /dev/null +++ b/sources/mac_app_pack.sh @@ -0,0 +1,194 @@ +#!/usr/bin/env bash + +VERSION=4.0.1 +SCRIPT=`basename "$0"` +APP_NAME="kangaroo" +APP_ICONS="/System/Library/CoreServices/CoreTypes.bundle/Contents/Resources/GenericApplicationIcon.icns" +OSX_VERSION=`sw_vers -productVersion` +PWD=`pwd` + +function usage { + cat < + Modified by Mathias Bynens + Modified by Andrew Dvorak + Rewritten by Duncan McGreggor + Modified by Zuhong Tao +EOF + exit 1 +} + +function version { + echo "v${VERSION}" + exit 1 +} + +function error { + echo + echo "ERROR: $1" + echo + usage +} + +while :; do + case $1 in + -h | --help ) usage;; + -p | --path ) APP_BUILD="$2"; shift ;; + -n | --name ) APP_NAME="$2"; shift ;; + -o | --info ) APP_INFO="$2"; shift ;; + -i | --icons ) APP_ICONS="$2"; shift ;; + -v | --version ) version;; + -- ) shift; break ;; + * ) break ;; + esac + shift +done + +if [ -z ${APP_BUILD+nil} ]; then + error "The GTK app path to appify must be provided!" +fi + +if [ ! -d "$APP_BUILD" ]; then + error "Can't find the target path '$APP_BUILD'" +fi + +if [ -a "$APP_NAME.app" ]; then + rm -rf "$APP_NAME.app" +fi + +SCRIPT_PATH="$( cd "$(dirname "$0")" >/dev/null 2>&1 ; pwd -P )" +APP_OUT_DIR="$( cd "$(dirname "$APP_BUILD")" >/dev/null 2>&1 ; pwd -P )" + +APP_TOP_DIR=$APP_OUT_DIR/$APP_NAME.app +APP_CON_DIR=$APP_TOP_DIR/Contents +APP_RES_DIR=$APP_CON_DIR/Resources +APP_EXE_DIR=$APP_CON_DIR/MacOS +APP_ETC_DIR=$APP_RES_DIR/etc +APP_LIB_DIR=$APP_RES_DIR/lib + +# Copy kangaroo.app resource +mkdir -vp "$APP_CON_DIR"/{MacOS,Resources} +cp -f "$APP_INFO" "$APP_CON_DIR/Info.plist" +cp -f "$APP_ICONS" "$APP_RES_DIR/$APP_NAME.icns" +cp -rf "$APP_BUILD/etc" "$APP_RES_DIR" +cp -rf "$APP_BUILD/include" "$APP_RES_DIR" +cp -rf "$APP_BUILD/lib" "$APP_RES_DIR" +cp -rf "$APP_BUILD/share" "$APP_RES_DIR" +cp $APP_BUILD/bin/gdbus $APP_EXE_DIR +cp $APP_BUILD/bin/kangaroo $APP_EXE_DIR/kangaroo-real +cp $APP_BUILD/bin/launcher.sh $APP_EXE_DIR/kangaroo +cp $APP_BUILD/bin/gdk-pixbuf-query-loaders $APP_EXE_DIR +chmod 766 "$APP_EXE_DIR/gdbus" +chmod 766 "$APP_EXE_DIR/kangaroo" +chmod 766 "$APP_EXE_DIR/kangaroo-real" +chmod 766 "$APP_EXE_DIR/gdk-pixbuf-query-loaders" + +# Copy dependency libraries and update their search path +source $SCRIPT_PATH/mac_app_path.sh +if ls $APP_BUILD/bin/*.so 1> /dev/null 2>&1; then + for sofile in $APP_BUILD/bin/*.so; do + cp $sofile $APP_LIB_DIR + done +fi +cp $APP_BUILD/bin/*.dylib $APP_LIB_DIR +chmod -R 766 $APP_LIB_DIR + +lib_change_paths \ + @executable_path/../Resources/lib \ + $APP_LIB_DIR \ + $APP_EXE_DIR/kangaroo-real + +lib_change_paths \ + @executable_path/../Resources/lib \ + $APP_LIB_DIR \ + $APP_EXE_DIR/gdbus + +lib_change_paths \ + @executable_path/../Resources/lib \ + $APP_LIB_DIR \ + $APP_EXE_DIR/gdk-pixbuf-query-loaders + +lib_change_siblings $APP_LIB_DIR @loader_path + +# Gio modules +gio_modules="$(find $APP_LIB_DIR/gio/modules/ -name \*.dylib -o -name \*.so -type f)" +for gio_module in $gio_modules; do + lib_change_paths \ + @executable_path/../Resources/lib \ + $APP_LIB_DIR \ + $gio_module +done + +# Gdk-pixbuf plugins +pixbuf_plugins="$(find $APP_LIB_DIR/gdk-pixbuf-2.0/2.10.0/loaders/ -name \*.dylib -o -name \*.so -type f)" +for pixbuf_plugin in $pixbuf_plugins; do + lib_change_paths \ + @executable_path/../Resources/lib \ + $APP_LIB_DIR \ + $pixbuf_plugin +done + +# Gtk modules(immodule and printbackend) +gtk_im_modules="$(find $APP_LIB_DIR/gtk-3.0/3.0.0/immodules/ -name \*.dylib -o -name \*.so -type f)" +for gtk_immodule in $gtk_im_modules; do + lib_change_paths \ + @executable_path/../Resources/lib \ + $APP_LIB_DIR \ + $gtk_immodule +done + +gtk_print_modules="$(find $APP_LIB_DIR/gtk-3.0/3.0.0/printbackends/ -name \*.dylib -o -name \*.so -type f)" +for print_module in $gtk_print_modules; do + lib_change_paths \ + @executable_path/../Resources/lib \ + $APP_LIB_DIR \ + $print_module +done + +# Database plugins +db_plugins="$(find $APP_LIB_DIR/plugin/ -name \*.dylib -o -name \*.so -type f)" +for db_plugin in $db_plugins; do + lib_change_paths \ + @executable_path/../Resources/lib \ + $APP_LIB_DIR \ + $db_plugin +done + +# Libgda providers +gda_providers="$(find $APP_LIB_DIR/libgda-5.0/providers/ -name \*.dylib -o -name \*.so -type f)" +for gda_provider in $gda_providers; do + lib_change_paths \ + @executable_path/../Resources/lib \ + $APP_LIB_DIR \ + $gda_provider +done + +# Kangaroo plugins +app_plugins="$(find $APP_LIB_DIR/kangaroo/plugins/ -name \*.dylib -o -name \*.so -type f)" +for app_plugin in $app_plugins; do + lib_change_paths \ + @executable_path/../Resources/lib \ + $APP_LIB_DIR \ + $app_plugin +done + +echo "Mac app bundled at '$APP_TOP_DIR'" diff --git a/sources/mac_app_path.sh b/sources/mac_app_path.sh new file mode 100644 index 000000000..64405a92a --- /dev/null +++ b/sources/mac_app_path.sh @@ -0,0 +1,119 @@ +# SPDX-License-Identifier: GPL-2.0-or-later +# https://gitlab.com/inkscape/inkscape/-/blob/master/packaging/macos/bash_d/lib_.sh +# examples: +# lib_change_path \ +# @executable_path/../Resources/lib/lib2geom.1.0.0.dylib \ +# $APP_LIB_DIR/inkscape/libinkscape_base.dylib \ +# $APP_EXE_DIR/inkscape +# +#lib_change_paths \ +# @executable_path/../lib \ +# $APP_LIB_DIR \ +# $APP_BIN_DIR/gs +# +# lib_change_siblings $APP_LIB_DIR dylib +# lib_change_siblings $APP_LIB_DIR so + +# include_guard + +### includes ################################################################### + +# Nothing here. + +### variables ################################################################## + +# Nothing here. + +### functions ################################################################## + +function lib_change_path +{ + # This is a simple wrapper around install_name_tool to reduce the + # number of arguments (like $source does not have to be provided + # here as it can be deducted from $target). + # Also, the requested change can be applied to multipe binaries + # at once since 2-n arguments can be supplied. + + local target=$1 # new path to dynamically linked library + local binaries=${*:2} # binaries to modify + + local source_lib=${target##*/} # get library filename from target location + + for binary in $binaries; do # won't work with spaces in paths + if [[ $binary == *.so ]] || [[ $binary == *.dylib ]]; then + lib_reset_id $binary + fi + local source=$(otool -L $binary | grep $source_lib | awk '{ print $1 }') + install_name_tool -change $source $target $binary + done +} + +function lib_change_paths +{ + # This is a slightly more advanced wrapper around install_name_tool. + # Given a directory $lib_dir that contains the libraries, all libraries + # linked in $binary can be changed at once to a specified $target path. + + local target=$1 # new path to dynamically linked library + local lib_dir=$2 + local binaries=${*:3} + + for binary in $binaries; do + if [[ $binary == *.so ]] || [[ $binary == *.dylib ]]; then + lib_reset_id $binary + fi + for linked_lib in $(otool -L $binary | tail -n +2 | awk '{ print $1 }'); do + if [ "$(basename $binary)" != "$(basename $linked_lib)" ] && + [ -f $lib_dir/$(basename $linked_lib) ]; then + lib_change_path $target/$(basename $linked_lib) $binary + fi + done + done +} + +function lib_change_siblings +{ + # This is a slightly more advanced wrapper around install_name_tool. + # All libraries inside a given $dir that are linked to libraries present + # in that $dir can be automatically adjusted. + + local dir=$1 + local target=$2 + + for lib in $dir/*.dylib; do + lib_reset_id $lib + for linked_lib in $(otool -L $lib | tail -n +2 | awk '{ print $1 }'); do + if [ "$(basename $lib)" != "$(basename $linked_lib)" ] && + [ -f $dir/$(basename $linked_lib) ]; then + lib_change_path $target/$(basename $linked_lib) $lib + fi + done + done + + if ls $dir/*.so 1> /dev/null 2>&1; then + for lib in $dir/*.so; do + lib_reset_id $lib + for linked_lib in $(otool -L $lib | tail -n +2 | awk '{ print $1 }'); do + if [ "$(basename $lib)" != "$(basename $linked_lib)" ] && + [ -f $dir/$(basename $linked_lib) ]; then + lib_change_path $target/$(basename $linked_lib) $lib + fi + done + done + fi +} + +function lib_reset_id +{ + local lib=$1 + + install_name_tool -id $(basename $lib) $lib +} + +### aliases #################################################################### + +# Nothing here. + +### main ####################################################################### + +# Nothing here. diff --git a/sources/mac_launcher.sh b/sources/mac_launcher.sh new file mode 100644 index 000000000..ef5dc5600 --- /dev/null +++ b/sources/mac_launcher.sh @@ -0,0 +1,185 @@ +#!/bin/sh + +if test "x$GTK_DEBUG_LAUNCHER" != x; then + set -x +fi + +if test "x$GTK_DEBUG_GDB" != x; then + EXEC="gdb --args" +else + EXEC=exec +fi + +name=`basename "$0"` +bundle_app="$( cd "$( dirname "$0" )/../.." >/dev/null 2>&1 && pwd )" +bundle_contents="$bundle_app"/Contents +bundle_res="$bundle_contents"/Resources +bundle_lib="$bundle_res"/lib +bundle_bin="$bundle_res"/bin +bundle_data="$bundle_res"/share +bundle_etc="$bundle_res"/etc + +export DYLD_LIBRARY_PATH="$bundle_lib" +export XDG_CONFIG_DIRS="$bundle_etc"/xdg +export XDG_DATA_DIRS="$bundle_data" +export GTK_DATA_PREFIX="$bundle_res" +export GTK_EXE_PREFIX="$bundle_res" +export GTK_PATH="$bundle_res" + +# PANGO_* is no longer needed for pango >= 1.38 +export PANGO_RC_FILE="$bundle_etc/pango/pangorc" +export PANGO_SYSCONFDIR="$bundle_etc" +export PANGO_LIBDIR="$bundle_lib" + +# GIO modules +export GIO_MODULE_DIR="$bundle_lib/gio/modules" + +# Pixbuf plugins and update cache +export GDK_PIXBUF_MODULEDIR="$bundle_lib/gdk-pixbuf-2.0/2.10.0/loaders" +export GDK_PIXBUF_MODULE_FILE="$bundle_lib/gdk-pixbuf-2.0/2.10.0/loaders.cache" +$bundle_contents/MacOS/gdk-pixbuf-query-loaders --update-cache $GDK_PIXBUF_MODULEDIR/*.so +#sed -i -e "s#/usr/local/lib/#$bundle_lib/#g" $GDK_PIXBUF_MODULE_FILE +#sed -i -e "s#/usr/local/Cellar/gdk-pixbuf/2.40.0/lib/#$bundle_lib/#g" $GDK_PIXBUF_MODULE_FILE +if [ `uname -r | cut -d . -f 1` -ge 10 ]; then + export GTK_IM_MODULE_FILE="$bundle_etc/gtk-3.0/gtk.immodules" +fi + +# MySQL / MaridDB plugins +export LIBMYSQL_PLUGIN_DIR="$bundle_lib/plugin" +export LIBMYSQL_ENABLE_CLEARTEXT_PLUGIN=Y + +#Kangaroo plugins +export KANGAROO_PLUGIN_DIR="$bundle_lib/kangaroo/plugins" + +APP=$name +I18NDIR="$bundle_data/locale" +# Set the locale-related variables appropriately: +unset LANG LC_MESSAGES LC_MONETARY LC_COLLATE + +# Has a language ordering been set? +# If so, set LC_MESSAGES and LANG accordingly; otherwise skip it. +# First step uses sed to clean off the quotes and commas, to change - to _, and change the names for the chinese scripts from "Hans" to CN and "Hant" to TW. +APPLELANGUAGES=`defaults read .GlobalPreferences AppleLanguages | sed -En -e 's/\-/_/' -e 's/Hant/TW/' -e 's/Hans/CN/' -e 's/[[:space:]]*\"?([[:alnum:]_]+)\"?,?/\1/p' ` +if test "$APPLELANGUAGES"; then + # A language ordering exists. + # Test, item per item, to see whether there is an corresponding locale. + for L in $APPLELANGUAGES; do + #test for exact matches: + if test -f "$I18NDIR/${L}/LC_MESSAGES/$APP.mo"; then + export LANG=$L + break + fi + #This is a special case, because often the original strings are in US + #English and there is no translation file. + if test "x$L" == "xen_US"; then + export LANG=$L + break + fi + #OK, now test for just the first two letters: + if test -f "$I18NDIR/${L:0:2}/LC_MESSAGES/$APP.mo"; then + export LANG=${L:0:2} + break + fi + #Same thing, but checking for any english variant. + if test "x${L:0:2}" == "xen"; then + export LANG=$L + break + fi; + done +fi +unset APPLELANGUAGES L + +# If we didn't get a language from the language list, try the Collation preference, in case it's the only setting that exists. +APPLECOLLATION=`defaults read .GlobalPreferences AppleCollationOrder` +if test -z ${LANG} -a -n $APPLECOLLATION; then + if test -f "$I18NDIR/${APPLECOLLATION:0:2}/LC_MESSAGES/$APP.mo"; then + export LANG=${APPLECOLLATION:0:2} + fi +fi +if test ! -z $APPLECOLLATION; then + export LC_COLLATE=$APPLECOLLATION +fi +unset APPLECOLLATION + +# Continue by attempting to find the Locale preference. +APPLELOCALE=`defaults read .GlobalPreferences AppleLocale` + +if test -f "$I18NDIR/${APPLELOCALE:0:5}/LC_MESSAGES/$APP.mo"; then + if test -z $LANG; then + export LANG="${APPLELOCALE:0:5}" + fi + +elif test -z $LANG -a -f "$I18NDIR/${APPLELOCALE:0:2}/LC_MESSAGES/$APP.mo"; then + export LANG="${APPLELOCALE:0:2}" +fi + +#Next we need to set LC_MESSAGES. If at all possible, we want a full +#5-character locale to avoid the "Locale not supported by C library" +#warning from Gtk -- even though Gtk will translate with a +#two-character code. +if test -n $LANG; then +#If the language code matches the applelocale, then that's the message +#locale; otherwise, if it's longer than two characters, then it's +#probably a good message locale and we'll go with it. + if test $LANG == ${APPLELOCALE:0:5} -o $LANG != ${LANG:0:2}; then + export LC_MESSAGES=$LANG +#Next try if the Applelocale is longer than 2 chars and the language +#bit matches $LANG + elif test $LANG == ${APPLELOCALE:0:2} -a $APPLELOCALE > ${APPLELOCALE:0:2}; then + export LC_MESSAGES=${APPLELOCALE:0:5} +#Fail. Get a list of the locales in $PREFIX/share/locale that match +#our two letter language code and pick the first one, special casing +#english to set en_US + elif test $LANG == "en"; then + export LC_MESSAGES="en_US" + else + LOC=`find $PREFIX/share/locale -name $LANG???` + for L in $LOC; do + export LC_MESSAGES=$L + done + fi +else +#All efforts have failed, so default to US english + export LANG="en_US" + export LC_MESSAGES="en_US" +fi +CURRENCY=`echo $APPLELOCALE | sed -En 's/.*currency=([[:alpha:]]+).*/\1/p'` +if test "x$CURRENCY" != "x"; then +#The user has set a special currency. Gtk doesn't install LC_MONETARY files, but Apple does in /usr/share/locale, so we're going to look there for a locale to set LC_CURRENCY to. + if test -f /usr/local/share/$LC_MESSAGES/LC_MONETARY; then + if test -a `cat /usr/local/share/$LC_MESSAGES/LC_MONETARY` == $CURRENCY; then + export LC_MONETARY=$LC_MESSAGES + fi + fi + if test -z "$LC_MONETARY"; then + FILES=`find /usr/share/locale -name LC_MONETARY -exec grep -H $CURRENCY {} \;` + if test -n "$FILES"; then + export LC_MONETARY=`echo $FILES | sed -En 's%/usr/share/locale/([[:alpha:]_]+)/LC_MONETARY.*%\1%p'` + fi + fi +fi +#No currency value means that the AppleLocale governs: +if test -z "$LC_MONETARY"; then + LC_MONETARY=${APPLELOCALE:0:5} +fi +#For Gtk, which only looks at LC_ALL: +export LC_ALL=$LC_MESSAGES + +unset APPLELOCALE FILES LOC + +if test -f "$bundle_lib/charset.alias"; then + export CHARSETALIASDIR="$bundle_lib" +fi + +# Extra arguments can be added in environment.sh. +EXTRA_ARGS= +if test -f "$bundle_res/environment.sh"; then + source "$bundle_res/environment.sh" +fi + +# Strip out the argument added by the OS. +if /bin/expr "x$1" : '^x-psn_' > /dev/null; then + shift 1 +fi + +$EXEC "$bundle_contents/MacOS/kangaroo-real" "$@" $EXTRA_ARGS diff --git a/timeline.json b/timeline.json new file mode 100644 index 000000000..76d59dac3 --- /dev/null +++ b/timeline.json @@ -0,0 +1,64 @@ +{ + "advertise": [ + { + "id": 23040201, + "group": "image", + "locale": "zh", + "datetime": "2023-05-02T18:35:50.000Z", + "title": "袋鼠数据库工具官方网站", + "tooltip": "袋鼠数据库工具官方网站", + "showcase": "https://www.datatable.online/cases/ads-sample.gif", + "location": "https://www.datatable.online/zh/" + }, + { + "id": 23040202, + "group": "image", + "locale": "en", + "datetime": "2023-05-02T18:35:50.000Z", + "title": "Kangaroo official website", + "tooltip": "Kangaroo official website", + "showcase": "https://www.datatable.online/cases/ads-sample.gif", + "location": "https://www.datatable.online/en/" + } + ], + "broadcast": [ + { + "id": 23040203, + "group": "hyperlink", + "locale": "zh", + "datetime": "2023-08-02T10:00:00.000Z", + "title": "袋鼠数据库工具 v3.91.1 上线", + "tooltip": "袋鼠数据库工具 v3.91.1 上线", + "showcase": "袋鼠数据库工具 v3.91.1 上线", + "location": "https://www.datatable.online/zh/download/v3.92.1.230901.html" + }, { + "id": 23040204, + "group": "hyperlink", + "locale": "en", + "datetime": "2023-08-02T10:00:00.000Z", + "title": "Kangaroo v3.91.1 released", + "tooltip": "Kangaroo v3.91.1 released", + "showcase": "Kangaroo v3.91.1 released", + "location": "https://www.datatable.online/en/download/v3.90.1.230801.html" + } + ], + "version": [ + { + "group": "devel", + "version": "3.92.1.230901", + "datetime": "2023-08-02T10:00:00.000Z", + "windows": "https://kangaroo.awaysoft.com/downloads/v3.92.1.230901/kangaroo-max-3.92.1.230901-x86_64.exe", + "darwin": "https://kangaroo.awaysoft.com/downloads/v3.92.1.230901/kangaroo-max-3.92.1.230901-x86_64.dmg", + "linux": "https://kangaroo.awaysoft.com/downloads/v3.92.1.230901/kangaroo-max-3.92.1.230901-x86_64.deb", + "force": false + }, { + "group": "stable", + "version": "3.92.1.230901", + "datetime": "2023-08-02T10:00:00.000Z", + "windows": "https://kangaroo.awaysoft.com/downloads/v3.92.1.230901/kangaroo-max-3.92.1.230901-x86_64.exe", + "darwin": "https://kangaroo.awaysoft.com/downloads/v3.92.1.230901/kangaroo-max-3.92.1.230901-x86_64.dmg", + "linux": "https://kangaroo.awaysoft.com/downloads/v3.92.1.230901/kangaroo-max-3.92.1.230901-x86_64.deb", + "force": false + } + ] +} diff --git a/zh/blog/001-why-choose-vala.html b/zh/blog/001-why-choose-vala.html new file mode 100644 index 000000000..06cf6c33a --- /dev/null +++ b/zh/blog/001-why-choose-vala.html @@ -0,0 +1,87 @@ + + + + + + 为什么选择 Vala 语言打造袋鼠数据库工具?(5/20/2022 更新) | 袋鼠数据库工具 + + + + + + + + + + + +

# 为什么选择 Vala 语言打造袋鼠数据库工具?(5/20/2022 更新)

# 打造袋鼠数据库工具时的一些思考

当我决定开发袋鼠数据库工具时,为应用赋能力是最重要的考虑项,袋鼠数据库工具应赋予哪些持续的能力?我认为应该赋予:

  1. 性能优先: 应用程序应具有无与伦比的性能表现和响应能力, 最好是打造成原生应用。
  2. 代码安全: 应用程序有能力应对逆向工程,从而避免被破解和直接修改,保持持续的商业运营能力。
  3. 跨平台: 应用程序实现一份代码可以编译成所有平台兼容的应用;
  4. 技术栈成熟度: 技术栈成熟度能支持实现商业目标,因为工具需要利润支持持续发展。
  5. 快速掌握: 开发语言必须是语法简洁和强大,也应该是熟悉易上手的。

经过评估了如下几种技术栈和编程语言组合后,最终我选择了 GTK + Vala 技术栈组合来实现袋鼠数据库工具。 +QT / C++ vs WxWidget / C++ vs GTK-mm / C++ vs GTK-rs / Rust / Go-GTK / Go vs GTK / Vala

+ (adsbygoogle = window.adsbygoogle || []).push({}); +

# Vala 语言的优势和好处

  1. 语法兼容C#和Java,表达能力强,生产力高
    +有C#/Java 的强大表达能力,又有原生编译的性能和速度,更有接地气的独特特性;
    Vala for Java Programmers (opens new window) Vala for C# Programmers (opens new window)

  2. 内存所有权和使用引用计数管理,内存使用安全无烦恼
    +Vala 使用自动引用计数的内存管理功能,无需垃圾内存回收支持(GC),亦无GC相关的性能问题。

  3. 支持接口:支持抽象接口,也支持接口实现
    +接口实现类似于PHP traits 和 JavaScript 的 MIXIN 的功能;

  4. 点分名字空间支持大型应用开发
    +DBKangaroo 工具编写了 400 多个源码模块,拆分为3个子项目和多个顶级名字空间,名字空间深度达5层,全部一个点(.)搞定,至今用起来很顺;

  5. 语言级别的正则表达式支持
    +Vala 把正则表达式视为一等公民对待,可以在代码中直接使用,正则表达式给予了我强大的力量,在我的代码中无处不在,越用越熟练。

GLib.MatchInfo regex_match;
+Regex regex = /(?<x>[\d\.\-]+),(?<y>[\s]*[\-\d\.]+)/mi;
+if (regex.match(text, 0, out regex_match)) {
+    point_new.set_x(double.parse(regex_match.fetch_named("x")));
+    point_new.set_y(double.parse(regex_match.fetch_named("y")));
+} 
+

特别的礼物:一款优秀的在线正则工具: Regex101 (opens new window)

  1. 有C的速度和良好的互操作性支持
    +可以生成C头文件和C代码并获得全平台支持,也可以Vala与C混合编译。

  2. 强大且成熟的类库支持
    +基于GLib的强大类库体系,有工业级成熟度的各种库和GUI框架支持,目前有近300个VAPI, 请查询:VAPIs @ Github (opens new window) VAPIs @ Project (opens new window)

  3. 有丰富且完善的文档支持
    +有优秀的文档和案例,也有大量开源项目可供参考学习,非常容易上手。
    Vala 官方在线文档 (opens new window) Vala 项目集合1(GNOME) (opens new window) Vala 项目集合2(Github) (opens new window)

  4. 卓越的开发环境支持
    +目前最好的 Vala IDE 组合是:Visual Studio Code (opens new window) + Vala plugin (opens new window) + Vala language server (opens new window) + Meson(Ninja)/MSYS2, 享受它们,贡献它们,我们可以.

  5. Elementary OS官方钦定语言
    +Elementary 官方博文分享了他们的观点: Why we write elementary apps in Vala (opens new window)

+ + + diff --git a/zh/blog/002-how-to-deploy-gtk-app-on-windows.html b/zh/blog/002-how-to-deploy-gtk-app-on-windows.html new file mode 100644 index 000000000..0986b972c --- /dev/null +++ b/zh/blog/002-how-to-deploy-gtk-app-on-windows.html @@ -0,0 +1,198 @@ + + + + + + 如何快速有效部署GTK应用程序到Windows平台?(08/03/2020 更新) | 袋鼠数据库工具 + + + + + + + + + + + +

# 如何快速有效部署GTK应用程序到Windows平台?(08/03/2020 更新)

# 背景介绍

自从启动开发 袋鼠数据库工具 以来,我遇到的最大困难就是如何打包 袋鼠数据库工具 应用给用户,经借用强大的谷歌寻找解决方案,最终寻找到了一位日本友人分享的文章Windows平台 GTK+3 安装包教程 (opens new window),文章提供了一份最清晰的 Windows 平台 GTK3 应用部署目录结构,一切问题迎刃而解,所以成功部署 GTK 应用的荣耀应该属于该文章作者。

# 前置条件

文本所介绍的 GTK 应用打包教程基于构建环境 MSYS2 (opens new window),请提前准备好构建环境。

# 解决方案

# 准备应用目录结构

为了成功部署 GTK 应用,应用的最终安装目录结构必须参考 Linux 系统目录结构,目录结构如下:

[安装目录]
+    ├─bin
+    ├─etc
+    │  └─gtk-3.0
+    ├─lib
+    └─share
+        ├─doc
+        ├─glib-2.0
+        │  └─schemas
+        ├─icons
+        │  ├─Adwaita
+        │  └─hicolor
+        ├─locale
+        └─themes
+            ├─Default
+            ├─MS-Windows
+            └─Windows10
+
+ (adsbygoogle = window.adsbygoogle || []).push({}); +

# 复制第三方依赖库

List of GTK dependencies +GTK 框架依赖的第三方库:

  • GLib
  • cairo
  • Pango
  • ATK
  • gdk-pixbuf

为了启动 GTK 应用,您也需要如下第三方库:

  • gettext-runtime
  • fontconfig
  • freetype
  • expat
  • libpng
  • zlib

如何获取依赖库列表并复制到打包目录?

解决方案就是一系列 Linux 命令工具组合,详细如下:

ldd "${SOURCEDIR}/build/src/kangaroo.exe" | grep '\/mingw64\/bin\/.*dll' -o | xargs -I{} cp -f "{}" "${TARGETDIR}/bin/"
+

执行完上述命令就够了吗? 不够!!!

GTK 框架中一些地三方依赖库,比如 gdk-pixbuf / libgda,通过插件扩展的方式实现其功能,所以我们必须找出它们来,并把它们的插件文件和依赖库都找到并复制到打包目录:

ldd /mingw64/bin/libpq.dll | grep '\/mingw64\/bin\/.*dll' -o | xargs -I{} cp -f "{}" "${TARGETDIR}/bin/"
+

# 复制应用资源文件

  • /etc

    • /gtk-3.0/settings.ini : 应用级别的配置文件
    • *: 其它未列出的文件
  • /lib

    • /gdk-pixbuf-2.0 : GDK-Pixbuf 模块: SVG 支持库
    • /gtk-3.0 : GTK+-IM 模块
    • /pango : Pango 模块
    • : 扩展开发需要导入的库、头文件、pkg-config(.pc)配置文件等... 仅用于开发用途
  • /share

    • /doc : 应用文档,如许可证和版权协议等
    • /gtk-3.0 : GTK3 相关的资源文件(gkt3-demo)
    • /gtk-doc : gtk-doc 生存的网页文档
    • /icons : 框架和应用的图标文件
    • /locale : 框架和应用的本地化文件(用于支持多语言)
    • /themes : 架和应用的样式文件
    • *: 其它未列出的文件

# 通过运行时依赖视图比较打包完整性

在全功能模式下,分别在用户环境和测试环境启动应用,用工具 Process Explorer (opens new window) 查看运行时依赖视图(加载的DLL清单),对比依赖库数量是否一致,通过比较打包目录内的dll查漏补缺;

+ (adsbygoogle = window.adsbygoogle || []).push({}); +

# 袋鼠数据库的完整打包脚本,可微调直接复用

#!/usr/bin/env sh
+#
+# Copyright(C) 2018-2020 taozuhong(https://github.com/taozuhong)
+# Important:
+#   These functions are a part of the Kangaroo tool suite;
+#   copyright taozuhong. 2018-2020.  All rights reserved.
+#
+# Author:    taozuhong
+# Created:   1.8.2019
+#
+SOURCEDIR="$( cd "$(dirname "$0")/../" ; pwd -P )"
+TARGETDIR="${SOURCEDIR}/build/windows"
+VERSION="0.7.2.$(date +%y%m%d)"
+# 检查并创建打包目录
+echo -n "检查并创建打包目录......"
+if [ ! -d "$TARGETDIR" ]; then
+  mkdir $TARGETDIR
+  mkdir "${TARGETDIR}/bin/"
+  mkdir "${TARGETDIR}/lib/"
+  mkdir -p "${TARGETDIR}/share/glib-2.0/schemas"
+  mkdir "${TARGETDIR}/share/doc"
+  mkdir "${TARGETDIR}/share/themes"
+  mkdir "${TARGETDIR}/etc/"
+else 
+  if [ ! -d "${TARGETDIR}/bin" ]; then
+    mkdir "${TARGETDIR}/bin/"
+  fi
+  if [ ! -d "${TARGETDIR}/lib" ]; then
+    mkdir "${TARGETDIR}/lib/"
+  fi
+  if [ ! -d "${TARGETDIR}/share" ]; then
+    mkdir -p "${TARGETDIR}/share/glib-2.0/schemas"
+    mkdir "${TARGETDIR}/share/"
+    mkdir "${TARGETDIR}/share/doc"
+    mkdir "${TARGETDIR}/share/themes"
+  fi
+  if [ ! -d "${TARGETDIR}/etc" ]; then
+    mkdir "${TARGETDIR}/etc/"
+  fi
+fi
+echo "[完成]"
+# 复制应用第三方依赖库
+echo -n "复制应用第三方依赖库......"
+ldd "${SOURCEDIR}/build/src/kangaroo.exe" | grep "$MSYSTEM_PREFIX\/bin\/.*dll" -o | xargs -I{} cp -f "{}" "${TARGETDIR}/bin/"
+ldd $MSYSTEM_PREFIX/bin/libjson-glib-1.0-0.dll | grep "$MSYSTEM_PREFIX\/bin\/.*dll" -o | xargs -I{} cp -f "{}" "${TARGETDIR}/bin/"
+ldd $MSYSTEM_PREFIX/bin/libsoup-2.4-1.dll | grep "$MSYSTEM_PREFIX\/bin\/.*dll" -o | xargs -I{} cp -f "{}" "${TARGETDIR}/bin/"
+ldd $MSYSTEM_PREFIX/bin/libgtksourceview-4-0.dll | grep "$MSYSTEM_PREFIX\/bin\/.*dll" -o | xargs -I{} cp -f "{}" "${TARGETDIR}/bin/"
+cp -f "${SOURCEDIR}/build/src/kangaroo.exe" "${TARGETDIR}/bin/"
+cp -f "${SOURCEDIR}/data/assets/kangaroo.ico" "${TARGETDIR}/bin/"
+cp -f $MSYSTEM_PREFIX/bin/librsvg-2-2.dll "${TARGETDIR}/bin/"
+cp -f $MSYSTEM_PREFIX/bin/libgthread-2.0-0.dll "${TARGETDIR}/bin/"
+cp -f $MSYSTEM_PREFIX/bin/libcroco-0.6-3.dll "${TARGETDIR}/bin/"
+cp -f $MSYSTEM_PREFIX/bin/libtasn1-6.dll "${TARGETDIR}/bin/"
+cp -f $MSYSTEM_PREFIX/bin/libproxy-1.dll "${TARGETDIR}/bin/"
+cp -f $MSYSTEM_PREFIX/bin/libp11-kit-0.dll "${TARGETDIR}/bin/"
+cp -f $MSYSTEM_PREFIX/bin/libnettle-7.dll "${TARGETDIR}/bin/"
+cp -f $MSYSTEM_PREFIX/bin/libhogweed-5.dll "${TARGETDIR}/bin/"
+cp -f $MSYSTEM_PREFIX/bin/libgnutls-30.dll "${TARGETDIR}/bin/"
+cp -f $MSYSTEM_PREFIX/bin/libgmp-10.dll "${TARGETDIR}/bin/"
+echo "[完成]"
+# 复制 GDBus/Helper 及其依赖库
+echo -n "复制 GDBus/Helper 及其依赖库......"
+cp -f $MSYSTEM_PREFIX/bin/gdbus.exe "${TARGETDIR}/bin/"
+ldd $MSYSTEM_PREFIX/bin/gdbus.exe | grep "$MSYSTEM_PREFIX\/bin\/.*dll" -o | xargs -I{} cp -f "{}" "${TARGETDIR}/bin/"
+cp -f $MSYSTEM_PREFIX/bin/gspawn-win64-helper.exe "${TARGETDIR}/bin/"
+ldd $MSYSTEM_PREFIX/bin/gspawn-win64-helper.exe | grep "$MSYSTEM_PREFIX\/bin\/.*dll" -o | xargs -I{} cp -f "{}" "${TARGETDIR}/bin/"
+echo "[完成]"
+# 复制 libgda / 提供者及其依赖库(MySQL/PostgreSQL/JDBC/...)
+echo -n "复制 libgda / 提供者及其依赖库......"
+cp -f $MSYSTEM_PREFIX/bin/libpq.dll "${TARGETDIR}/bin/"
+cp -f $MSYSTEM_PREFIX/bin/mariadb.dll "${TARGETDIR}/bin/"
+ldd $MSYSTEM_PREFIX/bin/libpq.dll | grep "$MSYSTEM_PREFIX\/bin\/.*dll" -o | xargs -I{} cp -f "{}" "${TARGETDIR}/bin/"
+ldd $MSYSTEM_PREFIX/bin/mariadb.dll | grep "$MSYSTEM_PREFIX\/bin\/.*dll" -o | xargs -I{} cp -f "{}" "${TARGETDIR}/bin/"
+if [ -d "${SOURCEDIR}/libs/plugin" ]; then
+  cp -rf "${SOURCEDIR}/libs/plugin" "${TARGETDIR}/lib"
+fi
+echo "[完成]"
+# 复制 GTK 运行时依赖资源
+echo -n "复制 GTK 运行时依赖资源......"
+cp -rf $MSYSTEM_PREFIX/lib/gdk-pixbuf-2.0 "${TARGETDIR}/lib/"
+cp -rf $MSYSTEM_PREFIX/lib/libgda-5.0 "${TARGETDIR}/lib/"
+cp -rf $MSYSTEM_PREFIX/lib/gio "${TARGETDIR}/lib/"
+cp -rf $MSYSTEM_PREFIX/etc/gtk-3.0 "${TARGETDIR}/etc/"
+cp -rf $MSYSTEM_PREFIX/share/icons "${TARGETDIR}/share/"
+cp -rf $MSYSTEM_PREFIX/share/locale "${TARGETDIR}/share/"
+cp -rf $MSYSTEM_PREFIX/share/gtksourceview-4 "${TARGETDIR}/share/"
+glib-compile-schemas $MSYSTEM_PREFIX/share/glib-2.0/schemas
+cp -f $MSYSTEM_PREFIX/share/glib-2.0/schemas/gschema* "${TARGETDIR}/share/glib-2.0/schemas"
+cp -rf $MSYSTEM_PREFIX/share/themes/Default "${TARGETDIR}/share/themes/"
+cp -rf $MSYSTEM_PREFIX/share/themes/MS-Windows "${TARGETDIR}/share/themes/"
+find "${TARGETDIR}/lib" -type f -path '*.dll.a' -exec rm '{}' \;
+echo "[完成]"
+# 下载许可证文件: LGPL-3.0
+echo -n "下载许可证文件......"
+if [ ! -f "${TARGETDIR}/share/doc/lgpl-3.0.txt" ]; then
+  curl "https://www.gnu.org/licenses/lgpl-3.0.txt" -o "${TARGETDIR}/share/doc/lgpl-3.0.txt"
+fi
+if [ -f "${TARGETDIR}/share/doc/lgpl-3.0.txt" ]; then
+  echo "[完成]"
+else
+  echo "[失败]"
+fi
+
+ + + diff --git a/zh/blog/003-serialize-glib-object.html b/zh/blog/003-serialize-glib-object.html new file mode 100644 index 000000000..dce4437ce --- /dev/null +++ b/zh/blog/003-serialize-glib-object.html @@ -0,0 +1,168 @@ + + + + + + GLib 对象序列化和反序列化 | 袋鼠数据库工具 + + + + + + + + + + + +

# GLib 对象序列化和反序列化

# 背景介绍

如何比较两个对象是否一致及生成差异化补丁?

这是袋鼠数据库工具 1.0 版要面临的重要课题,由于之前没接触过这个问题,所以不知道它的最佳解决方案是啥,于是开始研究这个问题的解决方案。

# 解决方案

在 GLib 框架体系里,有两个库可支持对象序列化和反序列化,他们分别是 JSON-GLib / GXML:

名称 最新版本 官方网站 说明
JSON-GLib 1.52 JSON-GLib (opens new window) JSON-GLib 使用 GLib and GObject 实现了一个完整的 JSON 解析器和生成器,集成支持各种 GLib 类型,属于 GLib 友好型库
GXML 0.20 GXML (opens new window) GXML 实现了对象化的 API 接口操作 XML 文档,支持对象序列化和反序列化

# JSON-GLib vs GXML, 哪个库才是解决问题的最佳选择?

让我们通过一个清单来对比分析两个库对具体类型的支持程度,从而判断出哪个库是解决问题的最佳选择:

关键项目 GXML JSON-GLib 说明
基本类型 [x] 已支持 [x] 已支持 char/int/double/...
包装类型 [ ] 未支持 [x] 已支持 Value/Variant/...
对象 [x] 已支持 [x] 已支持 GObject 子类型对象
Vala 数组 [x] 已支持 [ ] 未支持 容器类型
Gee.ArrayList [x] 已支持 [ ] 未支持 容器类型
Gee.HashMap [x] 已支持 [ ] 未支持 容器类型
Gee.TreeMap [x] 已支持 [ ] 未支持 容器类型
Gee.LinkedList [ ] 未支持 [ ] 未支持 容器类型
GLib.Array [ ] 未支持 [ ] 未支持 容器类型
GLib.List [ ] 未支持 [ ] 未支持 容器类型
GLib.SList [ ] 未支持 [ ] 未支持 容器类型
GLib.Queue [ ] 未支持 [ ] 未支持 容器类型
GLib.HastTable [ ] 未支持 [ ] 未支持 容器类型
+ (adsbygoogle = window.adsbygoogle || []).push({}); +

# GXML 的优势和劣势

优势

  1. Vala 友好
  2. 支持各种 Gee 容器类型.

劣势

  1. 缺乏 GLib 的各种内置容器类型支持
  2. 缺乏 GLib 包装类型 支持

# JSON-GLib 的优势和劣势

优势

  1. 支持注册类型序列化/反序列化函数来处理未支持的类型,无论是包装类型还是复合类型
  2. 包装类型和容器类型友好

劣势

  1. 缺乏对 GLib 内建容器类型的支持

# 袋鼠项目的选择

最终在袋鼠项目中选择了 JSON-GLib 来实现对象的序列化和反序列化,因为它对包装类型和容器类型友好,且支持注册类型序列化/反序列化函数来处理未支持的类型,使得我们有能力自己完成对自定义对象的序列化和反序列化;

# 序列化和反序列化案例

# GLib 容器类型的序列化

    public class DbObject : GLib.Object, Json.Serializable
+    {
+        public Json.Object? meta { get; construct set; default = null; }
+        public VersionSync version { get; set; default = VersionSync.UNKNOWN; }
+        public virtual Value get_property (ParamSpec pspec)
+        {
+            Value prop_value = GLib.Value(pspec.value_type);
+            (this as GLib.Object).get_property(pspec.name, ref prop_value);
+            stdout.printf ("%s --> %s\n", prop_value.type_name(), prop_value.strdup_contents());
+            return prop_value;
+        }
+        public virtual void set_property (ParamSpec pspec, Value value)
+        {
+            (this as GLib.Object).set_property (pspec.name, value);
+        }
+        public unowned ParamSpec? find_property (string name)
+        {
+            return ((ObjectClass) get_type ().class_ref ()).find_property (name);
+        }
+        public virtual Json.Node serialize_property (string property_name, Value @value, ParamSpec pspec)
+        {
+            if (@value.type ().is_a (typeof (Json.Object)))
+            {
+                var obj = @value as Json.Object;
+                if (obj != null)
+                {
+                    var node = new Json.Node (NodeType.OBJECT);
+                    node.set_object (obj);
+                    return node;
+                }
+            }
+            else if (@value.type ().is_a (typeof (Gee.ArrayList)))
+            {
+                unowned Gee.ArrayList<GLib.Object> list_value = @value as Gee.ArrayList<GLib.Object>;
+                if (list_value != null || property_name == "data")
+                {
+                    var array = new Json.Array.sized (list_value.size);
+                    foreach (var item in list_value)
+                    {
+                        array.add_element (gobject_serialize (item));
+                    }
+                    var node = new Json.Node (NodeType.ARRAY);
+                    node.set_array (array);
+                    return node;
+                }
+            }
+            else if (@value.type ().is_a (typeof (GLib.Array)))
+            {
+                unowned GLib.Array<GLib.Object> array_value = @value as GLib.Array<GLib.Object>;
+                if (array_value != null || property_name == "data")
+                {
+                    var array = new Json.Array.sized (array_value.length);
+                    for (int i = 0; i < array_value.length; i++) {
+                        array.add_element (gobject_serialize (array_value.index(i)));
+                    }
+                    var node = new Json.Node (NodeType.ARRAY);
+                    node.set_array (array);
+                    return node;
+                }
+            }            
+            else if (@value.type ().is_a (typeof (HashTable)))
+            {
+                var obj = new Json.Object ();
+                var ht_string = @value as HashTable<string, string>;
+                if (ht_string != null)
+                {
+                    ht_string.foreach ((k, v) => {
+                        obj.set_string_member (k, v);
+                    });
+                    var node = new Json.Node (NodeType.OBJECT);
+                    node.set_object (obj);
+                    return node;
+                } else {
+                    var ht_object = @value as HashTable<string, GLib.Object>;
+                    if (ht_object != null)
+                    {
+                        ht_object.foreach ((k, v) => {
+                            obj.set_member (k, gobject_serialize (v));
+                        });    
+                        var node = new Json.Node (NodeType.OBJECT);
+                        node.set_object (obj);
+                        return node;
+                    }
+                }
+            }
+            return default_serialize_property (property_name, @value, pspec);
+        }
+        public virtual bool deserialize_property (string property_name, out Value @value, ParamSpec pspec, Json.Node property_node)
+        {
+            return default_deserialize_property (property_name, out @value, pspec, property_node);
+        }
+    }
+
+ (adsbygoogle = window.adsbygoogle || []).push({}); +

# 参考资料

GXml: Objects and Collections to XML and back (opens new window)

GXml 0.14 and Serialization (opens new window)

HowTo: GObject Serialization to XML using GXml (opens new window)

Serializing object property with Json.gobject_serialize? (opens new window)

json-api-object.vala (opens new window)

Is there no way to auto serialize any array with data to JSON? (opens new window)

+ + + diff --git a/zh/blog/004-how-to-deploy-gtk-app-on-mac.html b/zh/blog/004-how-to-deploy-gtk-app-on-mac.html new file mode 100644 index 000000000..64f5da675 --- /dev/null +++ b/zh/blog/004-how-to-deploy-gtk-app-on-mac.html @@ -0,0 +1,226 @@ + + + + + + 苹果系统 GTK 应用打包新思路 | 袋鼠数据库工具 + + + + + + + + + + + +

# 苹果系统 GTK 应用打包新思路

# 背景介绍

好多苹果系统用户通过各种方式联系本人,期望提供正式的可直接安装使用的安装包(.dmg);我非常愿意做这件事情,但又觉得困难重重,因为目前没有可供使用的物理机器、且接触使用苹果系统时间不长,对系统了解不够,恐遇到难以解决的问题。

多年的职业素养告诉我:面对它、解决它,事情会逐步得到解决的。

于是我集中精力投入这个事情,尝试了一个又一个的办法,经过8天的持续努力后,终于寻找到了最终解决办法,打包后的应用跑起来了。

# 前置条件和环境

本解决方案使用包管理工具 Homebrew (opens new window) 来安装和管理应用需要的 GTK 及相关的第三方依赖库;

您需要安装 GTK、libgda、GtkSourceView4、Vala、GCC 编译器工具链等;

# 打包解决方案

# 梳理应用目录结构

为了顺利部署 GTK 应用,应用需要遵循 Linux 应用目录结构,也要遵循 Mac OS X 应用目录结构,组合形成最终的应用目录结构如下:

[Kangaroo.app]
+    └─Contents
+        ├─Info.plist
+        ├─MacOS
+        │  ├─launcher.sh
+        │  └─<Real app>
+        └─Resources
+            ├─bin
+            ├─etc
+            │  └─gtk-3.0
+            ├─include
+            ├─lib
+            │  ├─gdk-pixbuf-2.0
+            │  │  └─2.10.0
+            │  │      └─loaders
+            │  ├─gio
+            │  │  └─modules
+            │  ├─girepository-1.0
+            │  ├─gtk-3.0
+            │  │  └─3.0.0
+            │  │      ├─immodules
+            │  │      └─printbackends
+            │  ├─kangaroo
+            │  │  └─plugins
+            │  │      └─example
+            │  ├─libgda-5.0
+            │  │  └─providers
+            │  ├─pkgconfig
+            │  └─plugin
+            └─share
+                ├─appdata
+                ├─applications
+                ├─doc
+                ├─fontconfig
+                │  └─conf.avail
+                ├─glib-2.0
+                │  └─schemas
+                ├─gtksourceview-4
+                │  ├─language-specs
+                │  └─styles
+                ├─icons
+                │  ├─Adwaita
+                │  └─hicolor
+                ├─licenses
+                │  └─kangaroo
+                ├─locale
+                ├─themes
+                │  ├─Default
+                │  └─Mac
+                └─vala
+                    └─vapi
+
+ (adsbygoogle = window.adsbygoogle || []).push({}); +

# 苹果应用关键组件

Mac OS X 应用程序有几个关键组件,他们是:

关键组件 说明
GTK GTK 库,例如 GTK / GDK / Pango / ...
launcher.sh 应用启动脚本,用于设置环境变量,如多语言支持、 Gdk 图形插件 / GTK 输入和打印模块 / libgda 提供插件 / ...
应用程序 您的应用程序
Info.plist 苹果应用字典文件,包含程序启动需要的配置信息,例如 GtkOSXLaunchScriptFile / CFBundleExecutable / CFBundleIconFiles
图标文件 苹果应用图标文件(*.icns)

# 准备应用资源

您应该在编译打包前提前准备好应用所需的资源,他们是:

  1. 应用启动脚本:launcher.sh
  2. 应用图标文件:image or .icns
  3. 应用字典文件:Info.plist

# 部署应用为 Linux 应用格式

我们的打包思路的第一步是先在 Mac OS X 上部署为完整的 Linux 应用;

首先请编译并安装应用到指定目录(TARGETDIR):

meson --prefix=$TARGETDIR --buildtype=release build
+ninja -C "${PROJECTDIR}/build" install
+

然后分析应用及其依赖库,复制所有的依赖库文件到前面指定的安装目录(TARGETDIR),构建出一个独立并完整的 Linux 应用;

function lib_dependency_copy
+{
+  # 这个函数使用 otool 分析库依赖关系,然后复制所有依赖库到目标目录
+  local target=$1
+  local folder=$2
+  libraries="$(otool -L $target | grep "/*.*dylib" -o | xargs)"
+  for lib in $libraries; do
+    if [[ '/usr/lib/' != ${lib:0:9} && '/System/Library/' != ${lib:0:16} ]]; then
+      cp -n $lib $folder
+    fi  
+  done
+}
+function lib_dependency_analyze
+{
+  # 这个函数使用 otool 分析库依赖关系,
+  # 逐个分析指定目录内的所有库,然后复制所有依赖库到目标目录
+  local library_dir=$1
+  local targets_dir=$2
+  libraries="$(find $library_dir -name \*.dylib -o -name \*.so -type f)"
+  for lib in $libraries; do
+      lib_dependency_copy $lib $targets_dir
+  done
+}
+# 复制应用依赖库到目标目录
+echo -n "Copy app dependency library......"
+cp -f "${PROJECTDIR}/build/src/kangaroo" "${TARGETDIR}/bin"
+cp -f "${TARGETDIR}/lib/libkangaroo.dylib" "${TARGETDIR}/bin"
+cp -f "${PROJECTDIR}/tools/mac_launcher.sh" "${TARGETDIR}/bin/launcher.sh"
+lib_dependency_copy ${PROJECTDIR}/build/src/libkangaroo.dylib "${TARGETDIR}/bin"
+lib_dependency_copy ${TARGETDIR}/bin/libglib-2.0.0.dylib "${TARGETDIR}/bin"
+lib_dependency_copy ${TARGETDIR}/bin/libgtk-3.0.dylib "${TARGETDIR}/bin"
+lib_dependency_copy ${TARGETDIR}/bin/libjson-glib-1.0.0.dylib "${TARGETDIR}/bin"
+lib_dependency_copy ${TARGETDIR}/bin/libsoup-2.4.1.dylib "${TARGETDIR}/bin"
+lib_dependency_copy ${TARGETDIR}/bin/libgtksourceview-4.0.dylib "${TARGETDIR}/bin"
+cp -f /usr/local/lib/libgtkmacintegration-gtk3.2.dylib "${TARGETDIR}/bin"
+cp -f /usr/local/lib/libgirepository-1.0.1.dylib "${TARGETDIR}/bin"
+cp -f /usr/local/lib/librsvg-2.2.dylib "${TARGETDIR}/bin"
+cp -f /usr/local/lib/libgthread-2.0.0.dylib "${TARGETDIR}/bin"
+cp -f /usr/local/lib/libcroco-0.6.3.dylib "${TARGETDIR}/bin"
+cp -f /usr/local/lib/p11-kit-proxy.dylib "${TARGETDIR}/bin"
+cp -f /usr/local/lib/libgmpxx.4.dylib "${TARGETDIR}/bin"
+lib_dependency_analyze ${TARGETDIR}/bin ${TARGETDIR}/bin
+echo "[done]"
+

# 封装 Linux 应用为苹果应用

转换完整且独立的 Linux 应用为 Mac OS X 应用结构,只需要遵循 Mac OS X 应用目录结构调整即可;

如何校验转换后的应用及依赖库是否是自包含和自我依赖的?
+目前还不能校验,需要完成下一阶段的工作解决库定位问题才能校验,否则会无法启动,依赖库路径也不相符;

+ (adsbygoogle = window.adsbygoogle || []).push({}); +

# 更新应用及依赖库链接路径

经过几天的折腾,发现苹果系统上打包最重要的问题是在运行时如何解决库查找定位的问题,即以什么顺序查找依赖库、在哪里找到依赖库;经过查阅资料,发现有两种途径可以解决上述问题:

  1. 使用库分析处理工具(otool and install_name_tool)来添加或替换库链接路径
# Gdk-pixbuf plugins
+pixbuf_plugins="$(find $APP_LIB_DIR/gdk-pixbuf-2.0/2.10.0/loaders/ -name \*.dylib -o -name \*.so -type f)"
+for pixbuf_plugin in $pixbuf_plugins; do
+  lib_change_paths \
+    @executable_path/../Resources/lib \
+    $APP_LIB_DIR \
+    $pixbuf_plugin
+done
+lib_change_paths \
+  @executable_path/../Resources/lib \
+  $APP_LIB_DIR \
+  $APP_EXE_DIR/gdbus
+lib_change_siblings $APP_LIB_DIR @loader_path
+
  1. 使用环境变量来告诉加载库如何找到它需要的库
export DYLD_LIBRARY_PATH="$bundle_lib"
+export XDG_CONFIG_DIRS="$bundle_etc"/xdg
+export XDG_DATA_DIRS="$bundle_data"
+export GTK_DATA_PREFIX="$bundle_res"
+export GTK_EXE_PREFIX="$bundle_res"
+export GTK_PATH="$bundle_res"
+# PANGO_* is no longer needed for pango >= 1.38
+export PANGO_RC_FILE="$bundle_etc/pango/pangorc"
+export PANGO_SYSCONFDIR="$bundle_etc"
+export PANGO_LIBDIR="$bundle_lib"
+# Pixbuf plugins
+export GDK_PIXBUF_MODULEDIR="$bundle_lib/gdk-pixbuf-2.0/2.10.0/loaders"
+export GDK_PIXBUF_MODULE_FILE="$bundle_lib/gdk-pixbuf-2.0/2.10.0/loaders.cache"
+# MySQL / MaridDB plugins
+export LIBMYSQL_PLUGIN_DIR="$bundle_lib/plugin"
+export LIBMYSQL_ENABLE_CLEARTEXT_PLUGIN=Y
+

# 验证应用是否打包成功(.app)

目前有两种方法可以帮助我们验证应用的完整性:

  1. 启动并调试应用进行验证
    GTK_DEBUG_LAUNCHER=yes MyApp.app/Contents/MacOS/MyApp
    +这个命令可以打印出详细的脚本步骤和输出,输出日志到控制台供分析查看;

    +发现问题需要调试,可以执行下面的命令进入调试状态调试应用
    GTK_DEBUG_GDB=yes MyApp.app/Contents/MacOS/MyApp

  2. 使用动态库分析工具列出库的详细依赖库进行验证
    otool -L MyApp.app/Contents/MacOS/MyApp
    +这个命令可以列出应用的详细依赖库及其链接库位置

# 创建DMG安装包(.dmg)

创建DMG安装包有非常多的工具,我选择了 node-appdmg (opens new window) 来创建DMG安装包,因为它提供了 JSON 配置文件且有详细的处理步骤和日志输出,用户体验比较好;

{
+    "title": "Kangaroo installer",
+    "icon": "kangaroo.icns",
+    "background": "kangaroo_dmg_background.png",
+    "contents": [
+      { "x": 448, "y": 170, "type": "link", "path": "/Applications" },
+      { "x": 192, "y": 170, "type": "file", "path": "kangaroo.app" }
+    ]
+}
+
# make installer package
+echo "make macos installer(.dmg)......"
+cp "${PROJECTDIR}/tools/installers/dmg.json" kangaroo_dmg.json
+cp "${PROJECTDIR}/data/assets/background.png" "${PROJECTDIR}/build/kangaroo_dmg_background.png"
+appdmg kangaroo_dmg.json "kangaroo-${VERSION}-macos.dmg"
+if [ $? -eq 0 ]; then
+  echo "[done]"
+  else
+  echo "[failed]"
+fi
+
+ (adsbygoogle = window.adsbygoogle || []).push({}); +

# 打包脚本源代码

本着回馈社区、与 GNOME (opens new window) 桌面共成长的良好愿景,在此把袋鼠数据库工具的完整打包脚本分享出来,供大家自由使用和分发;

Info.plist
mac_launcher.sh
mac_app_path.sh
mac_app_pack.sh
deploy_macos.sh

# 参考资源

在寻找解决方案的过程中,从以下项目和资源中获得了灵感,有的甚至直接提取其源代码加以修改实现,详细列出供大家参考

node-appdmg (opens new window)
oubiwann's appify.sh (opens new window)
inkscape packaging: lib_.sh (opens new window)
gtk-mac-bundler gtk3-launcher.sh (opens new window)

+ + + diff --git a/zh/blog/005-GTK4-upgrade-report-phase-1.html b/zh/blog/005-GTK4-upgrade-report-phase-1.html new file mode 100644 index 000000000..b99d143ef --- /dev/null +++ b/zh/blog/005-GTK4-upgrade-report-phase-1.html @@ -0,0 +1,118 @@ + + + + + + 袋鼠 GTK4 版升级报告(第一阶段) | 袋鼠数据库工具 + + + + + + + + + + + +

# 袋鼠 GTK4 版升级报告(第一阶段)

袋鼠数据库工具(基于 GTK3 开发) 已于 2021-10-29 日通过了基于 GTK4 框架及其依赖库的编译,整个升级过程耗时约6个星期,遇到了许多典型性的问题,觉得有分享价值,就总结提炼出来形成这个报告。

# 项目信息

我们先对项目做一个大概的预览,了解一下项目的基本情况,有助于加深对后面的内容的理解:

  • 开发者: 1 人
  • 开发机器: ThinkPad T450 + Windows 10
  • 源码文件: 364(个)
  • 界面定义文件: 23(个)
  • 图标文件(SVG): 58(个)
  • 操作熟练: 280(个)
  • 支持平台: Windows, macOS, Linux

# 开发环境

袋鼠数据库工具的开发环境是基于 MSYS2 工具套件搭建的,IDE使用 VSCode,详细情况如下:

功能特性 工具名称 采用版本
包管理器 pacman 6.0.1
编译器 GCC + Vala 10.3 / 0.54.2
终端 mintty 3.5.1
集成开发环境 Visual Studio Code + Vala 1.60
构建器 meson + ninja 0.58
安装包工具 NSIS 3.0.6
虚拟机 VirtualBox 6.1
+ (adsbygoogle = window.adsbygoogle || []).push({}); +

袋鼠数据库工具 集成了很多第三方库,第三方库及其官网、版本明细如下:

功能特性 第三方库 采用版本
编译器 Vala (opens new window) 0.54.2
基础库 GLib2 (opens new window) 2.68.1
界面框架 GTK3 --> GTK4 (opens new window) 3.24.30 --> 4.4.0
界面适配库 libhandy (opens new window) --> libadwaita (opens new window) 1.4.0 --> 1.0.0 alpha2
编辑器 GtkSourceView4 --> GtkSourceView5 (opens new window) 4.8.2 --> 5.2.0
地图 libshumate (opens new window) unknown
JSON json-glib (opens new window) 1.6.6
数据库访问 libgda (opens new window) 6.0.0
容器 libgee (opens new window) 0.20.3
SSH libssh2 (opens new window) 1.9.0
XML libxml2 (opens new window) 2.9.12
加解密 OpenSSL (opens new window) 1.1.1.k
编码 uchardet (opens new window) 0.0.7
插件支持 libpeas (opens new window) 1.30.0
文件格式 libarchive (opens new window) 3.5.1
HTTP libsoup (opens new window) 2.72.0
模板 template-glib (opens new window) 3.34.0

# GTK4 升级过程摘要

为实现GTK4版编译通过,先后对代码进行了5轮重构和问题修复,每一轮都产生并修复了大量问题,面对兼容性产生的巨大的工作量,一度想放弃升级到GTK4版,短暂停留后继续攻坚,终于通过了编译:

轮次 重构与修复重点 问题数
第一轮 1. 修复名字空间方面的问题
2. 修复移除的API问题
400+
第二轮 1. 修复容器控件GtkContainer相关问题
2. 修复唯一控件GtkBin相关问题
1720+
第三轮 1. 修复剪贴板相关问题
2. 修复鼠标、键盘等输入事件问题
1454
第四轮 1. 修复GtkBuilder相关问题
2. 修复界面定义相关问题
800+
第五轮 修复新增的 final 标记相关问题:
GtkPaned
GtkScrolledWindow
GtkStack
GtkOverlay
GtkNotebook
GtkTreeViewColumn
Gtk.ComboBoxText
Gtk.Assistant
8 个控件类问题
共 1430+ 个

通过持续6周的努力,最终迎来了袋鼠GTK4版编译通过(10/29/2021), 欣喜若狂,立即执行编译通过的程序,有点丑有点不正常,很多功能无法正常使用,它宣示GTK4编译通过只是整个升级工作的万里长征第一步,还需许多的工作需要做。

+ (adsbygoogle = window.adsbygoogle || []).push({}); +

# 关键问题分析和解决方案

现在我将把升级过程中的一些关键的、典型问题做一些列举分析并提供解决方案,或许对读者有一些帮助。

# 1. 容器控件 API

在 GTK4 中, 容器类 GtkContainer 已经被移除,新的控件体系允许每一个控件都能添加子控件,相应的API也有变化,一致性在减弱,未来也许会重新规范为一个接口类并集成到每一个控件中;GTK4版提供的容器 API 主要有: prepend/append/insert/remove:

GTK3 API GTK4 API 升级推荐
add
pack_start
prepend
append
append
pack_end insert_child_after append
reorder_child reorder_child_after reorder_child_after
foreach/get_children get_first_child
get_next_sibling
get_prev_sibling
get_last_child

# 2. 唯一子控件 API

在 GTK4 中, , 唯一子控件类GtkBin 已经被移除, 新的控件体系允许每一个控件都能添加子控件, 部分控件类提供了 child 属性来直接引用或设置它的唯一子控件,或者是第一个子控件;

# 3. 剪贴板 API

在 GTK3 中, 我们可以使用下面的代码获取或者检测剪贴板中的图片:

Gtk.Clipboard clipboard = Gtk.Clipboard.get(Gdk.SELECTION_CLIPBOARD);
+Pixbuf? pixbuf = clipboard.wait_for_image();
+

GTK4 中的完成同样功能的代码是这样子的:

Pixbuf? pixbuf = null;
+Value value = GLib.Value(typeof(Pixbuf));
+Gdk.Clipboard clipboard = this.get_clipboard();
+if (clipboard.content.get_value(ref value)) {
+    pixbuf = (Pixbuf)value.get_boxed();
+}
+
+ (adsbygoogle = window.adsbygoogle || []).push({}); +

# 4. 用户输入(鼠标点击和键盘输入)

简单粗暴的直接分享一些关于用户输入的参考代码,用于快速更新 GTK3 中的用户输入事件代码:

treeview.key_press_event.connect(key_press_handler);
+treeview.key_release_event.connect(key_release_handler);
+treeview.button_press_event.connect(button_press_handler);
+treeview.button_release_event.connect(button_release_handler);
+treeview.motion_notify_event.connect(mouse_move_handler);
+treeview.enter_notify_event.connect(mouse_enter_handler);
+treeview.leave_notify_event.connect(mouse_leave_handler);
+treeview.scroll_event.connect(scroll_event_handler);
+treeview.focus_in_event.connect(focus_enter_event_handler);
+treeview.focus_out_event.connect(focus_leave_event_handler);
+
var key_input_event = new Gtk.EventControllerKey();
+key_input_event.key_pressed.connect(key_press_handler);
+key_input_event.key_released.connect(key_release_handler);
+treeview.add_controller(key_input_event);
+var mouse_button_event = new Gtk.GestureClick();
+mouse_button_event.pressed.connect(button_press_handler);
+mouse_button_event.released.connect(button_release_handler);
+treeview.add_controller(mouse_button_event);
+var mouse_motion_event = new Gtk.EventControllerMotion();
+mouse_motion_event.motion.connect(mouse_move_handler);
+mouse_motion_event.enter.connect(mouse_enter_handler);
+mouse_motion_event.leave.connect(mouse_leave_handler);
+treeview.add_controller(mouse_motion_event);
+var view_scroll_event = new Gtk.EventControllerScroll();
+view_scroll_event.scroll.connect(scroll_event_handler);
+treeview.add_controller(view_scroll_event);
+var view_focus_event = new Gtk.EventControllerFocus();
+view_focus_event.enter.connect(focus_enter_event_handler);
+view_focus_event.leave.connect(focus_leave_event_handler);
+treeview.add_controller(view_focus_event);
+

# 5. GtkBuilder 和 界面定义文件

下面的命令行可以直接升级更新GTK3定义的界面定义文件(*.ui):

gtk-builder-tool simplify --3to4 --replace <filename.ui>
+

如果只想查看升级更新后的界面定义文件内容而不更新文件,可以去掉参数 --replace,如下所示:

gtk-builder-tool simplify --3to4 <filename.ui>
+
+ + + diff --git a/zh/blog/009-secure-connection-solution.html b/zh/blog/009-secure-connection-solution.html new file mode 100644 index 000000000..898ee11e1 --- /dev/null +++ b/zh/blog/009-secure-connection-solution.html @@ -0,0 +1,66 @@ + + + + + + Kangaroo secure connection solution | 袋鼠数据库工具 + + + + + + + + + + + +

# Kangaroo Secure connection (SSL or SSH) solution

# Connection via secure sockets layer (SSL)

Sometimes, database server use secure connection to keep security, so client must connect to database server by secure socket, Kangaroo integrated with

# Connection over secure shell tunnel(SSH)

Windows +https://gist.github.com/siggibjarna/0da65bd0d3f2b82d3752 +Kangaroo connnect to database over secure shell tunnel via plink.exe (opens new window) on windows, examples: HeidiSQL

Linux

MacOS

+ + + diff --git a/zh/blog/index.html b/zh/blog/index.html new file mode 100644 index 000000000..d605d8613 --- /dev/null +++ b/zh/blog/index.html @@ -0,0 +1,68 @@ + + + + + + 博客文章 | 袋鼠数据库工具 + + + + + + + + + + + + + + + diff --git a/zh/buy.html b/zh/buy.html new file mode 100644 index 000000000..6dd12c1c6 --- /dev/null +++ b/zh/buy.html @@ -0,0 +1,66 @@ + + + + + + 购买 | 袋鼠数据库工具 + + + + + + + + + + + +

# 购买 袋鼠数据库工具

感谢购买 袋鼠数据库工具

为实现可持续服务,目前 袋鼠数据库工具 采用订阅制模式,多年订阅建议不要超过【十年】。

# 订阅方案

以下价格均为【按年订阅】价格,包含一年内免费升级和支持服务。

特性方案 企业许可证 非商业许可证 许可证展期
多数据库 (含税) CNY 1899 CNY 699 八折优惠
单数据库 (含税) CNY 499 CNY 199 八折优惠

【温馨提示】

  1. 一个许可证对应一个用户,通过手机进行验证及绑定。
  2. 一个许可证可支持 3 台设备(Windows / MacOS / Linux)。

# 支付方式

目前支持三种支付方式:微信支付、支付宝支付和 Paypal 支付。 +
支付宝 二维码 微信支付 二维码 Paypal 二维码

扫描二维码支付时,请务必在备注上填写:袋鼠 - <您的邮箱> , 订阅授权码(License code) 会发送到您的邮箱。

# 联系方式

如对购买或购买后有任何问题,可通过以下方式联系:

客服: 电脑QQ客服 (opens new window) 手机QQ客服
+邮箱: dbkangaroo@hotmail.com

# 常见问题

# 付款后多久会收到订阅授权码(License code)?

袋鼠数据库工具许可证验证特性版本发布后一个星期内启动授权码发放工作,敬请留意版本公告和您的邮件通知消息;

# 如何退款

虚拟商品,购买后恕不退换。请谨慎购买。

+ + + diff --git a/zh/document/changelog.html b/zh/document/changelog.html new file mode 100644 index 000000000..2e13f316d --- /dev/null +++ b/zh/document/changelog.html @@ -0,0 +1,110 @@ + + + + + + 版本更新记录 | 袋鼠数据库工具 + + + + + + + + + + + +

# 袋鼠数据库工具 版本更新记录

# 袋鼠数据库工具 v3.92.1

  • GTK4 升级为 4.12
  • libadwaita 升级为 1.4 beta
  • 新增 Redhat 系列系统安装包(rpm)
  • 新增用户自定义代码块支持 +
    • 用户自定义代码块边栏(过滤/拖放支持)
    • 用户自定义代码块编辑对话框
    • 用户自定义代码块智能提示支持
    • 用户自定义代码块保存与配置支持
    • 用户自定义代码块之查询视图弹出菜单
  • 查询视图弹出菜单增加执行菜单项
  • 重构日志视图
  • 重构着色文本视图
  • 重构页面工具栏样式
  • 重构工具栏配置支持
  • 重构导出助理列映射页
  • 重构导出助理实体映射页
  • 重构导出助理DSV设置页
  • 重构模型实体对话框
  • 二维码增加袋鼠LOGO
  • 更新中文语言支持
  • 修复: 通讯连接问题
  • 修复: 文档对话框数据显示问题
  • 修复: 连接空间状态栏信息丢失问题
  • 修复: 数据库连接ID丢失问题

# 袋鼠数据库工具 v3.91.1 (Beta)

  • 界面适配 libadwaita 1.4
  • 重构切换空间属性(GtkSwitch.state to active)
  • 增加显示数据库驱动库版本
  • 增加中文语言支持(zh_Hans/zh_Hant)
  • 改进工作空间状态栏用户体验
  • 更新中文语言支持
  • MariaDB: 增加表设计器页面
  • MariaDB: 修复外键相关问题
  • MySQL: 增加类型支持 TIMESTAMP
  • PostgreSQL: 修复类型和排序规则问题
  • SQLite: 修复模式相关问题
  • 数据传输: 初始化默认设置
  • 数据传输: 增加日志输出
  • 数据传输: 修复目标连接问题

# 袋鼠数据库工具 v3.90.1 (Beta)

  • 增加数据库传输/结构同步/数据同步界面
  • 实现数据库传输业务逻辑
  • 实现数据库结构同步业务逻辑
  • SQLite: 加密扩展支持(SQLCipher)
  • MySQL: 改进 TEXT/BLOB 类型支持
  • MariaDB: 改进 TEXT/BLOB 类型支持
  • 对话框窗口居中支持
  • 增加多语言切换支持
  • 优化配置对话框性能
  • 更新中文语言支持
  • 修复 MySQL/MariaDB 字段标记问题

# 袋鼠数据库工具 v2.99.3 (Beta)

  • Windows: GTK4 升级为 4.11.2
  • MySQL: 修复 TINYTEXT/TEXT/MEDIUMTEXT/LONGTEXT 显示问题
  • MariaDB: 修复 TINYTEXT/TEXT/MEDIUMTEXT/LONGTEXT 显示问题

# 袋鼠数据库工具 v1.10.3 (Beta)

  • Windows: GTK4 升级为 4.11.1
  • Fixed: 中文支持问题

# 袋鼠数据库工具 v2.99.2 (Beta)

  • 添加沙盒运行支持 (仅限 Windows)
  • GTK4 升级为 4.10.3
  • libadwaita 升级为 1.3.1

# 袋鼠数据库工具 v2.99.1 (Beta)

  • SQLite: 添加数据库直接访问支持
  • MySQL: 添加数据库直接访问支持
  • MariaDB: 添加数据库直接访问支持
  • PostgreSQL: 添加数据库直接访问支持
  • 改善了浮点数显示支持(默认展示5位小数位)
  • 改进了连接建立方式(无需选择驱动)
  • 更新中文语言支持(zh-CN/zh-TW/zh-SG/zh-HK)

# 袋鼠数据库工具 v2.3.2 (Beta)

  • MySQL: 增加执行器菜单入口
  • MariaDB: 增加执行器菜单入口
  • PostgreSQL: 增加执行器菜单入口
  • 更新 DataGrid 常规样式背景色
  • 更新中文语言支持(zh-CN/zh-TW/zh-SG/zh-HK)
  • 修复: 未知字段 SCHEMA_COMMENT (< MariaDB 10.5)
  • 修复: 执行器文件对话框问题
  • 修复: 智能提示小写输入时无法响应问题
  • 修复: 网格相关的崩溃问题
+ (adsbygoogle = window.adsbygoogle || []).push({}); +

# 袋鼠数据库工具 v2.3.1 (Beta)

  • 增加用户查询文件面板
  • 增加用户模型文件面板
  • 更新工具栏样式
  • 连接空间支持分割视图 (垂直或水平)
  • 连接空间增加 状态栏控件
  • 连接空间增加 语言切换 支持
  • 连接空间增加 换行符 支持
  • 连接空间增加 文件编码 支持
  • 连接空间增加 自动换行 支持
  • 连接空间增加 缩进设置 支持
  • 连接空间增加 位置信息 支持
  • 连接空间增加 面板切换 支持
  • 连接空间增加 工作页消息 支持
  • 更新关于窗口(增加系统信息)
  • 更新 RPM 包安装脚本
  • 更新中文语言支持(zh-CN/zh-TW/zh-SG/zh-HK)
  • 移除主菜单之视图子菜单

# 袋鼠数据库工具 v2.2.1 (Beta)

  • 增加 SQL 执行对话框
  • 增加 导出并转换对话框
  • 增加查询耗时显示
  • SQLite: 修复索引字段加载问题
  • SQLite: 修复备份数据表名字问题
  • MariaDB: 修复加载架构对象范围问题
  • MySQL: 修复加载架构对象范围问题
  • PostgreSQL: 修复 v15 用户属性问题
  • 更新智能提示候选项图标
  • 更新中文语言支持(zh-CN/zh-TW/zh-SG/zh-HK)
  • 更新 Windows 安装程序以默认选择驱动程序
  • 更新 GTK 库: v4.9.2

# 袋鼠数据库工具 v2.1.1 (Beta)

  • 添加动态生成二维码支持
  • 添加 debian 安装包支持
  • 实现表设计器 克隆 菜单
  • 实现表设计器 复制/粘贴 菜单
  • 添加表设计器 剪切 菜单
  • 添加 SQL EXPLAIN 语句支持(带格式)
  • 添加 SQL ANALYZE 语句支持
  • 重构 SQL 格式化和紧缩化功能
  • 改进编辑器 后退重做 功能支持
  • 更新 Linux 平台安装包脚本
  • 更新中文语言支持(zh-CN/zh-TW/zh-SG/zh-HK)
  • 修复: 关闭查询结果页时崩溃问题
  • 修复: SSH 提示标签文字

# 袋鼠数据库工具 v2.0.0 (Beta)

  • 重构导入数据页面(列映射页/数据预览页)
  • 重构列选择对话窗口
  • 重构 SQLite 索引列窗口
  • 重构 PostgreSQL 列编辑窗口
  • 重构 MySQL 列编辑窗口
  • 重构类型值编辑器窗口(Enum/set)
  • 重构文档生成窗口
  • 重构数据网格事件和上下文
  • 替换系统图标为符号化图标
  • 实现表单视图编辑和保存功能
  • 实现表格视图编辑和保存功能
  • 实现表单视图数据行导航功能
  • 实现Binary/BLOB 导入导出和保存功能
  • 改进 SQLite 架构支持
  • 更新中文语言支持(zh-CN/zh-TW/zh-SG/zh-HK)
  • 修复: 数值类型丢失小数位问题
  • 修复: 工具图标尺寸设置问题
  • 修复: 对象浏览器网格问题
  • 修复: 导入数据失败问题
  • 修复: 索引加载崩溃问题
  • 修复: 对象树节点切换问题
  • 修复: SQLite 函数编辑问题
  • 修复: 应用控制台告警消息
  • 修复: 编译器控制台告警消息
  • 修复: 上下文菜单导出操作问题
+ (adsbygoogle = window.adsbygoogle || []).push({}); +

# 袋鼠数据库工具 v1.99.1 (Dev)

  • 更新依赖库到新版本
  • 规范化数据模型和元模型
  • 重构并测试文档对话框
  • 重构导出功能页面
  • 重构导入功能页面
  • 重构连接对话框
  • 添加附加数据库对话框
  • 添加通用数据库支持
  • 添加 ODBC 帮助入口
  • 添加对象搜索支持
  • 更新 Windows 和 Arch Linux 的打包与安装脚本
  • SQLite: 附加和卸载数据库
  • SQLite: 加载扩展支持
  • 改进新连接创建方式
  • 更新中文语言支持(zh-CN/zh-TW/zh-SG/zh-HK)
  • 修复:快捷键加载和保存问题

# 袋鼠数据库工具 v1.98.1 (Dev)

  • 数据网格增加当前单元格样式支持
  • SQLite: 重构表设计器
  • MySQL: 重构表设计器
  • PostgreSQL: 重构表设计器
  • 规范化字段的长度/精度/小数位支持
  • 更新中文语言支持(zh-CN/zh-TW/zh-SG/zh-HK)
  • 修复:ODBC CHAR/WCHAR 类型读取问题
  • 修复:连接对话框丢失驱动问题
  • 修复:修复起始页拖放建立连接问题
  • 修复:MySQL/MariaDB 乱码问题

# 袋鼠数据库工具 v1.97.1 (Dev)

  • 更新 Windows 打包脚本,修复依赖库缺失问题
  • 更新 ArchLinux 打包脚本,修复依赖库缺失问题
  • 升级关闭确认对话框
  • 重构网格组件(GtkColumnView)
  • Windows 安装脚本增加 ODBC 驱动支持
  • 改进 Windows 安装包本地化支持
  • 改进对象浏览视图的排序支持
  • 完善内容视图查询构建器
  • 改进 SQL 构建器
  • 改进 DBNull 支持
  • 更新中文语言支持
  • 修复 ODBC 连接相关问题

# 袋鼠数据库工具 v1.10.2 (Beta)

  1. 删除版本过期时间
  2. Windows: 依赖库升级到最新版

# 袋鼠数据库工具 v1.96.1 (Dev)

  • 用 ODBC 替换 libgda
  • 添加了通用数据库支持
  • 更新中文语言支持

# 袋鼠数据库工具 v1.95.1 (Dev)

  • MySQL: 增加角色设计器
  • MySQL: 增加架构设计器
  • MySQL: 增加数据库设计器
  • MariaDB: 增加角色设计器
  • MariaDB: 增加架构设计器
  • MariaDB: 增加数据库设计器
  • PostgreSQL: 增加角色设计器
  • PostgreSQL: 增加架构设计器
  • PostgreSQL: 增加数据库设计器
  • 更新对象浏览视图:支持架构和数据库对象
  • 重构对象树上下文菜单
  • 动态绑定页签图标和标题为对象浏览器标题和图标
  • 更新中文语言支持
+ (adsbygoogle = window.adsbygoogle || []).push({}); +

# 袋鼠数据库工具 v1.94.1 (Dev)

  • MySQL: 增加函数设计器
  • MySQL: 增加存储过程设计器
  • MySQL: 增加用户设计器
  • MariaDB: 增加函数设计器
  • MariaDB: 增加存储过程设计器
  • MariaDB: 增加用户设计器
  • PostgreSQL: 增加函数设计器
  • PostgreSQL: 增加存储过程设计器
  • PostgreSQL: 增加用户设计器
  • 对话框增加运行时版本支持
  • 更新中文语言支持
  • 修复: 工作空间打开问题
  • 修复: 自动缓存文件保存问题

# 袋鼠数据库工具 v1.93.1 (Dev)

  • SQLite: 增加索引设计器支持
  • SQLite: 增加触发器设计支持
  • SQLite: 重构视图设计器并改进设计支持
  • MySQL: 对象浏览视图增加索引对象支持
  • MySQL: 对象浏览视图增加触发器对象支持
  • MySQL: 增加索引设计器支持
  • MySQL: 增加触发器设计支持
  • MySQL: 重构视图设计器并改进设计支持
  • MariaDB: 对象浏览视图增加索引对象支持
  • MariaDB: 对象浏览视图增加触发器对象支持
  • MariaDB: 增加索引设计器支持
  • MariaDB: 增加触发器设计支持
  • MariaDB: 重构视图设计器并改进设计支持
  • PostgreSQL: 增加索引设计器支持
  • PostgreSQL: 增加触发器设计支持
  • PostgreSQL: 重构视图设计器并改进设计支持
  • 增加连接详情页
  • 更新数据库仓库对象树图标
  • 更新中文语言支持
  • 重构起始页,增加连接详情页
  • 重构数据库仓库视图
  • 修复: 视图设计器恢复问题
  • 修复: 工作空间工具栏菜单加载问题
  • 修复: 下拉列表控件活动id为空时崩溃问题
  • 修复: 编辑器有选中文本时输入错误问题
  • 修复: 无法加载 MySQL/MariaDB 视图信息
  • 修复: PostgreSQL连接的数据库名为空时崩溃

# 袋鼠数据库工具 v1.92.1 (Dev)

  1. 增加对象浏览器视图(表格化 + 图表化)
  2. 对象浏览器添加搜索和排序支持
  3. SQLite: 加载对象数据
  4. MariaDB: 加载对象数据
  5. MySQL: 加载对象数据
  6. PostgreSQL: 加载对象数据
  7. 对象浏览器添加对象上下文菜单
  8. 实现表和视图的上下文菜单
  9. 重构工作空间工具栏
  10. 更新数据库对象图标
  11. 更新中文语言支持

# 袋鼠数据库工具 v1.91.1 (Dev)

  1. 重构主界面
  2. 重构导入导出界面
  3. 重构智能提示
  4. 重构工具栏
  5. 重构可视化SQL构建器
  6. 重构过期消息通知功能
  7. 改进标题栏皮肤支持
  8. 改进对话框样式
  9. 拆分设置文件为界面配置文件和用户连接配置文件
  10. 移动智能提示文件到用户文档目录
  11. 更新中文语言翻译(zh-CN/zh-TW/zh-SG/zh-HK)
  12. 修复: 无法打开链接
  13. 修复: 生成无效插入SQL(user_name -> user__name)
  14. 修复: 模型视图点击崩溃
  15. 修复: DSV 格式额外列
  16. 修复: 可伸缩图片尺寸问题
  17. 修复: 修复控制台警告消息
+ (adsbygoogle = window.adsbygoogle || []).push({}); +

# 袋鼠数据库工具 v1.90.1 (Dev)

  1. 升级核心界面库为 GTK4 (GTK3 -> GTK4 4.5)
  2. 升级组件界面库为 GTK4 (libhandy -> libadwaita 1.0 beta)
  3. 升级编辑器组件为 GtkSoureceView5 (4 -> 5)
  4. 合并系统配置对话框和快捷键对话框
  5. 编辑器视图添加文档概览图边栏
  6. 编辑器视图支持选择配色方案
  7. 添加开发模式支持
  8. MySQL: 增加用户和权限管理支持
  9. MariaDB: 增加用户和权限管理支持
  10. PostgreSQL: 增加用户和权限管理支持

# 袋鼠数据库工具 v1.10.1 (Beta)

  1. 新增可视化查询设计器对话框
  2. 新增值选择与编辑对话框
  3. 数据表格上下文菜单增加图标
  4. 增加单元值算法复制功能
  5. 增加单元值算法更新功能
  6. 改进连接对话框命名与保存机制
  7. 改进工具栏按钮布局
  8. 改进浮点类型支持
  9. 更新中文语言支持
  10. 修复: Text 类型无法生成正确的SQL(PostgreSQL)
  11. 修复: 设计器勾选框控件无响应
  12. 修复: 连接服务器时崩溃(MySQL/PostgreSQL)
  13. 修复: 无法拉取视图源代码(PostgreSQL)
  14. 修复: MacOS 无法切换为中文
  15. 修复: 相同单元格值时生成无效的SQL

# 袋鼠数据库工具 v1.9.1 (Dev)

  1. 新增数据视图设计器
  2. 新增工具栏控件(兼容GTK4)
  3. 升级底层库: libgda 6.0.1
  4. 改进 MySQL/MariaDB 连接稳定性
  5. 重构数据库仓库上下文菜单
  6. SQLite: 实现重命名支持
  7. MySQL/MariaDB: 实现重命名功能
  8. 实现数据视图 新建/设计/源码/重命名/转存/复制名称
  9. 重构查询视图工具栏
  10. 更新中文语言支持(zh-CN/zh-TW/zh-SG/zh-HK)
  11. 数据网格添加列重排支持
  12. 改进 日期时间/时间戳 类型显示
  13. 新增几何坐标类型支持
  14. 新增大型文本类型支持
  15. 改进 Windows 和 MacOS 平台安装包
  16. 修复: 数据库仓库目录树展开图标无响应
  17. 修复: MySQL/MariaDB NULL/空字符串显示问题
  18. 修复: 模型中无法显示数据视图字段问题
  19. 修复: 模型中导入对象时无法自动扩充视图
  20. 修复: 无法加载索引条目(MySQL)
  21. 修复:无法编辑布尔类型数据
  22. 修复:加载智能提示数据时的告警消息
+ (adsbygoogle = window.adsbygoogle || []).push({}); +

# 袋鼠数据库工具 v1.8.1 (Dev)

  1. 改进工具栏支持(默认显示文本和大图标)
  2. 改进查询视图标题,支持编号
  3. 仅支持同一对象视图的唯一实例;
  4. 更新工具分类
  5. 模型视图工具栏添加从数据库导入、导出按钮
  6. 模型视图支持从数据库导入对象
  7. 模型视图支持表和视图节点数据保存和加载
  8. 模型视图增加修改及关闭提醒
  9. 增加数据库实体选择对话框
  10. 改进模型绘制效果(表/视图/图形)
  11. 修复: 数据表视图自定义查询页无法显示字段的问题
  12. 修复:苹果版本增加插件目录变量定义(支持插件加载)
  13. 修复:打开模型文件时模型不可见

# 袋鼠数据库工具 v1.7.1 (Dev)

  1. 实现十六进制编辑器支持 (已完成)
  2. 实现工作空间页样式支持 (已完成)
  3. 增加可独立查看日志支持 (已完成)
  4. 增加界面快捷键定制支持 (已完成)
  5. 增加数据图表支持 (前期开发中)
  6. 数据库模型化支持 (前期开发中) +
    • 支持模型文件加载和保存功能
    • 支持模型节点复制与粘贴功能
    • 支持模型节点多选功能
  7. 支持拖放 SQLite 数据库到连接首页并自动打开 #76
  8. 重构应用首页,方便用户操作
  9. 支持复制数据为 LUA 表结构
  10. 改进对象导航树操作体验
  11. 支持保存和恢复工作空间界面布局功能,缓存正在编辑的内容
  12. 增加更多语言支持
  13. 改进日志支持(日志消息中增加数据库名和连接名)
  14. 增加SQL脚本文件监测支持
  15. 重构数据表视图支持显示特性工具栏
  16. 打开连接时默认展示全部数据表
  17. 重构对象树视图改进对象树显示效果
  18. 增加快捷键对话框,支持查找和配置快捷键
  19. 改进标题栏样式支持,支持颜色和图片背景快捷配置
  20. 增加弹出桌面气泡消息支持
  21. 增加关闭页面确认对话框支持
  22. 重构数据表、设计器、模型页工具栏控件,支持图标和图标文字两种显示方式
  23. 修复: Access denied: you need the SUPER privilege(s) for this operation
  24. 修复: 删除对象后同步关闭其打开的视图
  25. 修复: 重命名对象后同步更新打开的视图
  26. 修复:苹果系统无法获得系统名称的错误
+ (adsbygoogle = window.adsbygoogle || []).push({}); +

# 袋鼠数据库工具 v1.6.1 (Dev)

  1. 实现十六进制编辑器支持 (已完成)
  2. 实现工作空间页样式支持 (已完成)
  3. 增加可独立查看日志支持 (已完成)
  4. 增加界面快捷键定制支持 (已完成)
  5. 增加数据图表支持 (前期开发中)
  6. 数据库模型化支持 (前期开发中)

# 袋鼠数据库工具 v1.5.1 (Dev)

  1. 实现十六进制编辑器支持 (已完成)
  2. 实现工作空间页样式支持 (已完成)
  3. 增加数据图表支持 (前期开发中)
  4. 数据库模型化支持 (前期开发中)

# 袋鼠数据库工具 v1.0.6 (Beta)

  1. 更新域名为 www.datatable.online

# 袋鼠数据库工具 v1.3.1 (Dev)

  1. 实现十六进制编辑器支持 (已完成)
  2. 增加数据图表支持 (前期开发中)
  3. 增加数据库连接页新样式 (前期开发中)

# 袋鼠数据库工具 v1.0.5 (Beta)

  1. 实现单元格值上下文菜单
  2. 改进数据库空值显示和编辑支持
  3. 改进单元格数据文本视图,支持编码检测和转换
  4. 改善中国大陆用户可访问性:显示版本更新列表
  5. 提升 MySQL/MariaDB 连接稳定性
  6. 修复: 切换单元格数据查看视图错误
  7. 修复: 复制数据列长短名错误
+ (adsbygoogle = window.adsbygoogle || []).push({}); +

# 袋鼠数据库工具 v0.99.3 (Beta)

  1. 重构了底层容器和服务模块
  2. 改善了查看数据表和SQL查询性能
  3. 更新了数据表格工具栏按钮图标
  4. 修复: 无法打开 MariaDB 数据库

# 袋鼠数据库工具 v0.99.2 (Beta)

  1. 更新打包脚本: 制作 Mac OS X 安装程序包和便携式安装包
  2. 改进工具页面本地化支持
  3. 更新中文语言包(zh-CN/zh-TW/zh-HK/zh-SG)
  4. 修复: 提示 MySQL server has done away 后,没有自动\手动重连 #63
  5. 修复: 无法加载认证插件 caching_sha2_password #64
  6. 修复: 控制台警告消息

# 袋鼠数据库工具 v0.99.1 (Beta)

  1. 改进表设计器通知用户保存修改
  2. 改进消息对话框标题显示
  3. 改进表设计器预览页只显示修改部分SQL
  4. 更新SQLite/MySQL/PostgreSQL 元模型及数据
  5. 改进 Windows 安装程序显示许可证和多语言支持
  6. Make kangaroo portable #59

# 袋鼠数据库工具 v0.33.1 (Dev)

  1. 更新应用标题栏和页面导航栏样式
  2. 改进日期时间选取控件
  3. 改进日期时间网格单元渲染器
  4. 实现日期时间数据编辑保存
  5. 更新 Windows 部署脚本:包含插件库(libpeas)的加载器
  6. 更新构建脚本增加第三方依赖库(用于支持 PDF/地图/绘图)
  7. 更新构建脚本改进调试支持
  8. 修复: 无法显示动画图片(.gif)

# 袋鼠数据库工具 v0.32.1 (Dev)

  1. 实现生成网页格式的数据库设计文档
  2. 实现生成 Markdown 格式的数据库设计文档
  3. 更新导入 / 导出 功能图标
+ (adsbygoogle = window.adsbygoogle || []).push({}); +

# 袋鼠数据库工具 v0.31.1 (Dev)

  1. 实现 BLOB 内容识别(文件类型识别)
  2. 实现 SQLite BLOB 类型数据处理(导入 / 导出 / 置空)
  3. 实现 MySQL BLOB 类型数据处理(导入 / 导出 / 置空)
  4. 实现 PostgreSQL BLOB 类型数据处理(导入 / 导出 / 置空)
  5. 实现以文本方式查看 BLOB 数据
  6. 应用紧凑样式到查找与搜索框

# 袋鼠数据库工具 v0.30.1 (Dev)

  1. 插件系统增加应用相对搜索路径
  2. 增加数据查看面板和按钮
  3. 实现文本和图像查看器
  4. 界面按钮更新为瘦身平面样式

# 袋鼠数据库工具 v0.29.1 (Dev)

  1. 实现插件扩展系统
  2. 实现一个简单的演示插件(example)
  3. 更新 ArchLinux and MacOSX 安装包脚本
  4. 更新便携式发布包(更具 *nix 风格)

# 袋鼠数据库工具 v0.28.1 (Dev)

  1. 实现查找替换功能
  2. 更新中文语言翻译(zh-CN/zh-TW/zh-HK/zh-SG)
+ (adsbygoogle = window.adsbygoogle || []).push({}); +

# 袋鼠数据库工具 v0.27.1 (Beta)

  1. 改进 PostgreSQL 的智能提示数据
  2. 改进智能提示之自动完成样式(增加图标、过滤支持)
  3. 添加智能提示之函数参数自动提示功能
  4. 添加复制选中列头功能(长短名)
  5. 添加复制全部列头功能(TSV/CSV)
  6. 更新发布包命名格式
  7. 更新中文语言翻译

# 袋鼠数据库工具 v0.26.1 (Dev)

  1. 支持智能提示数据挖掘(SQLite/MySQL/PostgreSQL)
  2. 支持编辑视图代码自动完成(v1)

# 袋鼠数据库工具 v0.25.1 (Beta)

  1. 为数据库空间导航栏添加上下文菜单
  2. 为对象树数据库和模式节点添加查询.
  3. 更新中文翻译(zh-CN/zh-TW/zh-HK/zh-SG).
  4. 修复: PostgreSQL 12: 表和视图未显示 #46
  5. 修复: MariaDB 10.5: 不存在的列 cons.ENFORCED #47
  6. 修复: PostgreSQL 12: 不存在的列 c.consrc #48
  7. 修复: PostgreSQL 11.7 / 9.6: 数据行不存在 #49
  8. 修复: MySQL 5.7.30: information_schema 不存在表 'CHECK_CONSTRAINTS' #50
  9. 修复: PostgreSQL 9.6: 不存在的列 c.relispartition #51
  10. 修复: PostgreSQL: 数据库模式显示错误
  11. 修复: 数据网格列头显示错误(含有下划线字符_)

# 袋鼠数据库工具 v0.24.1 (Dev)

  1. 新增 SQL 格式化模块,支持美化和简化SQL.
  2. 新增 archlinux 安装器(基于 HowardZorn 提交的PR #45 ).
  3. 新增 苹果平台 安装器
+ (adsbygoogle = window.adsbygoogle || []).push({}); +

# 袋鼠数据库工具 v0.23.1 (Beta)

  1. 改进日期、日期时间选取控件.
  2. 改进标题栏背景图片(颜色).
  3. 改进网格列标题.
  4. 更新中文翻译.
  5. 修复: 不能更新日期、日期时间类型数据.
  6. 修复: 不能更新浮点类型数据.
  7. 修复: 不能更新数值类型(Numeric)
  8. 修复: MySQL: 不能更新字符串数组类型(Char)
  9. 修复: PostgreSQL: SQL中名字错误
  10. 修复: 数据网格工具栏状态错误.

# 袋鼠数据库工具 v0.22.1 (Beta)

  1. 增加中文语言翻译(简体中文[zh-CN//zh-SG]、繁体中文[zh-TW/zh-HK])
  2. SQLite: 新建数据库检查并增加扩展名(.sqlite).
  3. 改进设计器、删除、刷新体验,可以定位到原对象.
  4. 改进 Windows 平台自动化部署和安装脚本.
  5. 修复: 重命名时奔溃的bug.
  6. 修复: 删除对象时崩溃的bug.
  7. 修复: 保存表设计器修改时崩溃的bug
  8. 修复: 空表无法增加数据行
  9. 修复: 及时模式无法保存追加行

# 袋鼠数据库工具 v0.21.1 (Beta)

  1. 重构整个DataGrid,为了更好的用户体验
  2. DataGrid 支持三种编辑模式: LIVE / CACHE / TRANSACTION
  3. DataGrid 支持复制粘贴多行操作
  4. 当粘贴多行时,自动更新编辑模式为 CACHE 模式
  5. 修复: 查询构建器 where 子句表达式错误

# 袋鼠数据库工具 v0.20.1 (Dev)

  1. 数据网格实现复制数据行到剪贴板功能(TSV 格式)
  2. 重构表结构设计器弹出菜单.
  3. 表结构设计器实现克隆功能.
  4. 表结构设计器实现添加功能.
  5. 表结构设计器实现多行支持(删除/上移/下移).
  6. 表结构设计器实现复制功能.
  7. 表结构设计器实现剪切功能.
  8. 表结构设计器实现粘贴功能.
  9. 改进数据网格中文本处理性能.
+ (adsbygoogle = window.adsbygoogle || []).push({}); +

# 袋鼠数据库工具 v0.19.1 (Dev)

  1. 对象树上实现复制对象名称(长短名).
  2. 数据网格实现复制数据行为 SQL 语句(Insert/Update/Delete).
  3. 数据网格实现复制数据行为 TSV 格式
  4. 数据网格实现复制数据行为 CSV 格式
  5. 数据网格实现复制数据行为 PHP 数组
  6. 数据网格实现复制数据行为 JSON 格式
  7. 改进分栏控件边样式.
  8. 修复: 格式化BLOB数据时崩溃
  9. 修复: 数据表无关键字字段时崩溃
  10. 修复: 数据表关键字段中包含下划线时崩溃(_)
  11. 修复: 字段空值告警
  12. 修复: 错误调用告警(to_string)

# 袋鼠数据库工具 v0.18.1 (Dev)

  1. 加密保存用户密码.
  2. 数据网格支持插入、克隆、删除操作.
  3. 开始视图中支持数据库连接克隆
  4. 数据库对象树支持导出表结构SQL到剪贴板和文件
  5. 数据库对象树支持导出表结构SQL到编辑器中
  6. 数据库对象树支持刷新操作
  7. 改进工作区视图标题页展示行为
  8. 修复: 修复目录树回车键行为
  9. 修复: 修复打开表时崩溃行为(有空值)

# 袋鼠数据库工具 v0.17.0 (Dev)

  1. 支持SSH隧道方式连接数据库 (Windows, Linux/Unix and MacOS)
  2. 数据库连接对话框增加连接测试功能
  3. 重构数据表格上下文菜单
  4. 数据库对象树菜单增加导出SQL(剪贴板和文件)菜单
  5. 实现数据表格选择菜单功能(全选和反选)
  6. 实现数据表格跳转到指定行菜单
  7. 修复: 切换表格和表单时崩溃

# 袋鼠数据库工具 v0.16.0 (Dev)

  1. 数据库连接支持SSH隧道(Windows 未通过测试).
  2. 数据浏览页支持输入页面号切换
  3. 改进对话框中的开关控件布局
  4. 修复:Windows 版不能打开链接
  5. 修复: 日志文件序号问题
+ (adsbygoogle = window.adsbygoogle || []).push({}); +

# 袋鼠数据库工具 v0.15.0 (Dev)

  1. 更新并分享 openssl.vapi,集成加密模块保护用户敏感数据.
  2. 改进语言支持(消息模版, zh_Hans and zh_Hant)
  3. 改进首页资源加载性能(不在卡顿)
  4. 应用网络代理设置
  5. Linux: 切换首页浏览器视图为版本更新时间线视图
  6. 使用下拉选择框代替编辑器

# 袋鼠数据库工具 v0.14.0 (Dev)

  1. SQLite: 支持创建新数据库
  2. 重构数据库树向下文菜单
  3. 集成OpenSSL用于支持保护用户密码
  4. 右侧面板图标添加手指指针,用于提示可点击
  5. 修复:第一次启动时的窗口大小

# 袋鼠数据库工具 v0.13.0 (Dev)

  1. 数据网格应用格式设置
  2. SQL编辑器应用格式设置
  3. Windows 32位版本支持
  4. 实现SSH隧道初步支持
  5. 微调数据库连接对话框(完善配置保存和加载)
  6. 修复连接首页图标bug

# 袋鼠数据库工具 v0.12.1 (Dev)

  1. 新增应用配置对话框,可加载和保存应用配置
  2. 界面增加「夜间模式」支持
  3. 使用新配置模型重构连接对话框
  4. 使用新配置模型重构连接开始页面
+ (adsbygoogle = window.adsbygoogle || []).push({}); +

# 袋鼠数据库工具 v0.11.1 (Dev)

  1. 重新设计连接对话框,支持SSH、SSL、高级设置;
  2. 首页增加捐赠图片展示 (Paypal/Wechat/Alipay)
  3. 重新设置配置模型和文件(init --> json)
  4. 在窗口标题栏使用符号图标(#25)
  5. 修复:表格中编辑数据会批量更新的bug

# 袋鼠数据库工具 v0.11.0 (Dev)

  1. 增加程序首页,展示版本更新列表或显示网站首页(Linux)
  2. 重新实现 DSV 格式引擎
  3. 改进 CSV 格式与其它工具的兼容性
  4. 改进 DSV 格式设置UI布局
  5. 改进日期在线编辑控件,支持即时编辑
  6. 修复: 生成错误的SQL语句.
  7. 修复: 导入数据时奔溃.
  8. 修复: 无法保存数据网格中编辑的数据
  9. 修复: 修复一些控制台警告

# 袋鼠数据库工具 v0.10.0 (Dev)

  1. 增加导出向导用户界面
  2. 支持批量导出数据表为文件
  3. 支持多达7种数据格式(DSV/JSON/XML/HTML/Markdown/SQL)
  4. 支持数据字段重名(别名或标题)

# 袋鼠数据库工具 v0.9.5 (Dev)

  1. 支持从DSV(CSV、TSV)格式文件导入数据
  2. 支持从JSON格式文件导入数据
  3. 支持XML格式文件导入数据
  4. 使用libxml2库重写导出数据为XML格式
  5. 增加导出助理界面
  6. 初步实现导出格式、导出表选择页面
+ (adsbygoogle = window.adsbygoogle || []).push({}); +

# 袋鼠数据库工具 v0.9.4 (Dev)

  1. 实现文件导入处理结果界面
  2. 数据导入增加5中导入模式(追加、更新、合并、删除、替换)
  3. 实现导入数据到表中(SQLite)
  4. 重构对话框,增加翻译、艺术家和许可证信息,修复Mac和Ubuntu平台无法展示图片的问题;

# 袋鼠数据库工具 v0.9.3 (Dev)

  1. 实现工具页用于支持导入、导出功能
  2. 增加IDE相关接口,用于后续重构支持;

# 袋鼠数据库工具 v0.9.2 (Dev)

  1. 实现从文件导入数据功能(DSV/XML/JSON) #19 +
    • 实现文件导入格式、编码和预览界面
    • 实现文件导入格式参数设置界面
    • 实现文件导入解析数据预览界面
    • 实现文件导入字段映射界面(功能未实现)
    • 实现文件导入处理进度界面(功能未实现)
    • 实现文件导入之DSV格式解析和预览支持
    • 实现数据字段和目标表字段映射支持

# 袋鼠数据库工具 v0.9.1 (Dev)

  1. 支持导出数据到剪贴板或文件 #18 +
    • 支持导出为 DSV 格式(CSV/TSV/...)
    • 支持导出为 JSON 格式;
    • 支持导出为 XML 格式
    • 支持导出为 HTML 格式
    • 支持导出为 SQL 格式(INSERT)
    • 支持导出为 Markdown 格式
  2. 改进保存文件对话框文件过滤条件,提升用户体验

# 袋鼠数据库工具 v0.9.0 (Dev)

  1. 支持数据库表结构编辑和保存 #5
  2. 支持导出为JSON和DSV格式
+ (adsbygoogle = window.adsbygoogle || []).push({}); +

# 袋鼠数据库工具 v0.8.5 (Dev)

  1. 支持表结构编辑和保存(SQLite、PostgreSQL 预览版) #5
  2. 增加了数据导出的UI和接口
  3. 新建表保存时同步更新Tab页面标题

# 袋鼠数据库工具 v0.8.4 (Dev)

  1. 重组数据库对象树和界面 #17
  2. 增加数据库对象树刷新菜单
  3. 实现多个数据库支持
  4. 编辑表结构并保存(MySQL 预览) #5

# 袋鼠数据库工具 v0.8.3 (Dev)

  1. 新建连接时出现插件未加载错误 #12
  2. 增加 MacOS 平台编译支持 #13
  3. 重构数据库对象模型并改进互操作性

# 袋鼠数据库工具 v0.8.2 (Dev)

  1. 改进字段选择对话框,支持根据值选择字段 #9
  2. 改进表设计器支持 Tab 键 #3
  3. 修复: 字段表达式对话框重加载失败 #10
  4. 修复: 开始菜单和桌面快捷键和图标 #7
  5. 修复: SQL 语法高亮支持 #8
  6. 修复: 数据表单加载失败 #11
+ (adsbygoogle = window.adsbygoogle || []).push({}); +

# 袋鼠数据库工具 v0.8.1 (Dev)

  1. 改进:生成正确的编辑 SQL 语言
  2. 重构: 增加源代码编辑模块
  3. 改进:SQLite 模式SQL生成器
  4. 修复: 编辑器无法正确显示空白行
  5. 修复: 新增好行时获取字符串失败(控制台告警)
  6. 修复: 编辑表结构时控制台报错

# 袋鼠数据库工具 v0.8.0 (Dev)

  1. 实现 PostgreSQL SQL 生成器(11.0)
  2. 实现保存表结构到数据库(只创建)
  3. 更新构建脚本:隐藏控制台窗口
  4. 更新Windows安装程序:增加 MySQL 和 PostgreSQL 客户端库
  5. 更新关于对话框中的链接
  6. 改进单行编辑器控件(自动聚焦)
  7. 更新忙状态时的界面光标

# 袋鼠数据库工具 v0.7.2 (Dev)

  1. 实现 PostgreSQL 11 加载器
  2. 实现 PostgreSQL 11 表设计表单
  3. 重构项目目录
  4. 创建项目网站项目:dbkangaroo.github.io
  5. 增加 Windows 安装器脚本

# 袋鼠数据库工具 v0.6.0 (Dev)

  1. 实现数据网格中编辑和保存功能
  2. 实现表单编辑和保存功能
  3. 实现国际化支持(I18N)
  4. 实现中文语言翻译

# 袋鼠数据库工具 v0.4.0 (Dev)

  1. 实现数据翻页功能
  2. 实现查询构建器和应用
  3. 实现导出数据为CSV文件
  4. 实现系统日志输出视图
  5. 实现编辑和执行SQL
  6. 实现多个查询结果支持

# 袋鼠数据库工具 v0.2.0 (Dev)

  1. 增加连接设置界面
  2. 增加连接管理模块
  3. 实现加载并显示数据库对象树
  4. 实现打开并显示表数据
+ (adsbygoogle = window.adsbygoogle || []).push({}); +
+ + + diff --git a/zh/document/connection.html b/zh/document/connection.html new file mode 100644 index 000000000..93254ba7f --- /dev/null +++ b/zh/document/connection.html @@ -0,0 +1,77 @@ + + + + + + 连接管理器 | 袋鼠数据库工具 + + + + + + + + + + + +

# 连接管理

# 数据库连接限制

目前版本的数据库连接具有如下限制:

  • 安全套接字连接(SSL) 暂未支持
  • 安全外壳协议连接(SSH) 暂不支持加密密匙

# SQLite

连接 SQLite 数据库是很容易的,只需按照如下步骤操作:

  • 第一步: 点击标题栏上加号(+)按钮或者主菜单的__连接数据库__
  • 第二步: 在连接起始页中选择__新建连接__,打开连接对话框。
  • 第三步: 输入连接名字、选择数据库类型为 SQLite,然后选择左边加号创建或右边打开图标加载数据库文件。
  • 第四步: 点击__测试连接__按钮测试连接可用性,然后点击__保存__按钮保存连接。
  • 第五步: 连接起始页中选择点击新建的数据库连接,即可打开数据库。

# MySQL / MariaDB

MySQL / MariaDB 数据库连接类似于SQLite数据库连接,稍微复杂一些,因为它支持多种登录认证方式。所以您需要提前准备好连接所需相关素材,最顺畅的连接方式是使用原生密码认证登录方式(mysql_native_password), 原生密码认证登录方式可按如下步骤设置:

1) 打开控制台终端,执行命令
+2) mysql -u root -p
+3) 输入密码
+4) ALTER USER root@localhost IDENTIFIED WITH mysql_native_password BY 'password';
+

更新登录认证方式后,连接数据库就很容易了,请参考下图: +Make a MySQL connection

如果您的数据库系统架设在私有网络或防火墙后面,集成 SSH2 客户端可帮助您轻松建立连接,请参考下图:

Make a MySQL connection with SSH

# PostgreSQL

PostgreSQL 数据库连接和MySQL数据库连接的差异性很少,参考 MySQL 连接即可;

+ + + diff --git a/zh/document/dataview.html b/zh/document/dataview.html new file mode 100644 index 000000000..89f304f8a --- /dev/null +++ b/zh/document/dataview.html @@ -0,0 +1,74 @@ + + + + + + 数据视图 | 袋鼠数据库工具 + + + + + + + + + + + +

# 数据视图

# 显示顶部的SQL构建面板

Datagrid Builder +点击视图底部工具栏的 SQL构建工具 图标, 可显示或隐藏 SQL构建 面板,如图所示。 +Datagrid toolbar

# 选择数据列(字段)

  • 第一步: 点击 数据列 按钮切换到数据列选择视图。
  • 第二步: 勾选您希望显示的数据列名字。
  • 第三步: 点击工具栏上最右边的三角形 应用 按钮应用数据列。

# 添加查询条件

  • 第一步: 点击 条件 按钮切换到查询条件视图
  • 第二步: 点击加号(+)按钮添加查询条件
  • 第三步: 点击括号(())添加括号表达式
  • 第四步: 点击 AND(与) 和 OR(或) 按钮改变条件组合方式
  • 第五步: 点击工具栏上最右边的三角形 应用 按钮应用查询条件

# 添加数据排序

  • 第一步: 点击 排序 按钮切换到排序视图
  • 第二步: 点击加号(+)按钮添加排序表达式
  • 第三步: 点击列名和排序方法(ASC/DESC)按钮选择排序字段和排序方法
  • 第四步: 点击工具栏上最右边的三角形 应用 按钮应用排序

# 添加数据行数限制

  • 第一步: 点击 行数 按钮切换到数据行数视图
  • 第二步: 在编辑框中输入数字
  • 第三步: 点击工具栏上最右边的三角形 应用 按钮应用行数设置

# 切换数据编辑模式

  • 第一步: 在底部工具栏上点击编辑模式按钮弹出浮窗
  • 第二步: 在浮窗中选择编辑模式:即时模式、缓存模式、事务模式
+ + + diff --git a/zh/document/designer-model.html b/zh/document/designer-model.html new file mode 100644 index 000000000..29886aa83 --- /dev/null +++ b/zh/document/designer-model.html @@ -0,0 +1,72 @@ + + + + + + 数据库模型设计 | 袋鼠数据库工具 + + + + + + + + + + + + + + + diff --git a/zh/document/designer-schema.html b/zh/document/designer-schema.html new file mode 100644 index 000000000..309463354 --- /dev/null +++ b/zh/document/designer-schema.html @@ -0,0 +1,72 @@ + + + + + + 表结构设计器 | 袋鼠数据库工具 + + + + + + + + + + + + + + + diff --git a/zh/document/designer-sqlview.html b/zh/document/designer-sqlview.html new file mode 100644 index 000000000..597fb2900 --- /dev/null +++ b/zh/document/designer-sqlview.html @@ -0,0 +1,72 @@ + + + + + + 视图设计器 | 袋鼠数据库工具 + + + + + + + + + + + + + + + diff --git a/zh/document/drivers.html b/zh/document/drivers.html new file mode 100644 index 000000000..0292f4460 --- /dev/null +++ b/zh/document/drivers.html @@ -0,0 +1,93 @@ + + + + + + ODBC 驱动程序 | 袋鼠数据库工具 + + + + + + + + + + + +

# ODBC 驱动程序

# 免费的 ODBC 驱动程序

提供一些常见的第三方 ODBC 驱动程序及下载链接

ODBC 组件 Windows Linux macOS
ODBC Driver Manager 系统自带 UnixODBC (opens new window) / iODBC (opens new window) UnixODBC (opens new window) / iODBC (opens new window)
Access 2010 官方站 (opens new window) LibMDBODBC (opens new window) LibMDBODBC (opens new window)
Access 2016 官方站 (opens new window) LibMDBODBC (opens new window) LibMDBODBC (opens new window)
SQLite (x86-64) 服务器1 (opens new window) 服务器2 (opens new window) 官方站 (opens new window) SQLite ODBC (opens new window) SQLite ODBC (opens new window)
MySQL (x86-64) 服务器1 (opens new window) 服务器2 (opens new window) 官方站 (opens new window) 官方站 (opens new window) 官方站 (opens new window)
MariaDB (x86-64) 服务器1 (opens new window) 服务器2 (opens new window) 官方站 (opens new window) 官方站 (opens new window) 官方站 (opens new window)
PostgreSQL (x86-64) 服务器1 (opens new window) 服务器2 (opens new window) 官方站 (opens new window) 官方站 (opens new window) 官方站 (opens new window)
SQL Server 官方站 (opens new window) 官方站 (opens new window) 官方站 (opens new window)
Oracle 官方站 (opens new window)

UnixODBC 驱动列表 (opens new window)

# 收费的 ODBC 驱动程序

Easysoft ODBC Drivers (opens new window)
CData Software ODBC Drivers (opens new window)
Devart ODBC Drivers (opens new window)

+ (adsbygoogle = window.adsbygoogle || []).push({}); +

# UnixODBC / iODBC 安装与配置

  1. 安装 UnixODBC / iODBC
yum install -y <unixodbc | iodbc>
+yum install mysql-connector-odbc mariadb-connector-odbc pgodbc <ODBC driver package>
+
  1. 配置 ODBC 驱动程序
    +配置文件默认路径: /etc/odbcinst.ini, ODBC 驱动配置模板如下:
[DRIVER_NAME]
+  Description = 驱动程序简介
+  Driver = 驱动程序库完整路径
+  Setup = 驱动程序配置模块完整路径
+

配置完成后, 您可以使用命令列出所有已安装的驱动程序: odbcinst -q -d

  1. 系统数据源配置
    +配置文件默认路径: /etc/odbc.ini, ODBC 数据源配置模板如下:
[my_datasource]
+Driver = DRIVER_NAME
+Description = 数据源简介
+ServerPort = myoobserver:8888
+TargetDSN = mytargetdsn
+LogonUser = server_username
+LogonAuth = password_for_LogonUser
+

ODBC 数据源配置最重要的注意事项是数据源中的驱动(Driver)必需保持和驱动配置文件(odbcinst.ini)中的驱动名(DRIVER_NAME)一致。

  1. 文件数据源配置
    +配置文件默认路径: /etc/ODBCDataSources, ODBC 数据源配置模板如前所示;

  2. 用户独享数据源配置
    +配置文件默认路径: /home/auser/.odbc.ini, ODBC 数据源配置模板如前所示;

最后,您可以使用命令行列出所有已配置好的数据源: odbcinst -q -s

+ (adsbygoogle = window.adsbygoogle || []).push({}); +
+ + + diff --git a/zh/document/editor.html b/zh/document/editor.html new file mode 100644 index 000000000..1668d5c53 --- /dev/null +++ b/zh/document/editor.html @@ -0,0 +1,73 @@ + + + + + + 查询编辑器 | 袋鼠数据库工具 + + + + + + + + + + + +

# 查询编辑器

# 为何自动完成窗口按钮显示为乱码?

这是因为您选择的查询编辑器字体未支持当前语言字符(中文),建议您重新选择查询编辑器字体解决这个问题。 +请按照如下步骤选择字体:

  1. 主菜单选择 setting 菜单项,在打开的设置对话框中切换到 编辑器
  2. 导航至配置项 字体名字 & 大小
  3. 在弹出的字体选择对话框中选择能正确显示下方编辑框中的本地文字的字体即可;
+ + + diff --git a/zh/document/faq.html b/zh/document/faq.html new file mode 100644 index 000000000..03ba91ce9 --- /dev/null +++ b/zh/document/faq.html @@ -0,0 +1,90 @@ + + + + + + 常用问题列表 | 袋鼠数据库工具 + + + + + + + + + + + +

# 常用问题列表

# 关于许可证

# 袋鼠数据库工具是否免费?

2022年2月1日,袋鼠基于可持续发展的考虑,上线了新版用户许可协议,基于该协议,标记为Dev Beta的版本个人和组织可以免费使用,其它版本需要付费使用,详情请阅读产品许可证 获得更多明细.

# 袋鼠数据库工具是否开放源码?

如果开源能获得足够的赞助和支持,可支持项目可持续发展,开放源码将会是工具发展过程中的一个优先候选项。

# 关于版本

# 如何获得工具的当前版本?

您可以从工具的关于对话框窗口中获取版本信息: +第一步: 从__主菜单__进入__帮助__子菜单,然后点击__关于__菜单项,打开关于对话框 +第二步:关于对话框文本的第二行即为当前版本,版本格式为:主版本.次版本.发布版本.构建日期,例如:'0.8.5.191108'

# 什么时候推出稳定版本?

袋鼠持续在努力推进稳定版本的输出目标,稳定版本有两个考量点:

  1. 袋鼠依赖的库(GLib/GTK4)的成熟度和稳定性,需要选取高度成熟和稳定的依赖版本;
  2. 袋鼠自身的功能成熟度和稳定性最关键,开发组在持续评估这方面的情况; +综合各方面的信息,乐观预计在袋鼠四周年的时候(2023.4.1)推出稳定版本。

# 关于多语言

# 袋鼠数据库工具支持哪些语言?

袋鼠数据库工具官方支持英语和中文,其它语言得依靠社区支持;

# 如何切换支持其它语言?

设置环境变量后启动应用即可切换,环境变量请参考平台文档。 +【温馨提示】完整的本地化变量清单如下

LANG=zh_CN.UTF-8
+LC_CTYPE=zh_CN.UTF-8
+LC_NUMERIC=zh_CN.UTF-8
+LC_TIME=zh_CN.UTF-8
+LC_COLLATE=zh_CN.UTF-8
+LC_MONETARY=zh_CN.UTF-8
+LC_MESSAGES=zh_CN.UTF-8
+LC_ALL=zh_CN.UTF-8
+LC_PAPER=zh_CN.UTF-8
+LC_MEASUREMENT=zh_CN.UTF-8
+

# 安装包校验

# 如何校验下载的安装包是否完整?

您可以按如下步骤对安装包进行校验:

  1. 下载 SHA256 哈希值文件和签名文件(SHA256SUM and SHA256SUM.asc)

  2. 获取签名用的公匙
    1.6.1 及更新版本适用
    +签名用公匙ID: 8C0C55F7DEC8FC52 (当前有效, 生成于 2021)
    +签名用公匙: E4F02524471B195CCEFBD7158C0C55F7DEC8FC52

    1.6.1 以前的版本适用
    +签名用公匙ID: 702F717E0A17659D (已归档, 生成于 2020)
    +签名用公匙: 33E5119C5781C1B37E56E580702F717E0A17659D

    gpg --keyserver hkp://hkps.pool.sks-keyservers.net --receive-keys 8C0C55F7DEC8FC52

  3. 校验哈希值文件签名
    gpg --verify kangaroo-1.6.1.210131.sha256sum.asc

  4. 校验安装包文件哈希值
    +在安装包下载目录内执行命令行获得安装包文件哈希:
    sha256sum kangaroo-1.6.1.<else>
    +然后在 SHA256SUM 文件内搜索是否存在相同的哈希:
    grep <sha256sum output> kangaroo-1.6.1.sha256sum

# 技术支持

# 如何获得袋鼠数据库工具的最新进展?

您可以从以下渠道获得袋鼠数据库工具的最新信息: +Twitter (opens new window) Github (opens new window) Gitee(码云) (opens new window) 官方网站 (opens new window)

# 如何获得技术支持?

您可以在项目仓库 Github (opens new window) / +Gitee(码云) (opens new window) 提交缺陷和需求来获得官方支持,也可以分享您的解决方案;

# 微信公众号

为即时推送关于袋鼠的大篇幅文章和视频,故开通了微信公众号: 袋鼠数据库工具 (DataTableOnline),有兴趣的同学可关注。
袋鼠微信公众号

+ + + diff --git a/zh/document/feature-matrix.html b/zh/document/feature-matrix.html new file mode 100644 index 000000000..3eb61215d --- /dev/null +++ b/zh/document/feature-matrix.html @@ -0,0 +1,74 @@ + + + + + + 功能特性列表 | 袋鼠数据库工具 + + + + + + + + + + + +

# 功能特性列表

袋鼠工具特性 v2021 v2022 v2023 v2024 v2025
数据库系统
MySQL 5.1 或以上
MariaDB 10.0 或以上
PostgreSQL 9.5 或以上
SQLite 3.0
连接
安全连接: SSH/SSL
导出或导入连接设置
数据库对象支持
数据库
架构
数据表
视图
索引
触发器
函数/存储过程
数据查看器和编辑器
网格视图
表单视图
图表视图
地图视图
自动生成单元值
单元值算法更新
单元值算法复制
文本、图片查看和编辑
二进制、网页查看和编辑
原始数据模式编辑
自定义数据类型颜色
筛选记录
SQL 或脚本处理
SQL 或脚本编辑器
SQL 关键字自动完成
用户数据自动完成
可视化 SQL 或脚本创建工具
SQL 代码或脚本美化或简化
查找和替换
在外部编辑器中打开查询文件
数据模型
概念、逻辑和物理模型
逆向或正向工程
添加线、层、图像、笔记、艺术文本和形状
导出数据库图表到 PDF 和图形文件
导入或导出
从文件导入数据: TXT, CSV, XML, JSON
导出数据为文件: TXT, CSV, XML, JSON
导出数据到格式:Markdown、HTML
生成设计文档: Markdown、HTML
数据操作
转储或运行 SQL 或脚本文件
服务器安全性
角色管理
用户管理
其他实用功能
数据库范围搜索
深色模式
快捷键自定义
编辑器样式
分割视图
+ (adsbygoogle = window.adsbygoogle || []).push({}); +
+ + + diff --git a/zh/document/index.html b/zh/document/index.html new file mode 100644 index 000000000..b3d2b85b5 --- /dev/null +++ b/zh/document/index.html @@ -0,0 +1,68 @@ + + + + + + 使用文档 | 袋鼠数据库工具 + + + + + + + + + + + +

# 袋鼠使用文档

这里是所有用户文档的集中入口,您可以从这里查找您需要的文档,如果没有您需要的文档,您可以在项目缺陷库中提交请求,我们会第一时间更新、补充和完善文档;也欢迎您为袋鼠贡献文档;

# 微信公众号

为即时推送关于袋鼠的大篇幅文章和视频,故开通了微信公众号: 袋鼠数据库工具 (DataTableOnline),有兴趣的同学可关注。
袋鼠微信公众号

# 系统需求

最低系统需求

# 价格方案

袋鼠价格方案

# 更新记录

袋鼠数据库工具更新时间线

# 安装袋鼠

Windows 版本袋鼠数据库工具具有完整的功能支持,且具有最佳用户体验:
Windows 平台安装袋鼠数据库工具

Linux 版本袋鼠数据库工具具有完整的功能支持,安装很轻松:
Linux 平台安装袋鼠数据库工具

MacOS 版本袋鼠数据库工具具有完整的功能支持,安装体验正在完善中:
MacOS 平台安装袋鼠数据库工具

# 功能特性

完整功能清单

# 界面快照

工具界面快照

# 连接数据库

建立一个数据库连接

# 新建数据表

表对象设计器

# 数据编辑器

数据浏览及编辑视图

# 查询分析器

SQL 编辑查询视图

# SQLite特色功能

SQLite 特色功能

# ODBC 驱动程序

ODBC 驱动程序

# 2K/3K/4K 显示器设置

高分辨率缩放设置

# 常用问题列表

常用问题列表

+ + + diff --git a/zh/document/install-linux.html b/zh/document/install-linux.html new file mode 100644 index 000000000..987b55b77 --- /dev/null +++ b/zh/document/install-linux.html @@ -0,0 +1,81 @@ + + + + + + Linux 平台安装 | 袋鼠数据库工具 + + + + + + + + + + + +

# Linux 平台安装

# 下载 袋鼠数据库工具

点击链接下载最新版的袋鼠数据库工具 下载

# 在 Debian/Ubuntu 发行版上安装

先从官网下载 Debian/Ubuntu 支持的安装包(*.deb),然后执行命令:

# For Ubuntu
+sudo apt install kangaroo-max-3.92.1.230901-x86_64.deb
+# For Debian
+sudo dpkg -i kangaroo-max-3.92.1.230901-x86_64.deb
+

# 在 RHEL/CentOS/Fedora 发行版上安装

先从官网下载 RHEL/CentOS/Fedora 支持的安装包(*.rpm),然后执行命令:

# For Fedora
+sudo dnf install kangaroo-max-3.92.1.230901-x86_64.rpm
+# For RHEL/CentOS
+sudo yum install kangaroo-max-3.92.1.230901-x86_64.rpm
+

# 在 Arch Linux 发行版上安装

先从官网下载 Arch Linux 支持的安装包(*.pkg.tar.zst),然后执行命令:

sudo pacman -U kangaroo-max-3.91.1.230901-1-x86_64.pkg.tar.zst
+
+ + + diff --git a/zh/document/install-macos.html b/zh/document/install-macos.html new file mode 100644 index 000000000..125a1b8bc --- /dev/null +++ b/zh/document/install-macos.html @@ -0,0 +1,75 @@ + + + + + + MacOS 平台安装 | 袋鼠数据库工具 + + + + + + + + + + + +

# MacOS 平台安装

打开来自身份不明开发者(未签名)的 Mac App

若要覆盖安全性设置且仍然打开 App,请按照以下步骤操作:

  1. 在 Mac 上的“访达” 中,找到想要打开的 App。
    +请勿使用启动台来执行此操作。启动台不允许访问快捷菜单。
  2. 按住 Control 键点按 App 图标,然后从快捷键菜单中选取“打开”。
  3. 点按“打开”。
    +该 App 将存储为安全性设置的例外情况,今后您将可以通过连按打开它,如同任何注册的 App 那样。

# 下载袋鼠数据库工具

点击链接下载最新版的袋鼠数据库工具 下载

# 安装袋鼠数据库工具

MacOS 平台提供了两种安装方式:安装程序 和 手工安装,您可以根据您的喜好安装;

# 安装程序

  1. 在文件管理器中挂载并打开 DMG 安装器
  2. 在显示的界面中拖动袋鼠图标到右边的应用图标上即可完成安装。 +Mac 安装界面
  3. 从应用中心启动袋鼠数据库工具,检查是否一切正常
+ + + diff --git a/zh/document/install-windows.html b/zh/document/install-windows.html new file mode 100644 index 000000000..a67b7d8d9 --- /dev/null +++ b/zh/document/install-windows.html @@ -0,0 +1,74 @@ + + + + + + Windows 平台安装 | 袋鼠数据库工具 + + + + + + + + + + + +

# Windows 平台安装

# 通过官网下载安装

提示

推荐安装方式,支持 Windows 7 / Windows 10 以上版本(x64)

# 从官网下载软件包

点击链接下载最新版的袋鼠数据库工具 下载

# 安装袋鼠数据库工具

Windows 版提供了两种安装方式:安装程序 和 手工安装,您可以根据您的需要选择安装。

# 安装程序安装

  1. 双击安装程序启动安装,根据安装指导完成安装即可,使用默认设置安装方式即可;
  2. 检查开始菜单中是否存在袋鼠数据库工具图标

如果您想要 袋鼠 更具便携性,例如想要安装和运行在 USB 设备上,您需要在安装程序里勾选安装组件 Profile in app directory ,如下图所示: +Make Kangaroo portable

# 压缩包手工安装

  1. 创建存放袋鼠数据库工具的最终安装目录, 例如: C:\Program Files\Kangaroo\
  2. 解压袋鼠数据库工具便携式压缩包到该目录中 (7-Zip 7z.exe)
  3. 右键拖动 袋鼠数据库工具 执行文件到桌面创建快捷键 (bin\kangaroo.exe).
  4. 双击快捷键启动工具

# 通过 WinGet 软件仓库安装

注意

这个方法只支持 Windows 10 以上版本

下载并安装 WinGet, 然后执行命令完成安装

winget install Taozuhong.Kangaroo
+

# 通过微软公司软件市场安装

注意

这个方法只支持 Windows 10 以上版本

暂未开放支持,请耐心等候

+ + + diff --git a/zh/document/pricing.html b/zh/document/pricing.html new file mode 100644 index 000000000..41dff7442 --- /dev/null +++ b/zh/document/pricing.html @@ -0,0 +1,72 @@ + + + + + + 价格方案 | 袋鼠数据库工具 + + + + + + + + + + + +

# 袋鼠价格方案

# 特性价格方案

以下版本价格均为按年订阅价格,包含一年内免费升级和支持服务。

特性方案 企业许可证 非商业许可证 许可证展期
多数据库 (含税) CNY 1899 CNY 699 八折优惠
单数据库 (含税) CNY 499 CNY 199 八折优惠

# 许可证设备支持

  1. 一个许可证对应一个用户,通过手机进行验证及绑定。
  2. 一个许可证可支持 3 台设备(Windows / MacOS / Linux)。
+ + + diff --git a/zh/document/scale.html b/zh/document/scale.html new file mode 100644 index 000000000..bb48a40bc --- /dev/null +++ b/zh/document/scale.html @@ -0,0 +1,108 @@ + + + + + + 高分辨率缩放设置 | 袋鼠数据库工具 + + + + + + + + + + + +

# 高分辨率缩放设置

GTK4 已经实现所有平台的高分辨率缩放支持, 所有的 GTK4 应用都会自动应用系统缩放设置进行缩放。但有时候会存在缩放问题,需要您尝试一下另一种方式来实现缩放支持,详细的解决办法如下:

# 4K 分辨率缩放(200%)

# Windows

GDK_SCALE = 2
+// GDK_DPI_SCALE=96
+

# macOS

// 环境变量 
+GDK_SCALE = 2
+// GDK_DPI_SCALE = 96
+

# Linux / GTK

// 环境变量 
+GDK_SCALE = 2
+// GDK_DPI_SCALE = 96
+or
+// (X11 Server) XSettings value
+Gdk/WindowScalingFactor = 2
+Gdk/UnscaledDPI = 98340
+

# Linux / KDE

// 环境变量 
+unset GDK_SCALE
+unset GDK_DPI_SCALE
+// (X11 Server) XSettings value: ~/.config/xsettingsd/xsettingsd.conf
+Gdk/WindowScalingFactor = 2
+Gdk/UnscaledDPI = 98340
+

# 8K 分辨率缩放(400%)

# Windows

GDK_SCALE = 4
+// GDK_DPI_SCALE=96
+

# macOS

// 环境变量 
+GDK_SCALE = 4
+// GDK_DPI_SCALE = 96
+

# Linux / GTK

// 环境变量 
+GDK_SCALE = 4
+// GDK_DPI_SCALE = 96
+or
+// (X11 Server) XSettings value
+Gdk/WindowScalingFactor = 4
+Gdk/UnscaledDPI = 98340
+

# Linux / KDE

// 环境变量 
+unset GDK_SCALE
+unset GDK_DPI_SCALE
+// (X11 Server) XSettings value: ~/.config/xsettingsd/xsettingsd.conf
+Gdk/WindowScalingFactor = 4
+Gdk/UnscaledDPI = 98340
+
+ + + diff --git a/zh/document/screenshots.html b/zh/document/screenshots.html new file mode 100644 index 000000000..4d6338a3f --- /dev/null +++ b/zh/document/screenshots.html @@ -0,0 +1,82 @@ + + + + + + 工具界面快照 | 袋鼠数据库工具 + + + + + + + + + + + + + + + diff --git a/zh/document/sqlite.html b/zh/document/sqlite.html new file mode 100644 index 000000000..fdc54ddcf --- /dev/null +++ b/zh/document/sqlite.html @@ -0,0 +1,73 @@ + + + + + + SQLite 特色功能 | 袋鼠数据库工具 + + + + + + + + + + + +

# SQLite 特色功能

# 快速建立数据库连接

把已经存在的 SQLite 数据库文件拖放到连接首页,即可一步到位创建数据库连接

# 如何创建 SQLite 数据库

袋鼠 支持两种方式创建 SQLite 数据库文件:

  1. 在文件目录中新建一个空文件并将扩展名改为 SQLite 文件扩展名(.db/.sqlite),然后拖放到连接首页即可创建数据库连接;

  2. 点击新建数据库连接,在弹出的对话框中选择 SQLite 数据库类型,然后点击左边的图标新建数据库,即可完成创建数据库文件; +创建SQLite数据库

+ + + diff --git a/zh/document/system-requirements.html b/zh/document/system-requirements.html new file mode 100644 index 000000000..bac47f945 --- /dev/null +++ b/zh/document/system-requirements.html @@ -0,0 +1,72 @@ + + + + + + 系统需求 | 袋鼠数据库工具 + + + + + + + + + + + + + + + diff --git a/zh/document/visual-sql-builder.html b/zh/document/visual-sql-builder.html new file mode 100644 index 000000000..5a6024649 --- /dev/null +++ b/zh/document/visual-sql-builder.html @@ -0,0 +1,72 @@ + + + + + + 可视化SQL构建器 | 袋鼠数据库工具 + + + + + + + + + + + + + + + diff --git a/zh/download/index.html b/zh/download/index.html new file mode 100644 index 000000000..77b8ad10d --- /dev/null +++ b/zh/download/index.html @@ -0,0 +1,70 @@ + + + + + + 下载 | 袋鼠数据库工具 + + + + + + + + + + + +

# 下载 袋鼠数据库工具

始终建议您下载或升级到袋鼠数据库工具最新版本,因为新特性和缺陷修复会包含在滚动发布的新版本中;由于服务器空间限制原因,某些服务器仅提供最新版本下载。

重要提示

版本中标注有 Dev Beta 字样的可以免费使用,其它版本需要付费。

# 袋鼠数据库工具版本

发布日期 Windows Linux MacOS iOS Android
2023-09-01 v3.92.1 v3.92.1 v3.92.1
2023-08-01 v3.91.1 (Beta) v3.91.1 (Beta) v3.91.1 (Beta)
2023-07-01 v3.90.1 (Beta) v3.90.1 (Beta) v3.90.1 (Beta)
2023-06-02 v2.99.3 (Beta) v2.99.3 (Beta) v2.99.3 (Beta)
2023-05-08 v1.10.3 (Beta) v1.10.3 (Beta) v1.10.3 (Beta)
2023-04-28 v2.99.2 (Beta) v2.99.2 (Beta) v2.99.2 (Beta)
2023-04-02 v2.99.1 (Beta) v2.99.1 (Beta) v2.99.1 (Beta)
2023-03-01 v2.3.2 (Beta) v2.3.2 (Beta) v2.3.2 (Beta)
2023-02-01 v2.3.1 (Beta) v2.3.1 (Beta) v2.3.1 (Beta)
2023-01-01 v2.2.1 (Beta) v2.2.1 (Beta) v2.2.1 (Beta)
2022-12-01 v2.1.1 (Beta) v2.1.1 (Beta) v2.1.1 (Beta)
2022-11-01 v2.0.0 (Beta) v2.0.0 (Beta) v2.0.0 (Beta)
2022-10-01 v1.99.1 (Dev) v1.99.1 (Dev) v1.99.1 (Dev)
2022-09-04 v1.98.1 (Dev) v1.98.1 (Dev) v1.98.1 (Dev)
2022-07-31 v1.97.1 (Dev) v1.97.1 (Dev) v1.97.1 (Dev)
2022-07-01 v1.10.2 (Beta) v1.10.2 (Beta) v1.10.2 (Beta)
2022-07-01 v1.96.1 (Dev) v1.96.1 (Dev) v1.96.1 (Dev)
2022-06-01 v1.95.1 (Dev) v1.95.1 (Dev) v1.95.1 (Dev)
2022-05-01 v1.94.1 (Dev) v1.94.1 (Dev) v1.94.1 (Dev)
2022-04-01 v1.93.1 (Dev) v1.93.1 (Dev) v1.93.1 (Dev)
2022-02-28 v1.92.1 (Dev) v1.92.1 (Dev) v1.92.1 (Dev)
2022-01-28 v1.91.1 (Dev) v1.91.1 (Dev) v1.91.1 (Dev)
2021-12-31 v1.90.1 (Dev) v1.90.1 (Dev) v1.90.1 (Dev)
2021-07-31 v1.10.1 (Beta) v1.10.1 (Beta) v1.10.1 (Beta)
2021-05-31 v1.9.1 (Dev) v1.9.1 (Dev) v1.9.1 (Dev)
2021-04-30 v1.8.1 (Dev) v1.8.1 (Dev) v1.8.1 (Dev)
2021-03-31 v1.7.1 (Dev) v1.7.1 (Dev) v1.7.1 (Dev)
2021-01-31 v1.6.1 (Dev) v1.6.1 (Dev) v1.6.1 (Dev)
2020-12-31 v1.5.1 (Dev) v1.5.1 (Dev) v1.5.1 (Dev)
2020-11-09 v1.0.6 (Beta) v1.0.6 (Beta) v1.0.6 (Beta)
2020-11-02 v1.3.1 (Dev) v1.3.1 (Dev) v1.3.1 (Dev)
2020-10-19 v1.0.5 (Beta) v1.0.5 (Beta) v1.0.5 (Beta)
2020-09-21 v0.99.3 (Beta) v0.99.3 (Beta) v0.99.3 (Beta)
2020-09-07 v0.99.2 (Beta) v0.99.2 (Beta) v0.99.2 (Beta)
2020-08-24 v0.99.1 (Beta) v0.99.1 (Beta) v0.99.1 (Beta)
2020-08-17 v0.33.1 (Dev) v0.33.1 (Dev) v0.33.1 (Dev)
2020-08-10 v0.32.1 (Dev) v0.32.1 (Dev) v0.32.1 (Dev)
2020-08-03 v0.31.1 (Dev) v0.31.1 (Dev) v0.31.1 (Dev)
2020-07-27 v0.30.1 (Dev) v0.30.1 (Dev) v0.30.1 (Dev)
2020-07-13 v0.29.1 (Dev) v0.29.1 (Dev) v0.29.1 (Dev)
2020-06-29 v0.28.1 (Dev) v0.28.1 (Dev) v0.28.1 (Dev)
2020-06-22 v0.27.1 (Beta) v0.27.1 (Beta) v0.27.1 (Beta)
2020-06-15 v0.26.1 (Dev) v0.26.1 (Dev) v0.26.1 (Dev)
2020-06-01 v0.25.1 (Beta) v0.25.1 (Beta) v0.25.1 (Beta)
2020-05-25 v0.24.1 (Dev) v0.24.1 (Dev) v0.24.1 (Dev)
2020-05-18 v0.23.1 (Beta) v0.23.1 (Beta) v0.23.1 (Beta)
2020-05-11 v0.22.1 (Beta) v0.22.1 (Beta) v0.22.1 (Beta)
2020-05-04 v0.21.1 (Beta) v0.21.1 (Beta) v0.21.1 (Beta)
2020-04-20 v0.20.1 (Dev) v0.20.1 (Dev) v0.20.1 (Dev)
2020-04-13 v0.19.1 (Dev) v0.19.1 (Dev) v0.19.1 (Dev)
2020-04-06 v0.18.1 (Dev) v0.18.1 (Dev) v0.18.1 (Dev)
2020-03-23 v0.17.0 (Dev) v0.17.0 (Dev) v0.17.0 (Dev)
2020-03-16 v0.16.0 (Dev) v0.16.0 (Dev)
2020-03-02 v0.15.0 (Dev) v0.15.0 (Dev) v0.15.0 (Dev)
2020-02-17 v0.14.0 (Dev) v0.14.0 (Dev) v0.14.0 (Dev)
2020-02-10 v0.13.0 (Dev) v0.13.0 (Dev) v0.13.0 (Dev)
2020-01-20 v0.12.1 (Dev) v0.12.1 (Dev) v0.12.1 (Dev)
2020-01-13 v0.11.1 (Dev) v0.11.1 (Dev) v0.11.1 (Dev)
2020-01-06 v0.11.0 (Dev) v0.11.0 (Dev) v0.11.0 (Dev)
2019-12-23 v0.10.0 (Dev) v0.10.0 (Dev) v0.10.0 (Dev)
2019-12-16 v0.9.5 (Dev) v0.9.5 (Dev) v0.9.5 (Dev)
2019-12-09 v0.9.4 (Dev) v0.9.4 (Dev) v0.9.4 (Dev)
2019-12-02 v0.9.3 (Dev) v0.9.3 (Dev) v0.9.3 (Dev)
2019-11-25 v0.9.2 (Dev) v0.9.2 (Dev) v0.9.2 (Dev)
2019-11-18 v0.9.1 (Dev) v0.9.1 (Dev) v0.9.1 (Dev)
2019-11-11 v0.9.0 (Dev) v0.9.0 (Dev) v0.9.0 (Dev)
2019-11-04 v0.8.5 (Dev) v0.8.5 (Dev) v0.8.5 (Dev)
2019-10-28 v0.8.4 (Dev) v0.8.4 (Dev) v0.8.4 (Dev)
2019-10-21 v0.8.3 (Dev) v0.8.3 (Dev) v0.8.3 (Dev)
2019-10-14 v0.8.2 (Dev) v0.8.2 (Dev)
2019-09-30 v0.8.1 (Dev) v0.8.1 (Dev)
2019-09-23 v0.8.0 (Dev) v0.8.0 (Dev)
2019-09-16 v0.7.2 (Dev) v0.7.2 (Dev)
+ (adsbygoogle = window.adsbygoogle || []).push({}); +
+ + + diff --git a/zh/download/v0.10.0.191223.html b/zh/download/v0.10.0.191223.html new file mode 100644 index 000000000..75fd53419 --- /dev/null +++ b/zh/download/v0.10.0.191223.html @@ -0,0 +1,74 @@ + + + + + + 袋鼠数据库工具 v0.10.0 (Dev) | 袋鼠数据库工具 + + + + + + + + + + + +

# 袋鼠数据库工具 v0.10.0 (Dev)

# 新特性或修复的缺陷列表

  1. 增加导出向导用户界面
  2. 支持批量导出数据表为文件
  3. 支持多达7种数据格式(DSV/JSON/XML/HTML/Markdown/SQL)
  4. 支持数据字段重名(别名或标题)
+ (adsbygoogle = window.adsbygoogle || []).push({}); +

# 安装程序和便携安装包 链接已失效

安装包 Windows (64 bit) Linux (64 bit) MacOS (64 bit)
安装程序
(Github.com)
Windows (opens new window)
安装包
(Github.com)
Windows (opens new window) Ubuntu (opens new window) MacOS (opens new window)
安装程序
(Gitee.com)
Windows (opens new window)
安装包
(Gitee.com)
Windows (opens new window) Ubuntu (opens new window) MacOS (opens new window)
+ + + diff --git a/zh/download/v0.11.0.200106.html b/zh/download/v0.11.0.200106.html new file mode 100644 index 000000000..142e2c2e3 --- /dev/null +++ b/zh/download/v0.11.0.200106.html @@ -0,0 +1,74 @@ + + + + + + 袋鼠数据库工具 v0.11.0 (Dev) | 袋鼠数据库工具 + + + + + + + + + + + +

# 袋鼠数据库工具 v0.11.0 (Dev)

# 新特性或修复的缺陷列表

  1. 增加程序首页,展示版本更新列表或显示网站首页(Linux)
  2. 重新实现 DSV 格式引擎
  3. 改进 CSV 格式与其它工具的兼容性
  4. 改进 DSV 格式设置UI布局
  5. 改进日期在线编辑控件,支持即时编辑
  6. 修复: 生成错误的SQL语句.
  7. 修复: 导入数据时奔溃.
  8. 修复: 无法保存数据网格中编辑的数据
  9. 修复: 修复一些控制台警告
+ (adsbygoogle = window.adsbygoogle || []).push({}); +

# 安装程序和便携安装包 链接已失效

安装包 Windows (64 bit) Linux (64 bit) MacOS (64 bit)
安装程序
(Github.com)
Windows (opens new window)
安装包
(Github.com)
Windows (opens new window) Ubuntu (opens new window) MacOS (opens new window)
安装程序
(Gitee.com)
Windows (opens new window)
安装包
(Gitee.com)
Windows (opens new window) Ubuntu (opens new window) MacOS (opens new window)
+ + + diff --git a/zh/download/v0.11.1.200113.html b/zh/download/v0.11.1.200113.html new file mode 100644 index 000000000..a63b24136 --- /dev/null +++ b/zh/download/v0.11.1.200113.html @@ -0,0 +1,74 @@ + + + + + + 袋鼠数据库工具 v0.11.1 (Dev) | 袋鼠数据库工具 + + + + + + + + + + + +

# 袋鼠数据库工具 v0.11.1 (Dev)

# 新特性或修复的缺陷列表

  1. 重新设计连接对话框,支持SSH、SSL、高级设置;
  2. 首页增加捐赠图片展示 (Paypal/Wechat/Alipay)
  3. 重新设置配置模型和文件(init --> json)
  4. 在窗口标题栏使用符号图标(#25)
  5. 修复:表格中编辑数据会批量更新的bug
+ (adsbygoogle = window.adsbygoogle || []).push({}); +

# 安装程序和便携安装包 链接已失效

安装包 Windows (64 bit) Linux (64 bit) MacOS (64 bit)
安装程序
(Github.com)
Windows (opens new window)
安装包
(Github.com)
Windows (opens new window) Ubuntu (opens new window) MacOS (opens new window)
安装程序
(Gitee.com)
Windows (opens new window)
安装包
(Gitee.com)
Windows (opens new window) Ubuntu (opens new window) MacOS (opens new window)
+ + + diff --git a/zh/download/v0.12.1.200120.html b/zh/download/v0.12.1.200120.html new file mode 100644 index 000000000..a4a905af1 --- /dev/null +++ b/zh/download/v0.12.1.200120.html @@ -0,0 +1,74 @@ + + + + + + 袋鼠数据库工具 v0.12.1 (Dev) | 袋鼠数据库工具 + + + + + + + + + + + +

# 袋鼠数据库工具 v0.12.1 (Dev)

# 新特性或修复的缺陷列表

  1. 新增应用配置对话框,可加载和保存应用配置
  2. 界面增加「夜间模式」支持
  3. 使用新配置模型重构连接对话框
  4. 使用新配置模型重构连接开始页面
+ (adsbygoogle = window.adsbygoogle || []).push({}); +

# 安装程序和便携安装包 链接已失效

安装包 Windows (64 bit) Linux (64 bit) MacOS (64 bit)
安装程序
(Github.com)
Windows (opens new window)
安装包
(Github.com)
Windows (opens new window) Ubuntu (opens new window) MacOS (opens new window)
安装程序
(Gitee.com)
Windows (opens new window)
安装包
(Gitee.com)
Windows (opens new window) Ubuntu (opens new window) MacOS (opens new window)
+ + + diff --git a/zh/download/v0.13.0.200210.html b/zh/download/v0.13.0.200210.html new file mode 100644 index 000000000..a58651060 --- /dev/null +++ b/zh/download/v0.13.0.200210.html @@ -0,0 +1,74 @@ + + + + + + 袋鼠数据库工具 v0.13.0 (Dev) | 袋鼠数据库工具 + + + + + + + + + + + +

# 袋鼠数据库工具 v0.13.0 (Dev)

# 新特性或修复的缺陷列表

  1. 数据网格应用格式设置
  2. SQL编辑器应用格式设置
  3. Windows 32位版本支持
  4. 实现SSH隧道初步支持
  5. 微调数据库连接对话框(完善配置保存和加载)
  6. 修复连接首页图标bug
+ (adsbygoogle = window.adsbygoogle || []).push({}); +

# 安装程序和便携安装包 链接已失效

安装包 Windows(32 bit) Windows(64 bit) Linux(64 bit) MacOS(64 bit)
安装程序
(Github.com)
Windows (opens new window) Windows (opens new window)
安装包
(Github.com)
Windows (opens new window) Windows (opens new window) Ubuntu (opens new window) MacOS (opens new window)
安装程序
(Gitee.com)
Windows (opens new window) Windows (opens new window)
安装包
(Gitee.com)
Windows (opens new window) Windows (opens new window) Ubuntu (opens new window) MacOS (opens new window)
+ + + diff --git a/zh/download/v0.14.0.200217.html b/zh/download/v0.14.0.200217.html new file mode 100644 index 000000000..1e9e00d05 --- /dev/null +++ b/zh/download/v0.14.0.200217.html @@ -0,0 +1,74 @@ + + + + + + 袋鼠数据库工具 v0.14.0 (Dev) | 袋鼠数据库工具 + + + + + + + + + + + +

# 袋鼠数据库工具 v0.14.0 (Dev)

# 新特性或修复的缺陷列表

  1. SQLite: 支持创建新数据库
  2. 重构数据库树向下文菜单
  3. 集成OpenSSL用于支持保护用户密码
  4. 右侧面板图标添加手指指针,用于提示可点击
  5. 修复:第一次启动时的窗口大小
+ (adsbygoogle = window.adsbygoogle || []).push({}); +

# 安装程序和便携安装包 链接已失效

安装包 Windows(32 bit) Windows(64 bit) Linux(64 bit) MacOS(64 bit)
安装程序
(Github.com)
Windows (opens new window)
安装包
(Github.com)
Windows (opens new window) Ubuntu (opens new window) MacOS (opens new window)
安装程序
(Gitee.com)
Windows (opens new window)
安装包
(Gitee.com)
Windows (opens new window) Ubuntu (opens new window) MacOS (opens new window)
+ + + diff --git a/zh/download/v0.15.0.200302.html b/zh/download/v0.15.0.200302.html new file mode 100644 index 000000000..2ed7a64ec --- /dev/null +++ b/zh/download/v0.15.0.200302.html @@ -0,0 +1,74 @@ + + + + + + 袋鼠数据库工具 v0.15.0 (Dev) | 袋鼠数据库工具 + + + + + + + + + + + +

# 袋鼠数据库工具 v0.15.0 (Dev)

# 新特性或修复的缺陷列表

  1. 更新并分享 openssl.vapi,集成加密模块保护用户敏感数据.
  2. 改进语言支持(消息模版, zh_Hans and zh_Hant)
  3. 改进首页资源加载性能(不在卡顿)
  4. 应用网络代理设置
  5. Linux: 切换首页浏览器视图为版本更新时间线视图
  6. 使用下拉选择框代替编辑器
+ (adsbygoogle = window.adsbygoogle || []).push({}); +

# 安装程序和便携安装包 链接已失效

安装包 Windows(32 bit) Windows(64 bit) Linux(64 bit) MacOS(64 bit)
安装程序
(Github.com)
Windows (opens new window)
安装包
(Github.com)
Windows (opens new window) Arch (opens new window)
Ubuntu (opens new window)
MacOS (opens new window)
安装程序
(Gitee.com)
Windows (opens new window)
安装包
(Gitee.com)
Windows (opens new window) Arch (opens new window)
Ubuntu (opens new window)
MacOS (opens new window)
+ + + diff --git a/zh/download/v0.16.0.200316.html b/zh/download/v0.16.0.200316.html new file mode 100644 index 000000000..d77787fd7 --- /dev/null +++ b/zh/download/v0.16.0.200316.html @@ -0,0 +1,74 @@ + + + + + + 袋鼠数据库工具 v0.16.0 (Dev) | 袋鼠数据库工具 + + + + + + + + + + + +

# 袋鼠数据库工具 v0.16.0 (Dev)

# 新特性或修复的缺陷列表

  1. 数据库连接支持SSH隧道(Windows 未通过测试).
  2. 数据浏览页支持输入页面号切换
  3. 改进对话框中的开关控件布局
  4. 修复:Windows 版不能打开链接
  5. 修复: 日志文件序号问题
+ (adsbygoogle = window.adsbygoogle || []).push({}); +

# 安装程序和便携安装包 链接已失效

安装包 Windows(32 bit) Windows(64 bit) Linux(64 bit) MacOS(64 bit)
安装程序
(Github.com)
Installer (opens new window)
安装包
(Github.com)
Portable (opens new window) Arch (opens new window)
安装程序
(Gitee.com)
Installer (opens new window)
安装包
(Gitee.com)
Portable (opens new window) Arch (opens new window)
+ + + diff --git a/zh/download/v0.17.0.200323.html b/zh/download/v0.17.0.200323.html new file mode 100644 index 000000000..63025d9d6 --- /dev/null +++ b/zh/download/v0.17.0.200323.html @@ -0,0 +1,74 @@ + + + + + + 袋鼠数据库工具 v0.17.0 (Dev) | 袋鼠数据库工具 + + + + + + + + + + + +

# 袋鼠数据库工具 v0.17.0 (Dev)

# 新特性或修复的缺陷列表

  1. 支持SSH隧道方式连接数据库 (Windows, Linux/Unix and MacOS)
  2. 数据库连接对话框增加连接测试功能
  3. 重构数据表格上下文菜单
  4. 数据库对象树菜单增加导出SQL(剪贴板和文件)菜单
  5. 实现数据表格选择菜单功能(全选和反选)
  6. 实现数据表格跳转到指定行菜单
  7. 修复: 切换表格和表单时崩溃
+ (adsbygoogle = window.adsbygoogle || []).push({}); +

# 安装程序和便携安装包 链接已失效

安装包 Windows(32 bit) Windows(64 bit) Linux(64 bit) MacOS(64 bit)
安装程序
(Github.com)
Installer (opens new window)
安装包
(Github.com)
Portable (opens new window) Arch (opens new window) MacOS (opens new window)
安装程序
(Gitee.com)
Installer (opens new window)
安装包
(Gitee.com)
Portable (opens new window) Arch (opens new window) MacOS (opens new window)
+ + + diff --git a/zh/download/v0.18.1.200406.html b/zh/download/v0.18.1.200406.html new file mode 100644 index 000000000..05dcbe541 --- /dev/null +++ b/zh/download/v0.18.1.200406.html @@ -0,0 +1,74 @@ + + + + + + 袋鼠数据库工具 v0.18.1 (Dev) | 袋鼠数据库工具 + + + + + + + + + + + +

# 袋鼠数据库工具 v0.18.1 (Dev)

# 新特性或修复的缺陷列表

  1. 加密保存用户密码.
  2. 数据网格支持插入、克隆、删除操作.
  3. 开始视图中支持数据库连接克隆
  4. 数据库对象树支持导出表结构SQL到剪贴板和文件
  5. 数据库对象树支持导出表结构SQL到编辑器中
  6. 数据库对象树支持刷新操作
  7. 改进工作区视图标题页展示行为
  8. 修复: 修复目录树回车键行为
  9. 修复: 修复打开表时崩溃行为(有空值)
+ (adsbygoogle = window.adsbygoogle || []).push({}); +

# 安装程序和便携安装包 链接已失效

安装包 Windows(32 bit) Windows(64 bit) Linux(64 bit) MacOS(64 bit)
安装程序
(Github.com)
Installer (opens new window)
安装包
(Github.com)
Portable (opens new window) Arch (opens new window) MacOS (opens new window)
安装程序
(Gitee.com)
Installer (opens new window)
安装包
(Gitee.com)
Portable (opens new window) Arch (opens new window) MacOS (opens new window)
+ + + diff --git a/zh/download/v0.19.1.200413.html b/zh/download/v0.19.1.200413.html new file mode 100644 index 000000000..a797dac76 --- /dev/null +++ b/zh/download/v0.19.1.200413.html @@ -0,0 +1,74 @@ + + + + + + 袋鼠数据库工具 v0.19.1 (Dev) | 袋鼠数据库工具 + + + + + + + + + + + +

# 袋鼠数据库工具 v0.19.1 (Dev)

# 新特性或修复的缺陷列表

  1. 对象树上实现复制对象名称(长短名).
  2. 数据网格实现复制数据行为 SQL 语句(Insert/Update/Delete).
  3. 数据网格实现复制数据行为 TSV 格式
  4. 数据网格实现复制数据行为 CSV 格式
  5. 数据网格实现复制数据行为 PHP 数组
  6. 数据网格实现复制数据行为 JSON 格式
  7. 改进分栏控件边样式.
  8. 修复: 格式化BLOB数据时崩溃
  9. 修复: 数据表无关键字字段时崩溃
  10. 修复: 数据表关键字段中包含下划线时崩溃(_)
  11. 修复: 字段空值告警
  12. 修复: 错误调用告警(to_string)
+ (adsbygoogle = window.adsbygoogle || []).push({}); +

# 安装程序和便携安装包 链接已失效

安装包 Windows(32 bit) Windows(64 bit) Linux(64 bit) MacOS(64 bit)
安装程序
(Github.com)
Installer (opens new window)
安装包
(Github.com)
Portable (opens new window) Arch (opens new window) MacOS (opens new window)
安装程序
(Gitee.com)
Installer (opens new window)
安装包
(Gitee.com)
Portable (opens new window) Arch (opens new window) MacOS (opens new window)
+ + + diff --git a/zh/download/v0.20.1.200420.html b/zh/download/v0.20.1.200420.html new file mode 100644 index 000000000..645cc6260 --- /dev/null +++ b/zh/download/v0.20.1.200420.html @@ -0,0 +1,74 @@ + + + + + + 袋鼠数据库工具 v0.20.1 (Dev) | 袋鼠数据库工具 + + + + + + + + + + + +

# 袋鼠数据库工具 v0.20.1 (Dev)

# 新特性或修复的缺陷列表

  1. 数据网格实现复制数据行到剪贴板功能(TSV 格式)
  2. 重构表结构设计器弹出菜单.
  3. 表结构设计器实现克隆功能.
  4. 表结构设计器实现添加功能.
  5. 表结构设计器实现多行支持(删除/上移/下移).
  6. 表结构设计器实现复制功能.
  7. 表结构设计器实现剪切功能.
  8. 表结构设计器实现粘贴功能.
  9. 改进数据网格中文本处理性能.
+ (adsbygoogle = window.adsbygoogle || []).push({}); +

# 安装程序和便携安装包 链接已失效

安装包 Windows(32 bit) Windows(64 bit) Linux(64 bit) MacOS(64 bit)
安装程序
(Github.com)
Installer (opens new window)
安装包
(Github.com)
Portable (opens new window) Arch (opens new window) MacOS (opens new window)
安装程序
(Gitee.com)
Installer (opens new window)
安装包
(Gitee.com)
Portable (opens new window) Arch (opens new window) MacOS (opens new window)
+ + + diff --git a/zh/download/v0.21.1.200504.html b/zh/download/v0.21.1.200504.html new file mode 100644 index 000000000..d7973314a --- /dev/null +++ b/zh/download/v0.21.1.200504.html @@ -0,0 +1,74 @@ + + + + + + 袋鼠数据库工具 v0.21.1 (Beta) | 袋鼠数据库工具 + + + + + + + + + + + +

# 袋鼠数据库工具 v0.21.1 (Beta)

# 新特性或修复的缺陷列表

  1. 重构整个DataGrid,为了更好的用户体验
  2. DataGrid 支持三种编辑模式: LIVE / CACHE / TRANSACTION
  3. DataGrid 支持复制粘贴多行操作
  4. 当粘贴多行时,自动更新编辑模式为 CACHE 模式
  5. 修复: 查询构建器 where 子句表达式错误
+ (adsbygoogle = window.adsbygoogle || []).push({}); +

# 安装程序和便携安装包 链接已失效

安装包 Windows(32 bit) Windows(64 bit) Linux(64 bit) MacOS(64 bit)
安装程序
(Github.com)
Installer (opens new window)
安装包
(Github.com)
Portable (opens new window) Arch (opens new window) MacOS (opens new window)
安装程序
(Gitee.com)
Installer (opens new window)
安装包
(Gitee.com)
Portable (opens new window) Arch (opens new window) MacOS (opens new window)
+ + + diff --git a/zh/download/v0.22.1.200511.html b/zh/download/v0.22.1.200511.html new file mode 100644 index 000000000..61b326c8c --- /dev/null +++ b/zh/download/v0.22.1.200511.html @@ -0,0 +1,74 @@ + + + + + + 袋鼠数据库工具 v0.22.1 (Beta) | 袋鼠数据库工具 + + + + + + + + + + + +

# 袋鼠数据库工具 v0.22.1 (Beta)

# 新特性或修复的缺陷列表

  1. 增加中文语言翻译(简体中文[zh-CN//zh-SG]、繁体中文[zh-TW/zh-HK])
  2. SQLite: 新建数据库检查并增加扩展名(.sqlite).
  3. 改进设计器、删除、刷新体验,可以定位到原对象.
  4. 改进 Windows 平台自动化部署和安装脚本.
  5. 修复: 重命名时奔溃的bug.
  6. 修复: 删除对象时崩溃的bug.
  7. 修复: 保存表设计器修改时崩溃的bug
  8. 修复: 空表无法增加数据行
  9. 修复: 及时模式无法保存追加行
+ (adsbygoogle = window.adsbygoogle || []).push({}); +

# 安装程序和便携安装包 链接已失效

安装包 Windows(32 bit) Windows(64 bit) Linux(64 bit) MacOS(64 bit)
安装程序
(Github.com)
Installer (opens new window)
安装包
(Github.com)
Portable (opens new window) Arch (opens new window) MacOS (opens new window)
安装程序
(Gitee.com)
Installer (opens new window)
安装包
(Gitee.com)
Portable (opens new window) Arch (opens new window) MacOS (opens new window)
+ + + diff --git a/zh/download/v0.23.1.200518.html b/zh/download/v0.23.1.200518.html new file mode 100644 index 000000000..ed2ffe686 --- /dev/null +++ b/zh/download/v0.23.1.200518.html @@ -0,0 +1,74 @@ + + + + + + 袋鼠数据库工具 v0.23.1 (Beta) | 袋鼠数据库工具 + + + + + + + + + + + +

# 袋鼠数据库工具 v0.23.1 (Beta)

# 新特性或修复的缺陷列表

  1. 改进日期、日期时间选取控件.
  2. 改进标题栏背景图片(颜色).
  3. 改进网格列标题.
  4. 更新中文翻译.
  5. 修复: 不能更新日期、日期时间类型数据.
  6. 修复: 不能更新浮点类型数据.
  7. 修复: 不能更新数值类型(Numeric)
  8. 修复: MySQL: 不能更新字符串数组类型(Char)
  9. 修复: PostgreSQL: SQL中名字错误
  10. 修复: 数据网格工具栏状态错误.
+ (adsbygoogle = window.adsbygoogle || []).push({}); +

# 安装程序和便携安装包 链接已失效

安装包 Windows(32 bit) Windows(64 bit) Linux(64 bit) MacOS(64 bit)
安装程序
(Github.com)
Installer (opens new window)
安装包
(Github.com)
Portable (opens new window) Arch (opens new window) MacOS (opens new window)
安装程序
(Gitee.com)
Installer (opens new window)
安装包
(Gitee.com)
Portable (opens new window) Arch (opens new window) MacOS (opens new window)
+ + + diff --git a/zh/download/v0.24.1.200525.html b/zh/download/v0.24.1.200525.html new file mode 100644 index 000000000..f9337aff3 --- /dev/null +++ b/zh/download/v0.24.1.200525.html @@ -0,0 +1,74 @@ + + + + + + 袋鼠数据库工具 v0.24.1 (Dev) | 袋鼠数据库工具 + + + + + + + + + + + +

# 袋鼠数据库工具 v0.24.1 (Dev)

# 新特性或修复的缺陷列表

  1. 新增 SQL 格式化模块,支持美化和简化SQL.
  2. 新增 archlinux 安装器(基于 HowardZorn 提交的PR #45 ).
  3. 新增 苹果平台 安装器
+ (adsbygoogle = window.adsbygoogle || []).push({}); +

# 安装程序和便携安装包 链接已失效

安装包 Windows(32 bit) Windows(64 bit) Linux(64 bit) MacOS(64 bit)
安装程序
(Github.com)
win64 (opens new window) Arch (opens new window) MacOS (opens new window)
安装包
(Github.com)
win64 (opens new window) Arch (opens new window) MacOS (opens new window)
安装程序
(Gitee.com)
win64 (opens new window) Arch (opens new window) MacOS (opens new window)
安装包
(Gitee.com)
win64 (opens new window) Arch (opens new window) MacOS (opens new window)
+ + + diff --git a/zh/download/v0.25.1.200601.html b/zh/download/v0.25.1.200601.html new file mode 100644 index 000000000..538ddc4da --- /dev/null +++ b/zh/download/v0.25.1.200601.html @@ -0,0 +1,74 @@ + + + + + + 袋鼠数据库工具 v0.25.1 (Beta) | 袋鼠数据库工具 + + + + + + + + + + + +

# 袋鼠数据库工具 v0.25.1 (Beta)

# 新特性或修复的缺陷列表

  1. 为数据库空间导航栏添加上下文菜单
  2. 为对象树数据库和模式节点添加查询.
  3. 更新中文翻译(zh-CN/zh-TW/zh-HK/zh-SG).
  4. 修复: PostgreSQL 12: 表和视图未显示 #46
  5. 修复: MariaDB 10.5: 不存在的列 cons.ENFORCED #47
  6. 修复: PostgreSQL 12: 不存在的列 c.consrc #48
  7. 修复: PostgreSQL 11.7 / 9.6: 数据行不存在 #49
  8. 修复: MySQL 5.7.30: information_schema 不存在表 'CHECK_CONSTRAINTS' #50
  9. 修复: PostgreSQL 9.6: 不存在的列 c.relispartition #51
  10. 修复: PostgreSQL: 数据库模式显示错误
  11. 修复: 数据网格列头显示错误(含有下划线字符_)
+ (adsbygoogle = window.adsbygoogle || []).push({}); +

# 安装程序和便携安装包 链接已失效

安装包 Windows(64 bit) Linux(64 bit) MacOS(64 bit)
安装程序
(Github.com)
win64 (opens new window) Arch (opens new window) MacOS (opens new window)
安装包
(Github.com)
win64 (opens new window) Arch (opens new window) Ubuntu (opens new window) MacOS (opens new window)
安装程序
(Gitee.com)
win64 (opens new window) Arch (opens new window) MacOS (opens new window)
安装包
(Gitee.com)
win64 (opens new window) Arch (opens new window) Ubuntu (opens new window) MacOS (opens new window)
+ + + diff --git a/zh/download/v0.26.1.200615.html b/zh/download/v0.26.1.200615.html new file mode 100644 index 000000000..f4a68aa23 --- /dev/null +++ b/zh/download/v0.26.1.200615.html @@ -0,0 +1,74 @@ + + + + + + 袋鼠数据库工具 v0.26.1 (Dev) | 袋鼠数据库工具 + + + + + + + + + + + +

# 袋鼠数据库工具 v0.26.1 (Dev)

# 新特性或修复的缺陷列表

  1. 支持智能提示数据挖掘(SQLite/MySQL/PostgreSQL)
  2. 支持编辑视图代码自动完成(v1)
+ (adsbygoogle = window.adsbygoogle || []).push({}); +

# 安装程序和便携安装包 链接已失效

安装包 Windows(64 bit) Linux(64 bit) MacOS(64 bit)
安装程序
(Github.com)
win64 (opens new window) Arch (opens new window) MacOS (opens new window)
安装包
(Github.com)
win64 (opens new window) Arch (opens new window) Ubuntu (opens new window) MacOS (opens new window)
安装程序
(Gitee.com)
win64 (opens new window) Arch (opens new window) MacOS (opens new window)
安装包
(Gitee.com)
win64 (opens new window) Arch (opens new window) Ubuntu (opens new window) MacOS (opens new window)
+ + + diff --git a/zh/download/v0.27.1.200622.html b/zh/download/v0.27.1.200622.html new file mode 100644 index 000000000..620afc5fb --- /dev/null +++ b/zh/download/v0.27.1.200622.html @@ -0,0 +1,74 @@ + + + + + + 袋鼠数据库工具 v0.27.1 (Beta) | 袋鼠数据库工具 + + + + + + + + + + + +

# 袋鼠数据库工具 v0.27.1 (Beta)

# 新特性或修复的缺陷列表

  1. 改进 PostgreSQL 的智能提示数据
  2. 改进智能提示之自动完成样式(增加图标、过滤支持)
  3. 添加智能提示之函数参数自动提示功能
  4. 添加复制选中列头功能(长短名)
  5. 添加复制全部列头功能(TSV/CSV)
  6. 更新发布包命名格式
  7. 更新中文语言翻译
+ (adsbygoogle = window.adsbygoogle || []).push({}); +

# 安装程序和便携安装包 链接已失效

安装包 Windows(64 bit) Linux(64 bit) MacOS(64 bit)
安装程序
(Github.com)
Windows (opens new window) Arch (opens new window) MacOS (opens new window)
安装包
(Github.com)
Windows (opens new window) Arch (opens new window) Ubuntu (opens new window) MacOS (opens new window)
安装程序
(Gitee.com)
Windows (opens new window) Arch (opens new window) MacOS (opens new window)
安装包
(Gitee.com)
Windows (opens new window) Arch (opens new window) Ubuntu (opens new window) MacOS (opens new window)
+ + + diff --git a/zh/download/v0.28.1.200629.html b/zh/download/v0.28.1.200629.html new file mode 100644 index 000000000..139e5a346 --- /dev/null +++ b/zh/download/v0.28.1.200629.html @@ -0,0 +1,74 @@ + + + + + + 袋鼠数据库工具 v0.28.1 (Dev) | 袋鼠数据库工具 + + + + + + + + + + + +

# 袋鼠数据库工具 v0.28.1 (Dev)

# 新特性或修复的缺陷列表

  1. 实现查找替换功能
  2. 更新中文语言翻译(zh-CN/zh-TW/zh-HK/zh-SG)
+ (adsbygoogle = window.adsbygoogle || []).push({}); +

# 安装程序和便携安装包 链接已失效

安装包 Windows(64 bit) Linux(64 bit) MacOS(64 bit)
安装程序
(Github.com)
Windows (opens new window) Arch (opens new window) MacOS (opens new window)
安装包
(Github.com)
Windows (opens new window) Arch (opens new window) Ubuntu (opens new window) MacOS (opens new window)
安装程序
(Gitee.com)
Windows (opens new window) Arch (opens new window) MacOS (opens new window)
安装包
(Gitee.com)
Windows (opens new window) Arch (opens new window) Ubuntu (opens new window) MacOS (opens new window)
+ + + diff --git a/zh/download/v0.29.1.200713.html b/zh/download/v0.29.1.200713.html new file mode 100644 index 000000000..d133a4729 --- /dev/null +++ b/zh/download/v0.29.1.200713.html @@ -0,0 +1,74 @@ + + + + + + 袋鼠数据库工具 v0.29.1 (Dev) | 袋鼠数据库工具 + + + + + + + + + + + +

# 袋鼠数据库工具 v0.29.1 (Dev)

# 新特性或修复的缺陷列表

  1. 实现插件扩展系统
  2. 实现一个简单的演示插件(example)
  3. 更新 ArchLinux and MacOSX 安装包脚本
  4. 更新便携式发布包(更具 *nix 风格)
+ (adsbygoogle = window.adsbygoogle || []).push({}); +

# 安装程序和便携安装包 链接已失效

安装包 Windows(64 bit) Linux(64 bit) MacOS(64 bit)
安装程序
(Github.com)
Windows (opens new window) Arch (opens new window) MacOS (opens new window)
安装包
(Github.com)
Windows (opens new window) Arch (opens new window) Ubuntu (opens new window) MacOS (opens new window)
安装程序
(Gitee.com)
Windows (opens new window) Arch (opens new window) MacOS (opens new window)
安装包
(Gitee.com)
Windows (opens new window) Arch (opens new window) Ubuntu (opens new window) MacOS (opens new window)
+ + + diff --git a/zh/download/v0.30.1.200727.html b/zh/download/v0.30.1.200727.html new file mode 100644 index 000000000..05fca60ac --- /dev/null +++ b/zh/download/v0.30.1.200727.html @@ -0,0 +1,74 @@ + + + + + + 袋鼠数据库工具 v0.30.1 (Dev) | 袋鼠数据库工具 + + + + + + + + + + + +

# 袋鼠数据库工具 v0.30.1 (Dev)

# 新特性或修复的缺陷列表

  1. 插件系统增加应用相对搜索路径
  2. 增加数据查看面板和按钮
  3. 实现文本和图像查看器
  4. 界面按钮更新为瘦身平面样式
+ (adsbygoogle = window.adsbygoogle || []).push({}); +

# 安装程序和便携安装包 链接已失效

安装包 Windows(64 bit) Linux(64 bit) MacOS(64 bit)
安装程序
(Github.com)
Windows (opens new window) Arch (opens new window) MacOS (opens new window)
安装包
(Github.com)
Windows (opens new window) Arch (opens new window) Ubuntu (opens new window) MacOS (opens new window)
安装程序
(Gitee.com)
Windows (opens new window) Arch (opens new window) MacOS (opens new window)
安装包
(Gitee.com)
Windows (opens new window) Arch (opens new window) Ubuntu (opens new window) MacOS (opens new window)
+ + + diff --git a/zh/download/v0.31.1.200803.html b/zh/download/v0.31.1.200803.html new file mode 100644 index 000000000..cd24d0b69 --- /dev/null +++ b/zh/download/v0.31.1.200803.html @@ -0,0 +1,74 @@ + + + + + + 袋鼠数据库工具 v0.31.1 (Dev) | 袋鼠数据库工具 + + + + + + + + + + + +

# 袋鼠数据库工具 v0.31.1 (Dev)

# 新特性或修复的缺陷列表

  1. 实现 BLOB 内容识别(文件类型识别)
  2. 实现 SQLite BLOB 类型数据处理(导入 / 导出 / 置空)
  3. 实现 MySQL BLOB 类型数据处理(导入 / 导出 / 置空)
  4. 实现 PostgreSQL BLOB 类型数据处理(导入 / 导出 / 置空)
  5. 实现以文本方式查看 BLOB 数据
  6. 应用紧凑样式到查找与搜索框
+ (adsbygoogle = window.adsbygoogle || []).push({}); +

# 安装程序和便携安装包 链接已失效

安装包 Windows(64 bit) Linux(64 bit) MacOS(64 bit)
安装程序
(Github.com)
Windows (opens new window) Arch (opens new window) MacOS
安装包
(Github.com)
Windows (opens new window) Arch (opens new window) Ubuntu (opens new window) MacOS
安装程序
(Gitee.com)
Windows (opens new window) Arch (opens new window) MacOS
安装包
(Gitee.com)
Windows (opens new window) Arch (opens new window) Ubuntu (opens new window) MacOS
+ + + diff --git a/zh/download/v0.32.1.200810.html b/zh/download/v0.32.1.200810.html new file mode 100644 index 000000000..150c595a1 --- /dev/null +++ b/zh/download/v0.32.1.200810.html @@ -0,0 +1,74 @@ + + + + + + 袋鼠数据库工具 v0.32.1 (Dev) | 袋鼠数据库工具 + + + + + + + + + + + +

# 袋鼠数据库工具 v0.32.1 (Dev)

# 新特性或修复的缺陷列表

  1. 实现生成网页格式的数据库设计文档
  2. 实现生成 Markdown 格式的数据库设计文档
  3. 更新导入 / 导出 功能图标
+ (adsbygoogle = window.adsbygoogle || []).push({}); +

# 安装程序和便携安装包 链接已失效

安装包 Windows(64 bit) Linux(64 bit) MacOS(64 bit)
安装程序
(Github.com)
Windows (opens new window) Arch (opens new window) MacOS
安装包
(Github.com)
Windows (opens new window) Arch (opens new window) Ubuntu (opens new window) MacOS
安装程序
(Gitee.com)
Windows (opens new window) Arch (opens new window) MacOS
安装包
(Gitee.com)
Windows (opens new window) Arch (opens new window) Ubuntu (opens new window) MacOS
+ + + diff --git a/zh/download/v0.33.1.200817.html b/zh/download/v0.33.1.200817.html new file mode 100644 index 000000000..fbb703ec9 --- /dev/null +++ b/zh/download/v0.33.1.200817.html @@ -0,0 +1,74 @@ + + + + + + 袋鼠数据库工具 v0.33.1 (Dev) | 袋鼠数据库工具 + + + + + + + + + + + +

# 袋鼠数据库工具 v0.33.1 (Dev)

# 新特性或修复的缺陷列表

  1. 更新应用标题栏和页面导航栏样式
  2. 改进日期时间选取控件
  3. 改进日期时间网格单元渲染器
  4. 实现日期时间数据编辑保存
  5. 更新 Windows 部署脚本:包含插件库(libpeas)的加载器
  6. 更新构建脚本增加第三方依赖库(用于支持 PDF/地图/绘图)
  7. 更新构建脚本改进调试支持
  8. 修复: 无法显示动画图片(.gif)
+ (adsbygoogle = window.adsbygoogle || []).push({}); +

# 安装程序和便携安装包 链接已失效

强烈建议您使用 sha256sum 和 GnuPG 工具来校验您从网络上下载的包文件的SHA256哈希值及其GPG签名,确保您的包文件100%正确无篡改。

安装包 Windows(64 bit) Linux(64 bit) MacOS(64 bit)
安装程序
(Github.com)
Windows (opens new window) Arch (opens new window) MacOS
安装包
(Github.com)
Windows (opens new window) Arch (opens new window) Ubuntu (opens new window) MacOS
哈希及签名
(Github.com)
SHA256SUM (opens new window) SHA256SUM.GPG (opens new window)
安装程序
(Gitee.com)
Windows (opens new window) Arch (opens new window) MacOS
安装包
(Gitee.com)
Windows (opens new window) Arch (opens new window) Ubuntu (opens new window) MacOS
哈希及签名
(Gitee.com)
SHA256SUM (opens new window) SHA256SUM.GPG (opens new window)
+ + + diff --git a/zh/download/v0.7.2.190916.html b/zh/download/v0.7.2.190916.html new file mode 100644 index 000000000..17e15e0ba --- /dev/null +++ b/zh/download/v0.7.2.190916.html @@ -0,0 +1,70 @@ + + + + + + 袋鼠数据库工具 v0.7.2 (Dev) | 袋鼠数据库工具 + + + + + + + + + + + +

# 袋鼠数据库工具 v0.7.2 (Dev)

# 新特性或修复的缺陷列表

  1. 实现 PostgreSQL 11 加载器
  2. 实现 PostgreSQL 11 表设计表单
  3. 重构项目目录
  4. 创建项目网站项目:dbkangaroo.github.io
  5. 增加 Windows 安装器脚本
+ (adsbygoogle = window.adsbygoogle || []).push({}); +

# 安装程序和便携安装包 链接已失效

平台 安装程序 (64 bit) 便携安装包 (64 bit)
Windows Windows (opens new window) Windows (opens new window)
Linux Ubuntu (opens new window)
+ + + diff --git a/zh/download/v0.8.0.190923.html b/zh/download/v0.8.0.190923.html new file mode 100644 index 000000000..ac067369a --- /dev/null +++ b/zh/download/v0.8.0.190923.html @@ -0,0 +1,74 @@ + + + + + + 袋鼠数据库工具 v0.8.0 (Dev) | 袋鼠数据库工具 + + + + + + + + + + + +

# 袋鼠数据库工具 v0.8.0 (Dev)

# 新特性或修复的缺陷列表

  1. 实现 PostgreSQL SQL 生成器(11.0)
  2. 实现保存表结构到数据库(只创建)
  3. 更新构建脚本:隐藏控制台窗口
  4. 更新Windows安装程序:增加 MySQL 和 PostgreSQL 客户端库
  5. 更新关于对话框中的链接
  6. 改进单行编辑器控件(自动聚焦)
  7. 更新忙状态时的界面光标
+ (adsbygoogle = window.adsbygoogle || []).push({}); +

# 安装程序和便携安装包 链接已失效

平台 安装程序 (64 bit) 便携安装包 (64 bit)
Windows Windows (opens new window) Windows (opens new window)
Linux Ubuntu (opens new window)
+ + + diff --git a/zh/download/v0.8.1.190930.html b/zh/download/v0.8.1.190930.html new file mode 100644 index 000000000..51057dcd1 --- /dev/null +++ b/zh/download/v0.8.1.190930.html @@ -0,0 +1,74 @@ + + + + + + 袋鼠数据库工具 v0.8.1 (Dev) | 袋鼠数据库工具 + + + + + + + + + + + +

# 袋鼠数据库工具 v0.8.1 (Dev)

# 新特性或修复的缺陷列表

  1. 改进:生成正确的编辑 SQL 语言
  2. 重构: 增加源代码编辑模块
  3. 改进:SQLite 模式SQL生成器
  4. 修复: 编辑器无法正确显示空白行
  5. 修复: 新增好行时获取字符串失败(控制台告警)
  6. 修复: 编辑表结构时控制台报错
+ (adsbygoogle = window.adsbygoogle || []).push({}); +

# 安装程序和便携安装包 链接已失效

平台 安装程序 (64 bit) 便携安装包 (64 bit)
Windows Windows (opens new window) Windows (opens new window)
Linux Ubuntu (opens new window)
+ + + diff --git a/zh/download/v0.8.2.191014.html b/zh/download/v0.8.2.191014.html new file mode 100644 index 000000000..f2b3d65c1 --- /dev/null +++ b/zh/download/v0.8.2.191014.html @@ -0,0 +1,74 @@ + + + + + + 袋鼠数据库工具 v0.8.2 (Dev) | 袋鼠数据库工具 + + + + + + + + + + + +

# 袋鼠数据库工具 v0.8.2 (Dev)

# 新特性或修复的缺陷列表

  1. 改进字段选择对话框,支持根据值选择字段 #9
  2. 改进表设计器支持 Tab 键 #3
  3. 修复: 字段表达式对话框重加载失败 #10
  4. 修复: 开始菜单和桌面快捷键和图标 #7
  5. 修复: SQL 语法高亮支持 #8
  6. 修复: 数据表单加载失败 #11
+ (adsbygoogle = window.adsbygoogle || []).push({}); +

# 安装程序和便携安装包 链接已失效

平台 安装程序 (64 bit) 便携安装包 (64 bit)
Windows Windows (opens new window) Windows (opens new window)
Linux Ubuntu (opens new window)
MacOS
+ + + diff --git a/zh/download/v0.8.3.191021.html b/zh/download/v0.8.3.191021.html new file mode 100644 index 000000000..a62c08bee --- /dev/null +++ b/zh/download/v0.8.3.191021.html @@ -0,0 +1,74 @@ + + + + + + 袋鼠数据库工具 v0.8.3 (Dev) | 袋鼠数据库工具 + + + + + + + + + + + +

# 袋鼠数据库工具 v0.8.3 (Dev)

# 新特性或修复的缺陷列表

  1. 新建连接时出现插件未加载错误 #12
  2. 增加 MacOS 平台编译支持 #13
  3. 重构数据库对象模型并改进互操作性
+ (adsbygoogle = window.adsbygoogle || []).push({}); +

# 安装程序和便携安装包 链接已失效

平台 安装程序 (64 bit) 便携安装包 (64 bit)
Windows Windows (opens new window) Windows (opens new window)
Linux Ubuntu (opens new window)
MacOS MacOS (opens new window)
+ + + diff --git a/zh/download/v0.8.4.191028.html b/zh/download/v0.8.4.191028.html new file mode 100644 index 000000000..2a5085a77 --- /dev/null +++ b/zh/download/v0.8.4.191028.html @@ -0,0 +1,74 @@ + + + + + + 袋鼠数据库工具 v0.8.4 (Dev) | 袋鼠数据库工具 + + + + + + + + + + + +

# 袋鼠数据库工具 v0.8.4 (Dev)

# 新特性或修复的缺陷列表

  1. 重组数据库对象树和界面 #17
  2. 增加数据库对象树刷新菜单
  3. 实现多个数据库支持
  4. 编辑表结构并保存(MySQL 预览) #5
+ (adsbygoogle = window.adsbygoogle || []).push({}); +

# 安装程序和便携安装包 链接已失效

平台 安装程序 (64 bit) 便携安装包 (64 bit)
Windows Windows (opens new window) Windows (opens new window)
Linux Ubuntu (opens new window)
MacOS MacOS (opens new window)
+ + + diff --git a/zh/download/v0.8.5.191104.html b/zh/download/v0.8.5.191104.html new file mode 100644 index 000000000..adab4e802 --- /dev/null +++ b/zh/download/v0.8.5.191104.html @@ -0,0 +1,74 @@ + + + + + + 袋鼠数据库工具 v0.8.5 (Dev) | 袋鼠数据库工具 + + + + + + + + + + + +

# 袋鼠数据库工具 v0.8.5 (Dev)

# 新特性或修复的缺陷列表

  1. 支持表结构编辑和保存(SQLite、PostgreSQL 预览版)
  2. 增加了数据导出的UI和接口
  3. 新建表保存时同步更新Tab页面标题
+ (adsbygoogle = window.adsbygoogle || []).push({}); +

# 安装程序和便携安装包 链接已失效

平台 安装程序 (64 bit) 便携安装包 (64 bit)
Windows Windows (opens new window) Windows (opens new window)
Linux Ubuntu (opens new window)
MacOS MacOS (opens new window)
+ + + diff --git a/zh/download/v0.9.0.191111.html b/zh/download/v0.9.0.191111.html new file mode 100644 index 000000000..6179cace8 --- /dev/null +++ b/zh/download/v0.9.0.191111.html @@ -0,0 +1,74 @@ + + + + + + 袋鼠数据库工具 v0.9.0 (Dev) | 袋鼠数据库工具 + + + + + + + + + + + +

# 袋鼠数据库工具 v0.9.0 (Dev)

# 新特性或修复的缺陷列表

  1. 支持数据库表结构编辑和保存 #5
  2. 支持导出为JSON和DSV格式
+ (adsbygoogle = window.adsbygoogle || []).push({}); +

# 安装程序和便携安装包 链接已失效

平台 安装程序 (64 bit) 便携安装包 (64 bit)
Windows Windows (opens new window) Windows (opens new window)
Linux Ubuntu (opens new window)
MacOS MacOS (opens new window)
+ + + diff --git a/zh/download/v0.9.1.191118.html b/zh/download/v0.9.1.191118.html new file mode 100644 index 000000000..8c2c1b6c9 --- /dev/null +++ b/zh/download/v0.9.1.191118.html @@ -0,0 +1,75 @@ + + + + + + 袋鼠数据库工具 v0.9.1 (Dev) | 袋鼠数据库工具 + + + + + + + + + + + +

# 袋鼠数据库工具 v0.9.1 (Dev)

# 新特性或修复的缺陷列表

  1. 支持导出数据到剪贴板或文件 #18 +
    • 支持导出为 DSV 格式(CSV/TSV/...)
    • 支持导出为 JSON 格式;
    • 支持导出为 XML 格式
    • 支持导出为 HTML 格式
    • 支持导出为 SQL 格式(INSERT)
    • 支持导出为 Markdown 格式
  2. 改进保存文件对话框文件过滤条件,提升用户体验
+ (adsbygoogle = window.adsbygoogle || []).push({}); +

# 安装程序和便携安装包 链接已失效

平台 安装程序 (64 bit) 便携安装包 (64 bit)
Windows Windows (opens new window) Windows (opens new window)
Linux Ubuntu (opens new window)
MacOS MacOS (opens new window)
+ + + diff --git a/zh/download/v0.9.2.191125.html b/zh/download/v0.9.2.191125.html new file mode 100644 index 000000000..6cc1093b9 --- /dev/null +++ b/zh/download/v0.9.2.191125.html @@ -0,0 +1,75 @@ + + + + + + 袋鼠数据库工具 v0.9.2 (Dev) | 袋鼠数据库工具 + + + + + + + + + + + +

# 袋鼠数据库工具 v0.9.2 (Dev)

# 新特性或修复的缺陷列表

  1. 实现从文件导入数据功能(DSV/XML/JSON) #19 +
    • 实现文件导入格式、编码和预览界面
    • 实现文件导入格式参数设置界面
    • 实现文件导入解析数据预览界面
    • 实现文件导入字段映射界面(功能未实现)
    • 实现文件导入处理进度界面(功能未实现)
    • 实现文件导入之DSV格式解析和预览支持
    • 实现数据字段和目标表字段映射支持
+ (adsbygoogle = window.adsbygoogle || []).push({}); +

# 安装程序和便携安装包 链接已失效

平台 安装程序 (64 bit) 便携安装包 (64 bit)
Windows Windows (opens new window) Windows (opens new window)
Linux Ubuntu (opens new window)
MacOS MacOS (opens new window)
+ + + diff --git a/zh/download/v0.9.3.191202.html b/zh/download/v0.9.3.191202.html new file mode 100644 index 000000000..14253e7ac --- /dev/null +++ b/zh/download/v0.9.3.191202.html @@ -0,0 +1,74 @@ + + + + + + 袋鼠数据库工具 v0.9.3 (Dev) | 袋鼠数据库工具 + + + + + + + + + + + +

# 袋鼠数据库工具 v0.9.3 (Dev)

# 新特性或修复的缺陷列表

  1. 实现工具页用于支持导入、导出功能
  2. 增加IDE相关接口,用于后续重构支持;
+ (adsbygoogle = window.adsbygoogle || []).push({}); +

# 安装程序和便携安装包 链接已失效

平台 安装程序 (64 bit) 便携安装包 (64 bit)
Windows Windows (opens new window) Windows (opens new window)
Linux Ubuntu (opens new window)
MacOS MacOS (opens new window)
+ + + diff --git a/zh/download/v0.9.4.191209.html b/zh/download/v0.9.4.191209.html new file mode 100644 index 000000000..1baa6c6d3 --- /dev/null +++ b/zh/download/v0.9.4.191209.html @@ -0,0 +1,74 @@ + + + + + + 袋鼠数据库工具 v0.9.4 (Dev) | 袋鼠数据库工具 + + + + + + + + + + + +

# 袋鼠数据库工具 v0.9.4 (Dev)

# 新特性或修复的缺陷列表

  1. 实现文件导入处理结果界面
  2. 数据导入增加5中导入模式(追加、更新、合并、删除、替换)
  3. 实现导入数据到表中(SQLite)
  4. 重构对话框,增加翻译、艺术家和许可证信息,修复Mac和Ubuntu平台无法展示图片的问题;
+ (adsbygoogle = window.adsbygoogle || []).push({}); +

# 安装程序和便携安装包 链接已失效

平台 安装程序 (64 bit) 便携安装包 (64 bit)
Windows Windows (opens new window) Windows (opens new window)
Linux Ubuntu (opens new window)
MacOS MacOS (opens new window)
+ + + diff --git a/zh/download/v0.9.5.191216.html b/zh/download/v0.9.5.191216.html new file mode 100644 index 000000000..bf6e78857 --- /dev/null +++ b/zh/download/v0.9.5.191216.html @@ -0,0 +1,74 @@ + + + + + + 袋鼠数据库工具 v0.9.5 (Dev) | 袋鼠数据库工具 + + + + + + + + + + + +

# 袋鼠数据库工具 v0.9.5 (Dev)

# 新特性或修复的缺陷列表

  1. 支持从DSV(CSV、TSV)格式文件导入数据
  2. 支持从JSON格式文件导入数据
  3. 支持XML格式文件导入数据
  4. 使用libxml2库重写导出数据为XML格式
  5. 增加导出助理界面
  6. 初步实现导出格式、导出表选择页面
+ (adsbygoogle = window.adsbygoogle || []).push({}); +

# 安装程序和便携安装包 链接已失效

安装包 Windows (64 bit) Linux (64 bit) MacOS (64 bit)
安装程序
(Github.com)
Windows (opens new window)
安装包
(Github.com)
Windows (opens new window) Ubuntu (opens new window) MacOS (opens new window)
安装程序
(Gitee.com)
Windows (opens new window)
安装包
(Gitee.com)
Windows (opens new window) Ubuntu (opens new window) MacOS (opens new window)
+ + + diff --git a/zh/download/v0.99.1.200824.html b/zh/download/v0.99.1.200824.html new file mode 100644 index 000000000..8337b5bb1 --- /dev/null +++ b/zh/download/v0.99.1.200824.html @@ -0,0 +1,74 @@ + + + + + + 袋鼠数据库工具 v0.99.1 (Beta) | 袋鼠数据库工具 + + + + + + + + + + + +

# 袋鼠数据库工具 v0.99.1 (Beta)

# 新特性或修复的缺陷列表

  1. 改进表设计器通知用户保存修改
  2. 改进消息对话框标题显示
  3. 改进表设计器预览页只显示修改部分SQL
  4. 更新SQLite/MySQL/PostgreSQL 元模型及数据
  5. 改进 Windows 安装程序显示许可证和多语言支持
  6. Make kangaroo portable #59
+ (adsbygoogle = window.adsbygoogle || []).push({}); +

# 安装程序和便携安装包 链接已失效

强烈建议您使用 sha256sum 和 GnuPG 工具来校验您从网络上下载的包文件的SHA256哈希值及其GPG签名,确保您的包文件100%正确无篡改。

安装包 Windows(64 bit) Linux(64 bit) MacOS(64 bit)
安装程序
(Github.com)
Windows (opens new window) Arch (opens new window) MacOS
安装包
(Github.com)
Windows (opens new window) Arch (opens new window) Ubuntu (opens new window) MacOS
哈希及签名
(Github.com)
SHA256SUM (opens new window) SHA256SUM.GPG (opens new window)
安装程序
(Gitee.com)
Windows (opens new window) Arch (opens new window) MacOS
安装包
(Gitee.com)
Windows (opens new window) Arch (opens new window) Ubuntu (opens new window) MacOS
哈希及签名
(Gitee.com)
SHA256SUM (opens new window) SHA256SUM.GPG (opens new window)
+ + + diff --git a/zh/download/v0.99.2.200907.html b/zh/download/v0.99.2.200907.html new file mode 100644 index 000000000..0210eb9c7 --- /dev/null +++ b/zh/download/v0.99.2.200907.html @@ -0,0 +1,74 @@ + + + + + + 袋鼠数据库工具 v0.99.2 (Beta) | 袋鼠数据库工具 + + + + + + + + + + + +

# 袋鼠数据库工具 v0.99.2 (Beta)

# 新特性或修复的缺陷列表

  1. 更新打包脚本: 制作 Mac OS X 安装程序包和便携式安装包
  2. 改进工具页面本地化支持
  3. 更新中文语言包(zh-CN/zh-TW/zh-HK/zh-SG)
  4. 修复: 提示 MySQL server has done away 后,没有自动\手动重连 #63
  5. 修复: 无法加载认证插件 caching_sha2_password #64
  6. 修复: 控制台警告消息
+ (adsbygoogle = window.adsbygoogle || []).push({}); +

# 安装程序和便携安装包 链接已失效

强烈建议您使用 sha256sum 和 GnuPG 工具来校验您从网络上下载的包文件的SHA256哈希值及其GPG签名,确保您的包文件100%正确无篡改。

安装包 Windows(64 bit) Linux(64 bit) MacOS(64 bit)
安装程序
(Injdk.cn)
Windows (opens new window) Arch (opens new window) MacOS (opens new window)
安装包
(Injdk.cn)
Windows (opens new window) Arch (opens new window) Ubuntu (opens new window) MacOS (opens new window)
哈希及签名
(Injdk.cn)
SHA256SUM (opens new window) SHA256SUM.GPG (opens new window)
----------------- ----------------- ----------------- -----------------
安装程序
(Github.com)
Windows (opens new window) Arch (opens new window) MacOS (opens new window)
安装包
(Github.com)
Windows (opens new window) Arch (opens new window) Ubuntu (opens new window) MacOS (opens new window)
哈希及签名
(Github.com)
SHA256SUM (opens new window) SHA256SUM.GPG (opens new window)
----------------- ----------------- ----------------- -----------------
安装程序
(Gitee.com)
Windows (opens new window) Arch (opens new window) MacOS (opens new window)
安装包
(Gitee.com)
Windows (opens new window) Arch (opens new window) Ubuntu (opens new window) MacOS (opens new window)
哈希及签名
(Gitee.com)
SHA256SUM (opens new window) SHA256SUM.GPG (opens new window)

# 分享给朋友们

+ + + diff --git a/zh/download/v0.99.3.200921.html b/zh/download/v0.99.3.200921.html new file mode 100644 index 000000000..9f6865035 --- /dev/null +++ b/zh/download/v0.99.3.200921.html @@ -0,0 +1,74 @@ + + + + + + 袋鼠数据库工具 v0.99.3 (Beta) | 袋鼠数据库工具 + + + + + + + + + + + +

# 袋鼠数据库工具 v0.99.3 (Beta)

# 新特性或修复的缺陷列表

  1. 重构了底层容器和服务模块
  2. 改善了查看数据表和SQL查询性能
  3. 更新了数据表格工具栏按钮图标
  4. 修复: 无法打开 MariaDB 数据库
+ (adsbygoogle = window.adsbygoogle || []).push({}); +

# 安装程序和便携安装包 链接已失效

强烈建议您使用 sha256sum 和 GnuPG 工具来校验您从网络上下载的包文件的SHA256哈希值及其GPG签名,确保您的包文件100%正确无篡改。

安装包 Windows(64 bit) Linux(64 bit) MacOS(64 bit)
安装程序
(Injdk.cn)
Windows (opens new window) Arch (opens new window) MacOS (opens new window)
安装包
(Injdk.cn)
Windows (opens new window) Arch (opens new window) Ubuntu (opens new window) MacOS (opens new window)
哈希及签名
(Injdk.cn)
SHA256SUM (opens new window) SHA256SUM.GPG (opens new window)
----------------- ----------------- ----------------- -----------------
安装程序
(Github.com)
Windows (opens new window) Arch (opens new window) MacOS (opens new window)
安装包
(Github.com)
Windows (opens new window) Arch (opens new window) Ubuntu (opens new window) MacOS (opens new window)
哈希及签名
(Github.com)
SHA256SUM (opens new window) SHA256SUM.GPG (opens new window)
----------------- ----------------- ----------------- -----------------
安装程序
(Gitee.com)
Windows (opens new window) Arch (opens new window) MacOS (opens new window)
安装包
(Gitee.com)
Windows (opens new window) Arch (opens new window) Ubuntu (opens new window) MacOS (opens new window)
哈希及签名
(Gitee.com)
SHA256SUM (opens new window) SHA256SUM.GPG (opens new window)

# 分享给朋友们

+ + + diff --git a/zh/download/v1.0.5.201019.html b/zh/download/v1.0.5.201019.html new file mode 100644 index 000000000..a2818c095 --- /dev/null +++ b/zh/download/v1.0.5.201019.html @@ -0,0 +1,74 @@ + + + + + + 袋鼠数据库工具 v1.0.5 (Beta) | 袋鼠数据库工具 + + + + + + + + + + + +

# 袋鼠数据库工具 v1.0.5 (Beta)

# 新特性或修复的缺陷列表

  1. 实现单元格值上下文菜单
  2. 改进数据库空值显示和编辑支持
  3. 改进单元格数据文本视图,支持编码检测和转换
  4. 改善中国大陆用户可访问性:显示版本更新列表
  5. 提升 MySQL/MariaDB 连接稳定性
  6. 修复: 切换单元格数据查看视图错误
  7. 修复: 复制数据列长短名错误
+ (adsbygoogle = window.adsbygoogle || []).push({}); +

# 安装程序和便携安装包 链接已失效

强烈建议您使用 sha256sum 和 GnuPG 工具来校验您从网络上下载的包文件的SHA256哈希值及其GPG签名,确保您的包文件100%正确无篡改。

安装包 Windows(64 bit) Linux(64 bit) MacOS(64 bit)
安装程序
(Injdk.cn)
Windows (opens new window) Arch (opens new window) MacOS (opens new window)
安装包
(Injdk.cn)
Windows (opens new window) Arch (opens new window) Ubuntu (opens new window) MacOS (opens new window)
哈希及签名
(Injdk.cn)
SHA256SUM (opens new window) SHA256SUM.GPG (opens new window)
----------------- ----------------- ----------------- -----------------
安装程序
(Github.com)
Windows (opens new window) Arch (opens new window) MacOS (opens new window)
安装包
(Github.com)
Windows (opens new window) Arch (opens new window) Ubuntu (opens new window) MacOS (opens new window)
哈希及签名
(Github.com)
SHA256SUM (opens new window) SHA256SUM.GPG (opens new window)

# 分享给朋友们

+ + + diff --git a/zh/download/v1.0.6.201109.html b/zh/download/v1.0.6.201109.html new file mode 100644 index 000000000..b41f788ed --- /dev/null +++ b/zh/download/v1.0.6.201109.html @@ -0,0 +1,74 @@ + + + + + + 袋鼠数据库工具 v1.0.6 (Beta) | 袋鼠数据库工具 + + + + + + + + + + + +

# 袋鼠数据库工具 v1.0.6 (Beta)

# 新特性或修复的缺陷列表

  1. 更新域名为 www.datatable.online
+ (adsbygoogle = window.adsbygoogle || []).push({}); +

# 安装程序和便携安装包 仅支持 Windows

强烈建议您使用 sha256sum 和 GnuPG 工具来校验您从网络上下载的包文件的SHA256哈希值及其GPG签名,确保您的包文件100%正确无篡改。

安装包 Windows(64 bit) Linux(64 bit) MacOS(64 bit)
安装程序
(Injdk.cn)
Windows (opens new window) Arch (opens new window) MacOS (opens new window)
安装包
(Injdk.cn)
Windows (opens new window) Arch (opens new window) Ubuntu (opens new window) MacOS (opens new window)
哈希及签名
(Injdk.cn)
SHA256SUM (opens new window) SHA256SUM.GPG (opens new window)
----------------- ----------------- ----------------- -----------------
安装程序
(Github.com)
Windows (opens new window) Arch (opens new window) MacOS (opens new window)
安装包
(Github.com)
Windows (opens new window) Arch (opens new window) Ubuntu (opens new window) MacOS (opens new window)
哈希及签名
(Github.com)
SHA256SUM (opens new window) SHA256SUM.GPG (opens new window)

# 分享给朋友们

+ + + diff --git a/zh/download/v1.10.1.210731.html b/zh/download/v1.10.1.210731.html new file mode 100644 index 000000000..c97dc3655 --- /dev/null +++ b/zh/download/v1.10.1.210731.html @@ -0,0 +1,74 @@ + + + + + + 袋鼠数据库工具 v1.10.1 (Beta) | 袋鼠数据库工具 + + + + + + + + + + + +

# 袋鼠数据库工具 v1.10.1 (Beta)

# 新特性或修复的缺陷列表

  1. 新增可视化查询设计器对话框
  2. 新增值选择与编辑对话框
  3. 数据表格上下文菜单增加图标
  4. 增加单元值算法复制功能
  5. 增加单元值算法更新功能
  6. 改进连接对话框命名与保存机制
  7. 改进工具栏按钮布局
  8. 改进浮点类型支持
  9. 更新中文语言支持
  10. 修复: Text 类型无法生成正确的SQL(PostgreSQL)
  11. 修复: 设计器勾选框控件无响应
  12. 修复: 连接服务器时崩溃(MySQL/PostgreSQL)
  13. 修复: 无法拉取视图源代码(PostgreSQL)
  14. 修复: MacOS 无法切换为中文
  15. 修复: 相同单元格值时生成无效的SQL
+ (adsbygoogle = window.adsbygoogle || []).push({}); +

# 安装程序和便携安装包 链接已失效

强烈建议您使用 sha256sum 工具来校验您从网络上下载的包文件的 SHA256 哈希值是否与官方一致,确保您的包文件100%正确无篡改。

安装包 Windows Linux MacOS iOS Android
安装程序
(Injdk.cn)
Windows (opens new window) Arch (opens new window) MacOS (opens new window)
安装包
(Injdk.cn)
Windows (opens new window) Portable (opens new window) Arch (opens new window) MacOS (opens new window)
哈希及签名
(Injdk.cn)
SHA256SUM (opens new window)
----------------- ----------------- ----------------- -----------------
安装程序
(Github.com)
Windows (opens new window) Arch (opens new window) MacOS (opens new window)
安装包
(Github.com)
Windows (opens new window) Portable (opens new window) Arch (opens new window) MacOS (opens new window)
哈希及签名
(Github.com)
SHA256SUM (opens new window)

# 分享给朋友们

+ + + diff --git a/zh/download/v1.10.2.220701.html b/zh/download/v1.10.2.220701.html new file mode 100644 index 000000000..384fb155f --- /dev/null +++ b/zh/download/v1.10.2.220701.html @@ -0,0 +1,74 @@ + + + + + + 袋鼠数据库工具 v1.10.2 (Beta) | 袋鼠数据库工具 + + + + + + + + + + + +

# 袋鼠数据库工具 v1.10.2 (Beta)

# 新特性或修复的缺陷列表

  1. 删除版本过期时间
  2. Windows: 依赖库升级到最新版
+ (adsbygoogle = window.adsbygoogle || []).push({}); +

# 安装程序和便携安装包

强烈建议您使用 sha256sum 工具来校验您从网络上下载的包文件的 SHA256 哈希值是否与官方一致,确保您的包文件100%正确无篡改。

安装包 Windows Linux MacOS iOS Android
安装程序
(Injdk.cn)
Windows (opens new window) Arch (opens new window) [MacOS]
安装包
(Injdk.cn)
Windows (opens new window) Arch (opens new window) [MacOS]
哈希及签名
(Injdk.cn)
SHA256SUM (opens new window)
----------------- ----------------- ----------------- -----------------
安装程序
(Github.com)
Windows (opens new window) Arch (opens new window) [MacOS]
安装包
(Github.com)
Windows (opens new window) Arch (opens new window) [MacOS]
哈希及签名
(Github.com)
SHA256SUM (opens new window)

# 分享给朋友们

+ + + diff --git a/zh/download/v1.10.3.230508.html b/zh/download/v1.10.3.230508.html new file mode 100644 index 000000000..ab2c7e28b --- /dev/null +++ b/zh/download/v1.10.3.230508.html @@ -0,0 +1,76 @@ + + + + + + 袋鼠数据库工具 v1.10.3 (Beta) | 袋鼠数据库工具 + + + + + + + + + + + +

# 袋鼠数据库工具 v1.10.3 (Beta)

# 新特性或修复的缺陷列表

  • Windows: 依赖库升级到最新版
  • Fixed: 中文支持问题
+ (adsbygoogle = window.adsbygoogle || []).push({}); +

# 安装程序和便携安装包

Windows 用户可通过 winget 工具直接安装袋鼠:winget install Taozuhong.Kangaroo,否则需要自行下载并安装它。

# Windows 平台

Architect All SQLite MariaDB MySQL PostgreSQL
x86-64 Github (opens new window)
GitEE (opens new window)
Server 3 (opens new window)
Server 4 (opens new window)
ARM64
RISCV64

# macOS 平台

Architect All SQLite MariaDB MySQL PostgreSQL
ARM64
x86-64
RISCV64

# Linux 平台

Architect All SQLite MariaDB MySQL PostgreSQL
x86-64
ARM64
RISCV64
+ (adsbygoogle = window.adsbygoogle || []).push({}); +

# SHA256SUM

强烈建议您使用 sha256sum7-Zip 等工具,校验您下载的包文件 SHA256 哈希值是否与官方一致,确保您的包文件100%正确无篡改。

sha256sum 校验码 袋鼠安装包文件名
d908e5c64c5d4034e8a783961fabc5db2e8f0ea9e00e38668b474214c6286a7c kangaroo-1.10.3.230508-AMD64.exe
8a8a5bfa3199b3c4b9e52fb063457e10b1c6e29dd50e9fb34ae390fae42f1bb2 kangaroo-1.10.3.230508-AMD64.7z

# 分享给朋友们

+ + + diff --git a/zh/download/v1.3.1.201102.html b/zh/download/v1.3.1.201102.html new file mode 100644 index 000000000..837a1d783 --- /dev/null +++ b/zh/download/v1.3.1.201102.html @@ -0,0 +1,74 @@ + + + + + + 袋鼠数据库工具 v1.3.1 (Dev) | 袋鼠数据库工具 + + + + + + + + + + + +

# 袋鼠数据库工具 v1.3.1 (Dev)

# 新特性或修复的缺陷列表

  1. 实现十六进制编辑器支持 (已完成)
  2. 增加数据图表支持 (前期开发中)
  3. 增加数据库连接页新样式 (前期开发中)
+ (adsbygoogle = window.adsbygoogle || []).push({}); +

# 安装程序和便携安装包 链接已失效

强烈建议您使用 sha256sum 和 GnuPG 工具来校验您从网络上下载的包文件的SHA256哈希值及其GPG签名,确保您的包文件100%正确无篡改。

安装包 Windows(64 bit) Linux(64 bit) MacOS(64 bit)
安装程序
(Injdk.cn)
Windows (opens new window) Arch (opens new window) MacOS (opens new window)
安装包
(Injdk.cn)
Windows (opens new window) Arch (opens new window) Ubuntu (opens new window) MacOS (opens new window)
哈希及签名
(Injdk.cn)
SHA256SUM (opens new window) SHA256SUM.GPG (opens new window)
----------------- ----------------- ----------------- -----------------
安装程序
(Github.com)
Windows (opens new window) Arch (opens new window) MacOS (opens new window)
安装包
(Github.com)
Windows (opens new window) Arch (opens new window) Ubuntu (opens new window) MacOS (opens new window)
哈希及签名
(Github.com)
SHA256SUM (opens new window) SHA256SUM.GPG (opens new window)

# 分享给朋友们

+ + + diff --git a/zh/download/v1.5.1.201231.html b/zh/download/v1.5.1.201231.html new file mode 100644 index 000000000..41a9c8a6c --- /dev/null +++ b/zh/download/v1.5.1.201231.html @@ -0,0 +1,74 @@ + + + + + + 袋鼠数据库工具 v1.5.1 (Dev) | 袋鼠数据库工具 + + + + + + + + + + + +

# 袋鼠数据库工具 v1.5.1 (Dev)

# 新特性或修复的缺陷列表

  1. 实现十六进制编辑器支持 (已完成)
  2. 实现工作空间页样式支持 (已完成)
  3. 增加数据图表支持 (前期开发中)
  4. 数据库模型化支持 (前期开发中)
+ (adsbygoogle = window.adsbygoogle || []).push({}); +

# 安装程序和便携安装包 链接已失效

强烈建议您使用 sha256sum 和 GnuPG 工具来校验您从网络上下载的包文件的SHA256哈希值及其GPG签名,确保您的包文件100%正确无篡改。

安装包 Windows(64 bit) Linux(64 bit) MacOS(64 bit)
安装程序
(Injdk.cn)
Windows (opens new window) Arch (opens new window) MacOS (opens new window)
安装包
(Injdk.cn)
Windows (opens new window) Arch (opens new window) Ubuntu (opens new window) MacOS (opens new window)
哈希及签名
(Injdk.cn)
SHA256SUM (opens new window) SHA256SUM.GPG (opens new window)
----------------- ----------------- ----------------- -----------------
安装程序
(Github.com)
Windows (opens new window) Arch (opens new window) MacOS (opens new window)
安装包
(Github.com)
Windows (opens new window) Arch (opens new window) Ubuntu (opens new window) MacOS (opens new window)
哈希及签名
(Github.com)
SHA256SUM (opens new window) SHA256SUM.GPG (opens new window)

# 分享给朋友们

+ + + diff --git a/zh/download/v1.6.1.210131.html b/zh/download/v1.6.1.210131.html new file mode 100644 index 000000000..509fcbc94 --- /dev/null +++ b/zh/download/v1.6.1.210131.html @@ -0,0 +1,74 @@ + + + + + + 袋鼠数据库工具 v1.6.1 (Dev) | 袋鼠数据库工具 + + + + + + + + + + + +

# 袋鼠数据库工具 v1.6.1 (Dev)

# 新特性或修复的缺陷列表

  1. 实现十六进制编辑器支持 (已完成)
  2. 实现工作空间页样式支持 (已完成)
  3. 增加可独立查看日志支持 (已完成)
  4. 增加界面快捷键定制支持 (已完成)
  5. 增加数据图表支持 (前期开发中)
  6. 数据库模型化支持 (前期开发中)
  7. 支持拖放SQLite数据库到连接首页自动创建连接 #76
+ (adsbygoogle = window.adsbygoogle || []).push({}); +

# 安装程序和便携安装包 链接已失效

强烈建议您使用 sha256sum 和 GnuPG 工具来校验您从网络上下载的包文件的SHA256哈希值及其GPG签名,确保您的包文件100%正确无篡改。

安装包 Windows(64 bit) Linux(64 bit) MacOS(64 bit)
安装程序
(Injdk.cn)
Windows (opens new window) Arch (opens new window) [MacOS]
安装包
(Injdk.cn)
Windows (opens new window) Arch (opens new window) [Ubuntu] [MacOS]
哈希及签名
(Injdk.cn)
SHA256SUM (opens new window) SHA256SUM.GPG (opens new window)
----------------- ----------------- ----------------- -----------------
安装程序
(Github.com)
Windows (opens new window) Arch (opens new window) [MacOS]
安装包
(Github.com)
Windows (opens new window) Arch (opens new window) [Ubuntu] [MacOS]
哈希及签名
(Github.com)
SHA256SUM (opens new window) SHA256SUM.GPG (opens new window)

# 分享给朋友们

+ + + diff --git a/zh/download/v1.7.1.210331.html b/zh/download/v1.7.1.210331.html new file mode 100644 index 000000000..f57553ae8 --- /dev/null +++ b/zh/download/v1.7.1.210331.html @@ -0,0 +1,75 @@ + + + + + + 袋鼠数据库工具 v1.7.1 (Dev) | 袋鼠数据库工具 + + + + + + + + + + + +

# 袋鼠数据库工具 v1.7.1 (Dev)

# 新特性或修复的缺陷列表

  1. 实现十六进制编辑器支持 (已完成)
  2. 实现工作空间页样式支持 (已完成)
  3. 增加可独立查看日志支持 (已完成)
  4. 增加界面快捷键定制支持 (已完成)
  5. 增加数据图表支持 (前期开发中)
  6. 数据库模型化支持 (前期开发中) +
    • 支持模型文件加载和保存功能
    • 支持模型节点复制与粘贴功能
    • 支持模型节点多选功能
  7. 支持拖放 SQLite 数据库到连接首页并自动打开 #76
  8. 重构应用首页,方便用户操作
  9. 支持复制数据为 LUA 表结构
  10. 改进对象导航树操作体验
  11. 支持保存和恢复工作空间界面布局功能,缓存正在编辑的内容
  12. 增加更多语言支持
  13. 改进日志支持(日志消息中增加数据库名和连接名)
  14. 增加SQL脚本文件监测支持
  15. 重构数据表视图支持显示特性工具栏
  16. 打开连接时默认展示全部数据表
  17. 重构对象树视图改进对象树显示效果
  18. 增加快捷键对话框,支持查找和配置快捷键
  19. 改进标题栏样式支持,支持颜色和图片背景快捷配置
  20. 增加弹出桌面气泡消息支持
  21. 增加关闭页面确认对话框支持
  22. 重构数据表、设计器、模型页工具栏控件,支持图标和图标文字两种显示方式
  23. 修复: Access denied: you need the SUPER privilege(s) for this operation
  24. 修复: 删除对象后同步关闭其打开的视图
  25. 修复: 重命名对象后同步更新打开的视图
  26. 修复:苹果系统无法获得系统名称的错误
+ (adsbygoogle = window.adsbygoogle || []).push({}); +

# 安装程序和便携安装包 链接已失效

强烈建议您使用 sha256sum 和 GnuPG 工具来校验您从网络上下载的包文件的SHA256哈希值及其GPG签名,确保您的包文件100%正确无篡改。

安装包 Windows(64 bit) Linux(64 bit) MacOS(64 bit)
安装程序
(Injdk.cn)
Windows (opens new window) AppImage (opens new window) Arch (opens new window) MacOS (opens new window)
安装包
(Injdk.cn)
Windows (opens new window) Portable (opens new window) Arch (opens new window) MacOS (opens new window)
哈希及签名
(Injdk.cn)
SHA256SUM (opens new window) SHA256SUM.GPG (opens new window)
----------------- ----------------- ----------------- -----------------
安装程序
(Github.com)
Windows (opens new window) AppImage (opens new window) Arch (opens new window) MacOS (opens new window)
安装包
(Github.com)
Windows (opens new window) Portable (opens new window) Arch (opens new window) MacOS (opens new window)
哈希及签名
(Github.com)
SHA256SUM (opens new window) SHA256SUM.GPG (opens new window)

# 分享给朋友们

+ + + diff --git a/zh/download/v1.8.1.210430.html b/zh/download/v1.8.1.210430.html new file mode 100644 index 000000000..dd0eb9915 --- /dev/null +++ b/zh/download/v1.8.1.210430.html @@ -0,0 +1,74 @@ + + + + + + 袋鼠数据库工具 v1.8.1 (Dev) | 袋鼠数据库工具 + + + + + + + + + + + +

# 袋鼠数据库工具 v1.8.1 (Dev)

# 新特性或修复的缺陷列表

  1. 改进工具栏支持(默认显示文本和大图标)
  2. 改进查询视图标题,支持编号
  3. 仅支持同一对象视图的唯一实例;
  4. 更新工具分类
  5. 模型视图工具栏添加从数据库导入、导出按钮
  6. 模型视图支持从数据库导入对象
  7. 模型视图支持表和视图节点数据保存和加载
  8. 模型视图增加修改及关闭提醒
  9. 增加数据库实体选择对话框
  10. 改进模型绘制效果(表/视图/图形)
  11. 修复: 数据表视图自定义查询页无法显示字段的问题
  12. 修复:苹果版本增加插件目录变量定义(支持插件加载)
  13. 修复:打开模型文件时模型不可见
+ (adsbygoogle = window.adsbygoogle || []).push({}); +

# 安装程序和便携安装包 链接已失效

强烈建议您使用 sha256sum 工具来校验您从网络上下载的包文件的 SHA256 哈希值是否与官方一致,确保您的包文件100%正确无篡改。

安装包 Windows(64 bit) Linux(64 bit) MacOS(64 bit)
安装程序
(Injdk.cn)
Windows (opens new window) Arch (opens new window) MacOS (opens new window)
安装包
(Injdk.cn)
Windows (opens new window) Portable (opens new window) Arch (opens new window) MacOS (opens new window)
哈希及签名
(Injdk.cn)
SHA256SUM (opens new window)
----------------- ----------------- ----------------- -----------------
安装程序
(Github.com)
Windows (opens new window) Arch (opens new window) MacOS (opens new window)
安装包
(Github.com)
Windows (opens new window) Portable (opens new window) Arch (opens new window) MacOS (opens new window)
哈希及签名
(Github.com)
SHA256SUM (opens new window)

# 分享给朋友们

+ + + diff --git a/zh/download/v1.9.1.210531.html b/zh/download/v1.9.1.210531.html new file mode 100644 index 000000000..64e60f11e --- /dev/null +++ b/zh/download/v1.9.1.210531.html @@ -0,0 +1,74 @@ + + + + + + 袋鼠数据库工具 v1.9.1 (Dev) | 袋鼠数据库工具 + + + + + + + + + + + +

# 袋鼠数据库工具 v1.9.1 (Dev)

# 新特性或修复的缺陷列表

  1. 新增数据视图设计器
  2. 新增工具栏控件(兼容GTK4)
  3. 升级底层库: libgda 6.0.1
  4. 改进 MySQL/MariaDB 连接稳定性
  5. 重构数据库仓库上下文菜单
  6. SQLite: 实现重命名支持
  7. MySQL/MariaDB: 实现重命名功能
  8. 实现数据视图 新建/设计/源码/重命名/转存/复制名称
  9. 重构查询视图工具栏
  10. 更新中文语言支持(zh-CN/zh-TW/zh-SG/zh-HK)
  11. 数据网格添加列重排支持
  12. 改进 日期时间/时间戳 类型显示
  13. 新增几何坐标类型支持
  14. 新增大型文本类型支持
  15. 改进 Windows 和 MacOS 平台安装包
  16. 修复: 数据库仓库目录树展开图标无响应
  17. 修复: MySQL/MariaDB NULL/空字符串显示问题
  18. 修复: 模型中无法显示数据视图字段问题
  19. 修复: 模型中导入对象时无法自动扩充视图
  20. 修复: 无法加载索引条目(MySQL)
  21. 修复:无法编辑布尔类型数据
  22. 修复:加载智能提示数据时的告警消息
+ (adsbygoogle = window.adsbygoogle || []).push({}); +

# 安装程序和便携安装包 链接已失效

强烈建议您使用 sha256sum 工具来校验您从网络上下载的包文件的 SHA256 哈希值是否与官方一致,确保您的包文件100%正确无篡改。

安装包 Windows(64 bit) Linux(64 bit) MacOS(64 bit)
安装程序
(Injdk.cn)
Windows (opens new window) Arch (opens new window) MacOS (opens new window)
安装包
(Injdk.cn)
Windows (opens new window) Portable (opens new window) Arch (opens new window) MacOS (opens new window)
哈希及签名
(Injdk.cn)
SHA256SUM (opens new window)
----------------- ----------------- ----------------- -----------------
安装程序
(Github.com)
Windows (opens new window) Arch (opens new window) MacOS (opens new window)
安装包
(Github.com)
Windows (opens new window) Portable (opens new window) Arch (opens new window) MacOS (opens new window)
哈希及签名
(Github.com)
SHA256SUM (opens new window)

# 分享给朋友们

+ + + diff --git a/zh/download/v1.90.1.211231.html b/zh/download/v1.90.1.211231.html new file mode 100644 index 000000000..be093e8bc --- /dev/null +++ b/zh/download/v1.90.1.211231.html @@ -0,0 +1,74 @@ + + + + + + 袋鼠数据库工具 v1.90.1 (Dev) | 袋鼠数据库工具 + + + + + + + + + + + +

# 袋鼠数据库工具 v1.90.1 (Dev)

这是一个技术预览版,仅供体验和了解新特性使用,请勿在生产环境中使用它。

# 新特性或修复的缺陷列表

  1. 升级核心界面库为 GTK4 (GTK3 -> GTK4 4.5)
  2. 升级组件界面库为 GTK4 (libhandy -> libadwaita 1.0 beta)
  3. 升级编辑器组件为 GtkSoureceView5 (4 -> 5)
  4. 合并系统配置对话框和快捷键对话框
  5. 编辑器视图添加文档概览图边栏
  6. 编辑器视图支持选择配色方案
  7. 添加开发模式支持
  8. MySQL: 增加用户和权限管理支持
  9. MariaDB: 增加用户和权限管理支持
  10. PostgreSQL: 增加用户和权限管理支持
+ (adsbygoogle = window.adsbygoogle || []).push({}); +

# 安装程序和便携安装包 链接已失效

强烈建议您使用 sha256sum 工具来校验您从网络上下载的包文件的 SHA256 哈希值是否与官方一致,确保您的包文件100%正确无篡改。

安装包 Windows Linux MacOS iOS Android
安装程序
(Injdk.cn)
Windows (opens new window) [Arch] [MacOS]
安装包
(Injdk.cn)
Windows (opens new window) [Arch] [MacOS]
哈希及签名
(Injdk.cn)
SHA256SUM (opens new window)
----------------- ----------------- ----------------- -----------------
安装程序
(Github.com)
Windows (opens new window) [Arch] [MacOS]
安装包
(Github.com)
Windows (opens new window) [Arch] [MacOS]
哈希及签名
(Github.com)
SHA256SUM (opens new window)

# 分享给朋友们

+ + + diff --git a/zh/download/v1.91.1.220128.html b/zh/download/v1.91.1.220128.html new file mode 100644 index 000000000..cd3a2eaab --- /dev/null +++ b/zh/download/v1.91.1.220128.html @@ -0,0 +1,74 @@ + + + + + + 袋鼠数据库工具 v1.91.1 (Dev) | 袋鼠数据库工具 + + + + + + + + + + + +

# 袋鼠数据库工具 v1.91.1 (Dev)

这是一个技术预览版,系统稳定性已获得全面提升,可供体验和了解新特性使用,请谨慎生产环境使用。

# 新特性或修复的缺陷列表

  1. 重构主界面
  2. 重构导入导出界面
  3. 重构智能提示
  4. 重构工具栏
  5. 重构可视化SQL构建器
  6. 重构过期消息通知功能
  7. 改进标题栏皮肤支持
  8. 改进对话框样式
  9. 拆分设置文件为界面配置文件和用户连接配置文件
  10. 移动智能提示文件到用户文档目录
  11. 更新中文语言翻译(zh-CN/zh-TW/zh-SG/zh-HK)
  12. 修复: 无法打开链接
  13. 修复: 生成无效插入SQL(user_name -> user__name)
  14. 修复: 模型视图点击崩溃
  15. 修复: DSV 格式额外列
  16. 修复: 可伸缩图片尺寸问题
  17. 修复: 修复控制台警告消息

# 已知崩溃问题

  1. PostgreSQL: OID 字段类型字段会导致崩溃(libgda).
+ (adsbygoogle = window.adsbygoogle || []).push({}); +

# 安装程序和便携安装包 链接已失效

强烈建议您使用 sha256sum 工具来校验您从网络上下载的包文件的 SHA256 哈希值是否与官方一致,确保您的包文件100%正确无篡改。

安装包 Windows Linux MacOS iOS Android
安装程序
(Injdk.cn)
Windows (opens new window) Arch (opens new window) [MacOS]
安装包
(Injdk.cn)
Windows (opens new window) Arch (opens new window) [MacOS]
哈希及签名
(Injdk.cn)
SHA256SUM (opens new window)
----------------- ----------------- ----------------- -----------------
安装程序
(Github.com)
Windows (opens new window) Arch (opens new window) [MacOS]
安装包
(Github.com)
Windows (opens new window) Arch (opens new window) [MacOS]
哈希及签名
(Github.com)
SHA256SUM (opens new window)

# 分享给朋友们

+ + + diff --git a/zh/download/v1.92.1.220228.html b/zh/download/v1.92.1.220228.html new file mode 100644 index 000000000..2ddaaa38e --- /dev/null +++ b/zh/download/v1.92.1.220228.html @@ -0,0 +1,74 @@ + + + + + + 袋鼠数据库工具 v1.92.1 (Dev) | 袋鼠数据库工具 + + + + + + + + + + + +

# 袋鼠数据库工具 v1.92.1 (Dev)

这是一个技术预览版,供用户测试和体验新特性,请谨慎生产环境使用。

# 新特性或修复的缺陷列表

  1. 增加对象浏览器视图(表格化 + 图表化)
  2. 对象浏览器添加搜索和排序支持
  3. SQLite: 加载对象数据
  4. MariaDB: 加载对象数据
  5. MySQL: 加载对象数据
  6. PostgreSQL: 加载对象数据
  7. 对象浏览器添加对象上下文菜单
  8. 实现表和视图的上下文菜单
  9. 重构工作空间工具栏
  10. 更新数据库对象图标
  11. 更新中文语言支持
+ (adsbygoogle = window.adsbygoogle || []).push({}); +

# 安装程序和便携安装包 链接已失效

强烈建议您使用 sha256sum 工具来校验您从网络上下载的包文件的 SHA256 哈希值是否与官方一致,确保您的包文件100%正确无篡改。

安装包 Windows Linux MacOS iOS Android
安装程序
(Injdk.cn)
Windows (opens new window) Arch (opens new window) [MacOS]
安装包
(Injdk.cn)
Windows (opens new window) Arch (opens new window) [MacOS]
哈希及签名
(Injdk.cn)
SHA256SUM (opens new window)
----------------- ----------------- ----------------- -----------------
安装程序
(Github.com)
Windows (opens new window) Arch (opens new window) [MacOS]
安装包
(Github.com)
Windows (opens new window) Arch (opens new window) [MacOS]
哈希及签名
(Github.com)
SHA256SUM (opens new window)

# 分享给朋友们

+ + + diff --git a/zh/download/v1.93.1.220401.html b/zh/download/v1.93.1.220401.html new file mode 100644 index 000000000..30f68377d --- /dev/null +++ b/zh/download/v1.93.1.220401.html @@ -0,0 +1,74 @@ + + + + + + 袋鼠数据库工具 v1.93.1 (Dev) | 袋鼠数据库工具 + + + + + + + + + + + +

# 袋鼠数据库工具 v1.93.1 (Dev)

这是一个技术预览版,供用户测试和体验新特性,请谨慎生产环境使用。

# 新特性或修复的缺陷列表

  • SQLite: 增加索引设计器支持
  • SQLite: 增加触发器设计支持
  • SQLite: 重构视图设计器并改进设计支持
  • MySQL: 对象浏览视图增加索引对象支持
  • MySQL: 对象浏览视图增加触发器对象支持
  • MySQL: 增加索引设计器支持
  • MySQL: 增加触发器设计支持
  • MySQL: 重构视图设计器并改进设计支持
  • MariaDB: 对象浏览视图增加索引对象支持
  • MariaDB: 对象浏览视图增加触发器对象支持
  • MariaDB: 增加索引设计器支持
  • MariaDB: 增加触发器设计支持
  • MariaDB: 重构视图设计器并改进设计支持
  • PostgreSQL: 增加索引设计器支持
  • PostgreSQL: 增加触发器设计支持
  • PostgreSQL: 重构视图设计器并改进设计支持
  • 增加连接详情页
  • 更新数据库仓库对象树图标
  • 更新中文语言支持
  • 重构起始页,增加连接详情页
  • 重构数据库仓库视图
  • 修复: 视图设计器恢复问题
  • 修复: 工作空间工具栏菜单加载问题
  • 修复: 下拉列表控件活动id为空时崩溃问题
  • 修复: 编辑器有选中文本时输入错误问题
  • 修复: 无法加载 MySQL/MariaDB 视图信息
  • 修复: PostgreSQL连接的数据库名为空时崩溃
+ (adsbygoogle = window.adsbygoogle || []).push({}); +

# 安装程序和便携安装包 链接已失效

强烈建议您使用 sha256sum 工具来校验您从网络上下载的包文件的 SHA256 哈希值是否与官方一致,确保您的包文件100%正确无篡改。

安装包 Windows Linux MacOS iOS Android
安装程序
(Injdk.cn)
Windows (opens new window) Arch (opens new window) [MacOS]
安装包
(Injdk.cn)
Windows (opens new window) Arch (opens new window) [MacOS]
哈希及签名
(Injdk.cn)
SHA256SUM (opens new window)
----------------- ----------------- ----------------- -----------------
安装程序
(Github.com)
Windows (opens new window) Arch (opens new window) [MacOS]
安装包
(Github.com)
Windows (opens new window) Arch (opens new window) [MacOS]
哈希及签名
(Github.com)
SHA256SUM (opens new window)

# 分享给朋友们

+ + + diff --git a/zh/download/v1.94.1.220501.html b/zh/download/v1.94.1.220501.html new file mode 100644 index 000000000..d2050b4b2 --- /dev/null +++ b/zh/download/v1.94.1.220501.html @@ -0,0 +1,74 @@ + + + + + + 袋鼠数据库工具 v1.94.1 (Dev) | 袋鼠数据库工具 + + + + + + + + + + + +

# 袋鼠数据库工具 v1.94.1 (Dev)

这是一个技术预览版,供用户测试和体验新特性,请谨慎生产环境使用。

# 新特性或修复的缺陷列表

  • MySQL: 增加函数设计器
  • MySQL: 增加存储过程设计器
  • MySQL: 增加用户设计器
  • MariaDB: 增加函数设计器
  • MariaDB: 增加存储过程设计器
  • MariaDB: 增加用户设计器
  • PostgreSQL: 增加函数设计器
  • PostgreSQL: 增加存储过程设计器
  • PostgreSQL: 增加用户设计器
  • 对话框增加运行时版本支持
  • 更新中文语言支持
  • 修复: 工作空间打开问题
  • 修复: 自动缓存文件保存问题

# 已知问题

  • MySQL: 执行函数和存储过程后会出现无法执行当前SQL的提示(libgda).
  • MariaDB: 执行函数和存储过程后会出现无法执行当前SQL的提示(libgda).
+ (adsbygoogle = window.adsbygoogle || []).push({}); +

# 安装程序和便携安装包 链接已失效

强烈建议您使用 sha256sum 工具来校验您从网络上下载的包文件的 SHA256 哈希值是否与官方一致,确保您的包文件100%正确无篡改。

安装包 Windows Linux MacOS iOS Android
安装程序
(Injdk.cn)
Windows (opens new window) Arch (opens new window) [MacOS]
安装包
(Injdk.cn)
Windows (opens new window) Arch (opens new window) [MacOS]
哈希及签名
(Injdk.cn)
SHA256SUM (opens new window)
----------------- ----------------- ----------------- -----------------
安装程序
(Github.com)
Windows (opens new window) Arch (opens new window) [MacOS]
安装包
(Github.com)
Windows (opens new window) Arch (opens new window) [MacOS]
哈希及签名
(Github.com)
SHA256SUM (opens new window)

# 分享给朋友们

+ + + diff --git a/zh/download/v1.95.1.220601.html b/zh/download/v1.95.1.220601.html new file mode 100644 index 000000000..4c091cce9 --- /dev/null +++ b/zh/download/v1.95.1.220601.html @@ -0,0 +1,74 @@ + + + + + + 袋鼠数据库工具 v1.95.1 (Dev) | 袋鼠数据库工具 + + + + + + + + + + + +

# 袋鼠数据库工具 v1.95.1 (Dev)

这是一个技术预览版,供用户测试和体验新特性,因功能特性已趋近达成目标,整体质量日趋成熟,故推荐所有用户使用;生产环境使用仍需谨慎评估。

# 新特性或修复的缺陷列表

  • MySQL: 增加角色设计器
  • MySQL: 增加架构设计器
  • MySQL: 增加数据库设计器
  • MariaDB: 增加角色设计器
  • MariaDB: 增加架构设计器
  • MariaDB: 增加数据库设计器
  • PostgreSQL: 增加角色设计器
  • PostgreSQL: 增加架构设计器
  • PostgreSQL: 增加数据库设计器
  • 更新对象浏览视图:支持架构和数据库对象
  • 重构对象树上下文菜单
  • 动态绑定页签图标和标题为对象浏览器标题和图标
  • 更新中文语言支持

# 已知问题

  • MySQL: 执行函数和存储过程后会出现无法执行当前SQL的提示(libgda).
  • MariaDB: 执行函数和存储过程后会出现无法执行当前SQL的提示(libgda).
+ (adsbygoogle = window.adsbygoogle || []).push({}); +

# 安装程序和便携安装包 链接已失效

强烈建议您使用 sha256sum 工具来校验您从网络上下载的包文件的 SHA256 哈希值是否与官方一致,确保您的包文件100%正确无篡改。

安装包 Windows Linux MacOS iOS Android
安装程序
(Injdk.cn)
Windows (opens new window) Arch (opens new window) [MacOS]
安装包
(Injdk.cn)
Windows (opens new window) Arch (opens new window) [MacOS]
哈希及签名
(Injdk.cn)
SHA256SUM (opens new window)
----------------- ----------------- ----------------- -----------------
安装程序
(Github.com)
Windows (opens new window) Arch (opens new window) [MacOS]
安装包
(Github.com)
Windows (opens new window) Arch (opens new window) [MacOS]
哈希及签名
(Github.com)
SHA256SUM (opens new window)

# 分享给朋友们

+ + + diff --git a/zh/download/v1.96.1.220701.html b/zh/download/v1.96.1.220701.html new file mode 100644 index 000000000..39d6ad382 --- /dev/null +++ b/zh/download/v1.96.1.220701.html @@ -0,0 +1,74 @@ + + + + + + 袋鼠数据库工具 v1.96.1 (Dev) | 袋鼠数据库工具 + + + + + + + + + + + +

# 袋鼠数据库工具 v1.96.1 (Dev)

这是一个技术预览版,供用户测试和体验新特性,因功能特性已趋近达成目标,整体质量日趋成熟,故推荐所有用户使用;生产环境使用仍需谨慎评估。

# 新特性或修复的缺陷列表

  • 用 ODBC 替换 libgda
  • 添加了通用数据库支持
  • 更新中文语言支持
+ (adsbygoogle = window.adsbygoogle || []).push({}); +

# 安装程序和便携安装包 链接已失效

强烈建议您使用 sha256sum 工具来校验您从网络上下载的包文件的 SHA256 哈希值是否与官方一致,确保您的包文件100%正确无篡改。

安装包 Windows Linux MacOS iOS Android
安装程序
(Injdk.cn)
Windows (opens new window) Arch (opens new window) [MacOS]
安装包
(Injdk.cn)
Windows (opens new window) Arch (opens new window) [MacOS]
哈希及签名
(Injdk.cn)
SHA256SUM (opens new window)
----------------- ----------------- ----------------- -----------------
安装程序
(Github.com)
Windows (opens new window) Arch (opens new window) [MacOS]
安装包
(Github.com)
Windows (opens new window) Arch (opens new window) [MacOS]
哈希及签名
(Github.com)
SHA256SUM (opens new window)

# 分享给朋友们

+ + + diff --git a/zh/download/v1.97.1.220731.html b/zh/download/v1.97.1.220731.html new file mode 100644 index 000000000..882819192 --- /dev/null +++ b/zh/download/v1.97.1.220731.html @@ -0,0 +1,74 @@ + + + + + + 袋鼠数据库工具 v1.97.1 (Dev) | 袋鼠数据库工具 + + + + + + + + + + + +

# 袋鼠数据库工具 v1.97.1 (Dev)

这是一个技术预览版,供用户测试和体验新特性,因功能特性已趋近达成目标,整体质量日趋成熟,故推荐所有用户使用;生产环境使用仍需谨慎评估。

# 新特性或修复的缺陷列表

  • 更新 Windows 打包脚本,修复依赖库缺失问题
  • 更新 ArchLinux 打包脚本,修复依赖库缺失问题
  • 升级关闭确认对话框
  • 重构网格组件(GtkColumnView)
  • Windows 安装脚本增加 ODBC 驱动支持
  • 改进 Windows 安装包本地化支持
  • 改进对象浏览视图的排序支持
  • 完善内容视图查询构建器
  • 改进 SQL 构建器
  • 改进 DBNull 支持
  • 更新中文语言支持
  • 修复 ODBC 连接相关问题
+ (adsbygoogle = window.adsbygoogle || []).push({}); +

# 安装程序和便携安装包 链接已失效

强烈建议您使用 sha256sum 工具来校验您从网络上下载的包文件的 SHA256 哈希值是否与官方一致,确保您的包文件100%正确无篡改。

安装包 Windows Linux MacOS iOS Android
安装程序
(Injdk.cn)
Windows (opens new window) Arch (opens new window) [MacOS]
安装包
(Injdk.cn)
Windows (opens new window) Arch (opens new window) [MacOS]
哈希及签名
(Injdk.cn)
SHA256SUM (opens new window)
----------------- ----------------- ----------------- -----------------
安装程序
(Github.com)
Windows (opens new window) Arch (opens new window) [MacOS]
安装包
(Github.com)
Windows (opens new window) Arch (opens new window) [MacOS]
哈希及签名
(Github.com)
SHA256SUM (opens new window)

# 分享给朋友们

+ + + diff --git a/zh/download/v1.98.1.220904.html b/zh/download/v1.98.1.220904.html new file mode 100644 index 000000000..8152d54fa --- /dev/null +++ b/zh/download/v1.98.1.220904.html @@ -0,0 +1,76 @@ + + + + + + 袋鼠数据库工具 v1.98.1 (Dev) | 袋鼠数据库工具 + + + + + + + + + + + +

# 袋鼠数据库工具 v1.98.1 (Dev)

这是一个技术预览版,供用户测试和体验新特性,因功能特性已趋近达成目标,整体质量日趋成熟,故推荐所有用户使用;生产环境使用仍需谨慎评估。

# 新特性或修复的缺陷列表

  • 数据网格增加当前单元格样式支持
  • SQLite: 重构表设计器
  • MySQL: 重构表设计器
  • PostgreSQL: 重构表设计器
  • 规范化字段的长度/精度/小数位支持
  • 更新中文语言支持(zh-CN/zh-TW/zh-SG/zh-HK)
  • 修复:ODBC CHAR/WCHAR 类型读取问题
  • 修复:连接对话框丢失驱动问题
  • 修复:修复起始页拖放建立连接问题
  • 修复:MySQL/MariaDB 乱码问题
+ (adsbygoogle = window.adsbygoogle || []).push({}); +

# 安装程序和便携安装包 链接已失效

Windows 用户可通过 winget 工具直接安装袋鼠:winget install Taozuhong.Kangaroo,否则需要自行下载并安装它。

安装包 Windows Linux MacOS iOS Android
安装程序
(Cloud@China)
Server 1 (opens new window)
Server 2 (opens new window)
Server 1 (opens new window)
Server 2 (opens new window)
[MacOS]
安装包
(Cloud@China)
Server 1 (opens new window)
Server 2 (opens new window)
Server 1 (opens new window)
Server 2 (opens new window)
[MacOS]
----------------- ----------------- ----------------- -----------------
安装程序
(Github.com)
Windows (opens new window) Arch (opens new window) [MacOS]
安装包
(Github.com)
Windows (opens new window) Arch (opens new window) [MacOS]
+ (adsbygoogle = window.adsbygoogle || []).push({}); +

# SHA256SUM

强烈建议您使用 sha256sum7-Zip 等工具,校验您下载的包文件 SHA256 哈希值是否与官方一致,确保您的包文件100%正确无篡改。

sha256sum 校验码 袋鼠安装包文件名
b9ae08ebdfc3f2fb3d96f2bc7d8c4a36d41201b933960d581a178c3002793c1f kangaroo-1.98.1.220904-1-x86_64.pkg.tar.zst
2eb866162f4f5d9f1a30d76a4986a82d4c68218a055528ce58b812b4cb6e8ab6 kangaroo-1.98.1.220904-AMD64.7z
af96328d31e351eeb46c67a2bae644fbffd995525bc348952f8e853ba21ef46a kangaroo-1.98.1.220904-AMD64.exe
c1b07a5d500c125ec838a0e7859be6c649ea99883eab6d9953d3422276e67eaf kangaroo-1.98.1.220904-arch.tar.gz

# 分享给朋友们

+ + + diff --git a/zh/download/v1.99.1.221001.html b/zh/download/v1.99.1.221001.html new file mode 100644 index 000000000..69c5693c3 --- /dev/null +++ b/zh/download/v1.99.1.221001.html @@ -0,0 +1,76 @@ + + + + + + 袋鼠数据库工具 v1.99.1 (Dev) | 袋鼠数据库工具 + + + + + + + + + + + +

# 袋鼠数据库工具 v1.99.1 (Dev)

这是一个技术预览版,供用户测试和体验新特性,因功能特性已趋近达成目标,整体质量日趋成熟,故推荐所有用户使用;生产环境使用仍需谨慎评估。

# 新特性或修复的缺陷列表

  • 更新依赖库到新版本
  • 规范化数据模型和元模型
  • 重构并测试文档对话框
  • 重构导出功能页面
  • 重构导入功能页面
  • 重构连接对话框
  • 添加附加数据库对话框
  • 添加通用数据库支持
  • 添加 ODBC 帮助入口
  • 添加对象搜索支持
  • 更新 Windows 和 Arch Linux 的打包与安装脚本
  • SQLite: 附加和卸载数据库
  • SQLite: 加载扩展支持
  • 改进新连接创建方式
  • 更新中文语言支持(zh-CN/zh-TW/zh-SG/zh-HK)
  • 修复:快捷键加载和保存问题
+ (adsbygoogle = window.adsbygoogle || []).push({}); +

# 安装程序和便携安装包 链接已失效

Windows 用户可通过 winget 工具直接安装袋鼠:winget install Taozuhong.Kangaroo,否则需要自行下载并安装它。

安装包 Windows Linux MacOS iOS Android
安装程序
(Cloud@China)
Server 1 (opens new window)
Server 2 (opens new window)
Server 1 (opens new window)
Server 2 (opens new window)
[MacOS]
安装包
(Cloud@China)
Server 1 (opens new window)
Server 2 (opens new window)
Server 1 (opens new window)
Server 2 (opens new window)
[MacOS]
----------------- ----------------- ----------------- -----------------
安装程序
(Github.com)
Windows (opens new window) Arch (opens new window) [MacOS]
安装包
(Github.com)
Windows (opens new window) Arch (opens new window) [MacOS]
+ (adsbygoogle = window.adsbygoogle || []).push({}); +

# SHA256SUM

强烈建议您使用 sha256sum7-Zip 等工具,校验您下载的包文件 SHA256 哈希值是否与官方一致,确保您的包文件100%正确无篡改。

sha256sum 校验码 袋鼠安装包文件名
d2a49deb6803af0909f2c34aa4bd4c058fd9229bd35162127fc6f7a63423e61f kangaroo-1.99.1.221001-1-x86_64.pkg.tar.zst
1d59c87696fae3218d78e4012f7f188de8a25c73acd2e7d6e87041048e412761 kangaroo-1.99.1.221001-AMD64.7z
98b0ba13c7da75f3132d1cff66dd32969b15d8800e6a24ded3e4a34a126842e9 kangaroo-1.99.1.221001-AMD64.exe
d4b50aeb4b4e35b4e72d8247b8050a5dc9d7d3e088bc4dd9e83af28982e3a6e6 kangaroo-1.99.1.221001-arch.tar.gz

# 分享给朋友们

+ + + diff --git a/zh/download/v2.0.0.221101.html b/zh/download/v2.0.0.221101.html new file mode 100644 index 000000000..ee13da55d --- /dev/null +++ b/zh/download/v2.0.0.221101.html @@ -0,0 +1,76 @@ + + + + + + 袋鼠数据库工具 v2.0.0 (Beta) | 袋鼠数据库工具 + + + + + + + + + + + +

# 袋鼠数据库工具 v2.0.0 (Beta)

这是一个稳定版本,功能成熟度和稳定性无限趋近版本目标,推荐所有用户使用。

# 新特性或修复的缺陷列表

  • 重构 导入数据页面(列映射页/数据预览页)
  • 重构 列选择对话窗口
  • 重构 SQLite 索引列窗口
  • 重构 PostgreSQL 列编辑窗口
  • 重构 MySQL 列编辑窗口
  • 重构 类型值编辑器窗口(Enum/set)
  • 重构 文档生成窗口
  • 重构 数据网格事件和上下文
  • 替换系统图标为符号化图标
  • 实现表单视图编辑和保存功能
  • 实现表格视图编辑和保存功能
  • 实现表单视图数据行导航功能
  • 实现Binary/BLOB 导入导出和保存功能
  • 改进 SQLite 架构支持
  • 更新中文语言支持(zh-CN/zh-TW/zh-SG/zh-HK)
  • 修复: 数值类型丢失小数位问题
  • 修复: 工具图标尺寸设置问题
  • 修复: 对象浏览器网格问题
  • 修复: 导入数据失败问题
  • 修复: 索引加载崩溃问题
  • 修复: 对象树节点切换问题
  • 修复: SQLite 函数编辑问题
  • 修复: 应用控制台告警消息
  • 修复: 编译器控制台告警消息
  • 修复: 上下文菜单导出操作问题
+ (adsbygoogle = window.adsbygoogle || []).push({}); +

# 安装程序和便携安装包 链接已失效

Windows 用户可通过 winget 工具直接安装袋鼠:winget install Taozuhong.Kangaroo,否则需要自行下载并安装它。

安装包 Windows Linux MacOS iOS Android
安装程序
(Cloud@China)
Server 1 (opens new window)
Server 2 (opens new window)
Server 1 (opens new window)
Server 2 (opens new window)
[MacOS]
安装包
(Cloud@China)
Server 1 (opens new window)
Server 2 (opens new window)
Server 1 (opens new window)
Server 2 (opens new window)
[MacOS]
----------------- ----------------- ----------------- -----------------
安装程序
(Github.com)
Windows (opens new window) Arch (opens new window) [MacOS]
安装包
(Github.com)
Windows (opens new window) Arch (opens new window) [MacOS]
+ (adsbygoogle = window.adsbygoogle || []).push({}); +

# SHA256SUM

强烈建议您使用 sha256sum7-Zip 等工具,校验您下载的包文件 SHA256 哈希值是否与官方一致,确保您的包文件100%正确无篡改。

sha256sum 校验码 袋鼠安装包文件名
5d2eb07a8f05cccc1c07886c56b3b2de9752f6e6efcf0ced62f8d97a02fc7117 kangaroo-2.0.0.221101-AMD64.exe
3f6fd583a70396563ce63d4416482f1f4b752e55259c8fcf95c281fa479338e5 kangaroo-2.0.0.221101-AMD64.7z
8f133c6b4a512de64a94d7cfe87184dd91e84d71965ede03076dadef3da4e785 kangaroo-2.0.0.221101-1-x86_64.pkg.tar.zst
08c705cb664ac6aeb1b8238520f1c8f9219e6639561c8b7d109cfb5f17f62ed5 kangaroo-2.0.0.221101-arch.tar.gz

# 分享给朋友们

+ + + diff --git a/zh/download/v2.1.1.221201.html b/zh/download/v2.1.1.221201.html new file mode 100644 index 000000000..168d985c0 --- /dev/null +++ b/zh/download/v2.1.1.221201.html @@ -0,0 +1,76 @@ + + + + + + 袋鼠数据库工具 v2.1.1 (Beta) | 袋鼠数据库工具 + + + + + + + + + + + +

# 袋鼠数据库工具 v2.1.1 (Beta)

这是一个稳定版本,功能成熟度和稳定性无限趋近版本目标,推荐所有用户使用。

# 新特性或修复的缺陷列表

  • 添加动态生成二维码支持
  • 添加 debian 安装包支持
  • 实现表设计器 克隆 菜单
  • 实现表设计器 复制/粘贴 菜单
  • 添加表设计器 剪切 菜单
  • 添加 SQL EXPLAIN 语句支持(带格式)
  • 添加 SQL ANALYZE 语句支持
  • 重构 SQL 格式化和紧缩化功能
  • 改进编辑器 后退重做 功能支持
  • 更新 Linux 平台安装包脚本
  • 更新中文语言支持(zh-CN/zh-TW/zh-SG/zh-HK)
  • 修复: 关闭查询结果页时崩溃问题
  • 修复: SSH 提示标签文字
+ (adsbygoogle = window.adsbygoogle || []).push({}); +

# 安装程序和便携安装包 链接已失效

Windows 用户可通过 winget 工具直接安装袋鼠:winget install Taozuhong.Kangaroo,否则需要自行下载并安装它。

# Windows 平台

平台 CPU 架构 安装程序 便携包
Windows x86-64 Github (opens new window)
GitEE (opens new window)
Server 3 (opens new window)
Server 4 (opens new window)
Github (opens new window)
GitEE (opens new window)
Server 3 (opens new window)
Server 4 (opens new window)
Wine / ... x86-64 Github (opens new window)
GitEE (opens new window)
Server 3 (opens new window)
Server 4 (opens new window)
Github (opens new window)
GitEE (opens new window)
Server 3 (opens new window)
Server 4 (opens new window)

# macOS 平台

平台 CPU 架构 安装程序 便携包
macOS ARM64 Coming soon Coming soon

# Linux 平台

发行版 CPU 架构 安装程序 便携包
Arch Linux x86-64 Github (opens new window)
GitEE (opens new window)
Server 3 (opens new window)
Server 4 (opens new window)
Github (opens new window)
GitEE (opens new window)
Server 3 (opens new window)
Server 4 (opens new window)
Debian x86-64 Github (opens new window)
Gitee (opens new window)
Server 3 (opens new window)
Server 4 (opens new window)
Github (opens new window)
GitEE (opens new window)
Server 3 (opens new window)
Server 4 (opens new window)
+ (adsbygoogle = window.adsbygoogle || []).push({}); +

# SHA256SUM

强烈建议您使用 sha256sum7-Zip 等工具,校验您下载的包文件 SHA256 哈希值是否与官方一致,确保您的包文件100%正确无篡改。

sha256sum 校验码 袋鼠安装包文件名
6de2d62f013661ae17736b4dae785ee717157d11a6004b3c951e181f64d296ae kangaroo-2.1.1.221201-x86_64.exe
962097751fe1201aa45a8a7a2968bdf1b0618108558e450efc0cc60959bc234f kangaroo-2.1.1.221201-x86_64.deb
178d70c391f94fc74e845c3929840ec10fbc13113d3ceab3fced80cbcd8e303d kangaroo-2.1.1.221201-1-x86_64.pkg.tar.zst
9d1727380136502aa070b2c5101381ba0f1ebd2bc3cfae2445654afc87ff5b10 kangaroo-2.1.1.221201-x86_64.tar.zst
462ec4f64b54c80d29ae9d3b51d29db355b23aa6df395e2e2d9c5c8cf1f55ced kangaroo-2.1.1.221201-x86_64.zip

# 分享给朋友们

+ + + diff --git a/zh/download/v2.2.1.230101.html b/zh/download/v2.2.1.230101.html new file mode 100644 index 000000000..40f60c1aa --- /dev/null +++ b/zh/download/v2.2.1.230101.html @@ -0,0 +1,76 @@ + + + + + + 袋鼠数据库工具 v2.2.1 (Beta) | 袋鼠数据库工具 + + + + + + + + + + + +

# 袋鼠数据库工具 v2.2.1 (Beta)

这是一个稳定版本,功能成熟度和稳定性无限趋近版本目标,推荐所有用户使用。

# 新特性或修复的缺陷列表

  • 增加 SQL 执行对话框
  • 增加 导出并转换对话框
  • 增加查询耗时显示
  • SQLite: 修复索引字段加载问题
  • SQLite: 修复备份数据表名字问题
  • MariaDB: 修复加载架构对象范围问题
  • MySQL: 修复加载架构对象范围问题
  • PostgreSQL: 修复 v15 用户属性问题
  • 更新智能提示候选项图标
  • 更新中文语言支持(zh-CN/zh-TW/zh-SG/zh-HK)
  • 更新 Windows 安装程序以默认选择驱动程序
  • 更新 GTK 库: v4.9.2
+ (adsbygoogle = window.adsbygoogle || []).push({}); +

# 安装程序和便携安装包 链接已失效

Windows 用户可通过 winget 工具直接安装袋鼠:winget install Taozuhong.Kangaroo,否则需要自行下载并安装它。

# Windows 平台

平台 CPU 架构 安装程序 便携包
Windows x86-64 Github (opens new window)
GitEE (opens new window)
Server 3 (opens new window)
Server 4 (opens new window)
Github (opens new window)
GitEE (opens new window)
Server 3 (opens new window)
Server 4 (opens new window)
Wine / ... x86-64 Github (opens new window)
GitEE (opens new window)
Server 3 (opens new window)
Server 4 (opens new window)
Github (opens new window)
GitEE (opens new window)
Server 3 (opens new window)
Server 4 (opens new window)

# macOS 平台

平台 CPU 架构 安装程序 便携包
macOS ARM64 Coming soon Coming soon

# Linux 平台

发行版 CPU 架构 安装程序 便携包
Arch Linux x86-64 Github (opens new window)
GitEE (opens new window)
Server 3 (opens new window)
Server 4 (opens new window)
Github (opens new window)
GitEE (opens new window)
Server 3 (opens new window)
Server 4 (opens new window)
Debian x86-64 Github (opens new window)
Gitee (opens new window)
Server 3 (opens new window)
Server 4 (opens new window)
Github (opens new window)
GitEE (opens new window)
Server 3 (opens new window)
Server 4 (opens new window)
+ (adsbygoogle = window.adsbygoogle || []).push({}); +

# SHA256SUM

强烈建议您使用 sha256sum7-Zip 等工具,校验您下载的包文件 SHA256 哈希值是否与官方一致,确保您的包文件100%正确无篡改。

sha256sum 校验码 袋鼠安装包文件名
f8f1c499457740ae5ae105fc8f44de891c1372acd14e02fb3d9cd243322eef62 kangaroo-2.2.1.230101-x86_64.exe
b40b165ac2ac6e9cce1710b5af004768e5957b06ff9fad81d2bfe7643ea12168 kangaroo-2.2.1.230101-x86_64.deb
ac5798dbb2a680df9ea72e337fa839fc009bca60efc71c0baf7decddad3ae68a kangaroo-2.2.1.230101-1-x86_64.pkg.tar.zst
21e9c511d51b20673b43d245af0ec95928113f7479284854c7422bd463f26992 kangaroo-2.2.1.230101-x86_64.tar.zst
50631a8ecdca13d55a3a53c882934f5068f2bf6c87601f39cd94dd50fd98a2d8 kangaroo-2.2.1.230101-x86_64.zip

# 分享给朋友们

+ + + diff --git a/zh/download/v2.3.1.230201.html b/zh/download/v2.3.1.230201.html new file mode 100644 index 000000000..b038315ce --- /dev/null +++ b/zh/download/v2.3.1.230201.html @@ -0,0 +1,79 @@ + + + + + + 袋鼠数据库工具 v2.3.1 (Beta) | 袋鼠数据库工具 + + + + + + + + + + + +

# 袋鼠数据库工具 v2.3.1 (Beta)

这是一个稳定版本,功能成熟度和稳定性无限趋近版本目标,推荐所有用户使用。

# 新特性或修复的缺陷列表

  • 增加用户查询文件面板
  • 增加用户模型文件面板
  • 更新工具栏样式
  • 连接空间支持分割视图 (垂直或水平)
  • 连接空间增加 状态栏控件
  • 连接空间增加 语言切换 支持
  • 连接空间增加 换行符 支持
  • 连接空间增加 文件编码 支持
  • 连接空间增加 自动换行 支持
  • 连接空间增加 缩进设置 支持
  • 连接空间增加 位置信息 支持
  • 连接空间增加 面板切换 支持
  • 连接空间增加 工作页消息 支持
  • 更新关于窗口(增加系统信息)
  • 更新 RPM 包安装脚本
  • 更新中文语言支持(zh-CN/zh-TW/zh-SG/zh-HK)
  • 移除主菜单之视图子菜单
+ (adsbygoogle = window.adsbygoogle || []).push({}); +

# 安装程序和便携安装包 链接已失效

Windows 用户可通过 winget 工具直接安装袋鼠:winget install Taozuhong.Kangaroo,否则需要自行下载并安装它。

# Windows 平台

平台 CPU 架构 安装程序 便携包
Windows x86-64 Github (opens new window)
GitEE (opens new window)
Server 3 (opens new window)
Server 4 (opens new window)
Github (opens new window)
GitEE (opens new window)
Server 3 (opens new window)
Server 4 (opens new window)
Wine / ... x86-64 Github (opens new window)
GitEE (opens new window)
Server 3 (opens new window)
Server 4 (opens new window)
Github (opens new window)
GitEE (opens new window)
Server 3 (opens new window)
Server 4 (opens new window)

# macOS 平台

平台 CPU 架构 安装程序 便携包
macOS ARM64 Coming soon Coming soon

# Linux 平台

这个版本使用未发布的依赖库版本,鉴于依赖库版本未发布原因,不建议 Linux 普通用户使用。
+专业用户需要自行拉取代码并编译、安装,才能让袋鼠正常使用,相关依赖库为:
+GTK4 >= 4.10
+libpanel >= 1.2.0

发行版 CPU 架构 安装程序 便携包
Arch Linux x86-64 Github (opens new window)
GitEE (opens new window)
Server 3 (opens new window)
Server 4 (opens new window)
Github (opens new window)
GitEE (opens new window)
Server 3 (opens new window)
Server 4 (opens new window)
Debian x86-64 Github (opens new window)
Gitee (opens new window)
Server 3 (opens new window)
Server 4 (opens new window)
Github (opens new window)
GitEE (opens new window)
Server 3 (opens new window)
Server 4 (opens new window)
+ (adsbygoogle = window.adsbygoogle || []).push({}); +

# SHA256SUM

强烈建议您使用 sha256sum7-Zip 等工具,校验您下载的包文件 SHA256 哈希值是否与官方一致,确保您的包文件100%正确无篡改。

sha256sum 校验码 袋鼠安装包文件名
80ceec4732a66fe112111941438c8461674671493548cb3a97d34a4cfb53fb65 kangaroo-2.3.1.230201-x86_64.exe
fb8d8e1d3b9b5783888ca076ccb693e2de588a14355ccaf8e2eb507d2862f5f6 kangaroo-2.3.1.230201-x86_64.deb
63feed9980b379490b6c8f70ae29fc157426c9cb153f2365fd47e9ae52be86b6 kangaroo-2.3.1.230201-1-x86_64.pkg.tar.zst
69fc68ccf672ccacb180010e88de3e31ff43581138f782acee6d322d20342616 kangaroo-2.3.1.230201-x86_64.tar.zst
31e99493b8f78204b372ad5935eee0f3740dc2123ecebd4f7e1946eac0cc584d kangaroo-2.3.1.230201-x86_64.zip

# 分享给朋友们

+ + + diff --git a/zh/download/v2.3.2.230301.html b/zh/download/v2.3.2.230301.html new file mode 100644 index 000000000..8b08c35e2 --- /dev/null +++ b/zh/download/v2.3.2.230301.html @@ -0,0 +1,79 @@ + + + + + + 袋鼠数据库工具 v2.3.2 (Beta) | 袋鼠数据库工具 + + + + + + + + + + + +

# 袋鼠数据库工具 v2.3.2 (Beta)

这是一个稳定版本,功能成熟度和稳定性无限趋近版本目标,推荐所有用户使用。

# 新特性或修复的缺陷列表

  • MySQL: 增加执行器菜单入口
  • MariaDB: 增加执行器菜单入口
  • PostgreSQL: 增加执行器菜单入口
  • 更新 DataGrid 常规样式背景色
  • 更新中文语言支持(zh-CN/zh-TW/zh-SG/zh-HK)
  • 修复: 未知字段 SCHEMA_COMMENT (< MariaDB 10.5)
  • 修复: 执行器文件对话框问题
  • 修复: 智能提示小写输入时无法响应问题
  • 修复: 网格相关的崩溃问题
+ (adsbygoogle = window.adsbygoogle || []).push({}); +

# 安装程序和便携安装包

Windows 用户可通过 winget 工具直接安装袋鼠:winget install Taozuhong.Kangaroo,否则需要自行下载并安装它。

# Windows 平台

平台 CPU 架构 安装程序 便携包
Windows x86-64 Github (opens new window)
GitEE (opens new window)
Server 3 (opens new window)
Server 4 (opens new window)
Github (opens new window)
GitEE (opens new window)
Server 3 (opens new window)
Server 4 (opens new window)
Wine / ... x86-64 Github (opens new window)
GitEE (opens new window)
Server 3 (opens new window)
Server 4 (opens new window)
Github (opens new window)
GitEE (opens new window)
Server 3 (opens new window)
Server 4 (opens new window)

# macOS 平台

平台 CPU 架构 安装程序 便携包
macOS ARM64 Coming soon Coming soon

# Linux 平台

这个版本使用未发布的依赖库版本,鉴于依赖库版本未发布原因,不建议 Linux 普通用户使用。
+专业用户需要自行拉取代码并编译、安装,才能让袋鼠正常使用,相关依赖库为:
+GTK4 >= 4.10
+libpanel >= 1.2.0

发行版 CPU 架构 安装程序 便携包
Arch Linux x86-64 Github (opens new window)
GitEE (opens new window)
Server 3 (opens new window)
Server 4 (opens new window)
Github (opens new window)
GitEE (opens new window)
Server 3 (opens new window)
Server 4 (opens new window)
Debian x86-64 Github (opens new window)
Gitee (opens new window)
Server 3 (opens new window)
Server 4 (opens new window)
Github (opens new window)
GitEE (opens new window)
Server 3 (opens new window)
Server 4 (opens new window)
+ (adsbygoogle = window.adsbygoogle || []).push({}); +

# SHA256SUM

强烈建议您使用 sha256sum7-Zip 等工具,校验您下载的包文件 SHA256 哈希值是否与官方一致,确保您的包文件100%正确无篡改。

sha256sum 校验码 袋鼠安装包文件名
9f6a2368a75e7a0825dfef99bcd7a2b284a9cd6399276242ef39a1048df1700b kangaroo-2.3.2.230306-x86_64.exe
cb7f78ca9c271e456f387acfe383b2670093cc8f09dba3e0aa7281527858817e kangaroo-2.3.2.230301-x86_64.deb
66d6c00c67a71179121e780b2e986144ae5e5ed129d9c65ba4f341911813b4e1 kangaroo-2.3.2.230301-1-x86_64.pkg.tar.zst
cd039507f4a8e514f342e35535a7e344c1baafadace4635b6d357eed03f1e689 kangaroo-2.3.2.230301-x86_64.tar.zst
38b5c52a6e7b04ed958482bdb33782aef4456be6412e6ce5a24d89901f22b856 kangaroo-2.3.2.230306-x86_64.zip

# 分享给朋友们

+ + + diff --git a/zh/download/v2.99.1.230331.html b/zh/download/v2.99.1.230331.html new file mode 100644 index 000000000..cf550853a --- /dev/null +++ b/zh/download/v2.99.1.230331.html @@ -0,0 +1,79 @@ + + + + + + 袋鼠数据库工具 v2.99.1 (Beta) | 袋鼠数据库工具 + + + + + + + + + + + +

# 袋鼠数据库工具 v2.99.1 (Beta)

这是一个稳定版本,功能成熟度和稳定性无限趋近版本目标,推荐所有用户使用。

重要提示

版本中标注有 Dev Beta 字样的可以免费使用,其它版本需要付费。

# 新特性或修复的缺陷列表

  • SQLite: 添加数据库直接访问支持
  • MySQL: 添加数据库直接访问支持
  • MariaDB: 添加数据库直接访问支持
  • PostgreSQL: 添加数据库直接访问支持
  • 改善了浮点数显示支持(默认展示5位小数位)
  • 改进了连接建立方式(无需选择驱动)
  • 更新中文语言支持(zh-CN/zh-TW/zh-SG/zh-HK)
+ (adsbygoogle = window.adsbygoogle || []).push({}); +

# 安装程序和便携安装包 链接已失效

Windows 用户可通过 winget 工具直接安装袋鼠:winget install Taozuhong.Kangaroo,否则需要自行下载并安装它。

# Windows 平台

Architect All SQLite MariaDB MySQL PostgreSQL
x86-64 Github (opens new window)
GitEE (opens new window)
Server 3 (opens new window)
Server 4 (opens new window)
Server 3 (opens new window)
Server 4 (opens new window)
Server 3 (opens new window)
Server 4 (opens new window)
Server 3 (opens new window)
Server 4 (opens new window)
Server 3 (opens new window)
Server 4 (opens new window)
ARM64
RISCV64

# macOS 平台

Architect All SQLite MariaDB MySQL PostgreSQL
ARM64
x86-64
RISCV64

# Linux 平台

这个版本使用未发布的依赖库版本,鉴于依赖库版本未发布原因,不建议 Linux 普通用户使用。
+专业用户需要自行拉取代码并编译、安装,才能让袋鼠正常使用,相关依赖库为:
+GTK4 >= 4.10
+libpanel >= 1.2.0

Architect All SQLite MariaDB MySQL PostgreSQL
x86-64 Arch Linux
Github (opens new window)
GitEE (opens new window)
Server 3 (opens new window)
Server 4 (opens new window)

Debian
Github (opens new window)
Gitee (opens new window)
Server 3 (opens new window)
Server 4 (opens new window)
ARM64
RISCV64
+ (adsbygoogle = window.adsbygoogle || []).push({}); +

# SHA256SUM

强烈建议您使用 sha256sum7-Zip 等工具,校验您下载的包文件 SHA256 哈希值是否与官方一致,确保您的包文件100%正确无篡改。

sha256sum 校验码 袋鼠安装包文件名
7fd73a026a9eca11b6769d8b6beafd34b63334a4ec76b13d2f3f38a2d1f5db32 kangaroo-max-2.99.1.230331-x86_64.exe
5819560a44db6362570c5450e2c0a3625b7239fd37a037e759b450e51cc5f297 kangaroo-max-2.99.1.230331-x86_64.deb
b7e67a536e59e621fdde52781fdc99d8834da5ce4b3f06803f5ea50d4a35a960 kangaroo-max-2.99.1.230331-1-x86_64.pkg.tar.zst
b132143cc3df47fc42a2de0c8aa5a20bdc7b8673ad4095b39d09fd1f583d0f3a kangaroo-mariadb-2.99.1.230331-x86_64.exe
f9f92846076b2c78a369d11beaabb796896f16029251be2bc31891dcfe3f2091 kangaroo-mysql-2.99.1.230331-x86_64.exe
2914978bce2d85de81763f7fce32f532d9fbb03b9e209867e438c62355fd6f51 kangaroo-postgresql-2.99.1.230331-x86_64.exe
de71c55462a52ca05b1f132c720f8dbfbd5f373a586b32041e2a6d96e1b45af3 kangaroo-sqlite-2.99.1.230331-x86_64.exe
2f4aec27314c1e9bfbf1eca13d7586b9fbe2a378e289ee25a1a1a7edd2c1cc81 kangaroo-max-2.99.1.230331-x86_64.7z
b20df8610802e904e7eee58d30c4bd77e86292dde90d2c270a37c5a0e75ab616 kangaroo-max-2.99.1.230331-x86_64.tar.zst

# 分享给朋友们

+ + + diff --git a/zh/download/v2.99.2.230428.html b/zh/download/v2.99.2.230428.html new file mode 100644 index 000000000..4a3a3e8c4 --- /dev/null +++ b/zh/download/v2.99.2.230428.html @@ -0,0 +1,79 @@ + + + + + + 袋鼠数据库工具 v2.99.2 (Beta) | 袋鼠数据库工具 + + + + + + + + + + + +

# 袋鼠数据库工具 v2.99.2 (Beta)

这是一个稳定版本,功能成熟度和稳定性无限趋近版本目标,推荐所有用户使用。

重要提示

版本中标注有 Dev Beta 字样的可以免费使用,其它版本需要付费。

# 新特性或修复的缺陷列表

  • 添加沙盒运行支持 (仅限 Windows)
  • GTK4 升级为 4.10.3
  • libadwaita 升级为 1.3.1
  • 修复: 对话框无法关闭
+ (adsbygoogle = window.adsbygoogle || []).push({}); +

# 安装程序和便携安装包 链接已失效

Windows 用户可通过 winget 工具直接安装袋鼠:winget install Taozuhong.Kangaroo,否则需要自行下载并安装它。

# Windows 平台

Architect All SQLite MariaDB MySQL PostgreSQL
x86-64 Github (opens new window)
GitEE (opens new window)
Server 3 (opens new window)
Server 4 (opens new window)
Server 3 (opens new window)
Server 4 (opens new window)
Server 3 (opens new window)
Server 4 (opens new window)
Server 3 (opens new window)
Server 4 (opens new window)
Server 3 (opens new window)
Server 4 (opens new window)
ARM64
RISCV64

# macOS 平台

Architect All SQLite MariaDB MySQL PostgreSQL
ARM64
x86-64
RISCV64

# Linux 平台

这个版本使用未发布的依赖库版本,鉴于依赖库版本未发布原因,不建议 Linux 普通用户使用。
+专业用户需要自行拉取代码并编译、安装,才能让袋鼠正常使用,相关依赖库为:
+GTK4 >= 4.10
+libpanel >= 1.2.0

Architect All SQLite MariaDB MySQL PostgreSQL
x86-64 Arch Linux
Github (opens new window)
GitEE (opens new window)
Server 3 (opens new window)
Server 4 (opens new window)

Debian
Github (opens new window)
Gitee (opens new window)
Server 3 (opens new window)
Server 4 (opens new window)
ARM64
RISCV64
+ (adsbygoogle = window.adsbygoogle || []).push({}); +

# SHA256SUM

强烈建议您使用 sha256sum7-Zip 等工具,校验您下载的包文件 SHA256 哈希值是否与官方一致,确保您的包文件100%正确无篡改。

sha256sum 校验码 袋鼠安装包文件名
b0ee5d8609c39373f0def0d2f0750a5e7476a7aaa4949c0198a9f6f8b2288494 kangaroo-max-2.99.2.230430-x86_64.exe
a465ab79b11e9de74d67d63430b19031fe891572054f9dc46f75394afd8def22 kangaroo-max-2.99.2.230430-x86_64.deb
1c3a6ac30c621fcedc440e5b54c65e590e28789722418226134ae1ca34e165a6 kangaroo-max-2.99.2.230430-1-x86_64.pkg.tar.zst
091b05c71336a5da65f514fe339d5c597daf60ad758b033b36ae2296bb17196f kangaroo-mariadb-2.99.2.230430-x86_64.exe
443be9bf9d9ebf91f99ae1015b913aed91a532a298bdc52a388f14dad2ecb690 kangaroo-mysql-2.99.2.230430-x86_64.exe
1b1032ea99e59b6e3d5221266d2d7a8fd3b46c15557bf288deb9095dae3aab86 kangaroo-postgresql-2.99.2.230430-x86_64.exe
c6ab40206da2ed64191766259008a22ae4481171b1ebb2df54c76fa243c8919f kangaroo-sqlite-2.99.2.230430-x86_64.exe
d2c82b2919d27b63968b14336fa536305086cffa0cae3e27cf04064aa385f0c3 kangaroo-max-2.99.2.230430-x86_64.7z
df3509ba7e1ba53723b698282f348701a711463dc2a44eb9257c863df8916433 kangaroo-max-2.99.2.230430-x86_64.tar.zst

# 分享给朋友们

+ + + diff --git a/zh/download/v2.99.3.230602.html b/zh/download/v2.99.3.230602.html new file mode 100644 index 000000000..10cae9dc0 --- /dev/null +++ b/zh/download/v2.99.3.230602.html @@ -0,0 +1,79 @@ + + + + + + 袋鼠数据库工具 v2.99.3 (Beta) | 袋鼠数据库工具 + + + + + + + + + + + +

# 袋鼠数据库工具 v2.99.3 (Beta)

这是一个稳定版本,功能成熟度和稳定性无限趋近版本目标,推荐所有用户使用。

重要提示

版本中标注有 Dev Beta 字样的可以免费使用,其它版本需要付费。

# 新特性或修复的缺陷列表

  • Windows: GTK4 升级为 4.11.2
  • MySQL: 修复 TINYTEXT/TEXT/MEDIUMTEXT/LONGTEXT 显示问题
  • MariaDB: 修复 TINYTEXT/TEXT/MEDIUMTEXT/LONGTEXT 显示问题
+ (adsbygoogle = window.adsbygoogle || []).push({}); +

# 安装程序和便携安装包 链接已失效

Windows 用户可通过 winget 工具直接安装袋鼠:winget install Taozuhong.Kangaroo,否则需要自行下载并安装它。

# Windows 平台

Architect All SQLite MariaDB MySQL PostgreSQL
x86-64 Github (opens new window)
GitEE (opens new window)
Server 3 (opens new window)
Server 4 (opens new window)
Server 3 (opens new window)
Server 4 (opens new window)
Server 3 (opens new window)
Server 4 (opens new window)
Server 3 (opens new window)
Server 4 (opens new window)
Server 3 (opens new window)
Server 4 (opens new window)
ARM64
RISCV64

# macOS 平台

Architect All SQLite MariaDB MySQL PostgreSQL
ARM64
x86-64
RISCV64

# Linux 平台

这个版本使用未发布的依赖库版本,鉴于依赖库版本未发布原因,不建议 Linux 普通用户使用。
+专业用户需要自行拉取代码并编译、安装,才能让袋鼠正常使用,相关依赖库为:
+GTK4 >= 4.10
+libpanel >= 1.2.0

Architect All SQLite MariaDB MySQL PostgreSQL
x86-64 Arch Linux
Github (opens new window)
GitEE (opens new window)
Server 3 (opens new window)
Server 4 (opens new window)

Debian
Github (opens new window)
Gitee (opens new window)
Server 3 (opens new window)
Server 4 (opens new window)
ARM64
RISCV64
+ (adsbygoogle = window.adsbygoogle || []).push({}); +

# SHA256SUM

强烈建议您使用 sha256sum7-Zip 等工具,校验您下载的包文件 SHA256 哈希值是否与官方一致,确保您的包文件100%正确无篡改。

sha256sum 校验码 袋鼠安装包文件名
1a2be887170dbfb4147ff10fe1201d6c8594b86e929d8b612d17abe656cbb640 kangaroo-max-2.99.3.230602-x86_64.exe
d84aa6c93dd01ec65a5f63f3a2cb8260537d3ee824ea7424d1801631bd112f5a kangaroo-max-2.99.3.230602-x86_64.deb
7da7ed12dc99a38b68d691cbff59d13a511ba62eb221dc53ee79385a69d2f2fd kangaroo-max-2.99.3.230602-1-x86_64.pkg.tar.zst
9f19f79b27f9ba6aa7a0fea680f9a917cf31a961e90365ffe7a974ee85e62510 kangaroo-mariadb-2.99.3.230602-x86_64.exe
15e8e61266842eafe01d9568ff0dfab5ef3f4da69c8f529f926ae786d0731386 kangaroo-mysql-2.99.3.230602-x86_64.exe
fd50c9cbf035653864bafab3a34164649094e82dadf91a6cb2de331c8283ebfb kangaroo-postgresql-2.99.3.230602-x86_64.exe
631e23f70427415bb862ad0a445f29c599096c0dfad208583ebaea1059a02075 kangaroo-sqlite-2.99.3.230602-x86_64.exe
ab6fefc8d064421cfd7d506a28ddd4e8a4363723ccf7a9b211894f455f39474f kangaroo-max-2.99.3.230602-x86_64.7z
12ac32a1a5d15ac71add144412b0f8a441a68a517afc17a2995d4d12b53e4f63 kangaroo-max-2.99.3.230602-x86_64.tar.zst

# 分享给朋友们

+ + + diff --git a/zh/download/v3.90.1.230701.html b/zh/download/v3.90.1.230701.html new file mode 100644 index 000000000..a583d8bc8 --- /dev/null +++ b/zh/download/v3.90.1.230701.html @@ -0,0 +1,79 @@ + + + + + + 袋鼠数据库工具 v3.90.1 (Beta) | 袋鼠数据库工具 + + + + + + + + + + + +

# 袋鼠数据库工具 v3.90.1 (Beta)

这是一个稳定版本,功能成熟度和稳定性无限趋近版本目标,推荐所有用户使用。

重要提示

版本中标注有 Dev Beta 字样的可以免费使用,其它版本需要付费。

# 新特性或修复的缺陷列表

  • 增加数据库传输/结构同步/数据同步界面
  • 实现数据库传输业务逻辑
  • 实现数据库结构同步业务逻辑
  • SQLite: 加密扩展支持(SQLCipher)
  • MySQL: 改进 TEXT/BLOB 类型支持
  • MariaDB: 改进 TEXT/BLOB 类型支持
  • 对话框窗口居中支持
  • 增加多语言切换支持
  • 优化配置对话框性能
  • 更新中文语言支持
  • 修复 MySQL/MariaDB 字段标记问题
+ (adsbygoogle = window.adsbygoogle || []).push({}); +

# 安装程序和便携安装包 链接已失效

Windows 用户可通过 winget 工具直接安装袋鼠:winget install Taozuhong.Kangaroo,否则需要自行下载并安装它。

# Windows 平台

Architect All SQLite MariaDB MySQL PostgreSQL
x86-64 Github (opens new window)
GitEE (opens new window)
Server 3 (opens new window)
Server 4 (opens new window)
Server 3 (opens new window)
Server 4 (opens new window)
Server 3 (opens new window)
Server 4 (opens new window)
Server 3 (opens new window)
Server 4 (opens new window)
Server 3 (opens new window)
Server 4 (opens new window)
ARM64
RISCV64

# macOS 平台

Architect All SQLite MariaDB MySQL PostgreSQL
ARM64
x86-64
RISCV64

# Linux 平台

这个版本使用未发布的依赖库版本,鉴于依赖库版本未发布原因,不建议 Linux 普通用户使用。
+专业用户需要自行拉取代码并编译、安装,才能让袋鼠正常使用,相关依赖库为:
+GTK4 >= 4.10
+libpanel >= 1.2.0

Architect All SQLite MariaDB MySQL PostgreSQL
x86-64 Arch Linux
Github (opens new window)
GitEE (opens new window)
Server 3 (opens new window)
Server 4 (opens new window)

Debian
Github (opens new window)
Gitee (opens new window)
Server 3 (opens new window)
Server 4 (opens new window)
ARM64
RISCV64
+ (adsbygoogle = window.adsbygoogle || []).push({}); +

# SHA256SUM

强烈建议您使用 sha256sum7-Zip 等工具,校验您下载的包文件 SHA256 哈希值是否与官方一致,确保您的包文件100%正确无篡改。

sha256sum 校验码 袋鼠安装包文件名
0dbbefb6823b406351d753bc597394ba785898677904e98145e145a73a4e3512 kangaroo-max-3.90.1.230703-x86_64.exe
9b20a3ab546797a47845ec63b13da31a33d3e0e700c6f4171bb72c1c8c41b71f kangaroo-max-3.90.1.230703-x86_64.deb
0bcc168cdb9e05aed57bd1842dac291ee15b8f8c65dab379acc14eb1065cc9b5 kangaroo-max-3.90.1.230703-1-x86_64.pkg.tar.zst
fd76fd988716f8dfb105d9ffb77255a606c79eb58a2a79d94450dc7626d3d5d5 kangaroo-mariadb-3.90.1.230703-x86_64.exe
279cb589f427b19ea66d36ca815d340ca628c32cad03dbe4e3ad9672b7d4f18b kangaroo-mysql-3.90.1.230703-x86_64.exe
afc76b0ab613cd64ba95277ae3f1071b4acbb74e081b4bbbfa52cdb962249bcf kangaroo-postgresql-3.90.1.230703-x86_64.exe
873917695247339c56403aeb35737a40d00b68c456866c7016c5b5f4fa50e3e7 kangaroo-sqlite-3.90.1.230703-x86_64.exe
f070a6969f4e94c43e16f4a483011a22582155a4782565bf75140d3ae88532fb kangaroo-max-3.90.1.230703-x86_64.7z
eb627ed093c4476305fbf04b2e30f67ddca0da2efe9bbc59febf383fd202ea8b kangaroo-max-3.90.1.230703-x86_64.tar.zst

# 分享给朋友们

+ + + diff --git a/zh/download/v3.91.1.230801.html b/zh/download/v3.91.1.230801.html new file mode 100644 index 000000000..b71bba278 --- /dev/null +++ b/zh/download/v3.91.1.230801.html @@ -0,0 +1,79 @@ + + + + + + 袋鼠数据库工具 v3.91.1 (Beta) | 袋鼠数据库工具 + + + + + + + + + + + +

# 袋鼠数据库工具 v3.91.1 (Beta)

这是一个稳定版本,功能成熟度和稳定性无限趋近版本目标,推荐所有用户使用。

重要提示

版本中标注有 Dev Beta 字样的可以免费使用,其它版本需要付费。

# 新特性或修复的缺陷列表

  • 界面适配 libadwaita 1.4
  • 重构切换空间属性(GtkSwitch.state to active)
  • 增加显示数据库驱动库版本
  • 增加中文语言支持(zh_Hans/zh_Hant)
  • 改进工作空间状态栏用户体验
  • 更新中文语言支持
  • MariaDB: 增加表设计器页面
  • MariaDB: 修复外键相关问题
  • MySQL: 增加类型支持 TIMESTAMP
  • PostgreSQL: 修复类型和排序规则问题
  • SQLite: 修复模式相关问题
  • 数据传输: 初始化默认设置
  • 数据传输: 增加日志输出
  • 数据传输: 修复目标连接问题
+ (adsbygoogle = window.adsbygoogle || []).push({}); +

# 安装程序和便携安装包

Windows 用户可通过 winget 工具直接安装袋鼠:winget install Taozuhong.Kangaroo,否则需要自行下载并安装它。

# Windows 平台

Architect All SQLite MariaDB MySQL PostgreSQL
x86-64 Github (opens new window)
GitEE (opens new window)
Server 3 (opens new window)
Server 4 (opens new window)
Server 3 (opens new window)
Server 4 (opens new window)
Server 3 (opens new window)
Server 4 (opens new window)
Server 3 (opens new window)
Server 4 (opens new window)
Server 3 (opens new window)
Server 4 (opens new window)
ARM64
RISCV64

# macOS 平台

Architect All SQLite MariaDB MySQL PostgreSQL
ARM64
x86-64 Github (opens new window)
GitEE (opens new window)
Server 3 (opens new window)
Server 4 (opens new window)
RISCV64

# Linux 平台

这个版本使用未发布的依赖库版本,鉴于依赖库版本未发布原因,不建议 Linux 普通用户使用。
+专业用户需要自行拉取代码并编译、安装,才能让袋鼠正常使用,相关依赖库为:
+GTK4 >= 4.11.4
+libadwaita >= 1.4.0

Architect All SQLite MariaDB MySQL PostgreSQL
x86-64 Arch Linux
Github (opens new window)
GitEE (opens new window)
Server 3 (opens new window)
Server 4 (opens new window)

Debian
Github (opens new window)
Gitee (opens new window)
Server 3 (opens new window)
Server 4 (opens new window)
ARM64
RISCV64
+ (adsbygoogle = window.adsbygoogle || []).push({}); +

# SHA256SUM

强烈建议您使用 sha256sum7-Zip 等工具,校验您下载的包文件 SHA256 哈希值是否与官方一致,确保您的包文件100%正确无篡改。

sha256sum 校验码 袋鼠安装包文件名
0724bfb36f576ffd0183eff98f9308a37a23d3c9440dfb18d3c72814e52a7c7f kangaroo-max-3.91.2.230807-x86_64.exe
d737d9b3d29baf543cccd5b7c6ebe329b075ec36e8ba01a46cef146ec83bfc20 kangaroo-max-3.90.2.230801-x86_64.deb
7c526127e14dbeafa69a818cef61710dd8441b677e83f5b5480dbf90e673146a kangaroo-max-3.90.2.230801-1-x86_64.pkg.tar.zst
21f6cafe83a5639e5ec639e5560420bbc69f7c74d8ea9d77e57789e2d9e7bb30 kangaroo-max-3.90.2.230801-x86_64.dmg
366c09e7f779be87d435e681d89301f5e9388d286f79d8140d1d1bb0ee4cf2e7 kangaroo-mariadb-3.91.2.230807-x86_64.exe
20e4750206a48ab3888b6196f3c5affcbcc1c9192529398553e8897b654f6f9c kangaroo-mysql-3.91.2.230807-x86_64.exe
a543ac201f5f95e231c464e60c452b4ff1168e50776883376a4b66bfc8d42401 kangaroo-postgresql-3.91.2.230807-x86_64.exe
df895b43909a424c958e525ddd76facd8db7d27a151a7cbccad339b7f01198c9 kangaroo-sqlite-3.91.2.230807-x86_64.exe
38f1d00e1136e02c41b6eb9338e7877b5f5aa851ede2f9a32db580e02e0a3ecb kangaroo-max-3.90.2.230801-x86_64.tar.zst
4f1d560d4f19221655aa226fdb61dd1e18fa25889c7e54f9a0326b93ce50ef9f kangaroo-max-3.91.2.230807-x86_64.7z

# 分享给朋友们

+ + + diff --git a/zh/download/v3.92.1.230901.html b/zh/download/v3.92.1.230901.html new file mode 100644 index 000000000..f0b380441 --- /dev/null +++ b/zh/download/v3.92.1.230901.html @@ -0,0 +1,80 @@ + + + + + + 袋鼠数据库工具 v3.92.1 | 袋鼠数据库工具 + + + + + + + + + + + +

# 袋鼠数据库工具 v3.92.1

由于袋鼠稳定性大幅度改善,崩溃已属于极少数个案,故从 v3.92.1 开始移除 Beta 标记,正式进入稳定版本发布周期,欢迎大家享用;

重要提示

版本中标注有 Dev Beta 字样的可以免费使用,其它版本需要付费。

# 新特性或修复的缺陷列表

  • GTK4 升级为 4.12
  • libadwaita 升级为 1.4 beta
  • 新增 Redhat 系列系统安装包(rpm)
  • 新增用户自定义代码块支持 +
    • 用户自定义代码块边栏(过滤/拖放支持)
    • 用户自定义代码块编辑对话框
    • 用户自定义代码块智能提示支持
    • 用户自定义代码块保存与配置支持
    • 用户自定义代码块之查询视图弹出菜单
  • 查询视图弹出菜单增加执行菜单项
  • 重构日志视图
  • 重构着色文本视图
  • 重构页面工具栏样式
  • 重构工具栏配置支持
  • 重构导出助理列映射页
  • 重构导出助理实体映射页
  • 重构导出助理DSV设置页
  • 重构模型实体对话框
  • 二维码增加袋鼠LOGO
  • 更新中文语言支持
  • 修复: 通讯连接问题
  • 修复: 文档对话框数据显示问题
  • 修复: 连接空间状态栏信息丢失问题
  • 修复: 数据库连接ID丢失问题
+ (adsbygoogle = window.adsbygoogle || []).push({}); +

# 安装程序和便携安装包

Windows 用户可通过 winget 工具直接安装袋鼠:winget install Taozuhong.Kangaroo,否则需要自行下载并安装它。

# Windows 平台

Architect All SQLite MariaDB MySQL PostgreSQL
x86-64 Github (opens new window)
GitEE (opens new window)
Server 3 (opens new window)
Server 4 (opens new window)
Server 3 (opens new window)
Server 4 (opens new window)
Server 3 (opens new window)
Server 4 (opens new window)
Server 3 (opens new window)
Server 4 (opens new window)
Server 3 (opens new window)
Server 4 (opens new window)
ARM64
RISCV64

# macOS 平台

Architect All SQLite MariaDB MySQL PostgreSQL
ARM64
x86-64 Github (opens new window)
GitEE (opens new window)
Server 3 (opens new window)
Server 4 (opens new window)
RISCV64

# Linux 平台

这个版本使用未发布的依赖库版本,鉴于依赖库版本未发布原因,不建议 Linux 普通用户使用。
+专业用户需要自行拉取代码并编译、安装,才能让袋鼠正常使用,相关依赖库为:
+GTK4 >= 4.12.0
+libadwaita >= 1.4.0

Architect All SQLite MariaDB MySQL PostgreSQL
x86-64 Arch Linux
Github (opens new window)
GitEE (opens new window)
Server 3 (opens new window)
Server 4 (opens new window)

Debian
Github (opens new window)
Gitee (opens new window)
Server 3 (opens new window)
Server 4 (opens new window)

Red Hat
Github (opens new window)
Gitee (opens new window)
Server 3 (opens new window)
Server 4 (opens new window)
ARM64
RISCV64
+ (adsbygoogle = window.adsbygoogle || []).push({}); +

# SHA256SUM

强烈建议您使用 sha256sum7-Zip 等工具,校验您下载的包文件 SHA256 哈希值是否与官方一致,确保您的包文件100%正确无篡改。

sha256sum 校验码 袋鼠安装包文件名
460b029dbb91afe8c5a2e236309a608a2f08ae257a7e774175b208523f753d49 kangaroo-max-3.92.1.230901-x86_64.exe
6316e5d17bf32fcd667e3edd3cd2593566f2244677d617c830659d0e136c24f6 kangaroo-max-3.92.1.230901-x86_64.dmg
010a3406f0c67701e23419543c2830270fffee3865da5759465d300ff43656d3 kangaroo-max-3.92.1.230901-x86_64.deb
b33f33d9daa888ec45f3639eceb37e30cfd8bf4e0c22fc742affd993fc727b66 kangaroo-max-3.92.1.230901-x86_64.rpm
453c33bb90bd881b3e29f8ac63c577a563265661c3d8b044b3bfd16b818359ef kangaroo-max-3.92.1.230901-1-x86_64.pkg.tar.zst
39376cbb67511e8a99758e7c2ae6b2ed00e0a8dba88c62f967aa881b0e792822 kangaroo-max-3.92.1.230901-x86_64.7z
3f27e51f50858ad515ade26ca4c7fe00d5028dbc765b5a8bcf04e2a84ca91337 kangaroo-mariadb-3.92.1.230901-x86_64.exe
b2d09740311f44abcace6cc81c2876fb02184f6b048e59a19f2ffd667cb2ae1f kangaroo-mysql-3.92.1.230901-x86_64.exe
99bfe18452ce25e13ede7811e5eefc16a083150d75a3c6fa5e6bacdd73e3517f kangaroo-postgresql-3.92.1.230901-x86_64.exe
1b99c4cbe956608d7bca6dc49c5222b23493fcdf76c01242cd6dd89e07f2e547 kangaroo-sqlite-3.92.1.230901-x86_64.exe

# 分享给朋友们

+ + + diff --git a/zh/index.html b/zh/index.html new file mode 100644 index 000000000..b72a05149 --- /dev/null +++ b/zh/index.html @@ -0,0 +1,70 @@ + + + + + + 袋鼠数据库工具 + + + + + + + + + + + +
hero

+ 袋鼠数据库工具 +

+ 为热门数据库系统打造的 SQL 客户端和管理工具 +

+ 下载 袋鼠数据库工具 +

简捷、强大

简捷、直观的操作界面,帮助您聚焦数据和快速完成工作。

触摸屏友好

聚焦改善数据和 SQL 编辑体验, 让您完成工作的同时收获愉悦的体验。

就是快

基于 GTKAdwaitaVala 构建的原生应用,获得 C 语言的原生性能,就是为了快。

# 支持的数据库系统

数据库支持能力级别: 已计划 / 部分 / 支持(💯)

数据库 支持版本 SQL 查询 数据编辑 表设计器 导出 导入 智能提示 模型化 数据同步
SQLite 3.0 + 支持💯 支持💯 支持💯 支持💯 支持💯 支持💯 ✅✅🔲🔲🔲 ✅✅✅✅🔲
MySQL 5.5 + 支持💯 支持💯 支持💯 支持💯 支持💯 支持💯 ✅✅🔲🔲🔲 ✅✅✅✅🔲
MariaDB 10.0 + 支持💯 支持💯 支持💯 支持💯 支持💯 支持💯 ✅✅🔲🔲🔲 ✅✅✅✅🔲
PostgreSQL 9.0 + 支持💯 支持💯 支持💯 支持💯 支持💯 支持💯 ✅✅🔲🔲🔲 ✅✅✅✅🔲
Redis 已计划 已计划 已计划 已计划 已计划 已计划 已计划 已计划
Oracle
SQL Server

隐私政策 | 用户协议 | 粤公网安备44030602005092号 (opens new window) | 粤ICP备2020100158号 (opens new window)
Copyright © 2019 - present Kangaroo. All Rights Reserved. 袋鼠工具 版权所有

+ + + diff --git a/zh/license/acknowledgement.html b/zh/license/acknowledgement.html new file mode 100644 index 000000000..83913887e --- /dev/null +++ b/zh/license/acknowledgement.html @@ -0,0 +1,72 @@ + + + + + + 致谢 | 袋鼠数据库工具 + + + + + + + + + + + +

# 致谢

袋鼠数据库工具(Kangaroo) 是 @taozuhong 先生开发的软件作品. 保留所有版权.

# 本地化贡献者

  • 简体中文:taozuhong
  • 繁体中文:taozuhong

# 下载服务器支持

  • 腾讯云 + CDN 支持: TOM
  • 又拍云 支持: yanling112

# 第三方库和图标

第三方库许可协议(证)

+ + + diff --git a/zh/license/index.html b/zh/license/index.html new file mode 100644 index 000000000..d5d613d6b --- /dev/null +++ b/zh/license/index.html @@ -0,0 +1,68 @@ + + + + + + 用户服务协议 | 袋鼠数据库工具 + + + + + + + + + + + + + + + diff --git a/zh/license/privacy-policy.html b/zh/license/privacy-policy.html new file mode 100644 index 000000000..3e38a9737 --- /dev/null +++ b/zh/license/privacy-policy.html @@ -0,0 +1,73 @@ + + + + + + 隐私保护指引 | 袋鼠数据库工具 + + + + + + + + + + + +

# Privacy Policy

February 1, 2022 by datatable.online

datatable.online built Kangaroo as a Commercial software. This SOFTWARE is provided by datatable.online and is intended for use as is.

This page is used to inform users regarding our policies with the collection, use, and disclosure of Personal Information if anyone decided to use Kangaroo.

If you choose to use Kangaroo, then you agree to the collection and use of information in relation to this policy.

The terms used in this Privacy Policy have the same meanings as in our Terms and Conditions, which will be accessible at Kangaroo unless otherwise defined in this Privacy Policy.

This Privacy Policy only applies for the usage of our software. Visiting our official homepage, support website, theme website, or other related websites, is not controlled by this Privacy Policy.

# Information Collection and Use

Anonymous usage data will only be send when the option “Send Anonymous Usage Info” is enabled in preferences panel.

If you disable the option, no data will be collected to us. (The option can be opt-out, but may need a restart of Kangaroo for the option to apply).

When you allow send anonymous usage data, we WILL collect following data anonymous for getting overall statistics of how Kangaroo is used:

  • Kangaroo version, operation system, screen resolution, locale and countries (based on IP address).
  • Name of operations when using Kangaroo, such as “launch”, “new window”, “print”, etc, for gathering overall statistics. (We won’t be able to list all detailed operations for a given user. We won’t collect any detail or sensitive data for user’s operation)
  • How long a user is using Kangaroo.
  • Insensitive preference settings in Kangaroo such as theme name, window style, etc. +When error/exception happens, and if you allow send anonymous usage data, we will collect stack trace, related settings, and running status before exception throws to help us find errors. It should not contain any sensitive or personal data.

# 3rd Party Apps & Services

Kangaroo can call and execute other apps for higher usability, which may collect information used to identify you, no matter you enable “Send Anonymous Usage Info” or not.

The 3rd party apps that Kangaroo may launch includes:

  • gdbus . It may be automatically launched by Kangaroo when you launch Kangaroo. it allows communication between multiple processes running concurrently on the same machine.

None of them will be installed automatically by Kangaroo, nor launched automatically when user is not doing related operations.

We have no control over and assume no responsibility for the content, privacy policies, or practices of any third-party services or apps.

# External Sites

If you insert images, videos, iframes or other resources Kangaroo support from remote websites, or open local markdown file containing them, Kangaroo will load them automatically from target sites. Those sites, however, may collect your visit information.

Also, you can input or open files that may contain links to other sites. If you click on a third-party link, you will be directed to that site. Note that these external sites are not operated by us. Therefore, we strongly advise you to review the Privacy Policy of these websites.

We have no control over and assume no responsibility for the content, privacy policies, or practices of any third-party websites.

# Log Data

Kangaroo will record necessary log on your local computer.

# Backups

For better user experience and prevent data lose from crash, if possible, Kangaroo will create backups for the content your input or modify automatically, those backups are stored on your local computer, no data will be collected by us.

# Feedbacks & Debug Contents

You may send us, or we may suggest you to send us informations like system version, operation steps , sample markdown files, or other needed info when you reports bugs or gave feedbacks. You can refuse to provide those informations if you do not want to.

All sample markdown files that user send to us, will only be used for debug and test purpose, we will not leak them to any other person who is not one of our development team without user’s permission. We may keep and use them after we remove sensitive data or personal identical data, for regulation test purpose. But we will delete files from mail box and local machine after we fixed related bugs, if user require us doing so.

Since user can give us feedbacks via mail, GitHub, twitter, doorbell.io, and so on, we have no control over and assume no responsibility for the content, privacy policies, or practices of any of those communication tools.

# Service Providers

We will NOT share data with third-party companies and individuals.

# Security

We value your trust in providing us your Personal Information, thus we are striving to use commercially acceptable means of protecting it. But remember that no method of transmission over the internet, or method of electronic storage is 100% secure and reliable, and we cannot guarantee its absolute security.

# Children’s Privacy

These Services do not address anyone under the age of 13. We do not knowingly collect personally identifiable information from children under 13. In the case we discover that a child under 13 has provided us with personal information, we immediately delete this from our servers or machines. If you are a parent or guardian and you are aware that your child has provided us with personal information, please contact me so that we will be able to do necessary actions.

# Changes to This Privacy Policy

We may update our Privacy Policy from time to time. Thus, you are advised to review this file or page periodically for any changes. These changes are effective immediately after they are updated in our website or Kangaroo is upgraded.

# Contact Us

If you have any questions or suggestions about our Privacy Policy, do not hesitate to contact us (dbkangaroo@hotmail.com).

+ + + diff --git a/zh/license/service-agreement.html b/zh/license/service-agreement.html new file mode 100644 index 000000000..593224b61 --- /dev/null +++ b/zh/license/service-agreement.html @@ -0,0 +1,73 @@ + + + + + + 软件许可及服务协议 | 袋鼠数据库工具 + + + + + + + + + + + +

# End User License Agreement

February 1, 2022 by datatable.online

提示

Please read this End User License Agreement (a.k.a “EULA”, “License Agreement”) before You purchase a License Key for the Software and subsequently download and use the Software.

By purchasing a License Key and/or downloading and using the Software, You agree, without reservation, to be bound by the terms of this EULA. If You do not agree with the terms of this EULA, please do not purchase a License Key and/or download and use the Software.

If You accept the terms and conditions in this EULA on behalf of a company or other legal entity, You warrant that You have full legal authority to accept the terms and conditions in this EULA on behalf of such company or other legal entity, and to legally bind such company or other legal entity.

You may not accept this EULA if You are not of legal age to form a binding contract in your country/states.

# 1. Definitions

  • We” a.k.a. “us”, or “datatable.online”. Developer(s) of Kangaroo.
  • Documentation” the detailed information about the Software, its features and the system requirements as made available on the website of datatable.online, as amended from time to time.
  • Open Source Software” any software that requires as a condition of use, copying, modification and/or distribution of such software that such software or other software incorporated into, derived from or distributed with such software (a) be disclosed or distributed in source code form, and (b) be licensed for the purpose of making and/or distributing derivative works, and (c) be redistributable at no charge;
  • Beta version” the license for the Software for public testing before version v2.0.
  • Stable version” versions with version number equal or greater than v2.0, exclude Beta versions.
  • Dev version” versions marked with “Dev” flag, those versions are used for public testing purpose after v2.0.
  • Full version” the license for the Software for the term specified on the webpage of the store where You purchase the license, or in any applicable agreement concerning the purchase of the license (as stand-alone product or as part of a subscription) to Use the Software. This license is when Kangaroo reaches v2.0.
  • Trial version” the license for the Software for the term of N days to Use the Stable version of Software for the sole purpose of testing and evaluating the Software. (N will be decided by us in future). This license is when Kangaroo reaches v2.0.
  • Updates” any modified versions and updates of, and additions to the Software (excluding upgrades of the Software);
  • Major Update” updates that introduce major version number changes, for example, from v2.x to v3.x is a Major Update, from v2.1.x to v2.2.x is not.
  • Use” the access, download, install, copy or get benefit from using the Software in accordance with the documentation.
  • You” you, the final and ultimate user of the Software or the authorized representative of a company or other legal entity that will be the final and ultimate user of the Software, and the company or other legal entity that will be the final and ultimate user of the Software, if applicable.

# General

  1. This EULA applies to any licenses granted to You by us for the use of the Software.
  2. By purchasing a License Key for the Software and/or downloading and using the Software, You enter into this EULA with us.

# 2. Changes to the License Agreement and the Website/Product

  1. Kangaroo is a work in progress, meaning that a lot will change in the near future. We reserve the right to update the Website and these Terms of Service from time to time, at our discretion. We will make sure to announce any major change in a prominent way.
  2. Your continued use of the Kangaroo following the publishing of updated License Agreement means that you accept and agree to the changes.
  3. The published License Agreement not only applies to current beta versions, but also applies to all versions and future updates of Kangaroo.

# 3. License

  1. We grant You a non-exclusive, non-transferable, limited, revocable license to Use the Software in accordance with this EULA. We reserve all rights not expressly granted to You.
  2. We are and remain the owner of any intellectual property rights with respect to the Software. You shall not acquire any ownership to the Software as result of Your purchase of the License Key or Your Use of the Software.

# 4. Permitted use and restrictions

  1. In order to be able to install the Software and receive Updates and upgrades, Your computer shall have access to the Internet and shall meet the system requirements described in the Documentation that can be found on the webpage: System Requirements. The system requirements may be changed in future updates.
  2. You shall Use the Beta version, Full version, or Trial version in accordance with applicable laws and shall not: +
    1. Use the Trial version on any system where the Trial version was previously Used and expired;
    2. Rent, lease, lend, sell, redistribute, sublicense or otherwise commercially exploit the License Key, the Full version or the Trial version;
    3. Assign the License Key, the Full version or the Trial version without prior written approval of us;
    4. Use the Beta version, Full version or Trial version for any unlawful or illegal activity, or to facilitate an unlawful or illegal activity;
    5. After 14 days evaluation passed, continue uses the versions for commercial usage, without a license code;
    6. Delete or alter any disclaimers, warnings, copyright or other proprietary notices accompanying the Software; or
    7. Adapt (except as otherwise provided in this EULA), decompile, reverse engineer, disassemble, attempt to derive the source code of, modify or create derivative works of the Software and the License Key or any parts thereof, except to the extent permitted by applicable law.
    8. Exception: repackage (provide installation packages/scripts) Kangaroo on Linux system is allowed if all contents (includes all binaries, resources files, scripts, etc) of Kangaroo are not modified or deleted.
  3. We may modify the Software at any time at its sole discretion and without notice to You, for example to comply with applicable law or a court order, to avoid a third party infringement claim or to provide Updates and upgrades.
  4. Certain components of the Software are Open Source Software and licensed under the terms of the applicable license(s) of the Open Source Software. You shall adhere to these terms and conditions, which can be found via the webpage: Acknowledgement.

# 5. Maintenance and support

  1. We will notify You of any available Updates and upgrades.
  2. You will be entitled to receive Updates free of charge for unless it is a Major Update.
  3. For a major update, You may need to pay an additional fee in order to be able to download an upgrade. The payment policy for major update will be announced by us when the upgrades are ready.
  4. After you upgrade from Beta version to Stable version, if no License key are provided, you would start using Trial Version automatically.
  5. You could upgrade or downgrade Kangaroo as you like, but we will delete older versions from our website after a long time period or we find it contains serious bugs.
  6. Any maintenance and support provided by us, including the provision of Updates and upgrades, will be provided in an adequate way on an “as is” basis without any warranty, as soon as reasonably practicable, subject to availability of personnel.

# 6. Use of data

See our Private Policy.

# 7. Disclaimer

  1. You Use the Software at Your own risk and the entire risk as to satisfactory quality, performance and accuracy is with You.
  2. We are working hard on improving Kangaroo, but we can’t guarantee that is it bug free. Therefore, your use of Kangaroo is at your sole risk. The service is provided “as is” and “as available”. We disclaim all warranties of any kind, express or implied, including, without limitation, the warranties of merchantability, fitness for a particular purpose and non-infringement. We are not liable for damages, direct or consequential, resulting from your use of the Website, and you agree to defend, indemnify and hold us harmless from any claims, losses, liability costs and expenses (including but not limited to attorney’s fees) arising from your violation of any third-party’s rights. You acknowledge that you have only a limited, nonexclusive, nontransferable license to use the Website.

# 8. Liability limitation

  1. We and any third party that has been involved in the creation, production, or delivery of the Software are under no circumstances liable for consequential or indirect damages (including damage for loss of profit, business interruption, loss of data, and the like arising out of the use or inability to use the Software).
  2. The limitations of liability referred to in clause 8.1 shall not apply in the event that: (i) any negligence on the part of Kangaroo leads to death or physical injury or (ii) damages arise from the intent, willful misconduct or gross negligence of us or the management of us.

# 9. Termination

  1. This EULA will continue to be in force until the expiry or termination of the Full version or Trial version.
  2. The Full version or Trial version will terminate automatically at the end of the applicable license term, unless renewed or Activated prior to the end of the applicable license term.
  3. We are entitled to terminate the Full version or Trial version by blocking the License Key during the license term with immediate effect and without prior notice in the event You fail to comply with the terms in this EULA, in the event You fail to pay Your (subscription) fee for the License Key within the applicable payment term, or in the event Kangaroo is required to do so by law or an order of an applicable court.
  4. Upon termination of the Full version or Trial version, You shall cease all use of the Software and shall destroy all copies thereof.
  5. You acknowledge that the provisions of this EULA, which by their nature are intended to survive termination, will remain in effect after termination of this EULA.

# 10. Feedback

We welcome any comment, question and communication at dbkangaroo@hotmail.com

+ + + diff --git a/zh/license/third-party.html b/zh/license/third-party.html new file mode 100644 index 000000000..001f63a27 --- /dev/null +++ b/zh/license/third-party.html @@ -0,0 +1,68 @@ + + + + + + 第三方库许可证 | 袋鼠数据库工具 + + + + + + + + + + + +

# 第三方库许可证

# 功能特性、第三方库及许可证

功能特性 第三方库名称 许可证协议
编译器 Vala (opens new window) LGPL 2.1 (opens new window)
- - -
对象模型库 GLib2 (opens new window) LGPL 2.1 (opens new window)
JSON支持库 json-glib (opens new window) LGPL 2.1 (opens new window)
数据库访问 unixODBC (opens new window) LGPL 2.1 (opens new window)
容器库 libgee (opens new window) LGPL 2.1 (opens new window)
SSH支持库 libssh2 (opens new window) BSD-3-Clause (opens new window)
XML支持库 libxml2 (opens new window) LGPL 2.1 (opens new window)
加密解密 OpenSSL (opens new window) Apache License 2.0 (opens new window)
编码检测 uchardet (opens new window) LGPL 2.1 (opens new window)
- - -
图形界面库 GTK (opens new window) LGPL 2 (opens new window)
适配界面库 libadwaita (opens new window) LGPL 2.1 (opens new window)
停靠界面库 libpanel (opens new window) LGPL 3.0 (opens new window)
插件支持库 libpeas (opens new window) LGPL 2.1+ (opens new window)
代码编辑器 GtkSourceView (opens new window) LGPL 2.1 (opens new window)
二维码 libqrencode (opens new window) LGPL 2.1 (opens new window)
文件格式库 libarchive (opens new window) BSD-3-Clause (opens new window)
HTTP通讯库 libsoup (opens new window) LGPL 2 (opens new window)
地图支持库 libshumate (opens new window) LGPL 2 (opens new window)
数据图表库 live-chart (opens new window) MIT (opens new window)
模板处理库 template-glib (opens new window) LGPL 2.1 (opens new window)
- - -
图标 IconPark (opens new window) Apache License 2.0 (opens new window)
+ + +