Openning up documentation notebooks for contribution and adding information for documentation

Description: The documentation was ignored by the .gitignore and this allows contribution to the documentation by opening the documentation by unignoring the notebook files.
Issue: Closes #6356
Dependencies: any dependencies required for this change,
Tag maintainer: for a quicker response, tag the relevant maintainer (see below),
Twitter handle: we announce bigger features on Twitter.

Maintainer responsibilities:

General / Misc / if you don't know who to tag: @dev2049

docs notebooks should go in docs/extras, not docs/_dist


Downloading model on each run

If I use a model like medium.en or large, it downloads the file on each run. Whisper has, however, saved the downloaded model in the .cache folder, and since medium is around 1.5 GB, downloading it each time is a hassle. I'm using Debian in WSL. Am I doing something wrong?

It's really annoying, is someone solved it?


Improvements after testing on 2G/3G/4G networks

I've run some more tests in 2G/3G/4G networks. This led me to the following improvements:

using a worker for the web client, so the UI is not locked

modify the protocol to allow for sending measurement messages with padding, so that the client receives more measurements regardless of the delay caused by 2G/3G/4G buffers

other, smaller, miscellaneous, useful fixes

I have also experimented with TCP_NOTSENT_LOWAT but that diff is not ready to be included in this PR yet, and I feel like the code in here has been delayed for too much time already. I'll probably ask about this option to @mattmathis later today or in the next days.

This change is

@pboothe, thanks for your review! I have been seriously swamped lately because the upcoming end of my fellowship, so I could not add the requested changes yet. -EAGAIN. Will retry tomorrow! :-)

@pboothe I have implemented you suggestions, please take a look!

Then changes look good, although perhaps things can be even 4 lines simpler in the JS?  However you decide to go, this change looks good to me.


bumped seedfarmer version

Issue #, if available:
Description of changes:
bumped seedfarmer version
By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.

AWS CodeBuild CI Report

CodeBuild project: IDFModuleTestsInfrastructur-59JoFoVH64CI
Commit ID: 6ea21a8b026087c039715ce893206bda1cf54204
Result: SUCCEEDED
Build Logs (available for 30 days)

Powered by github-codebuild-logs, available on the AWS Serverless Application Repository


Deprecated 'crypto, npm

@stevengum
in

my react native project i use,
npm install botframework-directlinejs --save
to work properly i need crypto npm.. what can i do?
please help.
node : v14.5.0
botframework-directlinejs : ^0.12.0
react : 16.13.1
react-native :  0.63.1

@ckkashyap could you please take a look at this?

@stevengum would you please provide an update on this.

I'm working on an issue in the JS repo that would address this problem of pulling in crypto into directlinejs, the ETA for the fix is R10.

ETA -> R11 (November) unless needed earlier. @ckkashyap any date restrictions on your side?

Hello, I am the React-Native developer for my company and I am trying to implement the Bot Framework Direct Line JS in our application for an employee chatbot; I was at first running into a "stream" not found when bundling issue, and was able to resolve it with an install and import of "stream"; but now I am seeing this same Crypto bug and I believe my issue is the same as this one...
Is there a develop build or beta build or git branch (to npm install) so that I can get my hands on a working model to develop with?  Or a solid work around to get this working in a React Native environment?  I followed the steps of a rather nasty shim process that even described itself as a hack (changing lots of npm modules) and broke too many things to fix so I rolled that back...
Any assistance is greatly appreciated 😄
I'm also not understanding R11?  it looks like your latest release tag is of 12; so I don't think those numbers are associated...?

We are expecting this to be implemented in R11 which means November 11th time frame

@stevengum I'm moving this to R12

Fixed via https://github.com/microsoft/BotFramework-DirectLineJS/pull/323.

The fix for resolving Node.js dependencies was just released in version 0.14.1 of botframework-directlinejs.


[Bug Fix]Fix typos in docs

Checklist

[x] You have read the Contribution Guidlines before creating this PR.

Description of change

Fixes #35 @guptadeepak  @GovindMalviya  @Agarwal-Sudhanshu  plz review

@parammittal16
Thanks for contributing to the repo. We can surely improve as per your suggestions. But as per the HacktoberFest guideline, we will not be accepting minor text fixes as a PR. Please suggest and improve some quantifiable changes in the pull request to make your PR eligible for HacktoberFest.


Explore SourceLink

SourceLink enables a great source debugging experience for your users, by adding source control metadata to your built assets.

https://blog.nuget.org/20180827/Introducing-Source-Code-Link-for-NuGet-packages.html

Done in #108.


Integrated terminal gets unresponsive after some usage

Steps to Reproduce:

Start VS Code, open the integrated terminal and run a program producing ~80 lines of output. Run that program again 4-5 times.
Scroll the integrated terminal's window back and forth.

VS Code gets unresponsive for 5-20 seconds. The task manager shows huge spikes in CPU and memory usage:

Tried to run VS Code with --ignore-gpu-blacklist as suggested in #48193 but it didn't help.
ETW traces of the issue: https://1drv.ms/u/s!Avfdd6lsYwdUgrAzPJpI012h9EkEmA
Does this issue occur when all extensions are disabled?: Yes

VSCode Version:
Version 1.23.0
Commit 7c7da59c2333a1306c41e6e7b68d7f0caa7b3d45
Date 2018-05-03T16:44:55.614Z
Shell 1.7.12
Renderer 58.0.3029.110
Node 7.9.0
Architecture x64

OS Version: Windows 10 x64 1803

Graphics: 3840x2160, Intel HD 630 + NVIDIA GTX 1050

Cannot reproduce the issue when VS Code is launched with --disable-gpu.

Duplicate https://github.com/Microsoft/vscode/issues/46954


AttachAction select cannot translate.

Package
filament/spatie-laravel-translatable-plugin
Package Version
3.0.0
Laravel Version
10.10
Livewire Version
No response
PHP Version
8.1
Problem description
recordSelect field of AttachAction cannot translate.

Expected behavior
AttachAction can translate
Steps to reproduce
Use RelationManager AttachAction and filament/spatie-laravel-translatable-plugin
Reproduction repository
https://github.com/NaungYeHtet/filament-naungyehtet
Relevant log output
No response

Forms\Components\Select::make('company_city_id')
->relationship('city', 'name')
->getOptionLabelFromRecordUsing(fn (Model $record) => "{$record->getTranslation('name', app()->getLocale())}")
->preload()
->searchable()
->required(),
Is it what you need?

Or even ->getOptionLabelFromRecordUsing(fn (Model $record) => $record->name)

Tables\Actions\AttachAction::make()
    ->preloadRecordSelect()
    ->getOptionLabelFromRecordUsing(fn (Model $record) => $record->name),

->getOptionLabelFromRecordUsing
AttachAction::getOptionLabelFromRecordUsing does not exist.
I am using AttachAction not Select


Is there a reason why the tracker interface in actions is not identical to the core or even uses the same class?

How does one use as_dialogue, export_stories, export_stories_to_file?

Because we don't want there to be too many interdependencies basically. The rasa_core_sdk only has the attributes of the tracker that are necessary for the action execution side.
The rest of your questions are related to rasa core right? You won't need those here, as those are relevant to stories, rather than actions specifically.
Since this is more of a usage question, I'm going to close this issue. Please ask any more questions you have in the forum


Could not determine recommended JdbcType.

Hello,
In the first place thank you for all you work you've done with this dependency it is very useful.
I updated yesterday my spring-boot project from 2.6 to 3.0.4, I did all the changes required to start the project again, and everything works fine except saving a JsonNode into db.
I've added the following dependencies:
implementation group: 'io.hypersistence', name: 'hypersistence-utils-hibernate-60', version: '3.2.0'
implementation group: 'com.fasterxml.jackson.module', name: 'jackson-module-jakarta-xmlbind-annotations', version: '2.14.2'

The last one I added after I read your doc and other sources.
I've removed  from class level:
@TypeDef(name = "jsonb", typeClass = JsonBinaryType.class)
And replace
@Type(type = "jsonb")
@Column(columnDefinition = "jsonb")
private JsonNode someName;`

With:
@Type(JsonType.class)
@Column(columnDefinition = "jsonb")
private JsonNode headerBody;`

And when I try to insert in the db I'm getting this error:
Could not determine recommended JdbcType for `com.fasterxml.jackson.databind.JsonNode`

Is there anything that I'm missing here that I'm not aware of or that could be a potential issue?

You can use this test case as a reference and see how it differs from your mapping.
That test case runs just fine, so you can do a comparison in debug mode between my test and your application and see where they diverged.

Thank you for that, I will have a look.
Meanwhile, I found something on the hibernate doc, and it seems to work If I replace @Type(JsonType.class) with @JdbcTypeCode(SqlTypes.JSON). More info HERE
But I'm getting a warning (Attribute with unsupported type should either be @Transient or have custom type or converter declaration ). So not sure what to do now.
I will try to investigate more your test. It is a bit different than my scenario, where I receive directly a JsonNode through an HTTP call and try to insert it straight away.
Thx anyway.

My test doesn't use JdbcTypeCode(SqlTypes.JSON) and works just fine.

I know yours doesn't use JdbcTypeCode(SqlTypes.JSON, but I wanted just to point out the workaround.
So based on your replies what I understand is, the problems come from somewhere else, and the config which I've made is correct.
I had a look at your test cases and the only difference is the way you insert things in db. But that it should not trigger such an error.
I will keep investigating but thank you for your time.

I'm not sure what annotation you refer to. If you don't mind could you please be more specific? Thank you.

You used a single extra annotation: JdbcTypeCode(SqlTypes.JSON

Oh yes, but that is not extra...is either that annotation or yours. And for some reason, that one is working and yours is not, and as far as I understand that annotation is built in now in hibernate 6. x or bigger.
So to be more specific my current setup in my entities classes looks like this.
    @Type(JsonType.class)
    @Column(columnDefinition = "jsonb")
    @NotNull
    private JsonNode actorValues;

And with the workaround, by using hibernate functionality looks like this:
    @JdbcTypeCode(SqlTypes.JSON)     @Column(columnDefinition = "jsonb")     private JsonNode headerBody;

Great. Then, this issue can be closed now.


Suggestion: Make history public or some GetPreviousViewModel method

Hi! Thanks for an amazing and simple to use library!
I miss a simple feature to get the history. Or mainly the previous ViewModel. My use case is that I want to put Focus on a certain Button depending on where the user previously was.
Do you think this could be done?

You could use:
// check history if there was a previous item
if(_router.HasPrev) {
    _router.Back(); // go back to last ViewModel
}

But you are right... the history is something I could at least make protected or even public. I'll try to integrate this into the next version.

Amazing, thank you! I will be using a modified HistoryRouter for now.


Feature/td 5079 update paths in pull request template.md

Description
I have updated the path to point to the content in this repo rather than the original repo
Checklist

[ ] Tested against our testing policy (Resolution, Browser & Accessibility)
[ ] Follows our coding standards and style guide
[x] CHANGELOG entry

Sorry, wrong repo.


Adding a wiggle scale animation to the 'heart' button

Is your feature request related to a problem? Please describe.
Current Behavior: When clicking on the 'heart' button on the restaurant card the icon color changes to red. This is quite basic.
Describe the solution you'd like
Proposal: I want to add some visual flair by implementing a  simple wiggle scale animation when the button is clicked.
Describe alternatives you've considered
No response
Additional context
Here is a visual representation of what I am proposing.

Code of Conduct

[X] I agree to follow this project's Code of Conduct

Please create PR let me review

Please create PR let me review

Done. Created a PR. Please check.


Why the result from trans was different from google translator on web?

For example, I translate below article from english to chinese by using : trans -brief -e google en:zh "below article", but seems that the results are different from google translator. The trans result seems to get reversed paragraph order. Google API limited problem?

FileMaker 17’s new master-detail layouts display the list of records in the user’s found set. As the user performs finds, constrains, omits, sorts, or creates or deletes records, the master-detail portal will update to stay in sync. Imagine a portal that a user can sort any way they like, filter any way they like, and click a row to see details for that row, all right out of the box. That’s the power of the master-detail portal.
FileMaker Developers have long tried to approximate a master-detail layout using the tools available to us at the time. Prior to FileMaker 17 one option was to use a native list/table view, and show the details for the active record in the layout’s footer. Another option was to base a layout on an abstract global/interface table, with portals peering into related data tables. Or by using a self-join relationship that somehow figured out which records were in the user’s found set.
Now we can easily display a space-efficient list on the left of the layout (or wherever you like), with the details of the active record displayed to the right of that list—with no extra code. The master-detail layout combines a bird’s-eye-view list view with a record-focused form view.

What is your output exactly?
The result I got is consistent with Google Translate's web interface:
$ trans -brief -e google en:zh "FileMaker 17’s new master-detail layouts display the list of records in the user’s found set. As the user performs finds, constrains, omits, sorts, or creates or deletes records, the master-detail portal will update to stay in sync. Imagine a portal that a user can sort any way they like, filter any way they like, and click a row to see details for that row, all right out of the box. That’s the power of the master-detail portal.
FileMaker Developers have long tried to approximate a master-detail layout using the tools available to us at the time. Prior to FileMaker 17 one option was to use a native list/table view, and show the details for the active record in the layout’s footer. Another option was to base a layout on an abstract global/interface table, with portals peering into related data tables. Or by using a self-join relationship that somehow figured out which records were in the user’s found set.
Now we can easily display a space-efficient list on the left of the layout (or wherever you like), with the details of the active record displayed to the right of that list—with no extra code. The master-detail layout combines a bird’s-eye-view list view with a record-focused form view."
FileMaker 17的新主从布局显示了用户发现集中的记录列表。当用户执行查找，约束，省略，排序，创建或删除记录时，主从门户将更新以保持同步。想象一下，一个门户网站，用户可以按自己喜欢的任何方式排序，按自己喜欢的方式进行过滤，然后单击一行以查看该行的详细信息。这就是主从门户的力量。
FileMaker开发人员长期以来一直在尝试使用当时可用的工具来近似主从布局。在FileMaker 17之前，一种选择是使用本机列表/表视图，并在布局的页脚中显示活动记录的详细信息。另一个选择是将布局基于抽象的全局/接口表，门户将对等地关联到相关数据表。或者使用自连接关系以某种方式找出用户的搜索结果集中有哪些记录。
现在，我们可以轻松地在布局的左侧（或任意位置）显示一个节省空间的列表，活动记录的详细信息显示在该列表的右侧-无需任何额外的代码。主从布局将鸟瞰列表视图与以记录为中心的表单视图结合在一起。

My result from the Google Translate web interface is different from your text
FileMaker 17的新主從佈局顯示了用戶發現集中的記錄列表。當用戶執行查找，約束，省略，排序，創建或刪除記錄時，主從門戶將更新以保持同步。想像一下，一個門戶網站，用戶可以按自己喜歡的任何方式排序，按自己喜歡的方式進行過濾，然後單擊一行以查看該行的詳細信息。這就是主從門戶的力量。 FileMaker開發人員長期以來一直在嘗試使用當時可用的工具來近似主從佈局。在FileMaker 17之前，一種選擇是使用本機列表/表視圖，並在佈局的頁腳中顯示活動記錄的詳細信息。另一個選擇是將佈局基於抽象的全局/接口表，門戶將對等地關聯到相關數據表。或者使用自連接關係以某種方式找出用戶的搜索結果集中有哪些記錄。 現在，我們可以輕鬆地在佈局的左側（或任意位置）顯示一個節省空間的列表，活動記錄的詳細信息顯示在該列表的右側-無需額外的代碼。主從佈局將鳥瞰列表視圖與以記錄為中心的表單視圖結合在一起。

My result from the Google Translate web interface is different from your text
Here is the translation result:
FileMaker 17的新主從佈局顯示了用戶發現集中的記錄列表。當用戶執行查找，約束，省略，排序，創建或刪除記錄時，主從門戶將更新以保持同步。想像一下，一個門戶網站，用戶可以按自己喜歡的任何方式排序，按自己喜歡的方式進行過濾，然後單擊一行以查看該行的詳細信息。這就是主從門戶的力量。 FileMaker開發人員長期以來一直在嘗試使用當時可用的工具來近似主從佈局。在FileMaker 17之前，一種選擇是使用本機列表/表視圖，並在佈局的頁腳中顯示活動記錄的詳細信息。另一個選擇是將佈局基於抽象的全局/接口表，門戶將對等地關聯到相關數據表。或者使用自連接關係以某種方式找出用戶的搜索結果集中有哪些記錄。 現在，我們可以輕鬆地在佈局的左側（或任意位置）顯示一個節省空間的列表，活動記錄的詳細信息顯示在該列表的右側-無需額外的代碼。主從佈局將鳥瞰列表視圖與以記錄為中心的表單視圖結合在一起。
There are also similar problems in almost all projects that use Google Translate.

This is exactly the same Chinese text as above -- but in traditional Chinese instead of simplified Chinese.

Thanks for all. I just read your reply. But you close discussion so quickly!
I tried another text for testing by 3 ways:

zh-CN by Bing
fr by Google
zh-CN by Google

Multiple windows are useful when you’re working with one set of found records and you need to do another search. You can perform a find in a new window without losing your found set in the original window. Say you’ve been working with a list of all your contacts who don’t have email addresses and then suddenly get the paperwork you need to edit the detail on another record. Although you can enter data on the list layout, all the fields you need may not be on that layout. Just create a new window, switch to the detail layout, and then look up the record you want to edit (see Figure 1-18). Your missing email group is safe and sound in the first window. (See the box on page 32 to see what problems can happen when you edit the same record in multiple windows.)

The results are different, is that because of Google translator engine making trouble especially to Chinese language?

@jiangaq
Could you try the latest develop branch (git clone https://github.com/soimort/translate-shell) and see if you can observe the same issue?
This is the result on my side and it seems correct:

I used git clone to update, but still got different results from yours.

Please post the full output of
$ trans -D :zh-CN "Multiple windows are useful when you’re working with one set of found records and you need to do another search. You can perform a find in a new window without losing your found set in the original window. Say you’ve been working with a list of all your contacts who don’t have email addresses and then suddenly get the paperwork you need to edit the detail on another record. Although you can enter data on the list layout, all the fields you need may not be on that layout. Just create a new window, switch to the detail layout, and then look up the record you want to edit (see Figure 1-18). Your missing email group is safe and sound in the first window. (See the box on page 32 to see what problems can happen when you edit the same record in multiple windows.)"

% trans -D :zh-CN "Multiple windows are useful when you’re working with one set of found records and you need to do another search. You can perform a find in a new window without losing your found set in the original window. Say you’ve been working with a list of all your contacts who don’t have email addresses and then suddenly get the paperwork you need to edit the detail on another record. Although you can enter data on the list layout, all the fields you need may not be on that layout. Just create a new window, switch to the detail layout, and then look up the record you want to edit (see Figure 1-18). Your missing email group is safe and sound in the first window. (See the box on page 32 to see what problems can happen when you edit the same record in multiple windows.)"
16 bytes > HTTP/1.1 200 OK
46 bytes > Content-Type: application/json; charset=utf-8
32 bytes > X-Content-Type-Options: nosniff
31 bytes > Access-Control-Allow-Origin: *
62 bytes > Cache-Control: no-cache, no-store, max-age=0, must-revalidate
17 bytes > Pragma: no-cache
39 bytes > Expires: Mon, 01 Jan 1990 00:00:00 GMT
36 bytes > Date: Sun, 07 Mar 2021 15:16:07 GMT
80 bytes > Content-Disposition: attachment; filename="json.txt"; filename*=UTF-8''json.txt
192 bytes > Content-Security-Policy: script-src 'report-sample' 'nonce-/QC2CLSKr/w/jsl1JWU6QQ' 'unsafe-inline';object-src 'none';base-uri 'self';report-uri /_/TranslateApiHttp/cspreport;worker-src 'self'
43 bytes > Cross-Origin-Resource-Policy: cross-origin
12 bytes > Server: ESF
20 bytes > X-XSS-Protection: 0
28 bytes > X-Frame-Options: SAMEORIGIN
20 bytes > Accept-Ranges: none
22 bytes > Vary: Accept-Encoding
18 bytes > Connection: close
27 bytes > Transfer-Encoding: chunked
1 bytes >
5 bytes > 1ae0
178 bytes > [[["当您使用一组找到的记录并且需要进行另一次搜索时，多个窗口很有用。","Multiple windows are useful when you’re working with one set of found records and you need to do another search.",null,null,3,null,null,[[]
1 bytes > ]
57 bytes > ,[[["b3ad15e7a0073e77814019b341d18493","en_zh_2019q3.md"]
1 bytes > ]
1 bytes > ]
1 bytes > ]
153 bytes > ,["您可以在新窗口中执行查找，而不会丢失原始窗口中的查找集。","You can perform a find in a new window without losing your found set in the original window.",null,null,3,null,null,[[]
1 bytes > ]
57 bytes > ,[[["b3ad15e7a0073e77814019b341d18493","en_zh_2019q3.md"]
1 bytes > ]
1 bytes > ]
1 bytes > ]
256 bytes > ,["假设您一直在处理所有没有电子邮件地址的联系人列表，然后突然得到所需的文书工作来编辑另一条记录上的详细信息。","Say you’ve been working with a list of all your contacts who don’t have email addresses and then suddenly get the paperwork you need to edit the detail on another record.",null,null,3,null,null,[[]
1 bytes > ]
57 bytes > ,[[["b3ad15e7a0073e77814019b341d18493","en_zh_2019q3.md"]
1 bytes > ]
1 bytes > ]
1 bytes > ]
166 bytes > ,["尽管您可以在列表布局上输入数据，但是您所需的所有字段可能不在该布局上。","Although you can enter data on the list layout, all the fields you need may not be on that layout.",null,null,3,null,null,[[]
1 bytes > ]
57 bytes > ,[[["b3ad15e7a0073e77814019b341d18493","en_zh_2019q3.md"]
1 bytes > ]
1 bytes > ]
1 bytes > ]
194 bytes > ,["只需创建一个新窗口，切换到详细信息布局，然后查找要编辑的记录即可（请参见图1-18）。","Just create a new window, switch to the detail layout, and then look up the record you want to edit (see Figure 1-18).",null,null,3,null,null,[[]
1 bytes > ]
57 bytes > ,[[["b3ad15e7a0073e77814019b341d18493","en_zh_2019q3.md"]
1 bytes > ]
1 bytes > ]
1 bytes > ]
120 bytes > ,["您丢失的电子邮件组在第一个窗口中是安全无事的。 ","Your missing email group is safe and sound in the first window.",null,null,3,null,null,[[]
1 bytes > ]
57 bytes > ,[[["b3ad15e7a0073e77814019b341d18493","en_zh_2019q3.md"]
1 bytes > ]
1 bytes > ]
1 bytes > ]
175 bytes > ,["（请参阅第32页的框，查看在多个窗口中编辑同一记录时可能发生的问题。）","(See the box on page 32 to see what problems can happen when you edit the same record in multiple windows.)",null,null,3,null,null,[[]
1 bytes > ]
57 bytes > ,[[["b3ad15e7a0073e77814019b341d18493","en_zh_2019q3.md"]
1 bytes > ]
1 bytes > ]
1 bytes > ]
863 bytes > ,[null,null,"Dāng nín shǐyòng yī zǔ zhǎodào de jìlù bìngqiě xūyào jìnxíng lìng yīcì sōusuǒ shí, duō gè chuāngkǒu hěn yǒuyòng. Nín kěyǐ zài xīn chuāngkǒu zhōng zhíxíng cházhǎo, ér bù huì diūshī yuánshǐ chuāngkǒu zhōng de cházhǎo jí. Jiǎshè nín yīzhí zài chǔlǐ suǒyǒu méiyǒu diànzǐ yóujiàn dìzhǐ de liánxì rén lièbiǎo, ránhòu túrán dédào suǒ xū de wénshū gōngzuò lái biānjí lìng yītiáo jìlù shàng de xiángxì xìnxī. Jǐnguǎn nín kěyǐ zài lièbiǎo bùjú shàng shūrù shùjù, dànshì nín suǒ xū de suǒyǒu zìduàn kěnéng bùzài gāi bùjú shàng. Zhǐ xū chuàngjiàn yīgè xīn chuāngkǒu, qiēhuàn dào xiángxì xìnxī bùjú, ránhòu cházhǎo yào biānjí de jìlù jí kě (qǐng cānjiàn tú 1-18). Nín diūshī de diànzǐ yóujiàn zǔ zài dì yī gè chuāngkǒu zhōng shì ānquán wú shì de. (Qǐng cānyuè dì 32 yè de kuāng, chákàn zài duō gè chuāngkǒu zhōng biānjí tóngyī jìlù shí kěnéng fāshēng de wèntí.)"]
1 bytes > ]
193 bytes > ,null,"en",null,null,[["Multiple windows are useful when you’re working with one set of found records and you need to do another search.",null,[["当您使用一组找到的记录并且需要进行另一次搜索时，多个窗口很有用。",0,true,false]
51 bytes > ,["当你与一组找到的记录工作的多个窗口是有用的，你需要做的另一个搜索。",0,true,false]
1 bytes > ]
9 bytes > ,[[0,112]
1 bytes > ]
120 bytes > ,"Multiple windows are useful when you’re working with one set of found records and you need to do another search.",0,0]
148 bytes > ,["You can perform a find in a new window without losing your found set in the original window.",null,[["您可以在新窗口中执行查找，而不会丢失原始窗口中的查找集。",0,true,false]
48 bytes > ,["您可以在一个新的窗口，而不在原始窗口失去你找到一套执行查找。",0,true,false]
1 bytes > ]
8 bytes > ,[[0,92]
1 bytes > ]
100 bytes > ,"You can perform a find in a new window without losing your found set in the original window.",0,0]
251 bytes > ,["Say you’ve been working with a list of all your contacts who don’t have email addresses and then suddenly get the paperwork you need to edit the detail on another record.",null,[["假设您一直在处理所有没有电子邮件地址的联系人列表，然后突然得到所需的文书工作来编辑另一条记录上的详细信息。",0,true,false]
70 bytes > ,["假设你一直使用的所有联系人没有电子邮件地址，然后突然得到你需要编辑细节上的另一个记录的文书工作谁的列表。",0,true,false]
1 bytes > ]
9 bytes > ,[[0,170]
1 bytes > ]
178 bytes > ,"Say you’ve been working with a list of all your contacts who don’t have email addresses and then suddenly get the paperwork you need to edit the detail on another record.",0,0]
161 bytes > ,["Although you can enter data on the list layout, all the fields you need may not be on that layout.",null,[["尽管您可以在列表布局上输入数据，但是您所需的所有字段可能不在该布局上。",0,true,false]
50 bytes > ,["虽然你可以在列表布局输入数据，你需要可能无法在该布局的所有字段。",0,true,false]
1 bytes > ]
8 bytes > ,[[0,98]
1 bytes > ]
106 bytes > ,"Although you can enter data on the list layout, all the fields you need may not be on that layout.",0,0]
189 bytes > ,["Just create a new window, switch to the detail layout, and then look up the record you want to edit (see Figure 1-18).",null,[["只需创建一个新窗口，切换到详细信息布局，然后查找要编辑的记录即可（请参见图1-18）。",0,true,false]
56 bytes > ,["只要创建一个新的窗口，切换到细节布局，然后查找要编辑的记录（见图1-18）。",0,true,false]
1 bytes > ]
9 bytes > ,[[0,118]
1 bytes > ]
126 bytes > ,"Just create a new window, switch to the detail layout, and then look up the record you want to edit (see Figure 1-18).",0,0]
114 bytes > ,["Your missing email group is safe and sound in the first window.",null,[["您丢失的电子邮件组在第一个窗口中是安全无事的。",0,true,false]
40 bytes > ,["你丢失的电子邮件组是安全和无害的第一个窗口。",0,true,false]
1 bytes > ]
8 bytes > ,[[0,63]
1 bytes > ]
71 bytes > ,"Your missing email group is safe and sound in the first window.",0,0]
170 bytes > ,["(See the box on page 32 to see what problems can happen when you edit the same record in multiple windows.)",null,[["（请参阅第32页的框，查看在多个窗口中编辑同一记录时可能发生的问题。）",0,true,false]
54 bytes > ,["（参见第32页上的框，查看当您编辑在多个窗口对同一记录会发生什么问题。）",0,true,false]
1 bytes > ]
9 bytes > ,[[0,107]
1 bytes > ]
115 bytes > ,"(See the box on page 32 to see what problems can happen when you edit the same record in multiple windows.)",0,0]
1 bytes > ]
7 bytes > ,1.0,[]
8 bytes > ,[["en"]
11 bytes > ,null,[1.0]
7 bytes > ,["en"]
1 bytes > ]
54 bytes > ,null,null,null,null,null,null,null,null,null,[null,2]
1 bytes > ]
1 bytes >
2 bytes > 0
1 bytes >
content = '''
1ae0
[[["当您使用一组找到的记录并且需要进行另一次搜索时，多个窗口很有用。","Multiple windows are useful when you’re working with one set of found records and you need to do another search.",null,null,3,null,null,[[]
]
,[[["b3ad15e7a0073e77814019b341d18493","en_zh_2019q3.md"]
]
]
]
,["您可以在新窗口中执行查找，而不会丢失原始窗口中的查找集。","You can perform a find in a new window without losing your found set in the original window.",null,null,3,null,null,[[]
]
,[[["b3ad15e7a0073e77814019b341d18493","en_zh_2019q3.md"]
]
]
]
,["假设您一直在处理所有没有电子邮件地址的联系人列表，然后突然得到所需的文书工作来编辑另一条记录上的详细信息。","Say you’ve been working with a list of all your contacts who don’t have email addresses and then suddenly get the paperwork you need to edit the detail on another record.",null,null,3,null,null,[[]
]
,[[["b3ad15e7a0073e77814019b341d18493","en_zh_2019q3.md"]
]
]
]
,["尽管您可以在列表布局上输入数据，但是您所需的所有字段可能不在该布局上。","Although you can enter data on the list layout, all the fields you need may not be on that layout.",null,null,3,null,null,[[]
]
,[[["b3ad15e7a0073e77814019b341d18493","en_zh_2019q3.md"]
]
]
]
,["只需创建一个新窗口，切换到详细信息布局，然后查找要编辑的记录即可（请参见图1-18）。","Just create a new window, switch to the detail layout, and then look up the record you want to edit (see Figure 1-18).",null,null,3,null,null,[[]
]
,[[["b3ad15e7a0073e77814019b341d18493","en_zh_2019q3.md"]
]
]
]
,["您丢失的电子邮件组在第一个窗口中是安全无事的。 ","Your missing email group is safe and sound in the first window.",null,null,3,null,null,[[]
]
,[[["b3ad15e7a0073e77814019b341d18493","en_zh_2019q3.md"]
]
]
]
,["（请参阅第32页的框，查看在多个窗口中编辑同一记录时可能发生的问题。）","(See the box on page 32 to see what problems can happen when you edit the same record in multiple windows.)",null,null,3,null,null,[[]
]
,[[["b3ad15e7a0073e77814019b341d18493","en_zh_2019q3.md"]
]
]
]
,[null,null,"Dāng nín shǐyòng yī zǔ zhǎodào de jìlù bìngqiě xūyào jìnxíng lìng yīcì sōusuǒ shí, duō gè chuāngkǒu hěn yǒuyòng. Nín kěyǐ zài xīn chuāngkǒu zhōng zhíxíng cházhǎo, ér bù huì diūshī yuánshǐ chuāngkǒu zhōng de cházhǎo jí. Jiǎshè nín yīzhí zài chǔlǐ suǒyǒu méiyǒu diànzǐ yóujiàn dìzhǐ de liánxì rén lièbiǎo, ránhòu túrán dédào suǒ xū de wénshū gōngzuò lái biānjí lìng yītiáo jìlù shàng de xiángxì xìnxī. Jǐnguǎn nín kěyǐ zài lièbiǎo bùjú shàng shūrù shùjù, dànshì nín suǒ xū de suǒyǒu zìduàn kěnéng bùzài gāi bùjú shàng. Zhǐ xū chuàngjiàn yīgè xīn chuāngkǒu, qiēhuàn dào xiángxì xìnxī bùjú, ránhòu cházhǎo yào biānjí de jìlù jí kě (qǐng cānjiàn tú 1-18). Nín diūshī de diànzǐ yóujiàn zǔ zài dì yī gè chuāngkǒu zhōng shì ānquán wú shì de. (Qǐng cānyuè dì 32 yè de kuāng, chákàn zài duō gè chuāngkǒu zhōng biānjí tóngyī jìlù shí kěnéng fāshēng de wèntí.)"]
]
,null,"en",null,null,[["Multiple windows are useful when you’re working with one set of found records and you need to do another search.",null,[["当您使用一组找到的记录并且需要进行另一次搜索时，多个窗口很有用。",0,true,false]
,["当你与一组找到的记录工作的多个窗口是有用的，你需要做的另一个搜索。",0,true,false]
]
,[[0,112]
]
,"Multiple windows are useful when you’re working with one set of found records and you need to do another search.",0,0]
,["You can perform a find in a new window without losing your found set in the original window.",null,[["您可以在新窗口中执行查找，而不会丢失原始窗口中的查找集。",0,true,false]
,["您可以在一个新的窗口，而不在原始窗口失去你找到一套执行查找。",0,true,false]
]
,[[0,92]
]
,"You can perform a find in a new window without losing your found set in the original window.",0,0]
,["Say you’ve been working with a list of all your contacts who don’t have email addresses and then suddenly get the paperwork you need to edit the detail on another record.",null,[["假设您一直在处理所有没有电子邮件地址的联系人列表，然后突然得到所需的文书工作来编辑另一条记录上的详细信息。",0,true,false]
,["假设你一直使用的所有联系人没有电子邮件地址，然后突然得到你需要编辑细节上的另一个记录的文书工作谁的列表。",0,true,false]
]
,[[0,170]
]
,"Say you’ve been working with a list of all your contacts who don’t have email addresses and then suddenly get the paperwork you need to edit the detail on another record.",0,0]
,["Although you can enter data on the list layout, all the fields you need may not be on that layout.",null,[["尽管您可以在列表布局上输入数据，但是您所需的所有字段可能不在该布局上。",0,true,false]
,["虽然你可以在列表布局输入数据，你需要可能无法在该布局的所有字段。",0,true,false]
]
,[[0,98]
]
,"Although you can enter data on the list layout, all the fields you need may not be on that layout.",0,0]
,["Just create a new window, switch to the detail layout, and then look up the record you want to edit (see Figure 1-18).",null,[["只需创建一个新窗口，切换到详细信息布局，然后查找要编辑的记录即可（请参见图1-18）。",0,true,false]
,["只要创建一个新的窗口，切换到细节布局，然后查找要编辑的记录（见图1-18）。",0,true,false]
]
,[[0,118]
]
,"Just create a new window, switch to the detail layout, and then look up the record you want to edit (see Figure 1-18).",0,0]
,["Your missing email group is safe and sound in the first window.",null,[["您丢失的电子邮件组在第一个窗口中是安全无事的。",0,true,false]
,["你丢失的电子邮件组是安全和无害的第一个窗口。",0,true,false]
]
,[[0,63]
]
,"Your missing email group is safe and sound in the first window.",0,0]
,["(See the box on page 32 to see what problems can happen when you edit the same record in multiple windows.)",null,[["（请参阅第32页的框，查看在多个窗口中编辑同一记录时可能发生的问题。）",0,true,false]
,["（参见第32页上的框，查看当您编辑在多个窗口对同一记录会发生什么问题。）",0,true,false]
]
,[[0,107]
]
,"(See the box on page 32 to see what problems can happen when you edit the same record in multiple windows.)",0,0]
]
,1.0,[]
,[["en"]
,null,[1.0]
,["en"]
]
,null,null,null,null,null,null,null,null,null,[null,2]
]
0
'''
tokens = ["1", "ae", "0", "[", "[", "[", ""当您使用一组找到的记录并且需要进行另一次搜索时，多个窗口很有用。"", ",", ""Multiple windows are useful when you’re working with one set of found records and you need to do another search."", ",", "null", ",", "null", ",", "3", ",", "null", ",", "null", ",", "[", "[", "]", "]", ",", "[", "[", "[", ""b3ad15e7a0073e77814019b341d18493"", ",", ""en_zh_2019q3.md"", "]", "]", "]", "]", ",", "[", ""您可以在新窗口中执行查找，而不会丢失原始窗口中的查找集。"", ",", ""You can perform a find in a new window without losing your found set in the original window."", ",", "null", ",", "null", ",", "3", ",", "null", ",", "null", ",", "[", "[", "]", "]", ",", "[", "[", "[", ""b3ad15e7a0073e77814019b341d18493"", ",", ""en_zh_2019q3.md"", "]", "]", "]", "]", ",", "[", ""假设您一直在处理所有没有电子邮件地址的联系人列表，然后突然得到所需的文书工作来编辑另一条记录上的详细信息。"", ",", ""Say you’ve been working with a list of all your contacts who don’t have email addresses and then suddenly get the paperwork you need to edit the detail on another record."", ",", "null", ",", "null", ",", "3", ",", "null", ",", "null", ",", "[", "[", "]", "]", ",", "[", "[", "[", ""b3ad15e7a0073e77814019b341d18493"", ",", ""en_zh_2019q3.md"", "]", "]", "]", "]", ",", "[", ""尽管您可以在列表布局上输入数据，但是您所需的所有字段可能不在该布局上。"", ",", ""Although you can enter data on the list layout, all the fields you need may not be on that layout."", ",", "null", ",", "null", ",", "3", ",", "null", ",", "null", ",", "[", "[", "]", "]", ",", "[", "[", "[", ""b3ad15e7a0073e77814019b341d18493"", ",", ""en_zh_2019q3.md"", "]", "]", "]", "]", ",", "[", ""只需创建一个新窗口，切换到详细信息布局，然后查找要编辑的记录即可（请参见图1-18）。"", ",", ""Just create a new window, switch to the detail layout, and then look up the record you want to edit (see Figure 1-18)."", ",", "null", ",", "null", ",", "3", ",", "null", ",", "null", ",", "[", "[", "]", "]", ",", "[", "[", "[", ""b3ad15e7a0073e77814019b341d18493"", ",", ""en_zh_2019q3.md"", "]", "]", "]", "]", ",", "[", ""您丢失的电子邮件组在第一个窗口中是安全无事的。 "", ",", ""Your missing email group is safe and sound in the first window."", ",", "null", ",", "null", ",", "3", ",", "null", ",", "null", ",", "[", "[", "]", "]", ",", "[", "[", "[", ""b3ad15e7a0073e77814019b341d18493"", ",", ""en_zh_2019q3.md"", "]", "]", "]", "]", ",", "[", ""（请参阅第32页的框，查看在多个窗口中编辑同一记录时可能发生的问题。）"", ",", ""(See the box on page 32 to see what problems can happen when you edit the same record in multiple windows.)"", ",", "null", ",", "null", ",", "3", ",", "null", ",", "null", ",", "[", "[", "]", "]", ",", "[", "[", "[", ""b3ad15e7a0073e77814019b341d18493"", ",", ""en_zh_2019q3.md"", "]", "]", "]", "]", ",", "[", "null", ",", "null", ",", ""Dāng nín shǐyòng yī zǔ zhǎodào de jìlù bìngqiě xūyào jìnxíng lìng yīcì sōusuǒ shí, duō gè chuāngkǒu hěn yǒuyòng. Nín kěyǐ zài xīn chuāngkǒu zhōng zhíxíng cházhǎo, ér bù huì diūshī yuánshǐ chuāngkǒu zhōng de cházhǎo jí. Jiǎshè nín yīzhí zài chǔlǐ suǒyǒu méiyǒu diànzǐ yóujiàn dìzhǐ de liánxì rén lièbiǎo, ránhòu túrán dédào suǒ xū de wénshū gōngzuò lái biānjí lìng yītiáo jìlù shàng de xiángxì xìnxī. Jǐnguǎn nín kěyǐ zài lièbiǎo bùjú shàng shūrù shùjù, dànshì nín suǒ xū de suǒyǒu zìduàn kěnéng bùzài gāi bùjú shàng. Zhǐ xū chuàngjiàn yīgè xīn chuāngkǒu, qiēhuàn dào xiángxì xìnxī bùjú, ránhòu cházhǎo yào biānjí de jìlù jí kě (qǐng cānjiàn tú 1-18). Nín diūshī de diànzǐ yóujiàn zǔ zài dì yī gè chuāngkǒu zhōng shì ānquán wú shì de. (Qǐng cānyuè dì 32 yè de kuāng, chákàn zài duō gè chuāngkǒu zhōng biānjí tóngyī jìlù shí kěnéng fāshēng de wèntí.)"", "]", "]", ",", "null", ",", ""en"", ",", "null", ",", "null", ",", "[", "[", ""Multiple windows are useful when you’re working with one set of found records and you need to do another search."", ",", "null", ",", "[", "[", ""当您使用一组找到的记录并且需要进行另一次搜索时，多个窗口很有用。"", ",", "0", ",", "true", ",", "false", "]", ",", "[", ""当你与一组找到的记录工作的多个窗口是有用的，你需要做的另一个搜索。"", ",", "0", ",", "true", ",", "false", "]", "]", ",", "[", "[", "0", ",", "112", "]", "]", ",", ""Multiple windows are useful when you’re working with one set of found records and you need to do another search."", ",", "0", ",", "0", "]", ",", "[", ""You can perform a find in a new window without losing your found set in the original window."", ",", "null", ",", "[", "[", ""您可以在新窗口中执行查找，而不会丢失原始窗口中的查找集。"", ",", "0", ",", "true", ",", "false", "]", ",", "[", ""您可以在一个新的窗口，而不在原始窗口失去你找到一套执行查找。"", ",", "0", ",", "true", ",", "false", "]", "]", ",", "[", "[", "0", ",", "92", "]", "]", ",", ""You can perform a find in a new window without losing your found set in the original window."", ",", "0", ",", "0", "]", ",", "[", ""Say you’ve been working with a list of all your contacts who don’t have email addresses and then suddenly get the paperwork you need to edit the detail on another record."", ",", "null", ",", "[", "[", ""假设您一直在处理所有没有电子邮件地址的联系人列表，然后突然得到所需的文书工作来编辑另一条记录上的详细信息。"", ",", "0", ",", "true", ",", "false", "]", ",", "[", ""假设你一直使用的所有联系人没有电子邮件地址，然后突然得到你需要编辑细节上的另一个记录的文书工作谁的列表。"", ",", "0", ",", "true", ",", "false", "]", "]", ",", "[", "[", "0", ",", "170", "]", "]", ",", ""Say you’ve been working with a list of all your contacts who don’t have email addresses and then suddenly get the paperwork you need to edit the detail on another record."", ",", "0", ",", "0", "]", ",", "[", ""Although you can enter data on the list layout, all the fields you need may not be on that layout."", ",", "null", ",", "[", "[", ""尽管您可以在列表布局上输入数据，但是您所需的所有字段可能不在该布局上。"", ",", "0", ",", "true", ",", "false", "]", ",", "[", ""虽然你可以在列表布局输入数据，你需要可能无法在该布局的所有字段。"", ",", "0", ",", "true", ",", "false", "]", "]", ",", "[", "[", "0", ",", "98", "]", "]", ",", ""Although you can enter data on the list layout, all the fields you need may not be on that layout."", ",", "0", ",", "0", "]", ",", "[", ""Just create a new window, switch to the detail layout, and then look up the record you want to edit (see Figure 1-18)."", ",", "null", ",", "[", "[", ""只需创建一个新窗口，切换到详细信息布局，然后查找要编辑的记录即可（请参见图1-18）。"", ",", "0", ",", "true", ",", "false", "]", ",", "[", ""只要创建一个新的窗口，切换到细节布局，然后查找要编辑的记录（见图1-18）。"", ",", "0", ",", "true", ",", "false", "]", "]", ",", "[", "[", "0", ",", "118", "]", "]", ",", ""Just create a new window, switch to the detail layout, and then look up the record you want to edit (see Figure 1-18)."", ",", "0", ",", "0", "]", ",", "[", ""Your missing email group is safe and sound in the first window."", ",", "null", ",", "[", "[", ""您丢失的电子邮件组在第一个窗口中是安全无事的。"", ",", "0", ",", "true", ",", "false", "]", ",", "[", ""你丢失的电子邮件组是安全和无害的第一个窗口。"", ",", "0", ",", "true", ",", "false", "]", "]", ",", "[", "[", "0", ",", "63", "]", "]", ",", ""Your missing email group is safe and sound in the first window."", ",", "0", ",", "0", "]", ",", "[", ""(See the box on page 32 to see what problems can happen when you edit the same record in multiple windows.)"", ",", "null", ",", "[", "[", ""（请参阅第32页的框，查看在多个窗口中编辑同一记录时可能发生的问题。）"", ",", "0", ",", "true", ",", "false", "]", ",", "[", ""（参见第32页上的框，查看当您编辑在多个窗口对同一记录会发生什么问题。）"", ",", "0", ",", "true", ",", "false", "]", "]", ",", "[", "[", "0", ",", "107", "]", "]", ",", ""(See the box on page 32 to see what problems can happen when you edit the same record in multiple windows.)"", ",", "0", ",", "0", "]", "]", ",", "1.0", ",", "[", "]", ",", "[", "[", ""en"", "]", ",", "null", ",", "[", "1.0", "]", ",", "[", ""en"", "]", "]", ",", "null", ",", "null", ",", "null", ",", "null", ",", "null", ",", "null", ",", "null", ",", "null", ",", "null", ",", "[", "null", ",", "2", "]", "]", "0"]
ast = {
"0"	"0"
"0,0,3,0"	""尽管您可以在列表布局上输入数据，但是您所需的所有字段可能不在该布局上。""
"0,8,3,0"	""en""
"0,5,0,1"	"null"
"0,0,3,1"	""Although you can enter data on the list layout, all the fields you need may not be on that layout.""
"0,0,3,2"	"null"
"0,5,4,2,0,0"	""只需创建一个新窗口，切换到详细信息布局，然后查找要编辑的记录即可（请参见图1-18）。""
"0,0,3,3"	"null"
"0,5,4,2,0,1"	"0"
"0,5,0,4"	""Multiple windows are useful when you’re working with one set of found records and you need to do another search.""
"0,0,3,4"	"3"
"0,5,4,2,0,2"	"true"
"0,5,0,5"	"0"
"0,0,3,5"	"null"
"0,8,1"	"null"
"0,5,4,2,0,3"	"false"
"0,5,0,6"	"0"
"0,0,3,6"	"null"
"0,5,6,3,0,0"	"0"
"0,5,6,3,0,1"	"107"
"0,5,5,0"	""Your missing email group is safe and sound in the first window.""
"0,5,5,1"	"null"
"0,5,6,2,1,0"	""（参见第32页上的框，查看当您编辑在多个窗口对同一记录会发生什么问题。）""
"0,5,6,2,1,1"	"0"
"0,5,5,4"	""Your missing email group is safe and sound in the first window.""
"0,5,0,2,0,0"	""当您使用一组找到的记录并且需要进行另一次搜索时，多个窗口很有用。""
"0,5,6,2,1,2"	"true"
"0,5,5,5"	"0"
"0,5,2,2,0,0"	""假设您一直在处理所有没有电子邮件地址的联系人列表，然后突然得到所需的文书工作来编辑另一条记录上的详细信息。""
"0,5,0,2,0,1"	"0"
"0,5,6,2,1,3"	"false"
"0,5,5,6"	"0"
"0,5,2,2,0,1"	"0"
"0,5,0,2,0,2"	"true"
"0,5,2,2,0,2"	"true"
"0,5,0,2,0,3"	"false"
"0,5,2,2,0,3"	"false"
"0,5,2,3,0,0"	"0"
"0,5,4,3,0,0"	"0"
"0,5,2,3,0,1"	"170"
"0,5,4,3,0,1"	"118"
"0,5,1,0"	""You can perform a find in a new window without losing your found set in the original window.""
"0,0,4,0"	""只需创建一个新窗口，切换到详细信息布局，然后查找要编辑的记录即可（请参见图1-18）。""
"0,5,1,1"	"null"
"0,0,4,1"	""Just create a new window, switch to the detail layout, and then look up the record you want to edit (see Figure 1-18).""
"0,0,4,2"	"null"
"0,5,4,2,1,0"	""只要创建一个新的窗口，切换到细节布局，然后查找要编辑的记录（见图1-18）。""
"0,0,4,3"	"null"
"0,5,4,2,1,1"	"0"
"0,5,1,4"	""You can perform a find in a new window without losing your found set in the original window.""
"0,0,4,4"	"3"
"0,5,4,2,1,2"	"true"
"0,5,1,5"	"0"
"0,0,4,5"	"null"
"0,5,4,2,1,3"	"false"
"0,5,1,6"	"0"
"0,0,4,6"	"null"
"0,5,0,3,0,0"	"0"
"0,5,0,3,0,1"	"112"
"0,5,6,0"	""(See the box on page 32 to see what problems can happen when you edit the same record in multiple windows.)""
"0,5,6,1"	"null"
"0,0,0,0"	""当您使用一组找到的记录并且需要进行另一次搜索时，多个窗口很有用。""
"0,8,0,0"	""en""
"0,0,0,1"	""Multiple windows are useful when you’re working with one set of found records and you need to do another search.""
"0,5,6,4"	""(See the box on page 32 to see what problems can happen when you edit the same record in multiple windows.)""
"0,5,0,2,1,0"	""当你与一组找到的记录工作的多个窗口是有用的，你需要做的另一个搜索。""
"0,0,0,2"	"null"
"0,5,6,5"	"0"
"0,5,2,2,1,0"	""假设你一直使用的所有联系人没有电子邮件地址，然后突然得到你需要编辑细节上的另一个记录的文书工作谁的列表。""
"0,5,0,2,1,1"	"0"
"0,0,0,3"	"null"
"0,5,6,6"	"0"
"0,5,2,2,1,1"	"0"
"0,5,0,2,1,2"	"true"
"0,0,0,4"	"3"
"0,5,2,2,1,2"	"true"
"0,5,0,2,1,3"	"false"
"0,0,0,5"	"null"
"0,5,2,2,1,3"	"false"
"0,0,0,6"	"null"
"0,5,2,0"	""Say you’ve been working with a list of all your contacts who don’t have email addresses and then suddenly get the paperwork you need to edit the detail on another record.""
"0,0,5,0"	""您丢失的电子邮件组在第一个窗口中是安全无事的。 ""
"0,5,2,1"	"null"
"0,0,5,1"	""Your missing email group is safe and sound in the first window.""
"0,0,5,2"	"null"
"0,5,5,2,0,0"	""您丢失的电子邮件组在第一个窗口中是安全无事的。""
"0,0,5,3"	"null"
"0,10"	"null"
"0,5,5,2,0,1"	"0"
"0,5,2,4"	""Say you’ve been working with a list of all your contacts who don’t have email addresses and then suddenly get the paperwork you need to edit the detail on another record.""
"0,0,5,4"	"3"
"0,11"	"null"
"0,5,5,2,0,2"	"true"
"0,5,2,5"	"0"
"0,0,5,5"	"null"
"0,12"	"null"
"0,5,5,2,0,3"	"false"
"0,5,2,6"	"0"
"0,0,5,6"	"null"
"0,13"	"null"
"0,14"	"null"
"0,15"	"null"
"0,0,5,8,0,0,0"	""b3ad15e7a0073e77814019b341d18493""
"0,16"	"null"
"0,0,5,8,0,0,1"	""en_zh_2019q3.md""
"0,17"	"null"
"0,18,0"	"null"
"0,18,1"	"2"
"0,0,4,8,0,0,0"	""b3ad15e7a0073e77814019b341d18493""
"0,0,1,0"	""您可以在新窗口中执行查找，而不会丢失原始窗口中的查找集。""
"0,0,4,8,0,0,1"	""en_zh_2019q3.md""
"0,0,1,1"	""You can perform a find in a new window without losing your found set in the original window.""
"0,5,1,2,0,0"	""您可以在新窗口中执行查找，而不会丢失原始窗口中的查找集。""
"0,0,1,2"	"null"
"0,5,3,2,0,0"	""尽管您可以在列表布局上输入数据，但是您所需的所有字段可能不在该布局上。""
"0,5,1,2,0,1"	"0"
"0,0,1,3"	"null"
"0,5,3,2,0,1"	"0"
"0,5,1,2,0,2"	"true"
"0,0,6,8,0,0,0"	""b3ad15e7a0073e77814019b341d18493""
"0,0,1,4"	"3"
"0,5,3,2,0,2"	"true"
"0,5,1,2,0,3"	"false"
"0,0,6,8,0,0,1"	""en_zh_2019q3.md""
"0,0,1,5"	"null"
"0,5,3,2,0,3"	"false"
"0,0,3,8,0,0,0"	""b3ad15e7a0073e77814019b341d18493""
"0,0,1,6"	"null"
"0,0,3,8,0,0,1"	""en_zh_2019q3.md""
"0,5,5,3,0,0"	"0"
"0,0,0,8,0,0,0"	""b3ad15e7a0073e77814019b341d18493""
"0,5,5,3,0,1"	"63"
"0,0,0,8,0,0,1"	""en_zh_2019q3.md""
"0,0,2,8,0,0,0"	""b3ad15e7a0073e77814019b341d18493""
"0,5,3,0"	""Although you can enter data on the list layout, all the fields you need may not be on that layout.""
"0,0,6,0"	""（请参阅第32页的框，查看在多个窗口中编辑同一记录时可能发生的问题。）""
"0,0,2,8,0,0,1"	""en_zh_2019q3.md""
"0,5,3,1"	"null"
"0,0,6,1"	""(See the box on page 32 to see what problems can happen when you edit the same record in multiple windows.)""
"0,0,6,2"	"null"
"0,5,5,2,1,0"	""你丢失的电子邮件组是安全和无害的第一个窗口。""
"0,0,6,3"	"null"
"0,5,5,2,1,1"	"0"
"0,5,3,4"	""Although you can enter data on the list layout, all the fields you need may not be on that layout.""
"0,0,6,4"	"3"
"0,5,5,2,1,2"	"true"
"0,5,3,5"	"0"
"0,0,6,5"	"null"
"0,0,1,8,0,0,0"	""b3ad15e7a0073e77814019b341d18493""
"0,5,5,2,1,3"	"false"
"0,5,3,6"	"0"
"0,0,6,6"	"null"
"0,0,1,8,0,0,1"	""en_zh_2019q3.md""
"0,5,1,3,0,0"	"0"
"0,1"	"null"
"0,5,3,3,0,0"	"0"
"0,5,1,3,0,1"	"92"
"0,2"	""en""
"0,5,3,3,0,1"	"98"
"0,3"	"null"
"0,4"	"null"
"0,6"	"1.0"
"0,0,2,0"	""假设您一直在处理所有没有电子邮件地址的联系人列表，然后突然得到所需的文书工作来编辑另一条记录上的详细信息。""
"0,8,2,0"	"1.0"
"0,0,2,1"	""Say you’ve been working with a list of all your contacts who don’t have email addresses and then suddenly get the paperwork you need to edit the detail on another record.""
"0,9"	"null"
"0,5,1,2,1,0"	""您可以在一个新的窗口，而不在原始窗口失去你找到一套执行查找。""
"0,0,2,2"	"null"
"0,5,3,2,1,0"	""虽然你可以在列表布局输入数据，你需要可能无法在该布局的所有字段。""
"0,5,1,2,1,1"	"0"
"0,0,2,3"	"null"
"0,5,3,2,1,1"	"0"
"0,5,1,2,1,2"	"true"
"0,0,2,4"	"3"
"0,5,3,2,1,2"	"true"
"0,5,1,2,1,3"	"false"
"0,0,2,5"	"null"
"0,5,3,2,1,3"	"false"
"0,0,2,6"	"null"
"0,5,4,0"	""Just create a new window, switch to the detail layout, and then look up the record you want to edit (see Figure 1-18).""
"0,0,7,0"	"null"
"0,5,4,1"	"null"
"0,0,7,1"	"null"
"0,0,7,2"	""Dāng nín shǐyòng yī zǔ zhǎodào de jìlù bìngqiě xūyào jìnxíng lìng yīcì sōusuǒ shí, duō gè chuāngkǒu hěn yǒuyòng. Nín kěyǐ zài xīn chuāngkǒu zhōng zhíxíng cházhǎo, ér bù huì diūshī yuánshǐ chuāngkǒu zhōng de cházhǎo jí. Jiǎshè nín yīzhí zài chǔlǐ suǒyǒu méiyǒu diànzǐ yóujiàn dìzhǐ de liánxì rén lièbiǎo, ránhòu túrán dédào suǒ xū de wénshū gōngzuò lái biānjí lìng yītiáo jìlù shàng de xiángxì xìnxī. Jǐnguǎn nín kěyǐ zài lièbiǎo bùjú shàng shūrù shùjù, dànshì nín suǒ xū de suǒyǒu zìduàn kěnéng bùzài gāi bùjú shàng. Zhǐ xū chuàngjiàn yīgè xīn chuāngkǒu, qiēhuàn dào xiángxì xìnxī bùjú, ránhòu cházhǎo yào biānjí de jìlù jí kě (qǐng cānjiàn tú 1-18). Nín diūshī de diànzǐ yóujiàn zǔ zài dì yī gè chuāngkǒu zhōng shì ānquán wú shì de. (Qǐng cānyuè dì 32 yè de kuāng, chákàn zài duō gè chuāngkǒu zhōng biānjí tóngyī jìlù shí kěnéng fāshēng de wèntí.)""
"0,5,6,2,0,0"	""（请参阅第32页的框，查看在多个窗口中编辑同一记录时可能发生的问题。）""
"0,5,6,2,0,1"	"0"
"0,5,4,4"	""Just create a new window, switch to the detail layout, and then look up the record you want to edit (see Figure 1-18).""
"0,5,6,2,0,2"	"true"
"0,5,4,5"	"0"
"0,5,6,2,0,3"	"false"
"0,5,4,6"	"0"
"0,5,0,0"	""Multiple windows are useful when you’re working with one set of found records and you need to do another search.""
}
-- display original text & phonetics
Although you can enter data on the list layout, all the fields you need may not be on that layout. Just create a new window, switch to the detail layout, and then look up the record you want to edit (see Figure 1-18). Multiple windows are useful when you’re working with one set of found records and you need to do another search. Your missing email group is safe and sound in the first window. You can perform a find in a new window without losing your found set in the original window. (See the box on page 32 to see what problems can happen when you edit the same record in multiple windows.) Say you’ve been working with a list of all your contacts who don’t have email addresses and then suddenly get the paperwork you need to edit the detail on another record.
-- display major translation & phonetics
尽管您可以在列表布局上输入数据，但是您所需的所有字段可能不在该布局上。只需创建一个新窗口，切换到详细信息布局，然后查找要编辑的记录即可（请参见图1-18）。当您使用一组找到的记录并且需要进行另一次搜索时，多个窗口很有用。您丢失的电子邮件组在第一个窗口中是安全无事的。 您可以在新窗口中执行查找，而不会丢失原始窗口中的查找集。（请参阅第32页的框，查看在多个窗口中编辑同一记录时可能发生的问题。）假设您一直在处理所有没有电子邮件地址的联系人列表，然后突然得到所需的文书工作来编辑另一条记录上的详细信息。
(Dāng nín shǐyòng yī zǔ zhǎodào de jìlù bìngqiě xūyào jìnxíng lìng yīcì sōusuǒ shí, duō gè chuāngkǒu hěn yǒuyòng. Nín kěyǐ zài xīn chuāngkǒu zhōng zhíxíng cházhǎo, ér bù huì diūshī yuánshǐ chuāngkǒu zhōng de cházhǎo jí. Jiǎshè nín yīzhí zài chǔlǐ suǒyǒu méiyǒu diànzǐ yóujiàn dìzhǐ de liánxì rén lièbiǎo, ránhòu túrán dédào suǒ xū de wénshū gōngzuò lái biānjí lìng yītiáo jìlù shàng de xiángxì xìnxī. Jǐnguǎn nín kěyǐ zài lièbiǎo bùjú shàng shūrù shùjù, dànshì nín suǒ xū de suǒyǒu zìduàn kěnéng bùzài gāi bùjú shàng. Zhǐ xū chuàngjiàn yīgè xīn chuāngkǒu, qiēhuàn dào xiángxì xìnxī bùjú, ránhòu cházhǎo yào biānjí de jìlù jí kě (qǐng cānjiàn tú 1-18). Nín diūshī de diànzǐ yóujiàn zǔ zài dì yī gè chuāngkǒu zhōng shì ānquán wú shì de. (Qǐng cānyuè dì 32 yè de kuāng, chákàn zài duō gè chuāngkǒu zhōng biānjí tóngyī jìlù shí kěnéng fāshēng de wèntí.))
-- display prompt message (Translations of ...)
Translations of Although you can enter data on the list layout, all the fields you need may not be on that layout. Just create a new window, switch to the detail layout, and then look up the record you want to edit (see Figure 1-18). Multiple windows are useful when you’re working with one set of found records and you need to do another search. Your missing email group is safe and sound in the first window. You can perform a find in a new window without losing your found set in the original window. (See the box on page 32 to see what problems can happen when you edit the same record in multiple windows.) Say you’ve been working with a list of all your contacts who don’t have email addresses and then suddenly get the paperwork you need to edit the detail on another record.
-- display source language -> target language
[ English -> 简体中文 ]
-- display alternative translations
Multiple windows are useful when you’re working with one set of found records and you need to do another search.
, 当你与一组找到的记录工作的多个窗口是有用的，你需要做的另一个搜索。
You can perform a find in a new window without losing your found set in the original window.
您可以在新窗口中执行查找，而不会丢失原始窗口中的查找集。, 您可以在一个新的窗口，而不在原始窗口失去你找到一套执行查找。
Say you’ve been working with a list of all your contacts who don’t have email addresses and then suddenly get the paperwork you need to edit the detail on another record.
, 假设你一直使用的所有联系人没有电子邮件地址，然后突然得到你需要编辑细节上的另一个记录的文书工作谁的列表。
Although you can enter data on the list layout, all the fields you need may not be on that layout.
, 虽然你可以在列表布局输入数据，你需要可能无法在该布局的所有字段。
Just create a new window, switch to the detail layout, and then look up the record you want to edit (see Figure 1-18).
, 只要创建一个新的窗口，切换到细节布局，然后查找要编辑的记录（见图1-18）。
Your missing email group is safe and sound in the first window.
您丢失的电子邮件组在第一个窗口中是安全无事的。, 你丢失的电子邮件组是安全和无害的第一个窗口。
(See the box on page 32 to see what problems can happen when you edit the same record in multiple windows.)
（请参阅第32页的框，查看在多个窗口中编辑同一记录时可能发生的问题。）, （参见第32页上的框，查看当您编辑在多个窗口对同一记录会发生什么问题。）

I suspect the problem is with your gawk. What's the version of it, and can you try upgrading it and see if the issue persists?

% gawk -V
GNU Awk 5.1.0, API: 3.0 (GNU MPFR 4.1.0, GNU MP 6.2.1)
Seems to be up-to-date.

You might want to try
$ gawk -f <(curl -Ls git.io/translate) -- :zh-CN "Multiple windows are useful when you’re working with one set of found records and you need to do another search. You can perform a find in a new window without losing your found set in the original window. Say you’ve been working with a list of all your contacts who don’t have email addresses and then suddenly get the paperwork you need to edit the detail on another record. Although you can enter data on the list layout, all the fields you need may not be on that layout. Just create a new window, switch to the detail layout, and then look up the record you want to edit (see Figure 1-18). Your missing email group is safe and sound in the first window. (See the box on page 32 to see what problems can happen when you edit the same record in multiple windows.)"

but to be honest, I have no idea why this happens assuming that you're on the latest version of trans and gawk.

I tried what you wrote, but why got no response?

Download the file http://git.io/translate and save as trans.awk, then run gawk -f trans.awk -- :zh-CN [your content].

gawk -f trans.awk -- :zh-CN "Multiple windows are useful when you’re working with one set of found records and you need to do another search. You can perform a find in a new window without losing your found set in the original window. Say you’ve been working with a list of all your contacts who don’t have email addresses and then suddenly get the paperwork you need to edit the detail on another record. Although you can enter data on the list layout, all the fields you need may not be on that layout. Just create a new window, switch to the detail layout, and then look up the record you want to edit (see Figure 1-18). Your missing email group is safe and sound in the first window. (See the box on page 32 to see what problems can happen when you edit the same record in multiple windows.)"
Although you can enter data on the list layout, all the fields you need may not be on that layout. Just create a new window, switch to the detail layout, and then look up the record you want to edit (see Figure 1-18). Multiple windows are useful when you’re working with one set of found records and you need to do another search. Your missing email group is safe and sound in the first window. You can perform a find in a new window without losing your found set in the original window. (See the box on page 32 to see what problems can happen when you edit the same record in multiple windows.) Say you’ve been working with a list of all your contacts who don’t have email addresses and then suddenly get the paperwork you need to edit the detail on another record.
尽管您可以在列表布局上输入数据，但是您所需的所有字段可能不在该布局上。只需创建一个新窗口，切换到详细信息布局，然后查找要编辑的记录即可（请参见图1-18）。当您使用一组找到的记录并且需要进行另一次搜索时，多个窗口很有用。您丢失的电子邮件组在第一个窗口中是安全无事的。 您可以在新窗口中执行查找，而不会丢失原始窗口中的查找集。（请参阅第32页的框，查看在多个窗口中编辑同一记录时可能发生的问题。）假设您一直在处理所有没有电子邮件地址的联系人列表，然后突然得到所需的文书工作来编辑另一条记录上的详细信息。
(Dāng nín shǐyòng yī zǔ zhǎodào de jìlù bìngqiě xūyào jìnxíng lìng yīcì sōusuǒ shí, duō gè chuāngkǒu hěn yǒuyòng. Nín kěyǐ zài xīn chuāngkǒu zhōng zhíxíng cházhǎo, ér bù huì diūshī yuánshǐ chuāngkǒu zhōng de cházhǎo jí. Jiǎshè nín yīzhí zài chǔlǐ suǒyǒu méiyǒu diànzǐ yóujiàn dìzhǐ de liánxì rén lièbiǎo, ránhòu túrán dédào suǒ xū de wénshū gōngzuò lái biānjí lìng yītiáo jìlù shàng de xiángxì xìnxī. Jǐnguǎn nín kěyǐ zài lièbiǎo bùjú shàng shūrù shùjù, dànshì nín suǒ xū de suǒyǒu zìduàn kěnéng bùzài gāi bùjú shàng. Zhǐ xū chuàngjiàn yīgè xīn chuāngkǒu, qiēhuàn dào xiángxì xìnxī bùjú, ránhòu cházhǎo yào biānjí de jìlù jí kě (qǐng cānjiàn tú 1-18). Nín diūshī de diànzǐ yóujiàn zǔ zài dì yī gè chuāngkǒu zhōng shì ānquán wú shì de. (Qǐng cānyuè dì 32 yè de kuāng, chákàn zài duō gè chuāngkǒu zhōng biānjí tóngyī jìlù shí kěnéng fāshēng de wèntí.))
Translations of Although you can enter data on the list layout, all the fields you need may not be on that layout. Just create a new window, switch to the detail layout, and then look up the record you want to edit (see Figure 1-18). Multiple windows are useful when you’re working with one set of found records and you need to do another search. Your missing email group is safe and sound in the first window. You can perform a find in a new window without losing your found set in the original window. (See the box on page 32 to see what problems can happen when you edit the same record in multiple windows.) Say you’ve been working with a list of all your contacts who don’t have email addresses and then suddenly get the paperwork you need to edit the detail on another record.
[ English -> 简体中文 ]
Multiple windows are useful when you’re working with one set of found records and you need to do another search.
, 当你与一组找到的记录工作的多个窗口是有用的，你需要做的另一个搜索。
You can perform a find in a new window without losing your found set in the original window.
您可以在新窗口中执行查找，而不会丢失原始窗口中的查找集。, 您可以在一个新的窗口，而不在原始窗口失去你找到一套执行查找。
Say you’ve been working with a list of all your contacts who don’t have email addresses and then suddenly get the paperwork you need to edit the detail on another record.
, 假设你一直使用的所有联系人没有电子邮件地址，然后突然得到你需要编辑细节上的另一个记录的文书工作谁的列表。
Although you can enter data on the list layout, all the fields you need may not be on that layout.
, 虽然你可以在列表布局输入数据，你需要可能无法在该布局的所有字段。
Just create a new window, switch to the detail layout, and then look up the record you want to edit (see Figure 1-18).
, 只要创建一个新的窗口，切换到细节布局，然后查找要编辑的记录（见图1-18）。
Your missing email group is safe and sound in the first window.
您丢失的电子邮件组在第一个窗口中是安全无事的。, 你丢失的电子邮件组是安全和无害的第一个窗口。
(See the box on page 32 to see what problems can happen when you edit the same record in multiple windows.)
（请参阅第32页的框，查看在多个窗口中编辑同一记录时可能发生的问题。）, （参见第32页上的框，查看当您编辑在多个窗口对同一记录会发生什么问题。）

But why using :fr everything looks correct?
gawk -f trans.awk -- :fr "Multiple windows are useful when you’re working with one set of found records and you need to do another search. You can perform a find in a new window without losing your found set in the original window. Say you’ve been working with a list of all your contacts who don’t have email addresses and then suddenly get the paperwork you need to edit the detail on another record. Although you can enter data on the list layout, all the fields you need may not be on that layout. Just create a new window, switch to the detail layout, and then look up the record you want to edit (see Figure 1-18). Your missing email group is safe and sound in the first window. (See the box on page 32 to see what problems can happen when you edit the same record in multiple windows.)"
Multiple windows are useful when you’re working with one set of found records and you need to do another search. You can perform a find in a new window without losing your found set in the original window. Say you’ve been working with a list of all your contacts who don’t have email addresses and then suddenly get the paperwork you need to edit the detail on another record. Although you can enter data on the list layout, all the fields you need may not be on that layout. Just create a new window, switch to the detail layout, and then look up the record you want to edit (see Figure 1-18). Your missing email group is safe and sound in the first window. (See the box on page 32 to see what problems can happen when you edit the same record in multiple windows.)

Plusieurs fenêtres sont utiles lorsque vous travaillez avec un ensemble d'enregistrements trouvés et que vous devez effectuer une autre recherche. Vous pouvez effectuer une recherche dans une nouvelle fenêtre sans perdre votre jeu d'objets trouvés dans la fenêtre d'origine. Supposons que vous ayez travaillé avec une liste de tous vos contacts qui n’ont pas d’adresse e-mail, puis que vous ayez soudainement obtenu les documents dont vous avez besoin pour modifier les détails d’un autre enregistrement. Bien que vous puissiez saisir des données dans la mise en page de la liste, tous les champs dont vous avez besoin peuvent ne pas figurer dans cette mise en page. Créez simplement une nouvelle fenêtre, passez à la mise en page détaillée, puis recherchez l'enregistrement que vous souhaitez modifier (voir Figure 1-18). Votre groupe de messagerie manquant est sain et sauf dans la première fenêtre. (Voir l'encadré à la page 32 pour voir quels problèmes peuvent survenir lorsque vous modifiez le même enregistrement dans plusieurs fenêtres.)

Translations of Multiple windows are useful when you’re working with one set of found records and you need to do another search. You can perform a find in a new window without losing your found set in the original window. Say you’ve been working with a list of all your contacts who don’t have email addresses and then suddenly get the paperwork you need to edit the detail on another record. Although you can enter data on the list layout, all the fields you need may not be on that layout. Just create a new window, switch to the detail layout, and then look up the record you want to edit (see Figure 1-18). Your missing email group is safe and sound in the first window. (See the box on page 32 to see what problems can happen when you edit the same record in multiple windows.)
[ English -> Français ]

Multiple windows are useful when you’re working with one set of found records and you need to do another search.
    Plusieurs fenêtres sont utiles lorsque vous travaillez avec un ensemble d'enregistrements trouvés et que vous devez effectuer une autre recherche., Plusieurs fenêtres sont utiles lorsque vous travaillez avec un jeu d'enregistrements trouvés et que vous devez faire une autre recherche.
You can perform a find in a new window without losing your found set in the original window.
    Vous pouvez effectuer une recherche dans une nouvelle fenêtre sans perdre votre jeu d'objets trouvés dans la fenêtre d'origine., Vous pouvez effectuer une découverte dans une nouvelle fenêtre sans perdre votre jeu trouvé dans la fenêtre d'origine.
Say you’ve been working with a list of all your contacts who don’t have email addresses and then suddenly get the paperwork you need to edit the detail on another record.
    Supposons que vous ayez travaillé avec une liste de tous vos contacts qui n’ont pas d’adresse e-mail, puis que vous ayez soudainement obtenu les documents dont vous avez besoin pour modifier les détails d’un autre enregistrement., Dites que vous avez travaillé avec une liste de tous vos contacts qui ne sont pas les adresses e-mail et ensuite obtenir soudainement les documents que vous devez modifier les détails sur un autre enregistrement.
Although you can enter data on the list layout, all the fields you need may not be on that layout.
    Bien que vous puissiez saisir des données dans la mise en page de la liste, tous les champs dont vous avez besoin peuvent ne pas figurer dans cette mise en page., Bien que vous puissiez entrer des données sur la mise en page de la liste, tous les champs dont vous avez besoin peut-être pas sur cette disposition.
Just create a new window, switch to the detail layout, and then look up the record you want to edit (see Figure 1-18).
    Créez simplement une nouvelle fenêtre, passez à la mise en page détaillée, puis recherchez l'enregistrement que vous souhaitez modifier (voir Figure 1-18)., Il suffit de créer une nouvelle fenêtre, passer à la mise en page de détail, puis rechercher l'enregistrement que vous voulez modifier (voir la figure 1-18).
Your missing email group is safe and sound in the first window.
    Votre groupe de messagerie manquant est sain et sauf dans la première fenêtre., Votre groupe de messagerie manquant est sûr et son dans la première fenêtre.
(See the box on page 32 to see what problems can happen when you edit the same record in multiple windows.)
    (Voir l'encadré à la page 32 pour voir quels problèmes peuvent survenir lorsque vous modifiez le même enregistrement dans plusieurs fenêtres.), (Voir l'encadré à la page 32 pour voir quels problèmes peuvent se produire lorsque vous modifiez le même enregistrement dans plusieurs fenêtres.)

I suggest trying the Docker image (https://github.com/soimort/translate-shell#using-docker) instead. I got no clue now.

I suggest trying the Docker image (https://github.com/soimort/translate-shell#using-docker) instead. I got no clue now.

I tried install docker.app, then open terminal input:
docker pull soimort/translate-shell
docker run -it soimort/translate-shell -shell

Then, behind the colon, I inputted :

:zh "Multiple windows are useful when you’re working with one set of found records and you need to do another search. You can perform a find in a new window without losing your found set in the original window. Say you’ve been working with a list of all your contacts who don’t have email addresses and then suddenly get the paperwork you need to edit the detail on another record. Although you can enter data on the list layout, all the fields you need may not be on that layout. Just create a new window, switch to the detail layout, and then look up the record you want to edit (see Figure 1-18). Your missing email group is safe and sound in the first window. (See the box on page 32 to see what problems can happen when you edit the same record in multiple windows.)"

Finally, I got everything is correct.
Any clue why that happened to be wrong if not using docker?

Docker container packages its own dependencies rather than using the existing ones on the system. Here's a list of dependencies trans relies on:
bash gawk curl mplayer fribidi less hunspell wget

Assume you have the same trans and it works under docker, but not on your raw system, then it looks like a bug of a particular version of these dependencies (most likely gawk or bash). Hard to tell though, as I don't have the exact environment to reproduce your issue.
You can try updating all the system packages to see if it fixes the issue. Otherwise you can make an alias for the docker image and use it instead: alias trans=docker run -it soimort/translate-shell --.

Docker container packages its own dependencies rather than using the existing ones on the system. Here's a list of dependencies trans relies on:
bash gawk curl mplayer fribidi less hunspell wget

Assume you have the same trans and it works under docker, but not on your raw system, then it looks like a bug of a particular version of these dependencies (most likely gawk or bash). Hard to tell though, as I don't have the exact environment to reproduce your issue.
You can try updating all the system packages to see if it fixes the issue. Otherwise you can make an alias for the docker image and use it instead: alias trans=docker run -it soimort/translate-shell --.

Can you advise me how can I upgrade or check version for all these dependencies?
brew upgrade seems doesn't work on most of them? (sorry I am new to terminal)
I am running trans on Big sur 11.2.3, most of the commands are preinstalled on raw system, I seldom install or upgrade them. Did you use the same environment as me to run trans without getting wrong result like me?
For workaround method, honestly I don't like to run a docker in background just for one command.

I am running trans on Big sur 11.2.3, most of the commands are preinstalled on raw system, I seldom install or upgrade them.

I don't use Mac, and I can't give specific suggestions on this. However, I don't think gawk is "preinstalled on raw system" for Mac, so the first thing to try is to uninstall it and reinstall the newest version (using brew).


Remove jQuery Dependency

Is this in the roadmap at all?
Huge fan of Peity but I'm wanting to drop jQuery. Would love to see it ported over to vanilla JS. I can give it a go if you have no plans for it?

Definitely, I'd like to remove the dependency on jQuery - though probably continue to build a jQuery plugin version.

Is there any update on this idea or has this been canned?

There's no update but here's some more of my thinking:
I had intended to create a jQuery-free version of Peity that would be used by the jQuery version and could also then be used by React (#75) or Angular - I also wondered whether it could be abstract enough to build an IE-compatible version that outputted VML which is no longer an issue.
Anyway, a core concern of this library is to have a small filesize and all that abstraction stuff is slightly at odds with that intention. Also, part of being able to keep Peity's filesize small is because jQuery gives so much - including utility functions like extend().
I still like the idea of making a new version of Peity that expects a modern JS environment - instead of avoiding ES5 additions even. I'll keep this issue updated with any progress or thoughts.
Thanks for prodding me about this it's actually been quite motivational :)

https://github.com/railsjazz/peity_vanilla
Vanilla JS version of this plugin. We plan to extend this further and add more chart types in the future.

the railjazz team did a nice job removing jquery and refactoring the code, but in my view it should have been done in the context of this project, even if MIT licence is very permissive. Can you comment on this @benpickles ?
I am bringing up this here, becuase I implementing a maplibre application in angular which shows a pie-chart for the clustered markers, similar to this example:
https://github.com/maplibre/ngx-maplibre-gl/blob/main/projects/showcase/src/app/demo/examples/cluster-html.component.ts
I could use the vanilla version, but is it not very good becuase angular discourage direct manipulation of DOM. Basically what I would need from peity is the calculation of the segments only, which can be used in an Angular template. Perhaps the segment could reuse the svg.js classes.
the angular template example can be found at this line:
https://github.com/maplibre/ngx-maplibre-gl/blob/main/projects/showcase/src/app/demo/examples/cluster-html.component.ts#L130

I'm looking at this, current status: 28 failed, 25 passed, 53 total
The plan is to switch from a jQuery plugin to web components - <peity-bar data="1,2,3,5,8"></peity-bar> etc - and also expose the individual chart functions so they can be used by others.
The jQuery plugin can remain, maybe it uses the chart functions directly or maybe it wraps the web components. I'm tempted to create a React version that's a wrapper for the web components, but I'm not particularly keen on making/maintaining one for each framework.


[AutoPR consumption/resource-manager] Add the swagger sections for Reservation Utilization and Recommendations

Created to sync https://github.com/Azure/azure-rest-api-specs/pull/5093

PR was closed


galeforce_1.default is not a constructor

Hey,
I'd realy like to use this. However when I try to create a new instace of the GaleforceModule I get the error galeforce_1.default is not a constructor
I alreay tried adding "esModuleInterop": true, to my tsconfig. But it didnt help.
 Thanks for opening an issue. I'm having trouble replicating your error on my computer, as everything seems to be working fine with the following code on version 0.5.1:
import GaleforceModule from 'galeforce';

const galeforce = new GaleforceModule({
  'riot-api': {
    key: 'RGAPI-xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx',
  },
});

Would you be able to provide an example code snippet that raises the error, as well as the console output from the program? Thanks!

Hey bcho04,
thank you for your quick reply. I have set up a repo where you can check out the code here
See the index.ts file line 98 for how I initialize galeforce. Also have a look at my tsconfig.json file since my guess is that most likely something is wrong with that file.

@hemmoleg,
I've taken a look at your source files and tsconfig.json and still can't seem to find the issue—when I initialize Galeforce in an async method it still works without erroring, and nothing about your tsconfig seems to be wrong at first glance. Can you try initializing directly from the command line like this?
const GaleforceModule = require('galeforce');
const galeforce = new GaleforceModule();

If I use the require instead of the import synatx it works. However what I found is that when using require there is no autocomplete in my ide (vs code) which is something I cant realy live without.
using import

using require

I am no expert on these things but I think the issue has something to do with how you export the GaleforceModule. Maybe using export default could help?

@hemmoleg — Currently the export in /src/index.ts is done with Typescript's export =:
// taken from /src/index.ts

class Galeforce = {
    /* ... */
}

declare namespace Galeforce {
    /* ... */
}

export = Galeforce;

Perhaps you could try importing with import GaleforceModule = require('galeforce')?

Using import GaleforceModule = require('galeforce') did the trick! I didnt even know that you could also do it this way.
Thanks for you help! :D


Any hope for AMD/Intel/etc. owners?

I see there's some external API model support already, but some of us were been frupid and bought AMD or Intel GPUs and might find it cool to run this totally locally using one.

Hi @dymil, we probably won't able to develop for these hardware since we don't have access to them. PRs are welcome.


Cerebro Position Incorrect After Disconnecting & Reconnecting External Displays From Laptop

[x ] I am on the latest Cerebro.app version
[x ] I have searched the issues of this repo and believe that this is not a duplicate

OS version and name: Ubuntu 16.04 w/ Unity
Cerebro.app version: 0.3.2
Relevant information from devtools Not sure, but I don't think dev tools shows any info about the app container.

Issue
Running Cerebro on Ubuntu 16.04 (w/ Unity), Laptop + 2x 4K monitor set up:
[1920x1080] [3840x2160] [3840x2160].
The middle display (4K) is my primary monitor (where the launcher is designated to sit). Upon first installing Cerebro & switching my primary display setting, it was successfully opening in the center of my display. After disconnecting my external displays and reconnecting them, Cerebro now spawns at the top right of my left-most (Laptop) display. I should mention as well that when I was running on just my single laptop display, the position was also incorrect (bottom right).

Could test to see if the problem remains in current versions. I believe the topic here has been resolved @jonnyasmar @lawgsy


Some applications are failing to open files from file manager.

So some of my sommelier-core ported snaps are failing to open files previously worked just fine.
Failing snaps
acrordrdc
foobar2000 see user issue though desktop actions do work which do args like /play.
irfranview
notepad3
Working snaps
notepad-plus-plus
resourcehacker
I think this need unix path conversion for file arguments.
See my old f2k changes

I was hoping we didn't need this since the old code assumes every argument which isn't a flag is a path. Plus, it requires users to use unix-style flags instead of windows-style flags. Are there no better options?

I think we could probably solve the file manager issue by including "Z:" in the .desktop file. Something like this: myapp<EMAIL_ADDRESS>That wouldn't fix CLI invocations, however.
This comments claims it's fixed but this requires to use start.exe?

How do apps like PlayOnLinux fix stuff like this? If they even do it?

I've fixed issue without needing to use start /unix in MR so I'm checking if action arg is a valid file then proceed adding z: to it.
Though not tested apps that use flag like args having -add -play but they should work since I'm checking if arg is file else it will proceeds as usuall.


Too large step_size in deepedit

Describe the bug
Too large step_size which may cause the learning rate never decreases unless the model is trained for 5000 epochs.
https://github.com/Project-MONAI/tutorials/blob/bbc4e180f5130859396a98e35523bc73fa694595/deepedit/ignite/train.py#L268
Expected behavior
Set smaller step_size or set epoch_level=False in LrScheduleHandler
Originally posted in https://github.com/Project-MONAI/MONAI/issues/6625

Hi @diazandr3s, could you please help take a look at this issue?
Thanks in advance!

Hi @diazandr3s, I didn't try to reduce the step_size, I'm assuming there's a typo here because the value of 5000 is set too high if it's epoch-level.
Thanks!


running in wine in singularity - 'Caught unknown exception'

Hi team! I am struggling with a bit of a meta-meta problem - I want to run msconvert on a linux based HPC, that cannot run docker (fun to begin with.. its a permissions issue) and together with a colleague I have managed to install the docker container through singularity.
Now, I managed to get this command to work (once), but it does not anymore: when I try to run through singularity with a command akin to:
singularity exec -B /my/home /my/home/pwiz_singularity_container wine msconvert /my/home/data/file.raw -o /my/home/data/converted_files –-mzXML
I see the following error:
[msconvert] no files found matching "–-mzXML"
format: mzML
    m/z: Compression-None, 64-bit
    intensity: Compression-None, 32-bit
    rt: Compression-None, 64-bit
ByteOrder_LittleEndian
 indexed="true"
outputPath: /my/home/data/converted/file.mzXML
extension: .mzML
contactFilename:
runIndexSet:

spectrum list filters:

chromatogram list filters:

filenames:
/my/home/data/file.raw

processing file:
/my/home/data/file.raw
[C:\pwiz\msconvert.exe] Caught unknown exception.
Please report this error to<EMAIL_ADDRESS>Attach the command output and this version information in your report:

ProteoWizard release: 3.0.19252 (aa45583de)
Build date: Sep  9 2019 07:06:22

Please excuse me for not showing the actual file paths, its a bit of a privacy issue.
Two problems - one: not recognising the --mzXML flag at all, it seems?
And two: the unknown exception.
I'd love to include logs but I am not sure where to find them. Should I be having certain environment settings up? Since I'm in a wrapper in a wrapper, I hope there's still a fix.. and I hope I just missed something simple and it's fixable!
Thanks so much :)
Kind regards,
Joanna

The --mzXML issue looks like a copy/paste error. One of the hyphens isn't a basic hypen.
–-mzXML
vs
--mzXML
The unknown exception is tougher. Does that file work with msconvert when running it in Windows? Is your singularity run able to convert other vendor files and/or other RAW files?

Wew, thanks for your super fast reply! That solves the --mzXML issue, at least something is simple =)
I'm going to try on other files, but I tried a few and it doesn't seem to work yet. Do you know of any 'reference' raw/etc files that are verified to be OK that I could download, by any chance? (In the meantime I'll try some more, but just in case)

Ah, to add, I also get:
wineserver: could not save registry branch to system.reg : Read-only file system
wineserver: could not save registry branch to user.reg : Read-only file system

a few seconds after the initial error message.

Ah that looks bad. I think the image needs to be read-write.

I'm going to see if I can open it in read-write, will update ^^

There are test files for each vendor:
https://github.com/ProteoWizard/pwiz/blob/master/pwiz/data/vendor_readers/Thermo/Reader_Thermo_Test.data.tar.bz2
https://github.com/ProteoWizard/pwiz/blob/master/pwiz/data/vendor_readers/Agilent/Reader_Agilent_Test.data.tar.bz2
etc.

Thanks :) I tested on thermo file and i get the same unknown exception, guessing it's not the RAW file then. Still trying to figure out permissions, it seems to not be easy...

Executing as 'singularity --writable' gives me a slightly different message:
[msconvert] no files found matching "/hpc/cog_bioinf/ridder/users/jwolthuis/Data/Metabolomics/test/Reader_Thermo_Test.data/090701-LTQVelos-unittest-01.raw"
[msconvert] No files specified.

although that file does exist - any ideas? I am not very familiar with the inner workings of singularity, so if it's more something I should tag their team about please let me know ; w;

Hi there, to save you some effort :-) I think I found what's wrong, something with the bind folder for singularity isn't working and all I can access from within singularity is my home folder. I moved the raw file there and it converts without errors, so I'm going to sort out that problem and hopefully move on to the rest of the pipeline :D

I know this issue is closed, but I ran into the same problem and fixed it by adding the preferred folder as a drive in the 'winecfg' > 'Drives' tab. This seems like a better long-term solution so I wanted to share it in case anyone else came to this issue via google!

Can you elaborate on how you ran winecfg in a way that persisted the changes?

I'm not sure if I understand your question but realize I left out an important detail that likely addresses it - I did this on an HPC desktop session. I don't know how often this is an option on HPC clusters. This enables us to configure and run graphical user interface applications on our cluster. So when I use the command winecfg in a desktop session termainl, the "Wine configuration" window appears and I literally click the "Drives" tab and "Add..." and type the path to my drive. Without the HPC desktop session option I guess it would be done like https://forum.winehq.org/viewtopic.php?t=34039 but I haven't tested that.

So you aren't actually using our Docker container or a Singularity derivative of it?

Oh, I'm sorry, you're correct. We had been in parallel trying to install and use proteowizard via the windows installer + wine and chambm/pwiz-skyline-i-agree-to-the-vendor-licenses using docker (singularity) and I got mixed up here. Sorry if this wasn't relevant.

Which version of wine did you use? I can't upgrade the container to Wine 7 because it causes an infinite loop in Skyline's unit tests, and I can't upgrade Bruker's Baf2Sql API without upgrading Wine because it crashes with the current Wine version (3.12). Lots of other versions I tested had one or the other problem as well.

wine 7

OK, good luck then. :) Wine 7 works fine with all the msconvert unit tests, at least.


Fixes docs for BaseUrl methods [skip ci] (#13821)

Q
A

Is bugfix?
only docs bug

New feature?
no

Breaks BC?
no

Tests pass?
-

Fixed issues
#13821

Sorry for my bad English, it's rather for clarifying my issue.

Merged. Thanks!


New cop Lint/SafeNavigationWithEmpty

This cop checks to make sure safe navigation isn't used with empty? in
a conditional.
While the safe navigation operator is generally a good idea, when
checking foo&.empty? in a conditional, foo being nil will actually
do the opposite of what the author intends.
This was suggested by my GitLab colleague @grzesiek at https://gitlab.com/gitlab-org/gitlab-ce/issues/54853.

Before submitting the PR make sure the following are checked:

[x] Wrote good commit messages.
[x] Commit message starts with [Fix #issue-number] (if the related issue exists).
[x] Feature branch is up-to-date with master (if not - rebase it).
[x] Squashed related commits together.
[x] Added tests.
[x] Added an entry to the Changelog if the new code introduces user-observable changes. See changelog entry format.
[x] The PR relates to only one subject with a clear title
and description in grammatically correct, complete sentences.
[x] Run bundle exec rake default. It executes all tests and RuboCop for itself, and generates the documentation.

Do you have any time to take this over? I'm starting vacation this week and don't know when I'll be able to get back to it.

@rspeicher We have a two day public holiday in Singapore starting tomorrow. I think I can find time to make the required changes to get this merged. 🙂

I think this cop is valuable without configurability or autocorrection. Those could be followup PRs.

I'll merge this as is with the hope that someone will tweak it later.

I'm confused by the documentation of this cop, since in my case foo&.empty? does exactly what I intend.
(To be specific, I have the equivalent of foo = nil if foo&.empty?. If foo is already nil, it won't be set to nil again and that's intentional.)

@mvz I think that using foo = nil if foo && foo.empty? is actually more readable and less confusing, so perhaps this cop still makes sense in this case?

@grzesiek I agree and it actually made me reconsider the coda and change it to foo = nil if foo.blank?. It's the documentation that I find problematic. I'll see if I can make a pull request to improve it.

I came across a violation of this cop today and am utterly confused. The documentation states:

when checking foo&.empty? in a conditional, foo being nil will actually do the opposite of what the author intends.

How would it do the opposite of what I intend? What are you assuming that I'm intending? And how would changing to foo && foo.empty? stop doing the opposite of what I intended with foo&.empty? when they logically execute exactly the same way?
I can understand the cop in rubocop-rails related to .blank? since that exists on NilClass and doesn't make sense to use safe navigation for. But empty? doesn't exist on NilClass. So if I eg. want to verify that a variable is defined as well as being empty, foo&.empty? is the most consise way of expressing that.

So if I eg. want to verify that variable foo is defined as well as empty, foo&.empty? is the most consise way of expressing that. It's also consistent with how safe navigation is prefered to && in the style guide in general.

@dbackeus In the case where you want to verify that something is defined and empty, foo&.empty? won't do it:

If it's truly undefined, you should get a NameError.
If it's nil, the safe navigation will return nil, which is false-y.
If it's defined and empty (e.g., []), it will return true.

They're mutually exclusive. For your specific example I think you'd need defined?(foo) && foo.empty?.
Apologies for the "what the author intends" language, that's presumptuous, but I think the intent of the cop is still valid.

To be clear, I didn't intend to raise the "truly undefined" case, that would indeed return a NameError and should not be a surprise to anyone.
With regards to 2 and 3. Yes that's the expected outcome. And exactly what should be intended with foo&.empty?.
So do I understand you correctly in that you are assuming that Ruby developers writing foo&.empty? would actually intend a truthy outcome if foo was nil?
If so shouldn't the "fix" be foo.nil? || foo.empty? rather than foo && foo.empty? (which at the end of the day is just a more verbose and inconsistent way of making the same statement).

@dbackeus I can't remember exactly but I suspect the specific case that lead us to write this cop was when using empty? in a guard clause, but the value passed to the method wasn't guaranteed to be non-nil:
def some_method(val)
  return if val&.empty?

  delete_everything!
end

In this (contrived) case, if the method receives nil instead of [], we're not returning early as we probably intended. Arguably that's not very good defensive coding, but this is a subtle bug that may be easily missed, and the cop protects against it. In this case we probably actually want to take advantage of ActiveSupport and do something like return unless val.blank?.


[Bug?] A corrupted looking app on Homebr3w

If you go into Homebr3w and just press up to go to the bottom you will see a program that looks like it's corrupted.

It's not corrupted, the .cia File for the app has been built wrong, see this post on GBATemp
The app is actually https://github.com/MichiS97/The-Real-Snake-3DS


How to deal with root level Array?

Something like this, that doesn't come wrapped in a root Dictionary with a key to pull it out of...
[
    {
        "id": 12345,
        "foo": "bar"
    },
    {
        "id": 23456,
        "foo": "bar"
    },
    {
        "id": 34567,
        "foo": "bar"
    },
]

If each one of those objects in the array has a model that conforms to JSONDecodable then it's not hard. You can use mapDecode after you get the JSONValue back from JSONValue.parse

That is if you're using Argo 3.x or 4.x ... If you are on master then it will be different.

@tonyd256 How would you do that today? JSONValue isn't available anymore it seems.

Noted this in #17 but I'll drop it in here as well:
JSONValue was renamed JSON at some point (possibly pre-1.0?). The way you'd want to decode an array of objects now is to use the decodeArray helper function:
import Curry // Curry.framework: https://github.com/thoughtbot/Curry
import Argo

struct Foo {
  let id: Int
  let foo: String
}

extension Foo: Decodable {
  static func decode(json: JSON) -> Decoded<Foo> {
    return curry(Foo.init)
      <^> json <| "id"
      <*> json <| "foo"
  }
}

let foos: [Foo]? = decodeArray(json).value


allow multiple dest function calls

When setting dest as a function, I may want to generate dest dynamically:
// due to complicated or bad structure
function(file){
  return newPath( file )
}

Currently if dest is passed as a function, it is called only once, and that call's result is used ever since. Maybe we should allow multiple call to dest function. (it is the same behavior as gulp.dest)
For now I'm using a local variable copy of dest to do this. Link.

Yeah, that's a bug. Fixed in 1.1.1 ;)


Core Data documentation

Hi guys, your framework look promising and very clear! I would like to ask extend Core data support documentation. Especially what I'm interesting in is: how to get some keys from JSON in init section to link with existing objects in CD and not to create new one?

Hi @SPopenko
Thanks for the suggestion, I'll leave this open until I get a chance to update the README.
For now, here's what you should override:
+ (instancetype)gm_newInstanceForJsonRepresentation:(NSDictionary *)jsonRepresentation;

When a new object is mapped, this method is called first to receive an instance for mapping.  If it is not overridden, it ultimately just calls alloc] init];.  You could do something like this in your class
@implementation MyCoreDataClass

+ (instancetype)gm_newInstanceForJsonRepresentation:(NSDictionary *)jsonRepresentation {
    NSString *identifier = jsonRepresentation[@"identifier"];
    id object = [MyCoreDataManager objectWithIdentifier:identifier];
    if (!object) {
        object = [MyCoreDataManager newObject];
    }
    return object;
}
@end

I will think of a better way to explain this in the docs before I close the issue, but does this help you for now?

@LoganWright thanks! it totally makes sense.

This has been updated with a brief explanation in the new version.

@LoganWright great! thank you.

Any way to do this in Swift? I keep getting a "Cannot convert return expression of type 'SocialAccount' to type 'Self'" on a managed object subclass. I'm not sure that the type inference is possible in Swift, but if anyone knows, you will. Is CustomMappable maybe only available on structs?

Hi @dslysenko
This is totally possible in Swift, but we have to get a tiny bit tricky w/ core data.  My guess is that you have something like this:
    static func newInstance(map: Map) -> Self {
        return SocialAccount(entity: NSEntityDescription(), insertIntoManagedObjectContext: nil)
    }

This will fail because it initializes a SocialAccount object and not whatever Self is.  To work with self without a final class, we have to use self.init:
    static func newInstance(map: Map) -> Self {
        return self.init(entity: NSEntityDescription(), insertIntoManagedObjectContext: nil)
    }

But then, we need to make the initializer required so we can guarantee all inherited classes also conform.  So our final implementation might look something like this:
class SocialAccount : NSManagedObject, CustomMappable {
    static func newInstance(map: Map) -> Self {
        return self.init(entity: NSEntityDescription(), insertIntoManagedObjectContext: nil)
    }

    required override init(entity: NSEntityDescription, insertIntoManagedObjectContext managedObjectContext: NSManagedObjectContext?) {
        super.init(entity: entity, insertIntoManagedObjectContext: managedObjectContext)
    }

    func sequence(map: Map) throws {
    }
}

It might be a good idea to setup a base class for your models and inherit from that so you don't have to repeat your code everywhere.
Does this help at all?

Interesting and thanks for the quick response! I sorta got around it quickly by overriding initializer() like so:
        return findOrCreateInstance
    }

    private static func findOrCreateInstance(map: Map) throws -> MappableObject {
      // code
    }```

This is a great project and I love the idea! Unfortunately I don't think I can use it in my current app because I make heavy use of private contexts and SwiftyJSON (built into my custom-made networking lib).

Since that comment I also actually ended up writing a new protocol that supports a private context in mapping, but I did not get a chance to test it as I got a different idea for how to propagate JSON errors with minimal effect on our current workflow -- inspired by this project of course ;)

@dslysenko
That seems like a fine initializer, that's the whole reason why I created it that way, so that anyone could define an initializer that suits their situation!
The provided protocols with initializers are just an easy way for people to adapt if they're new to the way protocols interact in Swift.
I'd love this project to offer a wide range of support, so if you find something that isn't supported, and could be easily added as an opt in feature, definitely let me know and I'll see if I can integrate it.
Thanks for checking out the lib and let me know if you keep working on it!

Logan

@LoganWright Not sure if this qualifies as "could be easily added as an opt in feature" as it would probably require some extra thought as to architecture beyond what I've put in (I'm not really satisfied with the new protocol so I imagine you wouldn't be), but here's what I came up with to solve the context problem:
https://gist.github.com/dslysenko/ebc5092e85f5727eafa4

@dslysenko
Sorry about the late reply, I missed the alert about this message. I actually think what you have seems like a pretty good workaround for the NSManagedContext issue, but it will definitely cause opt in problems.
One goal of this library is to be prepared for cross platform support which generally means any NS class can't be included by default.  I'm going to think about this longer, but I'm toying with the idea of making a Genome+CoreData podspec that basically appends this to the Genome core.
For the interim, I'm going to post your relevant snippet here in case other people stumble this way:
// MARK: Genome+MappableCoreDataObject
typealias MappableCoreDataInitializer = (map: Map, context: NSManagedObjectContext) throws -> MappableObject
protocol MappableCoreDataObject: MappableObject {
    static func initializer() -> MappableCoreDataInitializer
}
extension MappableCoreDataObject {
    static func initializer() -> Initializer {
        // return try initializer(context: NSManagedObjectContext.MR_defaultContext())
        fatalError("no soup for you")
        // Not sure how to resolve this
    }

    static func mappedInstance(js: Genome.JSON, context: NSManagedObjectContext) throws -> Self {
        let map = Map(json: js, context: [:])
        let initialization = initializer() // auto maps to the MappableCoreDataInitializer()
        var instance = try initialization(map: map, context: context)
        assert(instance is Self,
            "Unfortunately, in order to support flexible subclassing, while also not enforcing a specific initializer, I need to be lenient with my type specifications in MappableObject protocol.  Otherwise, an error is thrown 'You are unable to 'use Self in a non-parameter, non-result type position`.  This means that although `Initializer` is of type `Map -> MappableObject`, it should really be considered `Map -> Self`!"
        )
        try instance.sequence(map)
        return instance as! Self
    }
}

typealias MappableCoreDataInitializer = (map: Map, context: NSManagedObjectContext) throws -> MappableObject
protocol MappableCoreDataObject: MappableObject {
    static func initializer() -> MappableCoreDataInitializer
    static func findOrCreateInstance(map: Map, context: NSManagedObjectContext) throws -> MappableObject
}
extension MappableCoreDataObject {
    static func initializer() -> Initializer {
        return findOrCreateInstance
    }

    static func mappedInstance(js: Genome.JSON, context: NSManagedObjectContext) throws -> Self {
        let map = Map(json: js, context: [:])
        let initialization = initializer() // auto maps to the MappableCoreDataInitializer()
        var instance = try initialization(map: map, context: context)
        assert(instance is Self,
            "Unfortunately, in order to support flexible subclassing, while also not enforcing a specific initializer, I need to be lenient with my type specifications in MappableObject protocol.  Otherwise, an error is thrown 'You are unable to 'use Self in a non-parameter, non-result type position`.  This means that although `Initializer` is of type `Map -> MappableObject`, it should really be considered `Map -> Self`!"
        )
        try instance.sequence(map)
        return instance as! Self
    }
}

@dslysenko
I think I've come up with what I consider to be a valuable alternative.  Here's the final result:
protocol CoreDataMappable: MappableObject {
    static func newInstance(map: Map, context: NSManagedObjectContext) throws -> Self
}

extension CoreDataMappable {
    static func initializer() -> Initializer {
        fatalError("Core data objects must be initialized with `mappedInstance(js: JSON, contect: NSManagedObjectContext!")
    }

    static func mappedInstance(js: JSON, context: NSManagedObjectContext) throws -> Self {
        let map = Map(json: js, context: [:])
        var instance = try newInstance(map, context: context)
        try instance.sequence(map)
        return instance
    }
}

extension Array where Element : CoreDataMappable {
    static func mappedInstance(js: [JSON], context: NSManagedObjectContext) throws -> Array {
        return try js.map { try Element.mappedInstance($0, context: context) }
    }
}

We don't actually need the special initializer, or the assertion here because we can be a little less flexible.  This initialization is for CoreData objects and we can make some exceptions.  I think this is a good starting point, and people can modify their own.
Unfortunately, this won't support nested objects, so there's still work to do on my end.  I guess I hadn't considered multiple contexts when originally designing this.  It may end up not being fully supported, but we'll see where it ends up.